FreeCalypso > hg > tcs211-l1-reconst
diff g23m/condat/com/src/config/gsmcomp.c @ 0:509db1a7b7b8
initial import: leo2moko-r1
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Mon, 01 Jun 2015 03:24:05 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/g23m/condat/com/src/config/gsmcomp.c Mon Jun 01 03:24:05 2015 +0000 @@ -0,0 +1,614 @@ +/* ++----------------------------------------------------------------------------- +| Project : +| Modul : ++----------------------------------------------------------------------------- +| Copyright 2002 Texas Instruments Berlin, AG +| All rights reserved. +| +| This file is confidential and a trade secret of Texas +| Instruments Berlin, AG +| The receipt of or possession of this file does not convey +| any rights to reproduce or disclose its contents or to +| manufacture, use, or sell anything it may describe, in +| whole, or in part, without the specific written consent of +| Texas Instruments Berlin, AG. ++----------------------------------------------------------------------------- +| Purpose : Component Table for GSM ++----------------------------------------------------------------------------- +*/ + + +#ifndef NEW_ENTITY +#define NEW_ENTITY +#endif + +/*==== INCLUDES ===================================================*/ + +#include "nucleus.h" +#include "typedefs.h" +#include "os.h" +#include "vsi.h" +#include "pei.h" +#include "gsmconst.h" +#include "frm_defs.h" +#include "frm_types.h" +#include "frm_glob.h" +#include "os_types.h" +#include "os_glob.h" + +/*==== CONSTANTS ==================================================*/ + + +/*==== EXTERNALS ==================================================*/ + +extern SHORT tstrcv_pei_create(T_PEI_INFO const **Info); +extern SHORT tstsnd_pei_create(T_PEI_INFO const **Info); +extern SHORT aci_pei_create (T_PEI_INFO const **Info); +extern SHORT cst_pei_create (T_PEI_INFO const **Info); +extern SHORT sim_pei_create (T_PEI_INFO const **Info); +extern SHORT sms_pei_create (T_PEI_INFO const **Info); +extern SHORT cc_pei_create (T_PEI_INFO const **Info); +extern SHORT ss_pei_create (T_PEI_INFO const **Info); +extern SHORT mm_pei_create (T_PEI_INFO const **Info); +extern SHORT rr_pei_create (T_PEI_INFO const **Info); +extern SHORT dl_pei_create (T_PEI_INFO const **Info); +extern SHORT pl_pei_create (T_PEI_INFO const **Info); +#ifdef FAX_AND_DATA +extern SHORT l2r_pei_create (T_PEI_INFO const **Info); +extern SHORT rlp_pei_create (T_PEI_INFO const **Info); +extern SHORT fad_pei_create (T_PEI_INFO const **Info); +extern SHORT t30_pei_create (T_PEI_INFO const **Info); +#endif /* FAX_AND_DATA */ +#ifdef UART +extern SHORT uart_pei_create (T_PEI_INFO const **Info); +#endif/*UART*/ +#ifdef BT_ADAPTER +extern SHORT bti_pei_create ( T_PEI_INFO const **Info); +#endif /* BT_ADAPTER */ + +#ifdef FF_EOTD +extern SHORT lc_pei_create (T_PEI_INFO const **Info); +extern SHORT rrlp_pei_create (T_PEI_INFO const **Info); +#endif /* FF_EOTD */ + +#ifdef CO_UDP_IP +extern SHORT udp_pei_create (T_PEI_INFO const **Info); +extern SHORT ip_pei_create (T_PEI_INFO const **Info); +#endif + +#if defined (FF_WAP) || defined (FF_SAT_E) +extern SHORT ppp_pei_create ( T_PEI_INFO const **Info); +#endif /* FF_WAP || FF_SAT_E */ + +#ifdef FF_WAP +#ifndef UDP_NO_WAP +extern SHORT wap_pei_create (T_PEI_INFO const **Info); +#endif /* UDP_NO_WAP */ +#endif /* FF_WAP */ + +#ifndef _TARGET_ +extern SHORT psi_pei_create (T_PEI_INFO const **Info); +#ifdef FAX_AND_DATA +extern SHORT ra_pei_create (T_PEI_INFO const **Info); +#endif +#endif + +#ifdef _TARGET_ +extern SHORT l1_pei_create (T_PEI_INFO const **Info); +#endif +/*==== VARIABLES ==================================================*/ + +#ifndef _TARGET_ +BOOL newTstHeader = TRUE; +#endif + + +const T_COMPONENT_ADDRESS tstrcv_list[] = +{ + { tstrcv_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS tstsnd_list[] = +{ + { tstsnd_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS mmi_list[] = +{ + { aci_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS cst_list[] = +{ + { cst_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS sim_list[] = +{ + { sim_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS cm_list[] = +{ + { sms_pei_create, NULL, ASSIGNED_BY_TI }, + { cc_pei_create, NULL, ASSIGNED_BY_TI }, + { ss_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, (int)"CM" } +}; + +const T_COMPONENT_ADDRESS mm_list[] = +{ + { mm_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS rr_list[] = +{ + { rr_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS dl_list[] = +{ + { dl_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS pl_list[] = +{ + { pl_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +#ifdef FAX_AND_DATA +const T_COMPONENT_ADDRESS l2rt30_list[] = +{ + { l2r_pei_create, NULL, ASSIGNED_BY_TI }, + { t30_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, (int) "L2RT30" } +}; + +const T_COMPONENT_ADDRESS rlpfad_list[] = +{ + { rlp_pei_create, NULL, ASSIGNED_BY_TI }, + { fad_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, (int) "RLPFAD"} +}; + +#ifndef _TARGET_ +const T_COMPONENT_ADDRESS ra_list[] = +{ + { ra_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /* !_TARGET_ */ +#endif /* FAX_AND_DATA */ + +#ifndef _TARGET_ +#ifdef FF_TCP_IP +const T_COMPONENT_ADDRESS aaa_list[] = +{ + { NULL, "AAA", ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /* FF_TCP_IP */ +#endif /* !_TARGET_ */ + +#ifndef _TARGET_ +#ifdef FF_PSI +const T_COMPONENT_ADDRESS psi_list[] = +{ + { psi_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /*FF_PSI*/ +#endif /* !_TARGET_ */ + +#ifdef UART +const T_COMPONENT_ADDRESS uart_list[] = +{ + { uart_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /*UART*/ + +#ifdef FF_EOTD +const T_COMPONENT_ADDRESS eotd_list[] = +{ + { lc_pei_create, NULL, ASSIGNED_BY_TI }, + { rrlp_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, (int)"EOTD" } +}; +#endif /* FF_EOTD */ + + +#ifdef FF_WAP +#ifndef UDP_NO_WAP +const T_COMPONENT_ADDRESS wap_list[] = +{ + { wap_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /* UDP_NO_WAP */ +#endif /* FF_WAP */ + +#ifdef CO_UDP_IP +const T_COMPONENT_ADDRESS udp_list[] = +{ + { udp_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS ip_list[] = +{ + { ip_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif + +#if defined (FF_WAP) || defined (FF_SAT_E) +const T_COMPONENT_ADDRESS ppp_list[] = +{ + { ppp_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /* FF_WAP || FF_SAT_E */ + + #ifdef BT_ADAPTER +const T_COMPONENT_ADDRESS bti_list[] = +{ + { bti_pei_create, NULL, ASSIGNED_BY_TI }, + { NULL, NULL, 0 } +}; +#endif /* BT_ADAPTER */ + +const T_COMPONENT_ADDRESS l1_list[] = +{ +#ifdef _TARGET_ + { l1_pei_create, NULL, ASSIGNED_BY_TI }, +#else + { NULL, "L1", ASSIGNED_BY_TI }, +#endif + { NULL, NULL, 0 } +}; + +const T_COMPONENT_ADDRESS * const ComponentTables[]= +{ + tstrcv_list, + tstsnd_list, + mmi_list, + cst_list, + sim_list, + cm_list, + mm_list, + rr_list, + dl_list, + pl_list, +#ifdef FAX_AND_DATA + l2rt30_list, + rlpfad_list, +#ifndef _TARGET_ + ra_list, +#endif +#endif /* FAX_AND_DATA */ +#ifndef _TARGET_ +#ifdef FF_TCP_IP + aaa_list, +#endif /* FF_TCP_IP */ +#ifdef FF_PSI + psi_list, +#endif /*FF_PSI*/ +#endif /* !_TARGET_ */ +#ifdef UART + uart_list, +#endif +#ifdef FF_EOTD + eotd_list, +#endif +#ifdef FF_WAP +#ifndef UDP_NO_WAP + wap_list, +#endif /* !UDP_NO_WAP */ +#endif /* FF_WAP */ + +#ifdef CO_UDP_IP + udp_list, + ip_list, +#endif /* CO_UDP_IP */ +#if defined (FF_WAP) || defined (FF_SAT_E) + ppp_list, +#endif /* FF_WAP || FF_SAT_E */ + +#ifdef BT_ADAPTER + bti_list, +#endif /* BT_ADAPTER */ + l1_list, + NULL +}; + +/*==== VERSIONS ===================================================*/ +#ifndef CTRACE + char * str2ind_version = "&0"; +#endif + + /*==== MEMORY CONFIGURATION =======================================*/ + +/* + * Partitions pool configuration for primitive communication + */ +#ifdef FAX_AND_DATA + +#define PRIM_PARTITION_0_SIZE 52 +#define PRIM_PARTITION_1_SIZE 100 +#define PRIM_PARTITION_2_SIZE 432 +#define PRIM_PARTITION_3_SIZE 1600 +#define PRIM_PARTITION_4_SIZE 0 +#define PRIM_PARTITION_5_SIZE 0 + +#define PRIMPOOL_0_PARTITIONS 80 +#define PRIMPOOL_1_PARTITIONS 20 +#define PRIMPOOL_2_PARTITIONS 30 +#define PRIMPOOL_3_PARTITIONS 3 +#define PRIMPOOL_4_PARTITIONS 0 +#define PRIMPOOL_5_PARTITIONS 0 + +#else +/* no fax and data */ +#define PRIM_PARTITION_0_SIZE 52 +#define PRIM_PARTITION_1_SIZE 100 +#define PRIM_PARTITION_2_SIZE 216 /* New */ +#define PRIM_PARTITION_3_SIZE 260 /* sizeof (T_stk_cmd), do we need this? */ +#define PRIM_PARTITION_4_SIZE 432 +#define PRIM_PARTITION_5_SIZE 900 /* 1600 */ + +#define PRIMPOOL_0_PARTITIONS 80 +#define PRIMPOOL_1_PARTITIONS 20 +#ifdef TI_PS_UICC_CHIPSET_15 +#define PRIMPOOL_2_PARTITIONS 6 /* 0 */ +#else +#define PRIMPOOL_2_PARTITIONS 5 /* 0 */ +#endif + +#define PRIMPOOL_3_PARTITIONS 6 /* 0 */ /* Number to be optimized */ + +#ifdef TI_PS_UICC_CHIPSET_15 +#define PRIMPOOL_4_PARTITIONS 6 /* 10 */ +#else +#define PRIMPOOL_4_PARTITIONS 5 /* 10 */ +#endif +#define PRIMPOOL_5_PARTITIONS 2 /* 3 */ + +#endif /* else, #ifdef FAX_AND_DATA */ + + +#ifndef DATA_INT_RAM +#ifdef FAX_AND_DATA +unsigned int MaxPrimPartSize = PRIM_PARTITION_3_SIZE; +#else +unsigned int MaxPrimPartSize = PRIM_PARTITION_5_SIZE; +#endif +#endif /* !DATA_INT_RAM */ + +#if (!defined DATA_EXT_RAM && defined PRIM_0_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_0_INT_RAM) +char pool10 [ POOL_SIZE(PRIMPOOL_0_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_0_SIZE)) ]; +#else +extern char pool10 []; +#endif + +#if (!defined DATA_EXT_RAM && defined PRIM_1_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_1_INT_RAM) +char pool11 [ POOL_SIZE(PRIMPOOL_1_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_1_SIZE)) ]; +#else +extern char pool11 []; +#endif + +#if (!defined DATA_EXT_RAM && defined PRIM_2_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_2_INT_RAM) +char pool12 [ POOL_SIZE(PRIMPOOL_2_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_2_SIZE)) ]; +#else +extern char pool12 []; +#endif + +#if (!defined DATA_EXT_RAM && defined PRIM_3_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_3_INT_RAM) +char pool13 [ POOL_SIZE(PRIMPOOL_3_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_3_SIZE)) ]; +#else +extern char pool13 []; +#endif + +#ifndef FAX_AND_DATA +#if (!defined DATA_EXT_RAM && defined PRIM_4_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_4_INT_RAM) +char pool14 [ POOL_SIZE(PRIMPOOL_4_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_4_SIZE)) ]; +#else +extern char pool14 []; +#endif + +#if (!defined DATA_EXT_RAM && defined PRIM_5_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_5_INT_RAM) +char pool15 [ POOL_SIZE(PRIMPOOL_5_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_5_SIZE)) ]; +#else +extern char pool15 []; +#endif +#endif /* FAX_AND_DATA */ + + +#ifndef DATA_INT_RAM +const T_FRM_PARTITION_POOL_CONFIG prim_grp_config[] = +{ + { PRIMPOOL_0_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_0_SIZE), &pool10 }, + { PRIMPOOL_1_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_1_SIZE), &pool11 }, + { PRIMPOOL_2_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_2_SIZE), &pool12 }, + { PRIMPOOL_3_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_3_SIZE), &pool13 }, +#ifndef FAX_AND_DATA + { PRIMPOOL_4_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_4_SIZE), &pool14 }, + { PRIMPOOL_5_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_5_SIZE), &pool15 }, +#endif + { 0 , 0 , NULL } +}; +#endif /* !DATA_INT_RAM */ + +/* + * Partitions pool configuration for test interface communication + */ +#define TESTPOOL_0_PARTITIONS 1 /* 10 */ +#define TESTPOOL_1_PARTITIONS 15 /* 50 */ +#define TESTPOOL_2_PARTITIONS 0 /* 2 */ + +#define TSTSND_QUEUE_ENTRIES (TESTPOOL_0_PARTITIONS+TESTPOOL_1_PARTITIONS+TESTPOOL_2_PARTITIONS) +#define TSTRCV_QUEUE_ENTRIES 50 + +#define TEST_PARTITION_0_SIZE 16 /* 80 */ +#ifdef _TARGET_ + #define TEST_PARTITION_1_SIZE 160 +#else + #define TEST_PARTITION_1_SIZE 260 +#endif /* else, #ifdef _TARGET_ */ + +#define TEST_PARTITION_2_SIZE 0 /* 1600 */ + +#ifndef DATA_INT_RAM +const USHORT TST_SndQueueEntries = TSTSND_QUEUE_ENTRIES; +const USHORT TST_RcvQueueEntries = TSTRCV_QUEUE_ENTRIES; +const USHORT TextTracePartitionSize = TEST_PARTITION_1_SIZE; +#endif /* !DATA_INT_RAM */ + +#if (!defined DATA_EXT_RAM && defined TEST_0_INT_RAM) || (!defined DATA_INT_RAM && !defined TEST_0_INT_RAM) +char pool20 [ POOL_SIZE(TESTPOOL_0_PARTITIONS,ALIGN_SIZE(TEST_PARTITION_0_SIZE)) ]; +#else +extern char pool20 []; +#endif + +#if (!defined DATA_EXT_RAM && defined TEST_1_INT_RAM) || (!defined DATA_INT_RAM && !defined TEST_1_INT_RAM) +char pool21 [ POOL_SIZE(TESTPOOL_1_PARTITIONS,ALIGN_SIZE(TEST_PARTITION_1_SIZE)) ]; +#else +extern char pool21 []; +#endif + +#ifndef DATA_INT_RAM +const T_FRM_PARTITION_POOL_CONFIG test_grp_config[] = +{ + { TESTPOOL_0_PARTITIONS, ALIGN_SIZE(TEST_PARTITION_0_SIZE), &pool20 }, + { TESTPOOL_1_PARTITIONS, ALIGN_SIZE(TEST_PARTITION_1_SIZE), &pool21 }, + { 0 , 0 , NULL } +}; +#endif /* !DATA_INT_RAM */ + +/* + * Partitions pool configuration for general purpose allocation + */ + +#define DMEM_PARTITION_0_SIZE 16 /* 100 */ + +/* + * CQ 29245: Value of the DMEMPOOL_0_PARTITIONS has been modified from 30 to 50 + */ + +#define DMEMPOOL_0_PARTITIONS 50 /* 10 */ /* In GPRS this is 70 */ + +#if (!defined DATA_EXT_RAM && defined DMEM_0_INT_RAM) || (!defined DATA_INT_RAM && !defined DMEM_0_INT_RAM) +char pool30 [ POOL_SIZE(DMEMPOOL_0_PARTITIONS,ALIGN_SIZE(DMEM_PARTITION_0_SIZE)) ]; +#else +extern char pool30 []; +#endif + +#ifndef DATA_INT_RAM +const T_FRM_PARTITION_POOL_CONFIG dmem_grp_config[] = +{ + { DMEMPOOL_0_PARTITIONS, ALIGN_SIZE(DMEM_PARTITION_0_SIZE), &pool30 }, + { 0 , 0 , NULL } +}; +#endif /* !DATA_INT_RAM */ + +/* + * Partitions group list + */ + +#ifndef DATA_INT_RAM +const T_FRM_PARTITION_GROUP_CONFIG partition_grp_config[MAX_POOL_GROUPS+1] = +{ + { "PRIM", &prim_grp_config[0] }, + { "TEST", &test_grp_config[0] }, + { "DMEM", &dmem_grp_config[0] }, + { NULL, NULL } +}; + +extern T_HANDLE PrimGroupHandle; +extern T_HANDLE DmemGroupHandle; +extern T_HANDLE TestGroupHandle; + +T_HANDLE *PoolGroupHandle[MAX_POOL_GROUPS+1] = +{ + &PrimGroupHandle, + &TestGroupHandle, + &DmemGroupHandle, + NULL +}; +#endif /* !DATA_INT_RAM */ + +/* + * Dynamic Memory Pool Configuration + */ + +/* Detecting GSM only lite to compile using minimal settings */ +#if !defined(FAX_AND_DATA) && !defined(FF_TCP_IP) && !defined(FF_EOTD) &&\ + !defined(FF_WAP) && !defined(BT_ADAPTER) +#define GO_LITE 1 +#endif + +#if defined(_TARGET_) && defined(GO_LITE) +#define EXT_DATA_POOL_PS_BASE_SIZE 23075 +#else /* _TARGET_ && GO_LITE */ +#define EXT_DATA_POOL_PS_BASE_SIZE 50000 +#endif /* _TARGET_ && GO_LITE */ + +#undef GO_LITE /* We are not going to use this definition globally */ + +#ifdef MEMORY_SUPERVISION + #define EXT_DATA_POOL_PPS_ADDITION ((EXT_DATA_POOL_PS_BASE_SIZE>>3)+10000) +#else /* MEMORY_SUPERVISION */ + #define EXT_DATA_POOL_PPS_ADDITION 0 +#endif /* MEMORY_SUPERVISION */ + +#ifdef FAX_AND_DATA + #define EXT_DATA_POOL_FD_ADDITION 13000 +#else /* FAX_AND_DATA */ + #define EXT_DATA_POOL_FD_ADDITION 0 +#endif /* FAX_AND_DATA */ + +#if defined (FF_WAP) || defined (FF_SAT_E) + #define EXT_DATA_POOL_WAP_ADDITION 5000 +#else /* FF_WAP || FF_SAT_E */ + #define EXT_DATA_POOL_WAP_ADDITION 0 +#endif /* FF_WAP || FF_SAT_E */ + +#define EXT_DATA_POOL_PS_SIZE (EXT_DATA_POOL_PS_BASE_SIZE + EXT_DATA_POOL_PPS_ADDITION + EXT_DATA_POOL_FD_ADDITION + EXT_DATA_POOL_WAP_ADDITION) +#define INT_DATA_POOL_PS_SIZE 1 /* no distinction between external/internal RAM for GO/GOLite builds */ + +#define EXT_DATA_POOL_GPF_SIZE (2048 + OS_QUEUE_ENTRY_SIZE(TSTSND_QUEUE_ENTRIES) + OS_QUEUE_ENTRY_SIZE(TSTRCV_QUEUE_ENTRIES)) + +#define EXT_DATA_POOL_SIZE (EXT_DATA_POOL_PS_SIZE + EXT_DATA_POOL_GPF_SIZE) +#define INT_DATA_POOL_SIZE (INT_DATA_POOL_PS_SIZE) + +#ifndef DATA_INT_RAM +char ext_data_pool [ EXT_DATA_POOL_SIZE ]; +#endif + +#ifndef DATA_INT_RAM + +const T_MEMORY_POOL_CONFIG memory_pool_config[MAX_MEMORY_POOLS+1] = +{ + { "EXTPOOL", EXT_DATA_POOL_SIZE, &ext_data_pool[0] }, + { NULL } +}; + +extern T_HANDLE ext_data_pool_handle; + +T_HANDLE *MemoryPoolHandle[MAX_MEMORY_POOLS+1] = +{ + &ext_data_pool_handle, + NULL +}; + +#endif /* !DATA_INT_RAM */