| #ifndef _UAS_EAS_STRUCT_H |
| #define _UAS_EAS_STRUCT_H |
| |
| #include "irat_common_enums.h" |
| #include "irat_common_struct.h" |
| #include "uas_eas_enums.h" |
| #include "mcd_l3_inc_struct.h" |
| #include "csi_umts_asn.h" |
| #include "uas_eas_inter_core_struct.h" |
| #include "global_type.h" |
| |
| /* Measurement results related: UAS to/from EAS */ |
| |
| |
| #if 0 |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| /* under construction !*/ |
| #endif |
| |
| /* Measurement request/confirm related: UAS to/from EAS */ |
| typedef struct |
| { |
| LOCAL_PARA_HDR |
| kal_uint8 tid; |
| kal_bool hps_flag; |
| kal_uint8 prio_meas_period; |
| kal_uint8 freq_num; |
| eas_meas_freq_info_struct freq[MAX_MEAS_IRAT_FREQ]; |
| |
| //#ifdef __LTE_R11__ |
| kal_uint8 rach_report_freq_num; |
| //#endif |
| kal_bool rsrq_meas_on_all_symbols; |
| } uas_eas_lte_measurement_req_struct; |
| |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } uas_eas_lte_measurement_cnf_struct; |
| |
| /* Measurement request/confirm related: EAS to UAS */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| kal_uint8 list_ref; |
| kal_int16 prio_meas_period; |
| FDD_meas_UmtsCellList umts_cell_list; |
| kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE |
| kal_uint16 first_meas_uarfcn; // invalid value = -1 |
| kal_bool is_detected_cell_meas[FDD_MAX_NUM_MEASURED_UMTS_CARRIERS]; |
| meas_scale_factor_enum meas_scale_factor; |
| FDD_MOB_MEME_MEASUREMENT_STOP_CAUSE stop_cause; |
| } eas_fdd_uas_config_ucell_prio_meas_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| kal_uint8 list_ref; |
| kal_int16 prio_meas_period; |
| TDD_meas_UmtsCellList umts_cell_list;//numElements in CsiUmtsCellListOnTheCarrier must be 0 |
| // kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE, FDD only |
| kal_uint16 first_meas_uarfcn; // invalid value = -1//TBD, for CSFB, whether report meas result per freq? |
| kal_bool is_detected_cell_meas[TDD_MAX_NUM_MEASURED_UMTS_CARRIERS]; |
| meas_scale_factor_enum meas_scale_factor; |
| } eas_tdd_uas_config_ucell_prio_meas_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| kal_uint8 list_ref; |
| FDD_meas_UmtsCellList umts_cell_list; |
| kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE |
| kal_uint16 first_meas_uarfcn; // invalid value = -1 |
| kal_bool is_detected_cell_meas[FDD_MAX_NUM_MEASURED_UMTS_CARRIERS]; |
| /* This flag is used to indicate whether measurement period should be reset |
| * immediately. (TRUE: meas is performed in the first DRX. |
| * FALSE: meas is performed in the first T-meas occasion) |
| * In current design, the following rules should be followed. |
| * (1)If number of ARFCN != 0, this flag will be set as FALSE only if tmeasure measurement |
| * is triggered when priority measurement is on-going (i.e., at least |
| * one of UMTS cells hits priority reselection criteria for priority |
| * based measurement reselection). For other case, this flag should |
| * be set as TRUE. If any improvement is needed, the usage limitation |
| * for this flag should be confirmed with UL1's colleague. |
| * (2) If number of ARFCN == 0, this flag will alwyas be set as FALSE; |
| */ |
| kal_bool is_meas_period_reset; |
| |
| /* When this flag is set to TRUE, the standby measurement will be performed every T-meas without */ |
| /* multiplying by N layers. So that there will be 2 measurement results within 10s OOS period, which */ |
| /* increases the successful rate of finding a candidate during OOS */ |
| kal_bool prohibit_apply_n_layer; |
| meas_scale_factor_enum meas_scale_factor; |
| FDD_MOB_MEME_MEASUREMENT_STOP_CAUSE stop_cause; |
| } eas_fdd_uas_config_ucell_meas_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| kal_uint8 list_ref; |
| TDD_meas_UmtsCellList umts_cell_list; |
| //kal_int8 fdd_rscp_min_in_dbm; //TBC with LTE, FDD only |
| kal_uint16 first_meas_uarfcn; // invalid value = -1//TBD, for CSFB, whether report meas result per freq? |
| kal_bool is_detected_cell_meas[TDD_MAX_NUM_MEASURED_UMTS_CARRIERS]; |
| kal_bool is_meas_period_reset; |
| |
| /* When this flag is set to TRUE, the standby measurement will be performed every T-meas without */ |
| /* multiplying by N layers. So that there will be 2 measurement results within 10s OOS period, which */ |
| /* increases the successful rate of finding a candidate during OOS */ |
| kal_bool prohibit_apply_n_layer; |
| meas_scale_factor_enum meas_scale_factor; |
| } eas_tdd_uas_config_ucell_meas_req_struct; |
| |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } eas_fdd_uas_config_ucell_prio_meas_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } eas_fdd_uas_config_ucell_meas_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } eas_tdd_uas_config_ucell_prio_meas_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } eas_tdd_uas_config_ucell_meas_cnf_struct; |
| |
| typedef struct{ |
| kal_bool is_lac_valid; |
| kal_uint16 lac; |
| kal_bool is_rac_valid; |
| kal_uint8 rac; |
| } ucell_cgi_info_optional_struct; |
| |
| typedef struct{ |
| cgi_info_status_enum cgi_info_status; |
| kal_uint32 cell_id; |
| kal_uint8 num_plmn_id_list; |
| plmn_id_struct plmn_id_list[6]; //MAX_NUM_PLMN_ID |
| csg_access_mode_enum ucell_type; |
| kal_uint32 csg_id; |
| ucell_cgi_info_optional_struct optional_field; |
| } ucell_cgi_info_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_search_type_enum plmn_search_type; |
| auto_search_cmd_enum auto_search_cmd; |
| kal_uint8 num_carriers; |
| kal_uint16 csg_uarfcn[MAX_NUM_CSG_CARRIERS]; |
| } eas_uas_search_csg_ucell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| search_status_enum search_status; |
| kal_uint8 num_carriers; |
| ts_3G_csg_ucell_evluation_result csg_ucell_evluation_result_list[MAX_NUM_CSG_CARRIERS]; |
| } eas_uas_search_csg_ucell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_search_type_enum plmn_search_type; |
| auto_search_cmd_enum auto_search_cmd; |
| kal_uint8 num_carriers; |
| kal_uint16 csg_uarfcn[MAX_NUM_CSG_CARRIERS]; |
| } eas_uas_evaluate_csg_ucell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| search_status_enum search_status; |
| kal_uint8 num_carriers; |
| ts_3G_csg_ucell_evluation_result csg_ucell_evluation_result_list[MAX_NUM_CSG_CARRIERS]; |
| } eas_uas_evaluate_csg_ucell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_search_type_enum plmn_search_type; |
| auto_search_cmd_enum auto_search_cmd; |
| kal_uint8 num_freq; |
| EARFCN freq_list[MAX_NUM_CSG_FREQ]; |
| } uas_eas_search_csg_ecell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| search_status_enum search_status; |
| kal_uint8 num_csg_freq_search_result; |
| csg_freq_search_result_struct csg_freq_search_result_list[MAX_NUM_CSG_FREQ]; |
| } uas_eas_search_csg_ecell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_search_type_enum plmn_search_type; |
| auto_search_cmd_enum auto_search_cmd; |
| kal_uint8 num_freq; |
| EARFCN freq_list[MAX_NUM_CSG_FREQ]; |
| } uas_eas_evaluate_csg_ecell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| search_status_enum search_status; |
| kal_uint8 num_csg_freq_search_result; |
| csg_freq_search_result_struct csg_freq_search_result_list[MAX_NUM_CSG_FREQ]; |
| } uas_eas_evaluate_csg_ecell_cnf_struct; |
| |
| /*3G4 CSG FINGERPRINT */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_id_struct csg_plmn; |
| kal_uint32 csg_id; |
| kal_uint32 csg_cell_id; |
| EARFCN csg_frequency; |
| kal_uint16 csg_physical_cell_id; |
| } uas_eas_build_fingerprint_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } uas_eas_build_fingerprint_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| } uas_eas_abort_fingerprint_ind_struct; |
| |
| /*4G3 CSG FINGERPRINT */ |
| typedef uas_eas_build_fingerprint_req_struct eas_uas_build_fingerprint_req_struct; |
| |
| typedef uas_eas_build_fingerprint_cnf_struct eas_uas_build_fingerprint_cnf_struct; |
| |
| typedef uas_eas_abort_fingerprint_ind_struct eas_uas_abort_fingerprint_ind_struct; |
| |
| /*END OF CSG FINGERPRINT */ |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| kal_uint8 tid; |
| report_cgi_req_type_enum report_cgi_req_type; |
| kal_uint16 uarfcn; |
| kal_uint16 physical_cell_id; |
| } eas_uas_report_cgi_req_struct; |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| kal_uint8 tid; |
| kal_uint16 uarfcn; |
| kal_uint16 physical_cell_id; |
| ucell_cgi_info_struct ucell_cgi_info; |
| } eas_uas_report_cgi_cnf_struct; |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| te_ir_cell_change_trigger ir_cell_change_trigger; |
| plmn_search_type_enum plmn_search_type; |
| te_umts_mode target_cell_mode; |
| ts_umts_target_cell_union target_cell; |
| eas_cell_info serv_cell; |
| } eas_uas_evaluate_ucell_req_struct; |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| te_ir_cell_reselection_status ir_cell_eval_status; |
| ts_eval_activate_fail_handle Eval_activate_fail_handle; |
| eas_cell_info serv_cell; |
| } eas_uas_evaluate_ucell_cnf_struct; |
| |
| typedef struct { |
| kal_uint16 phys_cell_id; |
| kal_uint16 BCCH_Container_size; // 0 ~ max_size |
| kal_uint8 *BCCH_container; /* note: remember to Free the memory here*/ |
| } ts_ir_utra_cell_info; |
| |
| typedef struct { |
| kal_uint16 uarfcn; |
| kal_uint8 cell_info_num; |
| ts_ir_utra_cell_info cell_info[MAX_NUM_CELL_INFO_UTRA]; |
| } ts_ir_utra_cell_info_list; |
| |
| typedef struct { |
| kal_uint8 numElements; |
| ts_ir_utra_cell_info_list element[MAX_NUM_REDIRECTION_FREQ_UTRA]; |
| } eas_uas_redirectInfo; |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| te_ir_cell_change_trigger ir_cell_change_trigger; |
| plmn_search_type_enum plmn_search; |
| te_umts_mode target_cell_mode; |
| ts_umts_target_cell_union target_cell; |
| kal_uint16 ircco_time; |
| eas_uas_redirectInfo redirection; |
| ir_lte_scell_struct lte_scell_inf; /* cell info of the source LTE cell */ |
| } eas_uas_activate_ucell_req_struct; |
| |
| typedef struct{ |
| LOCAL_PARA_HDR |
| te_ir_cell_reselection_status ir_cell_activation_status; |
| ts_eval_activate_fail_handle eval_activate_fail_handle; |
| te_ir_cell_change_fail_reason_enum ir_cell_change_failed_reason; |
| } eas_uas_activate_ucell_cnf_struct; |
| |
| //#ifdef __LTE_R11__ |
| typedef struct { |
| kal_bool is_plmn_id_valid; |
| plmn_id_struct plmn_id; |
| kal_uint32 cell_id; |
| kal_uint16 uarfcn; |
| kal_uint16 psc; |
| } ucell_info_before_ho_struct; |
| //#endif |
| |
| /* For 3G4 IRHO */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| kal_bool is_limited_service; |
| plmn_search_type_enum plmn_search_type; |
| //#ifdef __LTE_R11__ |
| ucell_info_before_ho_struct ucell_info; |
| //#endif |
| } uas_eas_handover_ecell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_ho_activate_ecell_req_struct; |
| |
| /* For 3G4 IRCR or IR Redirection */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| eas_target_cell_info target_cell; |
| plmn_search_type_enum plmn_search_type; |
| /*3G4 background search parameter*/ |
| kal_bool is_background_search_trigger; |
| uas_cell_info serving_cell_info; |
| } uas_eas_evaluate_ecell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_evaluate_ecell_stop_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_cell_change_trigger trigger; |
| kal_uint32 wait_time; |
| eas_target_cell_info target_cell; |
| plmn_search_type_enum plmn_search_type; |
| kal_uint8 redirect_freq_num; |
| lte_redirect_info redirect_freq_info[MAX_UAS_EAS_REDIRECT_FREQ_NUM]; |
| kal_uint32 remaining_time_afr; |
| kal_bool is_elevator_mode; |
| kal_bool is_custom_threshold_need; |
| } uas_eas_activate_ecell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_handover_status ho_to_eas_status; |
| kal_uint8 nas_sec_param_to_eutra[NAS_SECURITY_PARAM_LEN]; |
| } uas_eas_handover_ecell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_handover_status ho_to_eas_status; |
| } uas_eas_ho_activate_ecell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_cell_reselection_status eval_status; |
| ts_eval_activate_fail_handle eval_activate_fail_handle; |
| } uas_eas_evaluate_ecell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_evaluate_ecell_stop_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_cell_reselection_status active_status; |
| ts_eval_activate_fail_handle eval_activate_fail_handle; |
| } uas_eas_activate_ecell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_abort_ho_ecell_req_struct; |
| |
| /* For 4G3 IRHO */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| plmn_search_type_enum plmn_search_type; |
| } eas_uas_handover_ucell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } eas_uas_ho_activate_ucell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } eas_uas_abort_ho_ucell_req_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| ho_from_lte_type_enum lte_ho_type; |
| te_ir_handover_status ir_ho_eval_status; |
| kal_uint16 uarfcn_DL; |
| #ifdef __SRVCC_CELL_INFO__ |
| kal_uint16 psc; |
| #endif |
| } eas_uas_handover_ucell_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| te_ir_handover_status ir_ho_activate_status; |
| #ifdef __SRVCC_CELL_INFO__ |
| te_ir_handover_phy_fail_subcause ir_handover_to_umts_phy_fail_subcause; |
| #endif /*__SRVCC_CELL_INFO__*/ |
| } eas_uas_ho_activate_ucell_cnf_struct; |
| |
| /*3G4 background search*/ |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_background_search_start_req_struct; |
| |
| /*3G4 background search*/ |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_background_search_start_cnf_struct; |
| |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* No parameters here */ |
| } uas_eas_background_search_stop_req_struct; |
| |
| /* __4G_BACKGROUND_SEARCH__ */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* LTE detected cell info */ |
| EARFCN earfcn; |
| kal_uint16 pci; |
| } eas_uas_background_search_found_ind_struct; |
| |
| /* HSR_SNIFF_SEARCH */ |
| typedef struct { |
| LOCAL_PARA_HDR |
| /* LTE detected cell info */ |
| EARFCN earfcn; |
| kal_uint16 pci; |
| } eas_uas_hsr_cell_found_ind_struct; |
| |
| #endif /* UAS_EAS_STRUCT_H */ |