Introduction   User API Reference   DSMlib Reference   IDL Interface   File List   Index  

Physical Memory Dataspace Manager Interface
[Dataspace Manager Interface IDL Specifications]


Files

file  dm_phys.idl
 Phys. memory dataspace manager interface.

Data Structures

interface  if_l4dm::memphys

Functions

long if_l4dm::memphys::dmphys_open ([in] unsigned long pool,[in] unsigned long addr,[in] unsigned long size,[in] unsigned long align,[in] unsigned long flags,[in, string] char *name,[out] l4dm_dataspace_t *ds)
 Create a new dataspace.
long if_l4dm::memphys::dmphys_copy ([in] unsigned long ds_id,[in] unsigned long src_offs,[in] unsigned long dst_offs,[in] unsigned long num,[in] unsigned long dst_pool,[in] unsigned long dst_addr,[in] unsigned long dst_size,[in] unsigned long dst_align,[in] unsigned long flags,[in, string] char *name,[out] l4dm_dataspace_t *copy)
 Create a copy of a dataspace.
long if_l4dm::memphys::dmphys_pagesize ([in] unsigned long ds_id,[in] unsigned long offs,[in] unsigned long size,[in] unsigned long pagesize,[out] int *ok)
 Check phys. pagesize for dataspace region.
long if_l4dm::memphys::dmphys_poolsize ([in] unsigned long pool,[out] l4_size_t *size,[out] l4_size_t *free)
 Returns the size of a given pool.
void if_l4dm::memphys::dmphys_debug ([in] unsigned long key,[in] unsigned long data)
 DEBUG: show DMphys debug information.

Function Documentation

long if_l4dm::memphys::dmphys_open ( [in] unsigned long  pool,
[in] unsigned long  addr,
[in] unsigned long  size,
[in] unsigned long  align,
[in] unsigned long  flags,
[in, string] char *  name,
[out] l4dm_dataspace_t ds 
) [inherited]

Create a new dataspace.

Parameters:
pool Memory pool
addr Physical address
size Dataspace size
align Alignment
flags Flags
name Dataspace name
Return values:
ds Dataspace id
Returns:
0 on success (ds contains the id of the newly created dataspace), error code otherwise:
  • -L4_ENOMEM out of memory

long if_l4dm::memphys::dmphys_copy ( [in] unsigned long  ds_id,
[in] unsigned long  src_offs,
[in] unsigned long  dst_offs,
[in] unsigned long  num,
[in] unsigned long  dst_pool,
[in] unsigned long  dst_addr,
[in] unsigned long  dst_size,
[in] unsigned long  dst_align,
[in] unsigned long  flags,
[in, string] char *  name,
[out] l4dm_dataspace_t copy 
) [inherited]

Create a copy of a dataspace.

Parameters:
ds_id Source dataspace id
src_offs Offset in source dataspace
dst_offs Offset in destination dataspace
num Number of bytes to copy
dst_pool Memory pool to use to allocate destination ds
dst_addr Physical address of destination dataspace
dst_size Destination dataspace size
dst_align Destination alignment
flags Flags
name Destination dataspace name
Return values:
copy Copy dataspace id
Returns:
0 on success (ds contains the id of the newly created dataspace), error code otherwise:
  • -L4_ENOMEM out of memory

long if_l4dm::memphys::dmphys_pagesize ( [in] unsigned long  ds_id,
[in] unsigned long  offs,
[in] unsigned long  size,
[in] unsigned long  pagesize,
[out] int *  ok 
) [inherited]

Check phys. pagesize for dataspace region.

Parameters:
ds_id Datasspace id
offs Offset in dataspace
size Dataspace area size
pagesize Log2 pagesize
Return values:
ok 1 if dataspace region can be mapped with given pagesize, 0 if not
Returns:
0 on success, error code otherwise:
  • -L4_EPERM operation not permitted
  • -L4_EINVAL invalid dataspace id
  • -L4_EINVAL_OFFS offset points beyond end of dataspace

long if_l4dm::memphys::dmphys_poolsize ( [in] unsigned long  pool,
[out] l4_size_t *  size,
[out] l4_size_t *  free 
) [inherited]

Returns the size of a given pool.

Parameters:
pool The id of the pool
Return values:
size Size of the pool
free Amount of unused memory of the pool
Returns:
0 on success, error code otherwise:
  • -L4EINVAL invalid pool number

void if_l4dm::memphys::dmphys_debug ( [in] unsigned long  key,
[in] unsigned long  data 
) [inherited]

DEBUG: show DMphys debug information.

Parameters:
key Debug key
data Data


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