00001 00043 #if !defined (POOLDEFS_H) 00044 #define POOLDEFS_H 00045 00046 00047 /* ----------------------------------- DSP/BIOS LINK Headers */ 00048 #include <dsplink.h> 00049 00050 00051 #if defined (__cplusplus) 00052 extern "C" { 00053 #endif 00054 00055 00065 #define POOL_makePoolId(procId, poolNo) ( ((poolNo) & 0xFFu) \ 00066 | ((((procId) & 0xFFu) << 8u) & 0xFFFFu)) 00067 00074 #define POOL_getProcId(poolId) ((((poolId) & 0xFF00u) >> 8u) & 0x00FFu) 00075 00082 #define POOL_getPoolNo(poolId) ((poolId) & 0x00FFu) 00083 00090 #define MAX_POOLENTRIES 32u 00091 00098 #define IS_VALID_POOLID(id) (POOL_getPoolNo((id)) < MAX_POOLENTRIES) 00099 00106 #define MAX_SMABUFENTRIES 16u 00107 00114 #define MAX_DMABUFENTRIES 16u 00115 00116 00133 typedef enum { 00134 AddrType_Usr = 0u, 00135 AddrType_Phy = 1u, 00136 AddrType_Knl = 2u, 00137 AddrType_Dsp = 3u 00138 } AddrType ; 00139 00140 00158 typedef struct BUFPOOL_Attrs_tag { 00159 Uint32 numBufPools ; 00160 Uint32 * bufSizes ; 00161 Uint32 * numBuffers ; 00162 } BUFPOOL_Attrs ; 00163 00181 typedef struct SMAPOOL_Attrs_tag { 00182 Uint32 numBufPools ; 00183 Uint32 * bufSizes ; 00184 Uint32 * numBuffers ; 00185 Bool exactMatchReq ; 00186 } SMAPOOL_Attrs ; 00187 00188 00206 typedef struct DMAPOOL_Attrs_tag { 00207 Uint32 numBufPools ; 00208 Uint32 * bufSizes ; 00209 Uint32 * numBuffers ; 00210 Bool exactMatchReq ; 00211 } DMAPOOL_Attrs ; 00212 00213 00220 #define BufPoolAttrs BUFPOOL_Attrs 00221 00228 #define SmaPoolAttrs SMAPOOL_Attrs 00229 00230 00231 #if defined (__cplusplus) 00232 } 00233 #endif 00234 00235 00236 #endif /* !defined (POOLDEFS_H) */