Introduction   User API Reference   DSMlib Reference   IDL Interface   File List   Index  

dm_mem.idl

Go to the documentation of this file.
00001 /* -*- c -*- */
00002 /* $Id: dm_mem.idl 30425 2007-10-24 08:05:18Z sk852421 $ */
00003 /*****************************************************************************/
00012 /*****************************************************************************/
00013 
00014 /* (c) 2003 Technische Universitaet Dresden
00015  * This file is part of DROPS, which is distributed under the terms of the
00016  * GNU General Public License 2. Please see the COPYING file for details.
00017  */
00018 
00019 #include <l4/dm_generic/dm_generic.idl>
00020 
00024 library if_l4dm
00025 {
00030   interface mem : generic
00031     {
00032       /***********************************************************************/
00049       /***********************************************************************/
00050       long open([in] unsigned long size,
00051                 [in] unsigned long align,
00052                 [in] unsigned long flags,
00053                 [in, string] char* name,
00054                 [out] l4dm_dataspace_t *ds);
00055 
00056       /***********************************************************************/
00069       /***********************************************************************/
00070       long size([in] unsigned long ds_id,
00071                 [out] l4_size_t *size);
00072 
00073       /***********************************************************************/
00087       /***********************************************************************/
00088       long resize([in] unsigned long ds_id,
00089                   [in] unsigned long new_size);
00090 
00091       /***********************************************************************/
00109       /***********************************************************************/
00110       long phys_addr([in] unsigned long ds_id,
00111                      [in] unsigned long offset,
00112                      [in] l4_size_t size,
00113                      [out] unsigned long *paddr,
00114                      [out] l4_size_t *psize);
00115 
00116       /***********************************************************************/
00128       /***********************************************************************/
00129       long is_contiguous([in] unsigned long ds_id,
00130                          [out] long *is_cont);
00131 
00132       /***********************************************************************/
00147       /***********************************************************************/
00148       long lock([in] unsigned long ds_id,
00149                 [in] unsigned long offset,
00150                 [in] unsigned long size);
00151 
00152       /***********************************************************************/
00165       /***********************************************************************/
00166       long unlock([in] unsigned long ds_id,
00167                   [in] unsigned long offset,
00168                   [in] unsigned long size);
00169 
00170       /***********************************************************************/
00184       /***********************************************************************/
00185       long info([in] unsigned long ds_id,
00186                 [out] l4_size_t *size,
00187                 [out] l4_threadid_t *owner,
00188                 [out, string, prealloc_client] char ** name,
00189                 [out] l4_uint32_t *next_id);
00190     };
00191 };

DMphys Reference Manual, written by Lars Reuther  © 2000-2003