197
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /*----------------------------------------------------------------------------
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 | Project : 3G PS
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 | Module : SM
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 +-----------------------------------------------------------------------------
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 | Copyright 2003 Texas Instruments.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 | All rights reserved.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 | This file is confidential and a trade secret of Texas
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 | Instruments .
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 | The receipt of or possession of this file does not convey
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 | any rights to reproduce or disclose its contents or to
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 | manufacture, use, or sell anything it may describe, in
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 | whole, or in part, without the specific written consent of
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 | Texas Instruments.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 +-----------------------------------------------------------------------------
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 | Purpose: Debug definitions for the User Plane Management (UPM) Entity.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 | For design details, see:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 | 8010.939 UPM Detailed Specification
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 +---------------------------------------------------------------------------*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 /*==== DECLARATION CONTROL =================================================*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 #ifndef UPM_DEBUG_H
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #define UPM_DEBUG_H
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 /*==== INCLUDES =============================================================*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 /*==== CONSTS ===============================================================*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 /*==== TYPES ================================================================*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 #ifdef S_SPLINT_S /* LINT code checker defines */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 #undef TRUE
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 #undef FALSE
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 typedef /*@only@*/ T_VOID_STRUCT *T_VOID_STRUCT_ONLY;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 #ifdef TI_UMTS
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 typedef /*@null@*/ /*@only@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 T_MEM_uplink_buffer_users_info *lint_mem_user_info;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 #endif /* TI_UMTS */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 #ifndef UPM_WITHOUT_USER_PLANE
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 typedef /*@null@*/ /*@only@*/ T_desc2 *lint_desc_ptr;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 /*@-redef@*/ /*@-matchfields@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 /*@null@*/ U32 /*@alt lint_desc_ptr@*/ next;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 U16 offset;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 U16 len;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 U16 size;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 /*@reldef@*/ U8 buffer[1];
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 /*@reldef@*//*@unused@*/ U8 zzz_align0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 } T_desc2;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 typedef struct
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 U16 list_len;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 /*@reldef@*//*@unused@*/ U8 zzz_align0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 /*@reldef@*//*@unused@*/ U8 zzz_align1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 U32 /*@alt lint_desc_ptr@*/ first;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 } T_desc_list2;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /*@=redef@*/ /*@=matchfields@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 #endif /* UPM_WITHOUT_USER_PLANE */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 #endif /* S_SPLINT_S */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 /*==== EXPORTS ==============================================================*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 #ifdef S_SPLINT_S /* LINT code checker defines */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 /*@-incondefs@*/ /*@-redecl@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 T_HANDLE vsi_c_open (T_HANDLE Caller, /*@observer@*/ char *Name)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 /*@globals internalState@*/ /*@modifies internalState@*/;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 int /*@alt void@*/ vsi_c_close (T_HANDLE Caller, T_HANDLE ComHandle);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 int /*@alt void@*/ vsi_c_psend (T_HANDLE ComHandle,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 /*@only@*/ /*@out@*/T_VOID_STRUCT *ptr FILE_LINE_TYPE);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 /*@null@*/ /*@only@*/ /*@out@*/ T_VOID_STRUCT *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 vsi_c_pnew (U32 /*@alt int@*/ Size,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 U32 /*@alt int@*/ opc FILE_LINE_TYPE);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 /*@null@*/ /*@only@*/ /*@out@*/ T_VOID_STRUCT *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 vsi_c_new_sdu(U32 /*@alt int@*/ Size,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 U32 /*@alt int@*/ opc,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 U16 /*@alt int,size_t@*/ sdu_len,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 U16 /*@alt int,size_t@*/ sdu_offset,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 U16 /*@alt int@*/ encode_offset
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 FILE_LINE_TYPE);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 int /*@alt void@*/ vsi_c_pfree (/*@out@*/ /*@null@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 T_VOID_STRUCT_ONLY *Msg FILE_LINE_TYPE);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 /*@null@*/ /*@only@*/ /*@out@*/ T_VOID_STRUCT *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 vsi_m_cnew (U32 /*@alt int@*/ size,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 U32 /*@alt int@*/ type FILE_LINE_TYPE)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 /*@globals internalState@*/ /*@modifies internalState@*/;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 int /*@alt void@*/ vsi_m_cfree (/*@out@*/ /*@null@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 T_VOID_STRUCT_ONLY *ptr FILE_LINE_TYPE)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 /*@globals internalState@*/ /*@modifies internalState@*/;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 #ifdef TI_UMTS
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 void mem_adjust_uplink_users_flow_control(/*@in@*/ lint_mem_user_info users_info[MEM_MAX_RAB_ID]);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 /*@owned@*/U8 * mem_alloc (U8 user_handle, U16 length,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 /*@out@*/ U32 *ptr_handle);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 /*@owned@*/U8 * mem_get_user_data(T_MEM_HANDLE memory_handle,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 /*@out@*/ U16 *ptr_length);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 #endif /* TI_UMTS */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 #ifndef UPM_WITHOUT_USER_PLANE
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 DTI_HANDLE dti_init (U8 maximum_links, T_HANDLE handle,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 U32 entity_options,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 /*@-type@*/ void (*sig_callback)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 /*@=type@*/ (U8 instance, U8 interfac, U8 channel, U8 reason,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 /*@only@*/ /*@null@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 T_DTI2_DATA_IND *dti_data_ind))
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 /*@globals internalState@*/ /*@modifies internalState@*/;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 BOOL dti_resolve_link_id(/*@observer@*/DTI_HANDLE hDTI,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 U8 instance, U8 interfac, U8 channel,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 /*@out@*/ U32 *link_id);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 void mfree_desc (DTI_HANDLE hDTI,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 /*@null@*/ /*@out@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 T_desc_list2 * desc_list2)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 /*@ensures isnull desc_list2->first@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 /*@globals internalState@*/ /*@modifies internalState@*/;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 void dti_send_data(/*@observer@*/DTI_HANDLE hDTI,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 U8 instance, U8 interfac, U8 channel,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 /*@only@*/ /*@null@*/ /*@out@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 T_DTI2_DATA_IND *dti_data_ind);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 #endif /* UPM_WITHOUT_USER_PLANE */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 T_CL_result /*@alt void@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 cl_qos_convert_r97_to_r99(/*@partial@*//*@in@*/T_PS_qos_r97 *src_qos_r97,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 /*@out@*/ T_PS_qos_r99 *dst_qos_r99);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 T_CL_result /*@alt void@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 cl_qos_convert_r99_to_r97(/*@partial@*//*@in@*/T_PS_qos_r99 *src_qos_r99,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 /*@out@*/ T_PS_qos_r97 *dst_qos_r97);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 /*@=incondefs@*/ /*@=redecl@*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 #endif /* S_SPLINT_S */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 #endif /* UPM_DEBUG_H */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 /*==== END OF FILE ==========================================================*/
|