/* ** CFE_ES_PoolCreate will initialize a pre-allocated memory pool while using a mutex. */ int32 CFE_ES_PoolCreate(CFE_ES_MemHandle_t *HandlePtr, uint8 *MemPtr, uint32 Size ) { return CFE_ES_PoolCreateEx(HandlePtr, MemPtr, Size, CFE_ES_MAX_MEMPOOL_BLOCK_SIZES, &CFE_ES_MemPoolDefSize[0],CFE_ES_USE_MUTEX); }
/* ** CFE_ES_PoolCreateNoSem will initialize a pre-allocated memory pool without using a mutex. */ int32 CFE_ES_PoolCreateNoSem(CFE_ES_MemHandle_t *HandlePtr, uint8 *MemPtr, uint32 Size ) { /* Handle Preset Return Code */ if (cfe_es_api_return_value[CFE_ES_POOLCREATENOSEM_PROC] != UTF_CFE_USE_DEFAULT_RETURN_CODE) { return cfe_es_api_return_value[CFE_ES_POOLCREATENOSEM_PROC]; } /* Handle Function Hook */ if (UTF_ES_HookTable.CFE_ES_PoolCreateNoSem) return(UTF_ES_HookTable.CFE_ES_PoolCreateNoSem(HandlePtr,*MemPtr, Size)); return CFE_ES_PoolCreateEx(HandlePtr, MemPtr, Size, CFE_ES_MAX_MEMPOOL_BLOCK_SIZES, &CFE_ES_MemPoolDefSize[0], CFE_ES_NO_MUTEX); }
/****************************************************************************** ** Function: CFE_SB_InitBuffers() ** ** Purpose: ** Initialize the Software Bus Buffer Pool. ** ** Arguments: ** ** Notes: ** This function MUST be called before any SB API's are called. ** ** Return: ** none */ int32 CFE_SB_InitBuffers(void) { int32 Stat = 0; Stat = CFE_ES_PoolCreateEx(&CFE_SB.Mem.PoolHdl, CFE_SB.Mem.Partition, CFE_SB_BUF_MEMORY_BYTES, CFE_ES_MAX_MEMPOOL_BLOCK_SIZES, &CFE_SB_MemPoolDefSize[0], CFE_ES_NO_MUTEX); if(Stat != CFE_SUCCESS){ CFE_ES_WriteToSysLog("PoolCreate failed for SB Buffers, gave adr 0x%lx,size %d,stat=0x%x\n", (unsigned long)CFE_SB.Mem.Partition,CFE_SB_BUF_MEMORY_BYTES,(unsigned int)Stat); return Stat; } return CFE_SUCCESS; }/* end CFE_SB_InitBuffers */