comparison gsm-fw/L1/include/l1_msgty.h @ 530:25a7fe25864c

gsm-fw/L1/include: switch to LoCosto versions of all header files
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Fri, 01 Aug 2014 16:38:35 +0000
parents afceeeb2cba1
children c87f2e4dc391
comparison
equal deleted inserted replaced
529:f72c9db5e2f5 530:25a7fe25864c
1 /************* Revision Controle System Header ************* 1 /************* Revision Controle System Header *************
2 * GSM Layer 1 software 2 * GSM Layer 1 software
3 * L1_MSGTY.H 3 * L1_MSGTY.H
4 * 4 *
5 * Filename l1_msgty.h 5 * Filename l1_msgty.h
6 * Copyright 2003 (C) Texas Instruments 6 * Copyright 2003 (C) Texas Instruments
7 * 7 *
8 ************* Revision Controle System Header *************/ 8 ************* Revision Controle System Header *************/
9 9
10 10
11 11
25 /* Structure definition for L1S <-> DATA ADAPTOR data blocks */ 25 /* Structure definition for L1S <-> DATA ADAPTOR data blocks */
26 /* TCH/9.6 -> 30 bytes */ 26 /* TCH/9.6 -> 30 bytes */
27 /* TCH/4.8 -> 15 bytes */ 27 /* TCH/4.8 -> 15 bytes */
28 /* TCH/2.4 -> 9 bytes */ 28 /* TCH/2.4 -> 9 bytes */
29 /****************************************************************/ 29 /****************************************************************/
30 typedef struct 30 typedef struct
31 { 31 {
32 UWORD8 A[30]; 32 UWORD8 A[30];
33 } 33 }
34 T_DATA_FRAME; 34 T_DATA_FRAME;
35 35
36 /****************************************************************/ 36 /****************************************************************/
37 /* Structure definition for L1A <-> MMI messages */ 37 /* Structure definition for L1A <-> MMI messages */
38 /****************************************************************/ 38 /****************************************************************/
39 39
40 typedef struct 40 typedef struct
41 { 41 {
42 UWORD8 tx_flag; 42 UWORD8 tx_flag;
43 UWORD8 traffic_period; 43 UWORD8 traffic_period;
44 UWORD8 idle_period; 44 UWORD8 idle_period;
45 } 45 }
62 UWORD8 num_of_clock_cfg; // Dynamic clock configuration index 62 UWORD8 num_of_clock_cfg; // Dynamic clock configuration index
63 } 63 }
64 T_TST_HW_CONFIG_REQ; 64 T_TST_HW_CONFIG_REQ;
65 #endif // OP_L1_STANDALONE 65 #endif // OP_L1_STANDALONE
66 66
67 /* Message used for software dynamic configuration */
68 typedef struct
69 {
70 UWORD8 ids_enable; // activation of IDS module
71 T_FACCH_TEST_PARAMS facch_test;
72 }
73 T_TST_SW_CONFIG_REQ;
74
67 typedef struct 75 typedef struct
68 { 76 {
69 UWORD32 mf51_fn; 77 UWORD32 mf51_fn;
70 } 78 }
71 T_MPHC_START_CBCH_READING; 79 T_MPHC_START_CBCH_READING;
74 { 82 {
75 T_RXLEV_MEAS A[8]; 83 T_RXLEV_MEAS A[8];
76 UWORD8 nbr_of_carriers; 84 UWORD8 nbr_of_carriers;
77 WORD8 s_rxlev; 85 WORD8 s_rxlev;
78 UWORD8 ba_id; 86 UWORD8 ba_id;
87 //added for Enhanced RSSI
88 UWORD16 qual_acc_idle; // accumulated rxqual meas. on different channels in Idle mode.= error bits
89 UWORD32 qual_nbr_meas_idle; // accumulated rxqual meas. on different channels in Idle mode.= total number of bits decoded
90
91
79 } 92 }
80 T_MPHC_RXLEV_PERIODIC_IND; 93 T_MPHC_RXLEV_PERIODIC_IND;
81 94
82 typedef struct 95 typedef struct
83 { 96 {
108 UWORD8 bsic; // BSIC. 121 UWORD8 bsic; // BSIC.
109 UWORD16 si_bit_map; // System Info. bit map. 122 UWORD16 si_bit_map; // System Info. bit map.
110 } 123 }
111 T_MPHC_NCELL_BCCH_READ; 124 T_MPHC_NCELL_BCCH_READ;
112 125
113 typedef struct 126 typedef struct
114 { 127 {
115 UWORD32 fn; 128 UWORD32 fn;
116 UWORD8 channel_request; 129 UWORD8 channel_request;
117 } 130 }
118 T_MPHC_RA_CON; 131 T_MPHC_RA_CON;
130 UWORD8 ba_id; 143 UWORD8 ba_id;
131 BOOL pwrc; 144 BOOL pwrc;
132 } 145 }
133 T_MPHC_IMMED_ASSIGN_REQ; 146 T_MPHC_IMMED_ASSIGN_REQ;
134 147
135 typedef struct 148 typedef struct
136 { 149 {
137 T_CHANNEL_DESCRIPTION channel_desc_1; 150 T_CHANNEL_DESCRIPTION channel_desc_1;
138 UWORD8 channel_mode_1; 151 UWORD8 channel_mode_1;
139 UWORD8 txpwr; 152 UWORD8 txpwr;
140 T_MOBILE_ALLOCATION frequency_list; 153 T_MOBILE_ALLOCATION frequency_list;
141 T_STARTING_TIME starting_time; 154 T_STARTING_TIME starting_time;
142 T_CHANNEL_DESCRIPTION channel_desc_2; 155 T_CHANNEL_DESCRIPTION channel_desc_2;
143 UWORD8 channel_mode_2; 156 UWORD8 channel_mode_2;
144 T_MOBILE_ALLOCATION frequency_list_bef_sti; 157 T_MOBILE_ALLOCATION frequency_list_bef_sti;
145 T_CHANNEL_DESCRIPTION channel_desc_1_bef_sti; 158 T_CHANNEL_DESCRIPTION channel_desc_1_bef_sti;
146 T_CHANNEL_DESCRIPTION channel_desc_2_bef_sti; 159 T_CHANNEL_DESCRIPTION channel_desc_2_bef_sti;
147 UWORD8 cipher_mode; 160 UWORD8 cipher_mode;
148 UWORD8 a5_algorithm; 161 UWORD8 a5_algorithm;
149 T_ENCRYPTION_KEY cipher_key; 162 T_ENCRYPTION_KEY cipher_key;
150 BOOL dtx_allowed; 163 BOOL dtx_allowed;
151 #if (AMR == 1) 164 #if (AMR == 1)
152 T_AMR_CONFIGURATION amr_configuration; 165 T_AMR_CONFIGURATION amr_configuration;
153 #endif 166 #endif
154 } 167 }
155 T_MPHC_CHANNEL_ASSIGN_REQ; 168 T_MPHC_CHANNEL_ASSIGN_REQ;
169
170
171 typedef struct
172 {
173 UWORD8 cipher_mode;
174 UWORD8 a5_algorithm;
175 T_ENCRYPTION_KEY new_ciph_param;
176 }
177 T_MPHC_SET_CIPHERING_REQ;
178
179
180 typedef struct
181 {
182 T_CHANNEL_DESCRIPTION channel_desc;
183 T_MOBILE_ALLOCATION frequency_list;
184 T_STARTING_TIME starting_time;
185 }
186 T_MPHC_CHANGE_FREQUENCY;
156 187
157 188
158 typedef struct 189 typedef struct
159 { 190 {
160 UWORD8 txpwr; 191 UWORD8 txpwr;
161 UWORD8 rand; 192 UWORD8 rand;
162 UWORD8 channel_request; 193 UWORD8 channel_request;
194 #if (L1_FF_MULTIBAND == 0)
163 UWORD8 powerclass_band1; 195 UWORD8 powerclass_band1;
164 UWORD8 powerclass_band2; 196 UWORD8 powerclass_band2;
197 #endif
165 198
166 } 199 }
167 T_MPHC_RA_REQ; 200 T_MPHC_RA_REQ;
168 201
169 202
170 typedef struct 203 typedef struct
171 { 204 {
172 T_HO_PARAMS handover_command; 205 T_HO_PARAMS handover_command;
173 UWORD32 fn_offset; 206 UWORD32 fn_offset;
174 UWORD32 time_alignmt; 207 UWORD32 time_alignmt;
175 T_ENCRYPTION_KEY cipher_key; 208 T_ENCRYPTION_KEY cipher_key;
176 #if (AMR == 1) 209 #if (AMR == 1)
177 T_AMR_CONFIGURATION amr_configuration; 210 T_AMR_CONFIGURATION amr_configuration;
211 #endif // (AMR == 1)
212 #if ((REL99 == 1) && (FF_BHO == 1))
213 BOOL handover_type;
178 #endif 214 #endif
179 } 215 }
180 T_MPHC_ASYNC_HO_REQ; 216 T_MPHC_ASYNC_HO_REQ;
181 217
182 typedef struct 218 typedef struct
183 { 219 {
184 T_HO_PARAMS handover_command; 220 T_HO_PARAMS handover_command;
185 UWORD32 fn_offset; 221 UWORD32 fn_offset;
186 UWORD32 time_alignmt; 222 UWORD32 time_alignmt;
187 T_ENCRYPTION_KEY cipher_key; 223 T_ENCRYPTION_KEY cipher_key;
188 BOOL nci; 224 BOOL nci;
189 BOOL timing_advance_valid; 225 BOOL timing_advance_valid;
190 UWORD8 timing_advance; 226 UWORD8 timing_advance;
191 #if (AMR == 1) 227 #if (AMR == 1)
192 T_AMR_CONFIGURATION amr_configuration; 228 T_AMR_CONFIGURATION amr_configuration;
229 #endif
230 #if ((REL99 == 1) && (FF_BHO == 1))
231 BOOL handover_type;
193 #endif 232 #endif
194 } 233 }
195 T_MPHC_PRE_SYNC_HO_REQ; 234 T_MPHC_PRE_SYNC_HO_REQ;
196 235
197 typedef struct 236 typedef struct
198 { 237 {
199 T_HO_PARAMS handover_command; 238 T_HO_PARAMS handover_command;
200 UWORD32 fn_offset; 239 UWORD32 fn_offset;
201 UWORD32 time_alignmt; 240 UWORD32 time_alignmt;
202 T_ENCRYPTION_KEY cipher_key; 241 T_ENCRYPTION_KEY cipher_key;
203 BOOL nci; 242 BOOL nci;
204 UWORD8 real_time_difference; 243 UWORD8 real_time_difference;
205 } 244 #if ((REL99 == 1) && (FF_BHO == 1))
245 BOOL handover_type;
246 #endif // #if ((REL99 == 1) && (FF_BHO == 1))
247 }
206 T_MPHC_PSEUDO_SYNC_HO_REQ; 248 T_MPHC_PSEUDO_SYNC_HO_REQ;
207 249
208 typedef struct 250 typedef struct
209 { 251 {
210 T_HO_PARAMS handover_command; 252 T_HO_PARAMS handover_command;
211 UWORD32 fn_offset; 253 UWORD32 fn_offset;
212 UWORD32 time_alignmt; 254 UWORD32 time_alignmt;
213 T_ENCRYPTION_KEY cipher_key; 255 T_ENCRYPTION_KEY cipher_key;
214 BOOL nci; 256 BOOL nci;
215 #if (AMR == 1) 257 #if (AMR == 1)
216 T_AMR_CONFIGURATION amr_configuration; 258 T_AMR_CONFIGURATION amr_configuration;
259 #endif
260 #if ((REL99 == 1) && (FF_BHO == 1))
261 BOOL handover_type;
217 #endif 262 #endif
218 } 263 }
219 T_MPHC_SYNC_HO_REQ; 264 T_MPHC_SYNC_HO_REQ;
220 265
221 typedef struct 266 typedef struct
222 { 267 {
223 UWORD8 cause; 268 UWORD8 cause;
269 #if ((REL99 == 1) && (FF_BHO == 1))
270 UWORD32 fn_offset;
271 UWORD32 time_alignment;
272 #endif
224 } 273 }
225 T_MPHC_HANDOVER_FINISHED; 274 T_MPHC_HANDOVER_FINISHED;
226 275
227 typedef struct 276 typedef struct
228 { 277 {
229 BOOL dtx_used; 278 BOOL dtx_used;
230 BOOL meas_valid; 279 BOOL meas_valid;
231 WORD16 rxlev_full_acc; 280 WORD16 rxlev_full_acc;
232 UWORD8 rxlev_full_nbr_meas; 281 UWORD8 rxlev_full_nbr_meas;
239 UWORD8 no_of_ncell_meas; 288 UWORD8 no_of_ncell_meas;
240 T5_NCELL_MEAS ncell_meas; 289 T5_NCELL_MEAS ncell_meas;
241 UWORD8 ba_id; 290 UWORD8 ba_id;
242 UWORD8 timing_advance; 291 UWORD8 timing_advance;
243 UWORD8 txpwr_used; 292 UWORD8 txpwr_used;
293 #if (REL99 == 1)
294 #if FF_EMR
295 WORD16 rxlev_val_acc;
296 UWORD8 rxlev_val_nbr_meas;
297 UWORD32 mean_bep_block_acc;
298 UWORD16 cv_bep_block_acc;
299 UWORD8 mean_bep_block_num;
300 UWORD8 cv_bep_block_num;
301 UWORD8 nbr_rcvd_blocks;
302 #endif
303 #endif
244 304
245 // RESERVED: for trace/debug only 305 // RESERVED: for trace/debug only
246 UWORD8 facch_dl_count; 306 UWORD8 facch_dl_count;
247 UWORD8 facch_ul_count; 307 UWORD8 facch_ul_count;
308 #if (FF_REPEATED_DL_FACCH == 1)
309 UWORD8 facch_dl_combined_good_count; /* No of good decoded blocks after combining */
310 UWORD8 facch_dl_repetition_block_count; /* Total of Dl block count */
311 #endif
248 } 312 }
249 T_MPHC_MEAS_REPORT; 313 T_MPHC_MEAS_REPORT;
250 314
251 typedef T_NEW_BA_LIST T_MPHC_UPDATE_BA_LIST; 315 typedef T_NEW_BA_LIST T_MPHC_UPDATE_BA_LIST;
252 316
253 317
254 typedef struct 318 typedef struct
255 { 319 {
256 UWORD8 bs_pa_mfrms; 320 UWORD8 bs_pa_mfrms;
257 UWORD8 bs_ag_blks_res; 321 UWORD8 bs_ag_blks_res;
258 BOOL bcch_combined; 322 BOOL bcch_combined;
259 UWORD8 ccch_group; 323 UWORD8 ccch_group;
275 339
276 typedef T_FULL_LIST_MEAS T_MPHC_RXLEV_REQ; 340 typedef T_FULL_LIST_MEAS T_MPHC_RXLEV_REQ;
277 typedef T_FULL_LIST_MEAS T_L1C_VALID_MEAS_INFO; 341 typedef T_FULL_LIST_MEAS T_L1C_VALID_MEAS_INFO;
278 typedef T_MPHC_RXLEV_PERIODIC_IND T_L1C_RXLEV_PERIODIC_DONE; 342 typedef T_MPHC_RXLEV_PERIODIC_IND T_L1C_RXLEV_PERIODIC_DONE;
279 343
280 344 #if (L1_FF_MULTIBAND == 0)
281 345
282 typedef struct 346 typedef struct
283 { 347 {
284 UWORD8 radio_band_config; // frequency band configuration: E-GSM, DCS, GSM/DCS, PCS 348 UWORD8 radio_band_config; // frequency band configuration: E-GSM, DCS, GSM/DCS, PCS
285 } 349 }
286 T_MPHC_INIT_L1_REQ; 350 T_MPHC_INIT_L1_REQ;
351
352 #else // For Multiband the Init request is just a dummy and init confirm contains info
353
354 typedef struct
355 {
356 T_L1_MULTIBAND_POWER_CLASS multiband_power_class[NB_MAX_GSM_BANDS];
357 }
358 T_MPHC_INIT_L1_CON;
359
360 #endif // L1_FF_MULTIBAND == 0
287 361
288 /****************************************************************/ 362 /****************************************************************/
289 /* Structure definition for Test <-> L1A messages */ 363 /* Structure definition for Test <-> L1A messages */
290 /****************************************************************/ 364 /****************************************************************/
291 365
292 typedef struct 366 typedef struct
293 { 367 {
294 UWORD16 dsp_code_version; 368 UWORD16 dsp_code_version;
295 UWORD16 dsp_checksum; 369 UWORD16 dsp_checksum;
296 UWORD16 dsp_patch_version; 370 UWORD16 dsp_patch_version;
297 UWORD16 mcu_tcs_program_release; 371 UWORD16 mcu_tcs_program_release;
298 UWORD16 mcu_tcs_official; 372 UWORD16 mcu_tcs_official;
299 UWORD16 mcu_tcs_internal; 373 UWORD16 mcu_tcs_internal;
575 UWORD32 snr; 649 UWORD32 snr;
576 UWORD16 radio_freq; 650 UWORD16 radio_freq;
577 } 651 }
578 T_L1C_FB_INFO; 652 T_L1C_FB_INFO;
579 653
654 #if ((REL99 == 1) && (FF_BHO == 1))
655 typedef struct
656 {
657 BOOL fb_flag;
658 BOOL sb_flag;
659 UWORD8 bsic;
660 UWORD32 fn_offset;
661 UWORD32 time_alignmt;
662 UWORD32 pm;
663 UWORD32 toa;
664 UWORD32 angle;
665 UWORD32 snr;
666 }
667 T_L1C_FBSB_INFO;
668 #endif
669
580 typedef struct 670 typedef struct
581 { 671 {
582 WORD8 radio_freq_array_size; 672 WORD8 radio_freq_array_size;
583 #if (L1_12NEIGH ==1) 673 #if (L1_12NEIGH ==1)
584 UWORD16 radio_freq_array[NBR_NEIGHBOURS]; 674 UWORD16 radio_freq_array[NBR_NEIGHBOURS];
642 UWORD8 std; 732 UWORD8 std;
643 UWORD8 swap_iq_band1; 733 UWORD8 swap_iq_band1;
644 UWORD8 swap_iq_band2; 734 UWORD8 swap_iq_band2;
645 UWORD8 pwr_mngt; 735 UWORD8 pwr_mngt;
646 UWORD8 tx_pwr_code; 736 UWORD8 tx_pwr_code;
737 #if IDS
738 UWORD8 ids_enable;
739 #endif
740 T_FACCH_TEST_PARAMS facch_test;
647 UWORD16 dwnld; 741 UWORD16 dwnld;
648 UWORD8 pwr_mngt_mode_authorized; 742 UWORD8 pwr_mngt_mode_authorized;
649 UWORD32 pwr_mngt_clocks; 743 UWORD32 pwr_mngt_clocks;
650 } 744 }
651 T_MMI_L1_CONFIG; 745 T_MMI_L1_CONFIG;