annotate src/gpf3/inc/p_mem.h @ 695:530f71d65c20

uartfax.c: pull from Tourmaline (GTM900 RI output) In addition to the primary intent of bringing in GTM900 RI output support, pulling uartfax.c wholesale from Tourmaline also changes the initial_time argument in the two NU_Create_Timer() calls from 0 to 1. This change is required for the new version of Nucleus used in Tourmaline and Selenite (and apparently also used by TI in LoCosto), and it is harmless (no effect) for the original TCS211 version of Nucleus used in Magnetite. The new philosophical model being adopted is that Tourmaline is our new development head firmware, whereas Magnetite will now be maintained similarly to how Linux maintainers treat stable kernels: changes will be backported from Tourmaline if they are deemed appropriate for stable modem firmware.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 24 Oct 2020 17:33:10 +0000
parents c41a534f33c6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 +------------------------------------------------------------------------------
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 | File: mem.h
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 +------------------------------------------------------------------------------
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 | Copyright Condat AG 1999-2000, Berlin
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | All rights reserved.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 | This file is confidential and a trade secret of Condat AG.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 | The receipt of or possession of this file does not convey
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 | any rights to reproduce or disclose its contents or to
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 | manufacture, use, or sell anything it may describe, in
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 | whole, or in part, without the specific written consent of
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 | Condat AG.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 +------------------------------------------------------------------------------
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 | Purpose: Definitions for the entity MEM.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 | $Identity:$
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 +------------------------------------------------------------------------------
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 #ifndef MEM_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 #define MEM_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 /*==== INCLUDES ==============================================================*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 #include "typedefs.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 #include "vsi.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 #include "pei.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 #include "tools.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 /*==== GENERATED CONTENT ======================================================*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 +--------------------------------------------------------------------------+
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 | PROJECT : PROTOCOL STACK |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 | FILE : p_8010_112_mem_sap.val |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 | SOURCE : "s:\g23m\condat\ms\DFILE\PRIM\8010_112_mem_sap.pdf" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 | LastModified : "12 February, 2003 by Gert Z. Srensen (GSO)" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 | IdAndVersion : "8010.112.02.002" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 | SrcFileTime : "Wed Nov 26 14:28:02 2003" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 | Generated by CCDGEN_2.4.11 on Tue Sep 21 10:40:12 2004 |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 +--------------------------------------------------------------------------+
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 /* PRAGMAS
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 * PREFIX : MEM
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 * COMPATIBILITY_DEFINES : NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 * ALWAYS_ENUM_IN_VAL_FILE: YES
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 * ENABLE_GROUP: NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 * CAPITALIZE_TYPENAME: NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 #ifndef P_8010_112_MEM_SAP_VAL
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 #define P_8010_112_MEM_SAP_VAL
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 #define CDG_ENTER__P_8010_112_MEM_SAP_VAL
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 #define CDG_ENTER__FILENAME _P_8010_112_MEM_SAP_VAL
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 #define CDG_ENTER__P_8010_112_MEM_SAP_VAL__FILE_TYPE CDGINC
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 #define CDG_ENTER__P_8010_112_MEM_SAP_VAL__LAST_MODIFIED _12_February_2003_by_Gert_Z_Srensen_GSO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 #define CDG_ENTER__P_8010_112_MEM_SAP_VAL__ID_AND_VERSION _8010_112_02_002
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 #define CDG_ENTER__P_8010_112_MEM_SAP_VAL__SRC_FILE_TIME _Wed_Nov_26_14_28_02_2003
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 #include "CDG_ENTER.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 #undef CDG_ENTER__P_8010_112_MEM_SAP_VAL
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 #undef CDG_ENTER__FILENAME
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 * user defined constants
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 #define MEM_MAX_NUMBER_OF_BUFFERS (0x40)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 #define MEM_MAX_NUMBER_OF_USERS (0x40)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 #define MEM_UNORDERED_BUFFER (0x0)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 #define MEM_FIFO_BUFFER (0x1)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 #define MEM_MAX_RAB_ID (0x10)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 #define MEM_MAX_MEMORY_POOL_SIZE (0xffffff)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 #define MEM_INVALID_USER_HANDLE (0x0)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 #define MEM_INVALID_BUFFER_HANDLE (0x0)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 #define MEM_RLC_UL_AM_MODE (0x0)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 #define MEM_RLC_UL_UM_MODE (0x1)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 #define MEM_RLC_UL_TM_MODE (0x2)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 #define MEM_INVALID_MEMORY_HANDLE (0x0)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 #include "CDG_LEAVE.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 +--------------------------------------------------------------------------+
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 | PROJECT : PROTOCOL STACK |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 | FILE : p_8010_112_mem_sap.h |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 | SOURCE : "s:\g23m\condat\ms\DFILE\PRIM\8010_112_mem_sap.pdf" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 | LastModified : "12 February, 2003 by Gert Z. Srensen (GSO)" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 | IdAndVersion : "8010.112.02.002" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 | SrcFileTime : "Wed Nov 26 14:28:02 2003" |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 | Generated by CCDGEN_2.4.11 on Tue Sep 21 10:40:12 2004 |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 | !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!! |
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 +--------------------------------------------------------------------------+
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 /* PRAGMAS
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 * PREFIX : MEM
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 * COMPATIBILITY_DEFINES : NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 * ALWAYS_ENUM_IN_VAL_FILE: YES
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 * ENABLE_GROUP: NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 * CAPITALIZE_TYPENAME: NO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 #ifndef P_8010_112_MEM_SAP_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 #define P_8010_112_MEM_SAP_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 #define CDG_ENTER__P_8010_112_MEM_SAP_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 #define CDG_ENTER__FILENAME _P_8010_112_MEM_SAP_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 #define CDG_ENTER__P_8010_112_MEM_SAP_H__FILE_TYPE CDGINC
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 #define CDG_ENTER__P_8010_112_MEM_SAP_H__LAST_MODIFIED _12_February_2003_by_Gert_Z_Srensen_GSO
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 #define CDG_ENTER__P_8010_112_MEM_SAP_H__ID_AND_VERSION _8010_112_02_002
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 #define CDG_ENTER__P_8010_112_MEM_SAP_H__SRC_FILE_TIME _Wed_Nov_26_14_28_02_2003
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 #include "CDG_ENTER.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 #undef CDG_ENTER__P_8010_112_MEM_SAP_H
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 #undef CDG_ENTER__FILENAME
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 #ifndef __T_MEM_no_parms__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 #define __T_MEM_no_parms__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 * No parameters.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 * CCDGEN:WriteStruct_Count==14836
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 U8 none; /*< 0: 1> No parameters */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 U8 zzz_align0; /*< 1: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 U8 zzz_align1; /*< 2: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 U8 zzz_align2; /*< 3: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 } T_MEM_no_parms;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 #ifndef __T_MEM_uplink_buffer_users_info__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153 #define __T_MEM_uplink_buffer_users_info__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 * No parameters.
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 * CCDGEN:WriteStruct_Count==14839
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 U8 rab_id; /*< 0: 1> Radio access identifier */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 U8 rlc_mode; /*< 1: 1> RLC Mode */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 U8 zzz_align0; /*< 2: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 U8 zzz_align1; /*< 3: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 U32 bits_per_tti; /*< 4: 4> Bits per TTI */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 U16 rlc_tx_window_size; /*< 8: 2> RLC window size */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 U8 zzz_align2; /*< 10: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167 U8 zzz_align3; /*< 11: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 } T_MEM_uplink_buffer_users_info;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 * End of substructure section, begin of primitive definition section
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 #ifndef __T_MEM_READY_IND__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 #define __T_MEM_READY_IND__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 *
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 * CCDGEN:WriteStruct_Count==14842
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 U8 user_handle; /*< 0: 1> User Handle */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 U8 user_parameter; /*< 1: 1> User parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 U8 zzz_align0; /*< 2: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 U8 zzz_align1; /*< 3: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 } T_MEM_READY_IND;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 #ifndef __T_MEM_BUFFER__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 #define __T_MEM_BUFFER__
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 /*
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 *
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 * CCDGEN:WriteStruct_Count==14845
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 U32 memory_pool_size; /*< 0: 4> Memory pool size */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200 U32 allocated; /*< 4: 4> Parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 U8 ordering; /*< 8: 1> Ordering */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 U8 delete_pending; /*< 9: 1> Parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 U8 zzz_align0; /*< 10: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 U8 zzz_align1; /*< 11: 1> alignment */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 U32 max_allocated; /*< 12: 4> Parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206 U32 fifo_read_index; /*< 16: 4> Parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 U32 fifo_write_index; /*< 20: 4> Parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 } T_MEM_BUFFER;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 #include "CDG_LEAVE.h"
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218 /*==== CONSTS ================================================================*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 #define MEM_READY_IND (0x8000408b)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221 #define MEM_BUFFER (0x8001408b)
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
222
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
223
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
224 #ifdef ENTITY_MEM
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 #define VSI_CALLER mem_handle,
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 #define VSI_CALLER_SINGLE mem_handle
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 #endif
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 #define MEM_STATISTICS
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 #define MAX_UPLINK_USERS 11 /* Maximum number of uplink buffer users. Corresponds */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234 /* maxim number of available rab identifiers */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 #define MAX_RAB_ID 16 /* Maximum RAB identifier. Used in array declarations. 15+1 */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236 #define RAB_TRANSMIT_BUFFER_SIZE_BYTES 500000 /* Uplink buffer size */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237 #define MAX_SDU_SIZE 1520
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
239
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
240 /*==== TYPES =================================================================*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
241
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
242 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
243 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
244 T_HANDLE comm_handle; /* Communication handle to user */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245 U8 user_parameter; /* User defined parameter */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 U8 buffer_id; /* Id of buffer used by this user */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 U32 low; /* Flow control low */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249 U32 high; /* Flow control high */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 U32 max; /* Flow control max */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251 U32 allocated; /* Allocated number of octets */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
252
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
253 #ifdef MEM_STATISTICS
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
254 U32 max_allocated; /* Max number of octets allocated by user */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
255 #endif /* STATISTICS */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
256
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257 U16 space_before; /* Extra space to allocate before user data */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 U8 space_after; /* Extra space to allocate after user data */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259 U8 ready; /* TRUE if ready to receive data from this user */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 U8 delete_pending; /* TRUE if user is to be deleted when all freed */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 } T_MEM_USER;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 typedef struct
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 {
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 U8* (*get_user_data) (U32 memory_handle, U16 *ptr_length);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 U8 (*create_user) (U8 buffer_handle, U8 user_parameter, char *task_name);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269 U8 (*create_buffer) (U8 ordering, U32 memory_pool_size);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 U8* (*alloc) (U8 user_handle, U16 length, U32 *ptr_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 void (*dealloc) (U32 memory_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272 void (*delete_user) (U8 user_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 void (*delete_buffer) (U8 buffer_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 } T_MEM_PROPERTIES;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 /*==== EXPORTS ===============================================================*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278 #ifdef MEM_PEI_C
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 /* Task handle for MEM */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 T_HANDLE mem_handle;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283 /* Semaphore used to guarantee exclusive access at critical points */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 T_HANDLE mem_semaphore_handle;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 /*T_MEM_BUFFER *mem_buffer[MEM_MAX_NUMBER_OF_BUFFERS];*/
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287 T_MEM_USER *mem_user[MEM_MAX_NUMBER_OF_USERS];
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 #else /* MEM_PEI_C */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291 extern T_HANDLE mem_handle;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292 extern T_HANDLE mem_semaphore_handle;
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 extern T_MEM_BUFFER *mem_buffer[MEM_MAX_NUMBER_OF_BUFFERS];
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 extern T_MEM_USER *mem_user[MEM_MAX_NUMBER_OF_USERS];
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 #endif /* MEM_PEI_C */
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 extern U8 mem_create_buffer(U8 ordering, U32 memory_pool_size);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 extern void mem_delete_buffer(U8 buffer_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300 extern U8 mem_create_user(U8 buffer_handle, U8 user_parameter, char *task_name);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301 extern void mem_init(void);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 extern void mem_delete_user(U8 user_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 extern U8 mem_create_uplink_user(char* task_name, U8 mem_rab_id);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304 extern void mem_delete_uplink_user(U8 user_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305 extern void mem_adjust_uplink_users_flow_control(T_MEM_uplink_buffer_users_info *users_info[MEM_MAX_RAB_ID]);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 extern void mem_configure_flow_control(U8 user_handle, U32 low, U32 high, U32 max);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 extern void mem_configure_extra_space(U8 user_handle, U16 space_before, U8 space_after);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
308 extern BOOL mem_ready(U8 user_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
309 extern U8 *mem_alloc(U8 user_handle, U16 length, U32 *ptr_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
310 extern void mem_dealloc(U32 memory_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
311 extern void mem_realloc(U32 memory_handle, U16 length);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
312 extern U8 *mem_get_user_data(U32 memory_handle, U16 *ptr_length);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
313 extern U16 mem_get_space_before(U32 memory_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
314 extern U8 mem_get_space_after(U32 memory_handle);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
315 extern U8 *mem_decrease_space_before(U32 memory_handle, U16 delta_space_before, U16 *ptr_length);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
316 extern void mem_increase_space_before(U32 memory_handle, U16 delta_space_before);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
317 extern void mem_decrease_space_after(U32 memory_handle, U8 delta_space_after);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
318 extern void mem_increase_space_after(U32 memory_handle, U8 delta_space_after);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
319 extern void mem_send_ready_ind(T_HANDLE com_handle, U8 user_handle, U8 user_paramaeter);
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
320
c41a534f33c6 src/gpf3: preened GPF goo from TCS3.2
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
321 #endif /* MEM_H */