| /******************************************************************************* |
| * Copyright 2001, GALILEO TECHNOLOGY, LTD. |
| * |
| * THIS CODE CONTAINS CONFIDENTIAL INFORMATION OF MARVELL. NO RIGHTS ARE GRANTED |
| * HEREIN UNDER ANY PATENT, MASK WORK RIGHT OR COPYRIGHT OF MARVELL OR ANY THIRD |
| * PARTY. MARVELL RESERVES THE RIGHT AT ITS SOLE DISCRETION TO REQUEST THAT THIS |
| * CODE BE IMMEDIATELY RETURNED TO MARVELL. THIS CODE IS PROVIDED "AS IS". |
| * MARVELL MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS |
| * ACCURACY, COMPLETENESS OR PERFORMANCE. MARVELL COMPRISES MARVELL TECHNOLOGY |
| * GROUP LTD. (MTGL) AND ITS SUBSIDIARIES, MARVELL INTERNATIONAL LTD. (MIL), |
| * MARVELL TECHNOLOGY, INC. (MTI), MARVELL SEMICONDUCTOR, INC. (MSI), MARVELL |
| * ASIA PTE LTD. (MAPL), MARVELL JAPAN K.K. (MJKK), GALILEO TECHNOLOGY LTD. (GTL) |
| * AND GALILEO TECHNOLOGY, INC. (GTI). |
| ******************************************************************************** |
| * Mem.h |
| * |
| * DESCRIPTION: |
| * Operating System wrapper. Memory manipulation facility. |
| * |
| * DEPENDENCIES: |
| * None. |
| * |
| * FILE REVISION NUMBER: |
| * $Revision: 1 $ |
| *******************************************************************************/ |
| |
| #ifndef __Memh |
| #define __Memh |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| /************* Includes *******************************************************/ |
| |
| #include "gtGenTypes.h" |
| |
| |
| /************* Functions ******************************************************/ |
| |
| /******************************************************************************* |
| * osBzero |
| * |
| * DESCRIPTION: |
| * Fills the first nbytes characters of the specified buffer with 0 |
| * |
| * INPUTS: |
| * start - start address of memory block to be zeroed |
| * nbytes - size of block to be set |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * None |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void osBzero |
| ( |
| IN char * start, |
| IN GT_U32 nbytes |
| ); |
| |
| /******************************************************************************* |
| * osMemSet |
| * |
| * DESCRIPTION: |
| * Stores 'simbol' converted to an unsigned char in each of the elements |
| * of the array of unsigned char beginning at 'start', with size 'size'. |
| * |
| * INPUTS: |
| * start - start address of memory block for setting |
| * simbol - character to store, converted to an unsigned char |
| * size - size of block to be set |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * Pointer to set memory block |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void * osMemSet |
| ( |
| IN void * start, |
| IN int symbol, |
| IN GT_U32 size |
| ); |
| |
| /******************************************************************************* |
| * osMemCpy |
| * |
| * DESCRIPTION: |
| * Copies 'size' characters from the object pointed to by 'source' into |
| * the object pointed to by 'destination'. If copying takes place between |
| * objects that overlap, the behavior is undefined. |
| * |
| * INPUTS: |
| * destination - destination of copy |
| * source - source of copy |
| * size - size of memory to copy |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * Pointer to destination |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void * osMemCpy |
| ( |
| IN void * destination, |
| IN const void * source, |
| IN GT_U32 size |
| ); |
| |
| |
| /******************************************************************************* |
| * osMemCmp |
| * |
| * DESCRIPTION: |
| * Compare 'size' characters from the object pointed to by 'str1' to |
| * the object pointed to by 'str2'. |
| * |
| * INPUTS: |
| * str1 - first memory area |
| * str2 - second memory area |
| * size - size of memory to compare |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * > 0 - if str1 is alfabetic bigger than str2 |
| * == 0 - if str1 is equal to str2 |
| * < 0 - if str1 is alfabetic smaller than str2 |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| GT_32 osMemCmp |
| ( |
| IN const void *str1, |
| IN const void *str2, |
| IN GT_U32 size |
| ); |
| |
| |
| /******************************************************************************* |
| * osMalloc |
| * |
| * DESCRIPTION: |
| * Allocates memory block of specified size. |
| * |
| * INPUTS: |
| * size - bytes to allocate |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * Void pointer to the allocated space, or NULL if there is |
| * insufficient memory available |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void *osMalloc |
| ( |
| IN GT_U32 size |
| ); |
| |
| /******************************************************************************* |
| * osRealloc |
| * |
| * DESCRIPTION: |
| * Reallocate memory block of specified size. |
| * |
| * INPUTS: |
| * ptr - pointer to previously allocated buffer |
| * size - bytes to allocate |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * Void pointer to the allocated space, or NULL if there is |
| * insufficient memory available |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void *osRealloc |
| ( |
| IN void * ptr , |
| IN GT_U32 size |
| ); |
| |
| /******************************************************************************* |
| * osFree |
| * |
| * DESCRIPTION: |
| * Deallocates or frees a specified memory block. |
| * |
| * INPUTS: |
| * memblock - previously allocated memory block to be freed |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * None |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void osFree |
| ( |
| IN void* const memblock |
| ); |
| |
| /******************************************************************************* |
| * osCacheDmaMalloc |
| * |
| * DESCRIPTION: |
| * Allocate a cache-safe buffer of specified size for DMA devices |
| * and drivers |
| * |
| * INPUTS: |
| * size - bytes to allocate |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * A pointer to the cache-safe buffer, or NULL |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| void *osCacheDmaMalloc |
| ( |
| IN GT_U32 size |
| ); |
| |
| /******************************************************************************* |
| * osCacheDmaFree |
| * |
| * DESCRIPTION: |
| * Free the buffer acquired with osCacheDmaMalloc() |
| * |
| * INPUTS: |
| * ptr - pointer to malloc/free buffer |
| * |
| * OUTPUTS: |
| * None |
| * |
| * RETURNS: |
| * GT_OK - on success |
| * GT_FAIL - on error |
| * |
| * COMMENTS: |
| * None |
| * |
| *******************************************************************************/ |
| GT_STATUS osCacheDmaFree |
| ( |
| IN void *ptr |
| ); |
| |
| /******************************************************************************* |
| * osPhy2Virt |
| * |
| * DESCRIPTION: |
| * Converts physical address to virtual. |
| * |
| * INPUTS: |
| * phyAddr - physical address |
| * |
| * OUTPUTS: |
| * virtAddr - virtual address |
| * |
| * RETURNS: |
| * GT_OK - on success |
| * GT_FAIL - on error |
| * |
| * COMMENTS: |
| * |
| *******************************************************************************/ |
| GT_STATUS osPhy2Virt |
| ( |
| IN GT_U32 phyAddr, |
| OUT GT_U32 *virtAddr |
| ); |
| |
| /******************************************************************************* |
| * osVirt2Phy |
| * |
| * DESCRIPTION: |
| * Converts virtual address to physical. |
| * |
| * INPUTS: |
| * virtAddr - virtual address |
| * |
| * OUTPUTS: |
| * phyAddr - physical address |
| * |
| * RETURNS: |
| * GT_OK - on success |
| * GT_FAIL - on error |
| * |
| * COMMENTS: |
| * |
| *******************************************************************************/ |
| GT_STATUS osVirt2Phy |
| ( |
| IN GT_U32 virtAddr, |
| OUT GT_U32 *phyAddr |
| ); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* __Memh */ |
| /* Do Not Add Anything Below This Line */ |
| |