blob: c32414f6504115b62d86355afd5c6a2bccdd2e67 [file] [log] [blame]
rjw6c1fd8f2022-11-30 14:33:01 +08001#ifndef _UAS_EAS_STRUCT_H
2#define _UAS_EAS_STRUCT_H
3
4#include "irat_common_enums.h"
5#include "irat_common_struct.h"
6#include "uas_eas_enums.h"
7#include "mcd_l3_inc_struct.h"
8#include "csi_umts_asn.h"
9#include "uas_eas_inter_core_struct.h"
10#include "global_type.h"
11
12/* Measurement results related: UAS to/from EAS */
13
14
15#if 0
16/* under construction !*/
17/* under construction !*/
18/* under construction !*/
19/* under construction !*/
20/* under construction !*/
21/* under construction !*/
22/* under construction !*/
23/* under construction !*/
24/* under construction !*/
25/* under construction !*/
26/* under construction !*/
27/* under construction !*/
28/* under construction !*/
29/* under construction !*/
30/* under construction !*/
31/* under construction !*/
32#endif
33
34/* Measurement request/confirm related: UAS to/from EAS */
35typedef struct
36{
37 LOCAL_PARA_HDR
38 kal_uint8 tid;
39 kal_bool hps_flag;
40 kal_uint8 prio_meas_period;
41 kal_uint8 freq_num;
42 eas_meas_freq_info_struct freq[MAX_MEAS_IRAT_FREQ];
43
44//#ifdef __LTE_R11__
45 kal_uint8 rach_report_freq_num;
46//#endif
47 kal_bool rsrq_meas_on_all_symbols;
48} uas_eas_lte_measurement_req_struct;
49
50
51typedef struct {
52 LOCAL_PARA_HDR
53} uas_eas_lte_measurement_cnf_struct;
54
55/* Measurement request/confirm related: EAS to UAS */
56typedef struct {
57 LOCAL_PARA_HDR
58 kal_uint8 list_ref;
59 kal_int16 prio_meas_period;
60 FDD_meas_UmtsCellList umts_cell_list;
61 kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE
62 kal_uint16 first_meas_uarfcn; // invalid value = -1
63 kal_bool is_detected_cell_meas[FDD_MAX_NUM_MEASURED_UMTS_CARRIERS];
64 meas_scale_factor_enum meas_scale_factor;
65 FDD_MOB_MEME_MEASUREMENT_STOP_CAUSE stop_cause;
66} eas_fdd_uas_config_ucell_prio_meas_req_struct;
67
68typedef struct {
69 LOCAL_PARA_HDR
70 kal_uint8 list_ref;
71 kal_int16 prio_meas_period;
72 TDD_meas_UmtsCellList umts_cell_list;//numElements in CsiUmtsCellListOnTheCarrier must be 0
73// kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE, FDD only
74 kal_uint16 first_meas_uarfcn; // invalid value = -1//TBD, for CSFB, whether report meas result per freq?
75 kal_bool is_detected_cell_meas[TDD_MAX_NUM_MEASURED_UMTS_CARRIERS];
76 meas_scale_factor_enum meas_scale_factor;
77} eas_tdd_uas_config_ucell_prio_meas_req_struct;
78
79typedef struct {
80 LOCAL_PARA_HDR
81 kal_uint8 list_ref;
82 FDD_meas_UmtsCellList umts_cell_list;
83 kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE
84 kal_uint16 first_meas_uarfcn; // invalid value = -1
85 kal_bool is_detected_cell_meas[FDD_MAX_NUM_MEASURED_UMTS_CARRIERS];
86 /* This flag is used to indicate whether measurement period should be reset
87 * immediately. (TRUE: meas is performed in the first DRX.
88 * FALSE: meas is performed in the first T-meas occasion)
89 * In current design, the following rules should be followed.
90 * (1)If number of ARFCN != 0, this flag will be set as FALSE only if tmeasure measurement
91 * is triggered when priority measurement is on-going (i.e., at least
92 * one of UMTS cells hits priority reselection criteria for priority
93 * based measurement reselection). For other case, this flag should
94 * be set as TRUE. If any improvement is needed, the usage limitation
95 * for this flag should be confirmed with UL1's colleague.
96 * (2) If number of ARFCN == 0, this flag will alwyas be set as FALSE;
97 */
98 kal_bool is_meas_period_reset;
99
100 /* When this flag is set to TRUE, the standby measurement will be performed every T-meas without */
101 /* multiplying by N layers. So that there will be 2 measurement results within 10s OOS period, which */
102 /* increases the successful rate of finding a candidate during OOS */
103 kal_bool prohibit_apply_n_layer;
104 meas_scale_factor_enum meas_scale_factor;
105 FDD_MOB_MEME_MEASUREMENT_STOP_CAUSE stop_cause;
106} eas_fdd_uas_config_ucell_meas_req_struct;
107
108typedef struct {
109 LOCAL_PARA_HDR
110 kal_uint8 list_ref;
111 TDD_meas_UmtsCellList umts_cell_list;
112 //kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE, FDD only
113 kal_uint16 first_meas_uarfcn; // invalid value = -1//TBD, for CSFB, whether report meas result per freq?
114 kal_bool is_detected_cell_meas[TDD_MAX_NUM_MEASURED_UMTS_CARRIERS];
115 kal_bool is_meas_period_reset;
116
117 /* When this flag is set to TRUE, the standby measurement will be performed every T-meas without */
118 /* multiplying by N layers. So that there will be 2 measurement results within 10s OOS period, which */
119 /* increases the successful rate of finding a candidate during OOS */
120 kal_bool prohibit_apply_n_layer;
121 meas_scale_factor_enum meas_scale_factor;
122} eas_tdd_uas_config_ucell_meas_req_struct;
123
124
125typedef struct {
126 LOCAL_PARA_HDR
127} eas_fdd_uas_config_ucell_prio_meas_cnf_struct;
128
129typedef struct {
130 LOCAL_PARA_HDR
131} eas_fdd_uas_config_ucell_meas_cnf_struct;
132
133typedef struct {
134 LOCAL_PARA_HDR
135} eas_tdd_uas_config_ucell_prio_meas_cnf_struct;
136
137typedef struct {
138 LOCAL_PARA_HDR
139} eas_tdd_uas_config_ucell_meas_cnf_struct;
140
141typedef struct{
142 kal_bool is_lac_valid;
143 kal_uint16 lac;
144 kal_bool is_rac_valid;
145 kal_uint8 rac;
146} ucell_cgi_info_optional_struct;
147
148typedef struct{
149 cgi_info_status_enum cgi_info_status;
150 kal_uint32 cell_id;
151 kal_uint8 num_plmn_id_list;
152 plmn_id_struct plmn_id_list[6]; //MAX_NUM_PLMN_ID
153 csg_access_mode_enum ucell_type;
154 kal_uint32 csg_id;
155 ucell_cgi_info_optional_struct optional_field;
156} ucell_cgi_info_struct;
157
158typedef struct {
159 LOCAL_PARA_HDR
160 plmn_search_type_enum plmn_search_type;
161 auto_search_cmd_enum auto_search_cmd;
162 kal_uint8 num_carriers;
163 kal_uint16 csg_uarfcn[MAX_NUM_CSG_CARRIERS];
164} eas_uas_search_csg_ucell_req_struct;
165
166typedef struct {
167 LOCAL_PARA_HDR
168 search_status_enum search_status;
169 kal_uint8 num_carriers;
170 ts_3G_csg_ucell_evluation_result csg_ucell_evluation_result_list[MAX_NUM_CSG_CARRIERS];
171} eas_uas_search_csg_ucell_cnf_struct;
172
173typedef struct {
174 LOCAL_PARA_HDR
175 plmn_search_type_enum plmn_search_type;
176 auto_search_cmd_enum auto_search_cmd;
177 kal_uint8 num_carriers;
178 kal_uint16 csg_uarfcn[MAX_NUM_CSG_CARRIERS];
179} eas_uas_evaluate_csg_ucell_req_struct;
180
181typedef struct {
182 LOCAL_PARA_HDR
183 search_status_enum search_status;
184 kal_uint8 num_carriers;
185 ts_3G_csg_ucell_evluation_result csg_ucell_evluation_result_list[MAX_NUM_CSG_CARRIERS];
186} eas_uas_evaluate_csg_ucell_cnf_struct;
187
188typedef struct {
189 LOCAL_PARA_HDR
190 plmn_search_type_enum plmn_search_type;
191 auto_search_cmd_enum auto_search_cmd;
192 kal_uint8 num_freq;
193 EARFCN freq_list[MAX_NUM_CSG_FREQ];
194} uas_eas_search_csg_ecell_req_struct;
195
196typedef struct {
197 LOCAL_PARA_HDR
198 search_status_enum search_status;
199 kal_uint8 num_csg_freq_search_result;
200 csg_freq_search_result_struct csg_freq_search_result_list[MAX_NUM_CSG_FREQ];
201} uas_eas_search_csg_ecell_cnf_struct;
202
203typedef struct {
204 LOCAL_PARA_HDR
205 plmn_search_type_enum plmn_search_type;
206 auto_search_cmd_enum auto_search_cmd;
207 kal_uint8 num_freq;
208 EARFCN freq_list[MAX_NUM_CSG_FREQ];
209} uas_eas_evaluate_csg_ecell_req_struct;
210
211typedef struct {
212 LOCAL_PARA_HDR
213 search_status_enum search_status;
214 kal_uint8 num_csg_freq_search_result;
215 csg_freq_search_result_struct csg_freq_search_result_list[MAX_NUM_CSG_FREQ];
216} uas_eas_evaluate_csg_ecell_cnf_struct;
217
218/*3G4 CSG FINGERPRINT */
219typedef struct {
220 LOCAL_PARA_HDR
221 plmn_id_struct csg_plmn;
222 kal_uint32 csg_id;
223 kal_uint32 csg_cell_id;
224 EARFCN csg_frequency;
225 kal_uint16 csg_physical_cell_id;
226} uas_eas_build_fingerprint_req_struct;
227
228typedef struct {
229 LOCAL_PARA_HDR
230} uas_eas_build_fingerprint_cnf_struct;
231
232typedef struct {
233 LOCAL_PARA_HDR
234} uas_eas_abort_fingerprint_ind_struct;
235
236/*4G3 CSG FINGERPRINT */
237typedef uas_eas_build_fingerprint_req_struct eas_uas_build_fingerprint_req_struct;
238
239typedef uas_eas_build_fingerprint_cnf_struct eas_uas_build_fingerprint_cnf_struct;
240
241typedef uas_eas_abort_fingerprint_ind_struct eas_uas_abort_fingerprint_ind_struct;
242
243/*END OF CSG FINGERPRINT */
244
245typedef struct{
246 LOCAL_PARA_HDR
247 kal_uint8 tid;
248 report_cgi_req_type_enum report_cgi_req_type;
249 kal_uint16 uarfcn;
250 kal_uint16 physical_cell_id;
251} eas_uas_report_cgi_req_struct;
252
253typedef struct{
254 LOCAL_PARA_HDR
255 kal_uint8 tid;
256 kal_uint16 uarfcn;
257 kal_uint16 physical_cell_id;
258 ucell_cgi_info_struct ucell_cgi_info;
259} eas_uas_report_cgi_cnf_struct;
260
261typedef struct{
262 LOCAL_PARA_HDR
263 te_ir_cell_change_trigger ir_cell_change_trigger;
264 plmn_search_type_enum plmn_search_type;
265 te_umts_mode target_cell_mode;
266 ts_umts_target_cell_union target_cell;
267 eas_cell_info serv_cell;
268} eas_uas_evaluate_ucell_req_struct;
269
270typedef struct{
271 LOCAL_PARA_HDR
272 te_ir_cell_reselection_status ir_cell_eval_status;
273 ts_eval_activate_fail_handle Eval_activate_fail_handle;
274 eas_cell_info serv_cell;
275} eas_uas_evaluate_ucell_cnf_struct;
276
277typedef struct {
278 kal_uint16 phys_cell_id;
279 kal_uint16 BCCH_Container_size; // 0 ~ max_size
280 kal_uint8 *BCCH_container; /* note: remember to Free the memory here*/
281} ts_ir_utra_cell_info;
282
283typedef struct {
284 kal_uint16 uarfcn;
285 kal_uint8 cell_info_num;
286 ts_ir_utra_cell_info cell_info[MAX_NUM_CELL_INFO_UTRA];
287} ts_ir_utra_cell_info_list;
288
289typedef struct {
290 kal_uint8 numElements;
291 ts_ir_utra_cell_info_list element[MAX_NUM_REDIRECTION_FREQ_UTRA];
292} eas_uas_redirectInfo;
293
294typedef struct{
295 LOCAL_PARA_HDR
296 te_ir_cell_change_trigger ir_cell_change_trigger;
297 plmn_search_type_enum plmn_search;
298 te_umts_mode target_cell_mode;
299 ts_umts_target_cell_union target_cell;
300 kal_uint16 ircco_time;
301 eas_uas_redirectInfo redirection;
302 ir_lte_scell_struct lte_scell_inf; /* cell info of the source LTE cell */
303} eas_uas_activate_ucell_req_struct;
304
305typedef struct{
306 LOCAL_PARA_HDR
307 te_ir_cell_reselection_status ir_cell_activation_status;
308 ts_eval_activate_fail_handle eval_activate_fail_handle;
309 te_ir_cell_change_fail_reason_enum ir_cell_change_failed_reason;
310} eas_uas_activate_ucell_cnf_struct;
311
312//#ifdef __LTE_R11__
313typedef struct {
314 kal_bool is_plmn_id_valid;
315 plmn_id_struct plmn_id;
316 kal_uint32 cell_id;
317 kal_uint16 uarfcn;
318 kal_uint16 psc;
319} ucell_info_before_ho_struct;
320//#endif
321
322/* For 3G4 IRHO */
323typedef struct {
324 LOCAL_PARA_HDR
325 kal_bool is_limited_service;
326 plmn_search_type_enum plmn_search_type;
327//#ifdef __LTE_R11__
328 ucell_info_before_ho_struct ucell_info;
329//#endif
330} uas_eas_handover_ecell_req_struct;
331
332typedef struct {
333 LOCAL_PARA_HDR
334 /* No parameters here */
335} uas_eas_ho_activate_ecell_req_struct;
336
337/* For 3G4 IRCR or IR Redirection */
338typedef struct {
339 LOCAL_PARA_HDR
340 eas_target_cell_info target_cell;
341 plmn_search_type_enum plmn_search_type;
342 /*3G4 background search parameter*/
343 kal_bool is_background_search_trigger;
344 uas_cell_info serving_cell_info;
345} uas_eas_evaluate_ecell_req_struct;
346
347typedef struct {
348 LOCAL_PARA_HDR
349 /* No parameters here */
350} uas_eas_evaluate_ecell_stop_req_struct;
351
352typedef struct {
353 LOCAL_PARA_HDR
354 te_ir_cell_change_trigger trigger;
355 kal_uint32 wait_time;
356 eas_target_cell_info target_cell;
357 plmn_search_type_enum plmn_search_type;
358 kal_uint8 redirect_freq_num;
359 lte_redirect_info redirect_freq_info[MAX_UAS_EAS_REDIRECT_FREQ_NUM];
360 kal_uint32 remaining_time_afr;
361 kal_bool is_elevator_mode;
362 kal_bool is_custom_threshold_need;
363} uas_eas_activate_ecell_req_struct;
364
365typedef struct {
366 LOCAL_PARA_HDR
367 te_ir_handover_status ho_to_eas_status;
368 kal_uint8 nas_sec_param_to_eutra[NAS_SECURITY_PARAM_LEN];
369} uas_eas_handover_ecell_cnf_struct;
370
371typedef struct {
372 LOCAL_PARA_HDR
373 te_ir_handover_status ho_to_eas_status;
374} uas_eas_ho_activate_ecell_cnf_struct;
375
376typedef struct {
377 LOCAL_PARA_HDR
378 te_ir_cell_reselection_status eval_status;
379 ts_eval_activate_fail_handle eval_activate_fail_handle;
380} uas_eas_evaluate_ecell_cnf_struct;
381
382typedef struct {
383 LOCAL_PARA_HDR
384 /* No parameters here */
385} uas_eas_evaluate_ecell_stop_cnf_struct;
386
387typedef struct {
388 LOCAL_PARA_HDR
389 te_ir_cell_reselection_status active_status;
390 ts_eval_activate_fail_handle eval_activate_fail_handle;
391} uas_eas_activate_ecell_cnf_struct;
392
393typedef struct {
394 LOCAL_PARA_HDR
395 /* No parameters here */
396} uas_eas_abort_ho_ecell_req_struct;
397
398/* For 4G3 IRHO */
399typedef struct {
400 LOCAL_PARA_HDR
401 plmn_search_type_enum plmn_search_type;
402} eas_uas_handover_ucell_req_struct;
403
404typedef struct {
405 LOCAL_PARA_HDR
406 /* No parameters here */
407} eas_uas_ho_activate_ucell_req_struct;
408
409typedef struct {
410 LOCAL_PARA_HDR
411 /* No parameters here */
412} eas_uas_abort_ho_ucell_req_struct;
413
414typedef struct {
415 LOCAL_PARA_HDR
416 ho_from_lte_type_enum lte_ho_type;
417 te_ir_handover_status ir_ho_eval_status;
418 kal_uint16 uarfcn_DL;
419#ifdef __SRVCC_CELL_INFO__
420 kal_uint16 psc;
421#endif
422} eas_uas_handover_ucell_cnf_struct;
423
424typedef struct {
425 LOCAL_PARA_HDR
426 te_ir_handover_status ir_ho_activate_status;
427 #ifdef __SRVCC_CELL_INFO__
428 te_ir_handover_phy_fail_subcause ir_handover_to_umts_phy_fail_subcause;
429 #endif /*__SRVCC_CELL_INFO__*/
430} eas_uas_ho_activate_ucell_cnf_struct;
431
432/*3G4 background search*/
433typedef struct {
434 LOCAL_PARA_HDR
435 /* No parameters here */
436} uas_eas_background_search_start_req_struct;
437
438/*3G4 background search*/
439typedef struct {
440 LOCAL_PARA_HDR
441 /* No parameters here */
442} uas_eas_background_search_start_cnf_struct;
443
444typedef struct {
445 LOCAL_PARA_HDR
446 /* No parameters here */
447} uas_eas_background_search_stop_req_struct;
448
449/* __4G_BACKGROUND_SEARCH__ */
450typedef struct {
451 LOCAL_PARA_HDR
452 /* LTE detected cell info */
453 EARFCN earfcn;
454 kal_uint16 pci;
455} eas_uas_background_search_found_ind_struct;
456
457/* HSR_SNIFF_SEARCH */
458typedef struct {
459 LOCAL_PARA_HDR
460 /* LTE detected cell info */
461 EARFCN earfcn;
462 kal_uint16 pci;
463} eas_uas_hsr_cell_found_ind_struct;
464
465#endif /* UAS_EAS_STRUCT_H */