comparison ccd/ccddata_tap_priv.c @ 0:75a11d740a02

initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 09 Jun 2016 00:02:41 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:75a11d740a02
1 /*
2 +-----------------------------------------------------------------------------
3 | Project :
4 | Modul : ccddata_tap_priv.c
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 : Ccddata abstraction for use in lib/dll. This function belongs
18 | logically to tap_tdl.c, but is based on constants from mconst.cdg.
19 +-----------------------------------------------------------------------------
20 */
21
22 #define CCDDATA_TAP_PRIV_C
23
24 #include "typedefs.h"
25 #include "mconst.cdg"
26 #include "ccddata_tap_priv.h"
27
28 /*
29 +------------------------------------------------------------------------------
30 | Function : ccddata_tap_get_pd
31 +------------------------------------------------------------------------------
32 | Description : This function returns the protocol discriminator to a
33 | given entity number generated by ccdgen.
34 |
35 | Parameters : comp - entity number.
36 |
37 | Return : The protocol discriminator or the error condition
38 | TAP_PD_INVALID (= -1) if the entity is not known.
39 +------------------------------------------------------------------------------
40 */
41 int ccddata_tap_get_pd (UCHAR comp)
42 {
43 switch (comp)
44 {
45 #ifdef CCDENT_XX_CSN1
46 case CCDENT_XX_CSN1:
47 return TAP_NOPD_MT;
48 #endif
49 #ifdef CCDENT_XX_TDC
50 case CCDENT_XX_TDC:
51 return TAP_NOPD_MT;
52 #endif
53 #ifdef CCDENT_RR_SHORT_PD
54 case CCDENT_RR_SHORT_PD:
55 return TAP_RR_SHORT;
56 #endif
57 #ifdef CCDENT_RR_SHORT
58 case CCDENT_RR_SHORT:
59 return TAP_RR_SHORT;
60 #endif
61 #ifdef CCDENT_UMTS_AS_ASN1_MSG
62 case CCDENT_UMTS_AS_ASN1_MSG:
63 return TAP_NOPD_NOMT;
64 #endif
65 #ifdef CCDENT_RRLP_ASN1_MSG
66 case CCDENT_RRLP_ASN1_MSG:
67 return TAP_NOPD_NOMT;
68 #endif
69 #ifdef CCDENT_ASN1_MSG
70 case CCDENT_ASN1_MSG:
71 return TAP_NOPD_MT;
72 #endif
73 #ifdef CCDENT_CLT
74 case CCDENT_CLT:
75 return TAP_NOPD_MT;
76 #endif
77 #ifdef CCDENT_CC
78 case CCDENT_CC:
79 return TAP_PD_CC;
80 #endif
81 #ifdef CCDENT_MM
82 case CCDENT_MM:
83 return TAP_PD_MM;
84 #endif
85 #ifdef CCDENT_GMM
86 case CCDENT_GMM:
87 return TAP_PD_GMM;
88 #endif
89 #ifdef CCDENT_SM
90 case CCDENT_SM:
91 return TAP_PD_SM;
92 #endif
93 #ifdef CCDENT_RR
94 case CCDENT_RR:
95 return TAP_PD_RR;
96 #endif
97 #ifdef CCDENT_SS
98 case CCDENT_SS:
99 return TAP_PD_SS;
100 #endif
101 #ifdef CCDENT_SMS
102 case CCDENT_SMS:
103 return TAP_PD_SMS;
104 #endif
105 #ifdef CCDENT_TST
106 case CCDENT_TST:
107 return TAP_PD_TST;
108 #endif
109 #ifdef CCDENT_XX
110 case CCDENT_XX:
111 return TAP_PD_XX;
112 #endif
113 #ifdef CCDENT_ABIS
114 case CCDENT_ABIS:
115 return TAP_PD_ABIS;
116 #endif
117 #ifdef CCDENT_GRR
118 /* special treatment: no pd in GRR-messages */
119 case CCDENT_GRR:
120 return TAP_PD_OK;
121 #endif
122 default:
123 return TAP_PD_INVALID;
124 }
125 }
126
127 /*
128 +------------------------------------------------------------------------------
129 | Function : ccddata_tap_check_pd
130 +------------------------------------------------------------------------------
131 | Description : This function checks if a protocol discriminator belongs to
132 | an entity number generated by ccdgen.
133 |
134 | Parameters : comp - entity number.
135 | pd - protocol discriminator.
136 |
137 | Return : The protocol discriminator. The error condition
138 | TAP_PD_INVALID (= -1) is returned if the given comination
139 | does not match. It is not an error if the entity is not
140 | known.
141 +------------------------------------------------------------------------------
142 */
143 int ccddata_tap_check_pd (UCHAR comp, UCHAR pd)
144 {
145 switch (comp)
146 {
147 #ifdef CCDENT_CC
148 case CCDENT_CC:
149 if (pd == TAP_PD_CC)
150 return TAP_PD_CC;
151 break;
152 #endif
153 #ifdef CCDENT_MM
154 case CCDENT_MM:
155 if (pd == TAP_PD_MM)
156 return TAP_PD_MM;
157 break;
158 #endif
159 #ifdef CCDENT_GMM
160 case CCDENT_GMM:
161 if (pd == TAP_PD_GMM)
162 return TAP_PD_GMM;
163 break;
164 #endif
165 #ifdef CCDENT_SM
166 case CCDENT_SM:
167 if (pd == TAP_PD_SM)
168 return TAP_PD_SM;
169 break;
170 #endif
171 #ifdef CCDENT_RR
172 case CCDENT_RR:
173 if (pd == TAP_PD_RR)
174 return TAP_PD_RR;
175 break;
176 #endif
177 #ifdef CCDENT_SS
178 case CCDENT_SS:
179 if (pd == TAP_PD_SS)
180 return TAP_PD_SS;
181 break;
182 #endif
183 #ifdef CCDENT_SMS
184 case CCDENT_SMS:
185 if (pd == TAP_PD_SMS)
186 return TAP_PD_SMS;
187 break;
188 #endif
189 #ifdef CCDENT_XX
190 case CCDENT_XX:
191 if (pd == TAP_PD_XX)
192 return TAP_PD_XX;
193 break;
194 #endif
195 default:
196 return pd;
197 }
198 return TAP_PD_INVALID;
199 }