comparison gsm-fw/gpf/conf/gsmcomp.c @ 487:f612f9c3fe77

gsm-fw/gpf/conf: GSM and GPRS stack configurations imported from Leonardo
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 29 Jun 2014 20:13:43 +0000
parents
children 86364a58aa6c
comparison
equal deleted inserted replaced
486:c8e12b7bbd0b 487:f612f9c3fe77
1 /*
2 +-----------------------------------------------------------------------------
3 | Project :
4 | Modul :
5 +-----------------------------------------------------------------------------
6 | Copyright 2002 Texas Instruments Berlin, AG
7 | All rights reserved.
8 |
9 | This file is confidential and a trade secret of Texas
10 | Instruments Berlin, AG
11 | The receipt of or possession of this file does not convey
12 | any rights to reproduce or disclose its contents or to
13 | manufacture, use, or sell anything it may describe, in
14 | whole, or in part, without the specific written consent of
15 | Texas Instruments Berlin, AG.
16 +-----------------------------------------------------------------------------
17 | Purpose : Component Table for GSM
18 +-----------------------------------------------------------------------------
19 */
20
21
22 #ifndef NEW_ENTITY
23 #define NEW_ENTITY
24 #endif
25
26 /*==== INCLUDES ===================================================*/
27
28 #include "nucleus.h"
29 #include "typedefs.h"
30 #include "os.h"
31 #include "vsi.h"
32 #include "pei.h"
33 #include "gsmconst.h"
34 #include "frm_defs.h"
35 #include "frm_types.h"
36 #include "frm_glob.h"
37 #include "os_types.h"
38 #include "os_glob.h"
39
40 /*==== CONSTANTS ==================================================*/
41
42
43 /*==== EXTERNALS ==================================================*/
44
45 extern SHORT tstrcv_pei_create(T_PEI_INFO const **Info);
46 extern SHORT tstsnd_pei_create(T_PEI_INFO const **Info);
47 extern SHORT aci_pei_create (T_PEI_INFO const **Info);
48 extern SHORT cst_pei_create (T_PEI_INFO const **Info);
49 extern SHORT sim_pei_create (T_PEI_INFO const **Info);
50 extern SHORT sms_pei_create (T_PEI_INFO const **Info);
51 extern SHORT cc_pei_create (T_PEI_INFO const **Info);
52 extern SHORT ss_pei_create (T_PEI_INFO const **Info);
53 extern SHORT mm_pei_create (T_PEI_INFO const **Info);
54 extern SHORT rr_pei_create (T_PEI_INFO const **Info);
55 extern SHORT dl_pei_create (T_PEI_INFO const **Info);
56 extern SHORT pl_pei_create (T_PEI_INFO const **Info);
57 #ifdef FAX_AND_DATA
58 extern SHORT l2r_pei_create (T_PEI_INFO const **Info);
59 extern SHORT rlp_pei_create (T_PEI_INFO const **Info);
60 extern SHORT fad_pei_create (T_PEI_INFO const **Info);
61 extern SHORT t30_pei_create (T_PEI_INFO const **Info);
62 #endif /* FAX_AND_DATA */
63 #ifdef UART
64 extern SHORT uart_pei_create (T_PEI_INFO const **Info);
65 #endif/*UART*/
66 #ifdef BT_ADAPTER
67 extern SHORT bti_pei_create ( T_PEI_INFO const **Info);
68 #endif /* BT_ADAPTER */
69
70 #ifdef FF_EOTD
71 extern SHORT lc_pei_create (T_PEI_INFO const **Info);
72 extern SHORT rrlp_pei_create (T_PEI_INFO const **Info);
73 #endif /* FF_EOTD */
74
75 #ifdef CO_UDP_IP
76 extern SHORT udp_pei_create (T_PEI_INFO const **Info);
77 extern SHORT ip_pei_create (T_PEI_INFO const **Info);
78 #endif
79
80 #if defined (FF_WAP) || defined (FF_SAT_E)
81 extern SHORT ppp_pei_create ( T_PEI_INFO const **Info);
82 #endif /* FF_WAP || FF_SAT_E */
83
84 #ifdef FF_WAP
85 #ifndef UDP_NO_WAP
86 extern SHORT wap_pei_create (T_PEI_INFO const **Info);
87 #endif /* UDP_NO_WAP */
88 #endif /* FF_WAP */
89
90 #ifndef _TARGET_
91 extern SHORT psi_pei_create (T_PEI_INFO const **Info);
92 #ifdef FAX_AND_DATA
93 extern SHORT ra_pei_create (T_PEI_INFO const **Info);
94 #endif
95 #endif
96
97 #ifdef _TARGET_
98 extern SHORT l1_pei_create (T_PEI_INFO const **Info);
99 #endif
100 /*==== VARIABLES ==================================================*/
101
102 #ifndef _TARGET_
103 BOOL newTstHeader = TRUE;
104 #endif
105
106
107 const T_COMPONENT_ADDRESS tstrcv_list[] =
108 {
109 { tstrcv_pei_create, NULL, ASSIGNED_BY_TI },
110 { NULL, NULL, 0 }
111 };
112
113 const T_COMPONENT_ADDRESS tstsnd_list[] =
114 {
115 { tstsnd_pei_create, NULL, ASSIGNED_BY_TI },
116 { NULL, NULL, 0 }
117 };
118
119 const T_COMPONENT_ADDRESS mmi_list[] =
120 {
121 { aci_pei_create, NULL, ASSIGNED_BY_TI },
122 { NULL, NULL, 0 }
123 };
124
125 const T_COMPONENT_ADDRESS cst_list[] =
126 {
127 { cst_pei_create, NULL, ASSIGNED_BY_TI },
128 { NULL, NULL, 0 }
129 };
130
131 const T_COMPONENT_ADDRESS sim_list[] =
132 {
133 { sim_pei_create, NULL, ASSIGNED_BY_TI },
134 { NULL, NULL, 0 }
135 };
136
137 const T_COMPONENT_ADDRESS cm_list[] =
138 {
139 { sms_pei_create, NULL, ASSIGNED_BY_TI },
140 { cc_pei_create, NULL, ASSIGNED_BY_TI },
141 { ss_pei_create, NULL, ASSIGNED_BY_TI },
142 { NULL, NULL, (int)"CM" }
143 };
144
145 const T_COMPONENT_ADDRESS mm_list[] =
146 {
147 { mm_pei_create, NULL, ASSIGNED_BY_TI },
148 { NULL, NULL, 0 }
149 };
150
151 const T_COMPONENT_ADDRESS rr_list[] =
152 {
153 { rr_pei_create, NULL, ASSIGNED_BY_TI },
154 { NULL, NULL, 0 }
155 };
156
157 const T_COMPONENT_ADDRESS dl_list[] =
158 {
159 { dl_pei_create, NULL, ASSIGNED_BY_TI },
160 { NULL, NULL, 0 }
161 };
162
163 const T_COMPONENT_ADDRESS pl_list[] =
164 {
165 { pl_pei_create, NULL, ASSIGNED_BY_TI },
166 { NULL, NULL, 0 }
167 };
168
169 #ifdef FAX_AND_DATA
170 const T_COMPONENT_ADDRESS l2rt30_list[] =
171 {
172 { l2r_pei_create, NULL, ASSIGNED_BY_TI },
173 { t30_pei_create, NULL, ASSIGNED_BY_TI },
174 { NULL, NULL, (int) "L2RT30" }
175 };
176
177 const T_COMPONENT_ADDRESS rlpfad_list[] =
178 {
179 { rlp_pei_create, NULL, ASSIGNED_BY_TI },
180 { fad_pei_create, NULL, ASSIGNED_BY_TI },
181 { NULL, NULL, (int) "RLPFAD"}
182 };
183
184 #ifndef _TARGET_
185 const T_COMPONENT_ADDRESS ra_list[] =
186 {
187 { ra_pei_create, NULL, ASSIGNED_BY_TI },
188 { NULL, NULL, 0 }
189 };
190 #endif /* !_TARGET_ */
191 #endif /* FAX_AND_DATA */
192
193 #ifndef _TARGET_
194 #ifdef FF_TCP_IP
195 const T_COMPONENT_ADDRESS aaa_list[] =
196 {
197 { NULL, "AAA", ASSIGNED_BY_TI },
198 { NULL, NULL, 0 }
199 };
200 #endif /* FF_TCP_IP */
201 #endif /* !_TARGET_ */
202
203 #ifndef _TARGET_
204 #ifdef FF_PSI
205 const T_COMPONENT_ADDRESS psi_list[] =
206 {
207 { psi_pei_create, NULL, ASSIGNED_BY_TI },
208 { NULL, NULL, 0 }
209 };
210 #endif /*FF_PSI*/
211 #endif /* !_TARGET_ */
212
213 #ifdef UART
214 const T_COMPONENT_ADDRESS uart_list[] =
215 {
216 { uart_pei_create, NULL, ASSIGNED_BY_TI },
217 { NULL, NULL, 0 }
218 };
219 #endif /*UART*/
220
221 #ifdef FF_EOTD
222 const T_COMPONENT_ADDRESS eotd_list[] =
223 {
224 { lc_pei_create, NULL, ASSIGNED_BY_TI },
225 { rrlp_pei_create, NULL, ASSIGNED_BY_TI },
226 { NULL, NULL, (int)"EOTD" }
227 };
228 #endif /* FF_EOTD */
229
230
231 #ifdef FF_WAP
232 #ifndef UDP_NO_WAP
233 const T_COMPONENT_ADDRESS wap_list[] =
234 {
235 { wap_pei_create, NULL, ASSIGNED_BY_TI },
236 { NULL, NULL, 0 }
237 };
238 #endif /* UDP_NO_WAP */
239 #endif /* FF_WAP */
240
241 #ifdef CO_UDP_IP
242 const T_COMPONENT_ADDRESS udp_list[] =
243 {
244 { udp_pei_create, NULL, ASSIGNED_BY_TI },
245 { NULL, NULL, 0 }
246 };
247
248 const T_COMPONENT_ADDRESS ip_list[] =
249 {
250 { ip_pei_create, NULL, ASSIGNED_BY_TI },
251 { NULL, NULL, 0 }
252 };
253 #endif
254
255 #if defined (FF_WAP) || defined (FF_SAT_E)
256 const T_COMPONENT_ADDRESS ppp_list[] =
257 {
258 { ppp_pei_create, NULL, ASSIGNED_BY_TI },
259 { NULL, NULL, 0 }
260 };
261 #endif /* FF_WAP || FF_SAT_E */
262
263 #ifdef BT_ADAPTER
264 const T_COMPONENT_ADDRESS bti_list[] =
265 {
266 { bti_pei_create, NULL, ASSIGNED_BY_TI },
267 { NULL, NULL, 0 }
268 };
269 #endif /* BT_ADAPTER */
270
271 const T_COMPONENT_ADDRESS l1_list[] =
272 {
273 #ifdef _TARGET_
274 { l1_pei_create, NULL, ASSIGNED_BY_TI },
275 #else
276 { NULL, "L1", ASSIGNED_BY_TI },
277 #endif
278 { NULL, NULL, 0 }
279 };
280
281 const T_COMPONENT_ADDRESS * const ComponentTables[]=
282 {
283 tstrcv_list,
284 tstsnd_list,
285 mmi_list,
286 cst_list,
287 sim_list,
288 cm_list,
289 mm_list,
290 rr_list,
291 dl_list,
292 pl_list,
293 #ifdef FAX_AND_DATA
294 l2rt30_list,
295 rlpfad_list,
296 #ifndef _TARGET_
297 ra_list,
298 #endif
299 #endif /* FAX_AND_DATA */
300 #ifndef _TARGET_
301 #ifdef FF_TCP_IP
302 aaa_list,
303 #endif /* FF_TCP_IP */
304 #ifdef FF_PSI
305 psi_list,
306 #endif /*FF_PSI*/
307 #endif /* !_TARGET_ */
308 #ifdef UART
309 uart_list,
310 #endif
311 #ifdef FF_EOTD
312 eotd_list,
313 #endif
314 #ifdef FF_WAP
315 #ifndef UDP_NO_WAP
316 wap_list,
317 #endif /* !UDP_NO_WAP */
318 #endif /* FF_WAP */
319
320 #ifdef CO_UDP_IP
321 udp_list,
322 ip_list,
323 #endif /* CO_UDP_IP */
324 #if defined (FF_WAP) || defined (FF_SAT_E)
325 ppp_list,
326 #endif /* FF_WAP || FF_SAT_E */
327
328 #ifdef BT_ADAPTER
329 bti_list,
330 #endif /* BT_ADAPTER */
331 l1_list,
332 NULL
333 };
334
335 /*==== VERSIONS ===================================================*/
336 #ifndef CTRACE
337 char * str2ind_version = "&0";
338 #endif
339
340 /*==== MEMORY CONFIGURATION =======================================*/
341
342 /*
343 * Partitions pool configuration for primitive communication
344 */
345 #ifdef FAX_AND_DATA
346
347 #define PRIM_PARTITION_0_SIZE 52
348 #define PRIM_PARTITION_1_SIZE 100
349 #define PRIM_PARTITION_2_SIZE 432
350 #define PRIM_PARTITION_3_SIZE 1600
351 #define PRIM_PARTITION_4_SIZE 0
352 #define PRIM_PARTITION_5_SIZE 0
353
354 #define PRIMPOOL_0_PARTITIONS 80
355 #define PRIMPOOL_1_PARTITIONS 20
356 #define PRIMPOOL_2_PARTITIONS 30
357 #define PRIMPOOL_3_PARTITIONS 3
358 #define PRIMPOOL_4_PARTITIONS 0
359 #define PRIMPOOL_5_PARTITIONS 0
360
361 #else
362 /* no fax and data */
363 #define PRIM_PARTITION_0_SIZE 52
364 #define PRIM_PARTITION_1_SIZE 100
365 #define PRIM_PARTITION_2_SIZE 216 /* New */
366 #define PRIM_PARTITION_3_SIZE 260 /* sizeof (T_stk_cmd), do we need this? */
367 #define PRIM_PARTITION_4_SIZE 432
368 #define PRIM_PARTITION_5_SIZE 900 /* 1600 */
369
370 #define PRIMPOOL_0_PARTITIONS 80
371 #define PRIMPOOL_1_PARTITIONS 20
372 #ifdef TI_PS_UICC_CHIPSET_15
373 #define PRIMPOOL_2_PARTITIONS 6 /* 0 */
374 #else
375 #define PRIMPOOL_2_PARTITIONS 5 /* 0 */
376 #endif
377
378 #define PRIMPOOL_3_PARTITIONS 6 /* 0 */ /* Number to be optimized */
379
380 #ifdef TI_PS_UICC_CHIPSET_15
381 #define PRIMPOOL_4_PARTITIONS 6 /* 10 */
382 #else
383 #define PRIMPOOL_4_PARTITIONS 5 /* 10 */
384 #endif
385 #define PRIMPOOL_5_PARTITIONS 2 /* 3 */
386
387 #endif /* else, #ifdef FAX_AND_DATA */
388
389
390 #ifndef DATA_INT_RAM
391 #ifdef FAX_AND_DATA
392 unsigned int MaxPrimPartSize = PRIM_PARTITION_3_SIZE;
393 #else
394 unsigned int MaxPrimPartSize = PRIM_PARTITION_5_SIZE;
395 #endif
396 #endif /* !DATA_INT_RAM */
397
398 #if (!defined DATA_EXT_RAM && defined PRIM_0_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_0_INT_RAM)
399 char pool10 [ POOL_SIZE(PRIMPOOL_0_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_0_SIZE)) ];
400 #else
401 extern char pool10 [];
402 #endif
403
404 #if (!defined DATA_EXT_RAM && defined PRIM_1_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_1_INT_RAM)
405 char pool11 [ POOL_SIZE(PRIMPOOL_1_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_1_SIZE)) ];
406 #else
407 extern char pool11 [];
408 #endif
409
410 #if (!defined DATA_EXT_RAM && defined PRIM_2_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_2_INT_RAM)
411 char pool12 [ POOL_SIZE(PRIMPOOL_2_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_2_SIZE)) ];
412 #else
413 extern char pool12 [];
414 #endif
415
416 #if (!defined DATA_EXT_RAM && defined PRIM_3_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_3_INT_RAM)
417 char pool13 [ POOL_SIZE(PRIMPOOL_3_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_3_SIZE)) ];
418 #else
419 extern char pool13 [];
420 #endif
421
422 #ifndef FAX_AND_DATA
423 #if (!defined DATA_EXT_RAM && defined PRIM_4_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_4_INT_RAM)
424 char pool14 [ POOL_SIZE(PRIMPOOL_4_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_4_SIZE)) ];
425 #else
426 extern char pool14 [];
427 #endif
428
429 #if (!defined DATA_EXT_RAM && defined PRIM_5_INT_RAM) || (!defined DATA_INT_RAM && !defined PRIM_5_INT_RAM)
430 char pool15 [ POOL_SIZE(PRIMPOOL_5_PARTITIONS,ALIGN_SIZE(PRIM_PARTITION_5_SIZE)) ];
431 #else
432 extern char pool15 [];
433 #endif
434 #endif /* FAX_AND_DATA */
435
436
437 #ifndef DATA_INT_RAM
438 const T_FRM_PARTITION_POOL_CONFIG prim_grp_config[] =
439 {
440 { PRIMPOOL_0_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_0_SIZE), &pool10 },
441 { PRIMPOOL_1_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_1_SIZE), &pool11 },
442 { PRIMPOOL_2_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_2_SIZE), &pool12 },
443 { PRIMPOOL_3_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_3_SIZE), &pool13 },
444 #ifndef FAX_AND_DATA
445 { PRIMPOOL_4_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_4_SIZE), &pool14 },
446 { PRIMPOOL_5_PARTITIONS, ALIGN_SIZE(PRIM_PARTITION_5_SIZE), &pool15 },
447 #endif
448 { 0 , 0 , NULL }
449 };
450 #endif /* !DATA_INT_RAM */
451
452 /*
453 * Partitions pool configuration for test interface communication
454 */
455 #define TESTPOOL_0_PARTITIONS 1 /* 10 */
456 #define TESTPOOL_1_PARTITIONS 15 /* 50 */
457 #define TESTPOOL_2_PARTITIONS 0 /* 2 */
458
459 #define TSTSND_QUEUE_ENTRIES (TESTPOOL_0_PARTITIONS+TESTPOOL_1_PARTITIONS+TESTPOOL_2_PARTITIONS)
460 #define TSTRCV_QUEUE_ENTRIES 50
461
462 #define TEST_PARTITION_0_SIZE 16 /* 80 */
463 #ifdef _TARGET_
464 #define TEST_PARTITION_1_SIZE 160
465 #else
466 #define TEST_PARTITION_1_SIZE 260
467 #endif /* else, #ifdef _TARGET_ */
468
469 #define TEST_PARTITION_2_SIZE 0 /* 1600 */
470
471 #ifndef DATA_INT_RAM
472 const USHORT TST_SndQueueEntries = TSTSND_QUEUE_ENTRIES;
473 const USHORT TST_RcvQueueEntries = TSTRCV_QUEUE_ENTRIES;
474 const USHORT TextTracePartitionSize = TEST_PARTITION_1_SIZE;
475 #endif /* !DATA_INT_RAM */
476
477 #if (!defined DATA_EXT_RAM && defined TEST_0_INT_RAM) || (!defined DATA_INT_RAM && !defined TEST_0_INT_RAM)
478 char pool20 [ POOL_SIZE(TESTPOOL_0_PARTITIONS,ALIGN_SIZE(TEST_PARTITION_0_SIZE)) ];
479 #else
480 extern char pool20 [];
481 #endif
482
483 #if (!defined DATA_EXT_RAM && defined TEST_1_INT_RAM) || (!defined DATA_INT_RAM && !defined TEST_1_INT_RAM)
484 char pool21 [ POOL_SIZE(TESTPOOL_1_PARTITIONS,ALIGN_SIZE(TEST_PARTITION_1_SIZE)) ];
485 #else
486 extern char pool21 [];
487 #endif
488
489 #ifndef DATA_INT_RAM
490 const T_FRM_PARTITION_POOL_CONFIG test_grp_config[] =
491 {
492 { TESTPOOL_0_PARTITIONS, ALIGN_SIZE(TEST_PARTITION_0_SIZE), &pool20 },
493 { TESTPOOL_1_PARTITIONS, ALIGN_SIZE(TEST_PARTITION_1_SIZE), &pool21 },
494 { 0 , 0 , NULL }
495 };
496 #endif /* !DATA_INT_RAM */
497
498 /*
499 * Partitions pool configuration for general purpose allocation
500 */
501
502 #define DMEM_PARTITION_0_SIZE 16 /* 100 */
503
504 /*
505 * CQ 29245: Value of the DMEMPOOL_0_PARTITIONS has been modified from 30 to 50
506 */
507
508 #define DMEMPOOL_0_PARTITIONS 50 /* 10 */ /* In GPRS this is 70 */
509
510 #if (!defined DATA_EXT_RAM && defined DMEM_0_INT_RAM) || (!defined DATA_INT_RAM && !defined DMEM_0_INT_RAM)
511 char pool30 [ POOL_SIZE(DMEMPOOL_0_PARTITIONS,ALIGN_SIZE(DMEM_PARTITION_0_SIZE)) ];
512 #else
513 extern char pool30 [];
514 #endif
515
516 #ifndef DATA_INT_RAM
517 const T_FRM_PARTITION_POOL_CONFIG dmem_grp_config[] =
518 {
519 { DMEMPOOL_0_PARTITIONS, ALIGN_SIZE(DMEM_PARTITION_0_SIZE), &pool30 },
520 { 0 , 0 , NULL }
521 };
522 #endif /* !DATA_INT_RAM */
523
524 /*
525 * Partitions group list
526 */
527
528 #ifndef DATA_INT_RAM
529 const T_FRM_PARTITION_GROUP_CONFIG partition_grp_config[MAX_POOL_GROUPS+1] =
530 {
531 { "PRIM", &prim_grp_config[0] },
532 { "TEST", &test_grp_config[0] },
533 { "DMEM", &dmem_grp_config[0] },
534 { NULL, NULL }
535 };
536
537 extern T_HANDLE PrimGroupHandle;
538 extern T_HANDLE DmemGroupHandle;
539 extern T_HANDLE TestGroupHandle;
540
541 T_HANDLE *PoolGroupHandle[MAX_POOL_GROUPS+1] =
542 {
543 &PrimGroupHandle,
544 &TestGroupHandle,
545 &DmemGroupHandle,
546 NULL
547 };
548 #endif /* !DATA_INT_RAM */
549
550 /*
551 * Dynamic Memory Pool Configuration
552 */
553
554 /* Detecting GSM only lite to compile using minimal settings */
555 #if !defined(FAX_AND_DATA) && !defined(FF_TCP_IP) && !defined(FF_EOTD) &&\
556 !defined(FF_WAP) && !defined(BT_ADAPTER)
557 #define GO_LITE 1
558 #endif
559
560 #if defined(_TARGET_) && defined(GO_LITE)
561 #define EXT_DATA_POOL_PS_BASE_SIZE 23075
562 #else /* _TARGET_ && GO_LITE */
563 #define EXT_DATA_POOL_PS_BASE_SIZE 50000
564 #endif /* _TARGET_ && GO_LITE */
565
566 #undef GO_LITE /* We are not going to use this definition globally */
567
568 #ifdef MEMORY_SUPERVISION
569 #define EXT_DATA_POOL_PPS_ADDITION ((EXT_DATA_POOL_PS_BASE_SIZE>>3)+10000)
570 #else /* MEMORY_SUPERVISION */
571 #define EXT_DATA_POOL_PPS_ADDITION 0
572 #endif /* MEMORY_SUPERVISION */
573
574 #ifdef FAX_AND_DATA
575 #define EXT_DATA_POOL_FD_ADDITION 13000
576 #else /* FAX_AND_DATA */
577 #define EXT_DATA_POOL_FD_ADDITION 0
578 #endif /* FAX_AND_DATA */
579
580 #if defined (FF_WAP) || defined (FF_SAT_E)
581 #define EXT_DATA_POOL_WAP_ADDITION 5000
582 #else /* FF_WAP || FF_SAT_E */
583 #define EXT_DATA_POOL_WAP_ADDITION 0
584 #endif /* FF_WAP || FF_SAT_E */
585
586 #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)
587 #define INT_DATA_POOL_PS_SIZE 1 /* no distinction between external/internal RAM for GO/GOLite builds */
588
589 #define EXT_DATA_POOL_GPF_SIZE (2048 + OS_QUEUE_ENTRY_SIZE(TSTSND_QUEUE_ENTRIES) + OS_QUEUE_ENTRY_SIZE(TSTRCV_QUEUE_ENTRIES))
590
591 #define EXT_DATA_POOL_SIZE (EXT_DATA_POOL_PS_SIZE + EXT_DATA_POOL_GPF_SIZE)
592 #define INT_DATA_POOL_SIZE (INT_DATA_POOL_PS_SIZE)
593
594 #ifndef DATA_INT_RAM
595 char ext_data_pool [ EXT_DATA_POOL_SIZE ];
596 #endif
597
598 #ifndef DATA_INT_RAM
599
600 const T_MEMORY_POOL_CONFIG memory_pool_config[MAX_MEMORY_POOLS+1] =
601 {
602 { "EXTPOOL", EXT_DATA_POOL_SIZE, &ext_data_pool[0] },
603 { NULL }
604 };
605
606 extern T_HANDLE ext_data_pool_handle;
607
608 T_HANDLE *MemoryPoolHandle[MAX_MEMORY_POOLS+1] =
609 {
610 &ext_data_pool_handle,
611 NULL
612 };
613
614 #endif /* !DATA_INT_RAM */