mem.h File Reference

VM Memory. More...

Go to the source code of this file.

Defines

#define mem_getByte(memspace, paddr)   plat_memGetByte((memspace), (paddr))

Typedefs

typedef enum PmMemSpace_e PmMemSpace_t
typedef enum PmMemSpace_epPmMemSpace_t

Enumerations

enum  PmMemSpace_e {
  MEMSPACE_RAM = 0, MEMSPACE_PROG, MEMSPACE_EEPROM, MEMSPACE_SEEPROM,
  MEMSPACE_OTHER0, MEMSPACE_OTHER1, MEMSPACE_OTHER2, MEMSPACE_OTHER3
}

Functions

uint16_t mem_getWord (PmMemSpace_t memspace, uint8_t const **paddr)
uint32_t mem_getInt (PmMemSpace_t memspace, uint8_t const **paddr)
void mem_copy (PmMemSpace_t memspace, uint8_t **pdest, uint8_t const **psrc, uint16_t count)
uint16_t mem_getStringLength (PmMemSpace_t memspace, uint8_t const *const pstr)
PmReturn_t mem_cmpn (uint8_t *cname, uint8_t cnamelen, PmMemSpace_t memspace, uint8_t const **paddr)


Detailed Description

VM Memory.

VM memory header.

Definition in file mem.h.


Define Documentation

#define mem_getByte ( memspace,
paddr   )     plat_memGetByte((memspace), (paddr))

Returns the byte at the given address in memspace.

Increments the address (just like getc and read(1)) to make image loading work (recursive).

Parameters:
memspace memory space/type
paddr ptr to address
Returns:
byte from memory. paddr - points to the next byte

Definition at line 57 of file mem.h.


Typedef Documentation

typedef enum PmMemSpace_e PmMemSpace_t

Memory Space enum.

Defines the different addressable areas of the system.


Enumeration Type Documentation

Memory Space enum.

Defines the different addressable areas of the system.

Definition at line 33 of file mem.h.


Function Documentation

PmReturn_t mem_cmpn ( uint8_t cname,
uint8_t  cnamelen,
PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Compares a byte array in RAM to a byte array in the given memory space

Parameters:
cname Pointer to byte array in RAM
cnamelen Length of byte array to compare
memspace Memory space of other byte array
paddr Pointer to address of other byte array
Returns:
PM_RET_OK if all bytes in both arrays match; PM_RET_NO otherwise

Definition at line 138 of file mem.c.

void mem_copy ( PmMemSpace_t  memspace,
uint8_t **  pdest,
uint8_t const **  psrc,
uint16_t  count 
)

Copies count number of bytes from src in memspace to dest in RAM. Leaves dest and src pointing one byte past end of the data.

Parameters:
memspace memory space/type of source
pdest ptr to destination address
psrc ptr to source address
count number of bytes to copy
Returns:
nothing. src, dest - point 1 past end of data
See also:
sli_memcpy

Definition at line 91 of file mem.c.

uint32_t mem_getInt ( PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Returns the 4-byte int at the given address in memspace.

Int obtained in LITTLE ENDIAN order (per Python convention). afterward, addr points one byte past the int.

Parameters:
memspace memory space
paddr ptr to address
Returns:
int from memory. addr - points one byte past the word

Definition at line 45 of file mem.c.

uint16_t mem_getStringLength ( PmMemSpace_t  memspace,
uint8_t const *const   pstr 
)

Returns the number of bytes in the C string pointed to by pstr. Does not modify pstr

Parameters:
memspace memory space/type of source
pstr ptr to source C string
Returns:
Number of bytes in the string.

Definition at line 120 of file mem.c.

uint16_t mem_getWord ( PmMemSpace_t  memspace,
uint8_t const **  paddr 
)

Returns the 2-byte word at the given address in memspace.

Word obtained in LITTLE ENDIAN order (per Python convention). afterward, addr points one byte past the word.

Parameters:
memspace memory space
paddr ptr to address
Returns:
word from memory. addr - points one byte past the word

Definition at line 34 of file mem.c.


Generated on Mon Oct 18 07:40:49 2010 for Python-on-a-chip by  doxygen 1.5.9