| /*********************************** |
| * IWLAN Config Macro definition |
| ***********************************/ |
| |
| /*********************************** |
| * Reset Macro |
| ***********************************/ |
| #undef IWLAN_CFG_TYPE_START |
| #undef IWLAN_CFG_TYPE_DCL |
| #undef IWLAN_CFG_TYPE_ARRAY |
| #undef IWLAN_CFG_TYPE_END |
| #undef IWLAN_CFG_L0_TYPE_START |
| #undef IWLAN_CFG_L0_TYPE_DCL |
| #undef IWLAN_CFG_L0_TYPE_ARRAY |
| #undef IWLAN_CFG_L0_TYPE_END |
| #undef IWLAN_CFG_L1_TYPE_START |
| #undef IWLAN_CFG_L1_TYPE_DCL |
| #undef IWLAN_CFG_L1_TYPE_ARRAY |
| #undef IWLAN_CFG_L1_TYPE_END |
| #undef IWLAN_CFG_L2_TYPE_START |
| #undef IWLAN_CFG_L2_TYPE_DCL |
| #undef IWLAN_CFG_L2_TYPE_ARRAY |
| #undef IWLAN_CFG_L2_TYPE_END |
| |
| /**************************************** |
| * IWLAN CFG Macro Structure Definition |
| ****************************************/ |
| #if __IWLAN_CFG_ACTION__ == 1 |
| |
| /* ==================== * |
| * For iwlan_cust_cfg_t * |
| * ==================== */ |
| |
| #if __IWLAN_CFG_LAYER__ == -1 |
| |
| #define IWLAN_CFG_L0_TYPE_START(_obj0, _desc) \ |
| _obj0 ## _t _obj0; |
| |
| /* ============= * |
| * Layer 0 obj * |
| * ============= */ |
| #elif __IWLAN_CFG_LAYER__ == 0 |
| #define IWLAN_CFG_L0_TYPE_START(_obj0, _desc) \ |
| typedef struct _ ## _obj0 ## _t { |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name; |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name[_size]; |
| #define IWLAN_CFG_L1_TYPE_START(_obj0, _obj1, _desc) \ |
| _obj1 ## _t _obj1; |
| #define IWLAN_CFG_L0_TYPE_END(_obj0) \ |
| } _obj0 ## _t; |
| |
| /* ============= * |
| * Layer 1 obj * |
| * ============= */ |
| #elif __IWLAN_CFG_LAYER__ == 1 |
| #define IWLAN_CFG_L1_TYPE_START(_obj0, _obj1, _desc) \ |
| typedef struct _ ## _obj1 ## _t { |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name; |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name[_size]; |
| #define IWLAN_CFG_L2_TYPE_START(_obj0, _obj1, _obj2, _desc) \ |
| _obj2 ## _t _obj2; |
| #define IWLAN_CFG_L1_TYPE_END(_obj0, _obj1) \ |
| } _obj1 ## _t; |
| |
| /* ============= * |
| * Layer 2 obj * |
| * ============= */ |
| #elif __IWLAN_CFG_LAYER__ == 2 /* layer 2 obj*/ |
| #define IWLAN_CFG_L2_TYPE_START(_obj0, _obj1, _obj2, _desc) \ |
| typedef struct _ ## _obj2 ## _t { |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name; |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _type _name[_size]; |
| #define IWLAN_CFG_L2_TYPE_END(_obj0, _obj1, _obj2) \ |
| } _obj2 ## _t; |
| |
| #endif |
| |
| /**************************************** |
| * IWLAN CFG Macro Structure Value Assign |
| ****************************************/ |
| #elif __IWLAN_CFG_ACTION__ == 2 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| (__IWLAN_CFG_PTR__)->_obj0._name = _cfg_dflt; |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._name = _cfg_dflt; |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name = _cfg_dflt; |
| |
| /* WARNING: It should declare var _cfg_idx_ locally */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._name[_cfg_idx_] = _cfg_dflt; \ |
| } |
| |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._name[_cfg_idx_] = _cfg_dflt; \ |
| } |
| |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name[_cfg_idx_] = _cfg_dflt; \ |
| } |
| |
| /**************************************** |
| * IWLAN CFG Macro NVRAN Value Assign |
| ****************************************/ |
| #elif __IWLAN_CFG_ACTION__ == 3 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._name != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._name = (__IWLAN_NVRAM_PTR__)->_obj0._name; \ |
| } |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._obj1._name != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._name = (__IWLAN_NVRAM_PTR__)->_obj0._obj1._name; \ |
| } |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._obj1._obj2._name != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name = (__IWLAN_NVRAM_PTR__)->_obj0._obj1._obj2._name; \ |
| } |
| |
| /* WARNING: It should declare var _cfg_idx_ locally */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._name[_cfg_idx_] != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._name[_cfg_idx_] = (__IWLAN_NVRAM_PTR__)->_obj0._name[_cfg_idx_]; \ |
| } \ |
| } |
| |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._obj1._name[_cfg_idx_] != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._name[_cfg_idx_] = (__IWLAN_NVRAM_PTR__)->_obj0._obj1._name[_cfg_idx_]; \ |
| } \ |
| } |
| |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| for (_cfg_idx_ = 0; _cfg_idx_ < _size; ++_cfg_idx_) { \ |
| if ((__IWLAN_NVRAM_PTR__)->_obj0._obj1._obj2._name[_cfg_idx_] != (_type)(UNDEF_CONFIG)) { \ |
| (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name[_cfg_idx_] = (__IWLAN_NVRAM_PTR__)->_obj0._obj1._obj2._name[_cfg_idx_]; \ |
| } \ |
| } |
| /**************************************** |
| * IWLAN CFG Macro IWLCFG LOOKUP TABLE |
| ****************************************/ |
| #elif __IWLAN_CFG_ACTION__ == 4 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| #_name, |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| #_name, |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| #_name, |
| |
| /* No need IWLCFG for array */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| |
| /********************************************** |
| * IWLAN CFG Macro IWLCFG LOOKUP TABLE ENUM |
| **********************************************/ |
| #elif __IWLAN_CFG_ACTION__ == 5 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _enum, |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _enum, |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _enum, |
| |
| /* No need IWLCFG for array */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| |
| /************************************ |
| * IWLAN CFG Macro IWLCFG SET/GET |
| ************************************/ |
| #elif __IWLAN_CFG_ACTION__ == 6 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| case _enum: { \ |
| if (is_read) { \ |
| sprintf(in_out_ptr, "%d", (__IWLAN_CFG_PTR__)->_obj0._name); \ |
| } \ |
| else { \ |
| MASF_UPDATE_CTXVAL((__IWLAN_CFG_PTR__)->_obj0._name, atoi((kal_char *)in_out_ptr), is_updt); \ |
| (__IWLAN_NVRAM_PTR__)->_obj0._name = (__IWLAN_CFG_PTR__)->_obj0._name; \ |
| } \ |
| break; \ |
| } |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| case _enum: { \ |
| if (is_read) { \ |
| sprintf(in_out_ptr, "%d", (__IWLAN_CFG_PTR__)->_obj0._obj1._name); \ |
| } \ |
| else { \ |
| MASF_UPDATE_CTXVAL((__IWLAN_CFG_PTR__)->_obj0._obj1._name, atoi((kal_char *)in_out_ptr), is_updt); \ |
| (__IWLAN_NVRAM_PTR__)->_obj0._obj1._name = (__IWLAN_CFG_PTR__)->_obj0._obj1._name; \ |
| } \ |
| break; \ |
| } |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| case _enum: { \ |
| if (is_read) { \ |
| sprintf(in_out_ptr, "%d", (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name); \ |
| } \ |
| else { \ |
| MASF_UPDATE_CTXVAL((__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name, atoi((kal_char *)in_out_ptr), is_updt); \ |
| (__IWLAN_NVRAM_PTR__)->_obj0._obj1._obj2._name = (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name; \ |
| } \ |
| break; \ |
| } |
| |
| /* No need IWLCFG for array */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| |
| #elif __IWLAN_CFG_ACTION__ == 7 |
| |
| #define IWLAN_CFG_L0_TYPE_START(_obj0, _desc) \ |
| _obj0: _desc |
| #define IWLAN_CFG_L1_TYPE_START(_obj0, _obj1, _desc) \ |
| _obj0._obj1: _desc |
| #define IWLAN_CFG_L2_TYPE_START(_obj0, _obj1, _obj2, _desc) \ |
| _obj0._obj1._obj2: _desc |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._name: _desc |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._obj1._name: _desc |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._obj1._obj2._name: _desc |
| |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._name: _desc |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._obj1._name: _desc |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) \ |
| _obj0._obj1._obj2._name: _desc |
| |
| |
| #elif __IWLAN_CFG_ACTION__ == 10 |
| |
| #define IWLAN_CFG_L0_TYPE_DCL(_obj0, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| IWLAN_INFO(" (OP_by_ALL) " #_name " = %d", (__IWLAN_CFG_PTR__)->_obj0._name); |
| |
| #define IWLAN_CFG_L1_TYPE_DCL(_obj0, _obj1, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| IWLAN_INFO(" (OP_by_ALL) " #_name " = %d", (__IWLAN_CFG_PTR__)->_obj0._obj1._name); |
| |
| #define IWLAN_CFG_L2_TYPE_DCL(_obj0, _obj1, _obj2, _type, _enum, _name, _cfg_dflt, _nv_dflt, _desc) \ |
| IWLAN_INFO(" (OP_by_ALL) " #_name " = %d", (__IWLAN_CFG_PTR__)->_obj0._obj1._obj2._name); |
| |
| /* No need IWLCFG for array */ |
| #define IWLAN_CFG_L0_TYPE_ARRAY(_obj0, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L1_TYPE_ARRAY(_obj0, _obj1, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| #define IWLAN_CFG_L2_TYPE_ARRAY(_obj0, _obj1, _obj2, _type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _desc) |
| |
| #endif |
| |
| /* If macro not used, define as emply */ |
| #ifndef IWLAN_CFG_L0_TYPE_START |
| #define IWLAN_CFG_L0_TYPE_START(...) |
| #endif |
| #ifndef IWLAN_CFG_L0_TYPE_DCL |
| #define IWLAN_CFG_L0_TYPE_DCL(...) |
| #endif |
| #ifndef IWLAN_CFG_L0_TYPE_ARRAY |
| #define IWLAN_CFG_L0_TYPE_ARRAY(...) |
| #endif |
| #ifndef IWLAN_CFG_L0_TYPE_END |
| #define IWLAN_CFG_L0_TYPE_END(...) |
| #endif |
| #ifndef IWLAN_CFG_L1_TYPE_START |
| #define IWLAN_CFG_L1_TYPE_START(...) |
| #endif |
| #ifndef IWLAN_CFG_L1_TYPE_DCL |
| #define IWLAN_CFG_L1_TYPE_DCL(...) |
| #endif |
| #ifndef IWLAN_CFG_L1_TYPE_ARRAY |
| #define IWLAN_CFG_L1_TYPE_ARRAY(...) |
| #endif |
| #ifndef IWLAN_CFG_L1_TYPE_END |
| #define IWLAN_CFG_L1_TYPE_END(...) |
| #endif |
| #ifndef IWLAN_CFG_L2_TYPE_START |
| #define IWLAN_CFG_L2_TYPE_START(...) |
| #endif |
| #ifndef IWLAN_CFG_L2_TYPE_DCL |
| #define IWLAN_CFG_L2_TYPE_DCL(...) |
| #endif |
| #ifndef IWLAN_CFG_L2_TYPE_ARRAY |
| #define IWLAN_CFG_L2_TYPE_ARRAY(...) |
| #endif |
| #ifndef IWLAN_CFG_L2_TYPE_END |
| #define IWLAN_CFG_L2_TYPE_END(...) |
| #endif |
| |
| /* Define macro expansion */ |
| #define GET_START_MACRO(_1, _2, _3, NAME, ...) NAME |
| #define IWLAN_CFG_TYPE_START(...) \ |
| GET_START_MACRO(__VA_ARGS__, IWLAN_CFG_L2_TYPE_START, \ |
| IWLAN_CFG_L1_TYPE_START, \ |
| IWLAN_CFG_L0_TYPE_START)(__VA_ARGS__) |
| |
| #define GET_DCL_MACRO(_type, _enum, _name, _cfg_dflt, _nv_dflt, _1, _2, _3, NAME, ...) NAME |
| #define IWLAN_CFG_TYPE_DCL(...) \ |
| GET_DCL_MACRO(__VA_ARGS__, IWLAN_CFG_L2_TYPE_DCL, \ |
| IWLAN_CFG_L1_TYPE_DCL, \ |
| IWLAN_CFG_L0_TYPE_DCL)(__VA_ARGS__) |
| |
| #define GET_ARRAY_MACRO(_type, _enum, _name, _size, _cfg_dflt, _nv_dflt, _1, _2, _3, NAME, ...) NAME |
| #define IWLAN_CFG_TYPE_ARRAY(...) \ |
| GET_ARRAY_MACRO(__VA_ARGS__, IWLAN_CFG_L2_TYPE_ARRAY, \ |
| IWLAN_CFG_L1_TYPE_ARRAY, \ |
| IWLAN_CFG_L0_TYPE_ARRAY)(__VA_ARGS__) |
| #define GET_END_MACRO(_1, _2, _3, NAME, ...) NAME |
| #define IWLAN_CFG_TYPE_END(...) \ |
| GET_END_MACRO(__VA_ARGS__, IWLAN_CFG_L2_TYPE_END, \ |
| IWLAN_CFG_L1_TYPE_END, \ |
| IWLAN_CFG_L0_TYPE_END)(__VA_ARGS__) |
| |
| /* |
| * IWLAN Config |
| * |
| * Format: |
| * # no need to end with ',' |
| * |
| * IWLAN_CFG_TYPE_START(_obj...) |
| * IWLAN_CFG_TYPE_DCL(_obj..., _cfg_type, _cfg_enum, _cfg_name, _cfg_dflt, _nv_dflt) |
| * ... |
| * IWLAN_CFG_TYPE_END(_obj...) |
| */ |
| |
| /********** |
| * Common * |
| **********/ |
| /* CONFIG_START */ |
| IWLAN_CFG_L0_TYPE_START(comm_ans_cfg, |
| "Wireless Access Network Selection Configuration(Common Part)";) |
| |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, IWLAN_OP_ID, iwlan_op_id, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "[INTERNAL]When set op_id using AT command AT_EIWLCFGSET";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, IWLAN_DEVICE_TYPE, iwlan_device_type, 0, UNDEF_CONFIG_32, |
| "[INTERNAL] phase out!";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint8, IMS_VOLTE_DEREG_WHEN_RF_OFF, ims_maintain_when_rf_off, KAL_FALSE, UNDEF_CONFIG_8, |
| "[INTERNAL]When enable, IMS MAINTAIN when RF off";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, FIRST_PDN_CELL_PREF_APN_TYPE, first_pdn_cell_pref_apn_type, 0, UNDEF_CONFIG_32, |
| "[MCF]For certain APN type, Cellular preferred when PDN established 1st time after boot-up";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint8, PDN_OVER_N3IWF_ENABLE, pdn_over_n3iwf_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, allow PDN over N3IWF, current not support";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint8, EPDG_N3IWF_HO_ENABLE, epdg_n3iwf_ho_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, allow PDN handover between ePDG and N3IWF";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, CELL_SIG_REPORT_DURATION, cell_sig_report_duration, 3, UNDEF_CONFIG_32, |
| "[MCF] Duration (second or mini-second) of monitor Cell signal quality for IWLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, CELL_SIG_REPORT_TIMER_TYPE, cell_sig_report_timer_type, 0, UNDEF_CONFIG_32, |
| "[INTERNAL] Type 0 means duration unit is second, 1 is mini-second";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, WIFI_SIG_POLLING_TIME, wifi_sig_polling_time, 0, UNDEF_CONFIG_32, |
| "[INTERNAL] Suggest WiFi signaling monitor polling time";) |
| IWLAN_CFG_L0_TYPE_DCL(comm_ans_cfg, kal_uint32, WIFI_SIG_MEASURE_TIME, wifi_sig_measure_time, 0, UNDEF_CONFIG_32, |
| "[INTERNAL] Suggest WiFi signaling monitor measure time";) |
| |
| /* Throttling Timer Config */ |
| IWLAN_CFG_L1_TYPE_START(comm_ans_cfg, trtl_cfg, "[MCF]Handover Throttling Configuration";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, WLAN_TRTL_ENABLE, wlan_trtl_enable, 1, UNDEF_CONFIG_8, |
| "[MCF] When enable, throttling handover back to WLAN for wlan_rove_in_trtl_time" { |
| wlan_trtl_enable:8 "" { |
| 0x0: "Disable the throttling timer for wlan"; |
| 0x1: "(bit 0 is functional enable bit) Enable for all throttling if no specify bit 1 ~ bit 7"; |
| 0x3: "(bit 1 is enable for idle mode) IDLE mode throttling"; |
| 0x5: "(bit 2 is enable for in-call mode) In-Call mode throttling"; |
| 0x7: "Enable for both (IDLE and In-Call) throttling(raise both bit 1 and 2)"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint32, WLAN_ROVE_IN_TRTL_TIME, wlan_rove_in_trtl_time, 10, UNDEF_CONFIG_32, // in sec |
| "[MCF]Duration of throttling handover back to WLAN";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, CELL_TRTL_ENABLE, cell_trtl_enable, 1, UNDEF_CONFIG_8, |
| "[MCF]When enable, throttling handover back to Cell for cell_rove_in_trtl_time" { |
| cell_trtl_enable:8 "" { |
| 0x0: "(bit 0 is functional enable bit) Disabled"; |
| 0x1: "(bit 0 is functional enable bit) Enable for all throttling if no specify bit 1 ~ bit 7"; |
| 0x3: "(bit 1 is enable for idle mode) IDLE mode throttling"; |
| 0x5: "(bit 2 is enable for in-call mode) In-Call mode throttling"; |
| 0x7: "Enable for both (IDLE and In-Call) throttling(raise both bit 1 and 2)"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint32, CELL_ROVE_IN_TRTL_TIME, cell_rove_in_trtl_time, 10, UNDEF_CONFIG_32, // in sec |
| "[MCF]Duration of throttling handover back to Cell";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, WLAN_POOR_STOP_CELL_TRTL_ENABLE, wlan_poor_stop_cell_trtl_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enabled, throttling of handover back to Cell is overridden when WLAN signal level or QoS goes bad";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, WLAN_NO_RTP_STOP_CELL_TRTL_ENABLE, wlan_no_rtp_stop_cell_trtl_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enabled, throttling of handover back to Cell is overridden when WLAN no RTP";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, CELL_NO_RTP_STOP_WLAN_TRTL_ENABLE, cell_no_rtp_stop_wlan_trtl_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enabled, throttling of handover back to WLAN is overridden when Cell no RTP";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, INITIAL_TRTL_ENABLE, initial_trtl_enable, 0, UNDEF_CONFIG_8, |
| "[MCF]When enabled, throttling first handover after IMS or Emergency PDN activation for initial_rove_in_trtl_time";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint32, INITIAL_ROVE_IN_TRTL_TIME, initial_rove_in_trtl_time, 3, UNDEF_CONFIG_32, // in sec |
| "[MCF]Duration of throttling first handover after IMS or Emergency PDN activation";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, trtl_cfg, kal_uint8, NO_RTCP_STOP_TRTL_ENABLE, no_rtcp_stop_trtl_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF] When enabled, stop throttling of handover timer when current RAN is no RTCP";) |
| IWLAN_CFG_L1_TYPE_END(comm_ans_cfg, trtl_cfg) |
| |
| /* Measurement Timer Config */ |
| IWLAN_CFG_L1_TYPE_START(comm_ans_cfg, meas_cfg, "[MCF]Handover Measurement Delay Configuration";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, meas_cfg, kal_uint32, WLAN_ROVE_IN_MEAS_TIME, wlan_rove_in_meas_time, 0, UNDEF_CONFIG_32, // in msec |
| "Duration(ms) of measurement delay before handover back to WLAN";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, meas_cfg, kal_uint32, CELL_ROVE_IN_MEAS_TIME, cell_rove_in_meas_time, 0, UNDEF_CONFIG_32, // in msec |
| "Duration(ms) of measurement delay before handover back to Cell";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, meas_cfg, kal_uint32, WLAN_DEACT_MEAS_TIME, wlan_deact_meas_time, 0, UNDEF_CONFIG_32, // in msec |
| "Duration(ms) of measurement delay before WLAN is deactivated";) |
| IWLAN_CFG_L1_TYPE_END(comm_ans_cfg, meas_cfg) |
| |
| /* Ustable Timer Config */ |
| IWLAN_CFG_L1_TYPE_START(comm_ans_cfg, rat_hys_cfg, "[MCF]RAT hysteresis during unstable signal temporal state";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, rat_hys_cfg, kal_uint32, CELL_UNSTABLE_HYS_TIME, cell_unstable_hys_time, 2000, UNDEF_CONFIG_32, // in msec |
| "Duration(ms) of cellular unstable signal hysteresis delay";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, rat_hys_cfg, kal_uint32, WLAN_UNSTABLE_HYS_TIME, wlan_unstable_hys_time, 2000, UNDEF_CONFIG_32, // in msec |
| "Duration(ms) of wifi unstable signal hysteresis delay";) |
| IWLAN_CFG_L1_TYPE_END(comm_ans_cfg, rat_hys_cfg) |
| |
| |
| /* Preference Setting */ |
| IWLAN_CFG_L1_TYPE_START(comm_ans_cfg, pref_cfg, "[MCF] Preference setting for APN types";) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_DEFAULT_PREF_SETTING, wans_default_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]default APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_IMS_PREF_SETTING, wans_ims_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]ims APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_MMS_PREF_SETTING, wans_mms_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]mms APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_ECC_PREF_SETTING, wans_ecc_pref_setting, 0x0F, UNDEF_CONFIG_8, |
| "[MCF]ecc APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_XCAP_PREF_SETTING, wans_xcap_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]xcap APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_BIP_PREF_SETTING, wans_bip_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]bip APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_SUPL_PREF_SETTING, wans_supl_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]supl APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_VSIM_PREF_SETTING, wans_vsim_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF]vsim APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_DCL(comm_ans_cfg, pref_cfg, kal_uint32, WANS_PTT_PREF_SETTING, wans_ptt_pref_setting, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[MCF] ptt APN WIFI offload setting." { |
| pref:4 "" { |
| 0:"CELL ONLY"; |
| 1:"WLAN PREF"; |
| 2:"CELL PREF"; |
| 3:"WLAN ONLY"; |
| 4:"EPC PREF (LTE>WiFi>CS)"; |
| 5:"IMS CURRENT RAN PREF"; |
| 0xF: "refer to WFC UI"; |
| }; |
| wfo:4 "wfo capability" { |
| 0: "not refer to WFC UI"; |
| 0xF: "refer to WFC UI"; |
| }; |
| };) |
| IWLAN_CFG_L1_TYPE_END(comm_ans_cfg, pref_cfg) |
| |
| IWLAN_CFG_L0_TYPE_END(comm_ans_cfg) |
| |
| /******* |
| * MMS * |
| *******/ |
| IWLAN_CFG_L0_TYPE_START(mms_ans_cfg, "Wireless Access Network Selection Configuration(MMS Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(mms_ans_cfg, kal_uint8, MMS_EPDG_CONNECTED_BARRING_ENABLE, mms_epdg_connected_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring MMS on WLAN if there is no ePDG tunnel existed";) |
| IWLAN_CFG_L0_TYPE_DCL(mms_ans_cfg, kal_uint8, MMS_IMS_PDN_CONNECTED_BARRING_ENABLE, mms_ims_pdn_connected_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring MMS on WLAN if there is no IMS PDN existed";) |
| IWLAN_CFG_L0_TYPE_DCL(mms_ans_cfg, kal_uint8, MMS_WLAN_ONLY_BARRING_ENABLE, mms_wlan_only_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring MMS on Cell if there is ePDG tunnel existed";) |
| IWLAN_CFG_L0_TYPE_DCL(mms_ans_cfg, kal_uint8, MMS_CELL_ONLY_BARRING_ENABLE, mms_cell_only_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring MMS on WLAN";) |
| IWLAN_CFG_L0_TYPE_END(mms_ans_cfg) |
| /******** |
| * XCAP * |
| ********/ |
| IWLAN_CFG_L0_TYPE_START(xcap_ans_cfg, "Wireless Access Network Selection Configuration(XCAP Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(xcap_ans_cfg, kal_uint8, XCAP_PDN_ALIGNMENT_SETTING, xcap_pdn_alignment_setting, 0, UNDEF_CONFIG_8, |
| "[MCF]Let RAT selection of XCAP align target pdn when target pdn is avtivated." { |
| alignment:8 "" { |
| 1:"Default"; |
| 2:"IMS"; |
| 3:"MMS"; |
| 4:"EMERGENCY"; |
| 5:"XCAP"; |
| 6:"RCS"; |
| 7:"BIP"; |
| 8:"SUPL"; |
| 9:"VSIM"; |
| }; |
| };) |
| IWLAN_CFG_L0_TYPE_DCL(xcap_ans_cfg, kal_uint8, XCAP_ROAMING_BARRING_ENABLE, xcap_roaming_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring XCAP on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_DCL(xcap_ans_cfg, kal_uint8, XCAP_EPDG_CONNECTED_EPDG_BARRING_ENABLE, xcap_epdg_connected_epdg_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring XCAP on WLAN if there is no ePDG tunnel existed";) |
| IWLAN_CFG_L0_TYPE_DCL(xcap_ans_cfg, kal_uint8, XCAP_WLAN_ONLY_BARRING_ENABLE, xcap_wlan_only_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring XCAP on Cell if there is ePDG tunnel existed";) |
| IWLAN_CFG_L0_TYPE_DCL(xcap_ans_cfg, kal_uint8, XCAP_CELL_ONLY_BARRING_ENABLE, xcap_cell_only_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring XCAP on WLAN";) |
| IWLAN_CFG_L0_TYPE_END(xcap_ans_cfg) |
| |
| /******** |
| * SUPL * |
| ********/ |
| IWLAN_CFG_L0_TYPE_START(supl_ans_cfg, "Wireless Access Network Selection Configuration(SUPL Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(supl_ans_cfg, kal_uint8, SUPL_ROAMING_BARRING_ENABLE, supl_roaming_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring SUPL on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_END(supl_ans_cfg) |
| |
| /******* |
| * BIP * |
| *******/ |
| IWLAN_CFG_L0_TYPE_START(bip_ans_cfg, "Wireless Access Network Selection Configuration(BIP Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(bip_ans_cfg, kal_uint8, BIP_ROAMING_BARRING_ENABLE, bip_roaming_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring BIP on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_END(bip_ans_cfg) |
| |
| /*********** |
| * Default * |
| ***********/ |
| IWLAN_CFG_L0_TYPE_START(dflt_ans_cfg, "Wireless Access Network Selection Configuration(Default Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(dflt_ans_cfg, kal_uint8, DEFAULT_ROAMING_BARRING_ENABLE, default_roaming_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring DEFAULT on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_END(dflt_ans_cfg) |
| |
| /************* |
| * IMS - ECC * |
| *************/ |
| IWLAN_CFG_L0_TYPE_START(ecc_ans_cfg, "Wireless Access Network Selection Configuration(IMS ECC Part)";) |
| IWLAN_CFG_L0_TYPE_DCL(ecc_ans_cfg, kal_uint8, IPOL_ECC_HO_ENABLE, ipol_ecc_ho_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, allow ECC handover";) |
| IWLAN_CFG_L0_TYPE_END(ecc_ans_cfg) |
| |
| /**************** |
| * IMS - Normal * |
| ****************/ |
| IWLAN_CFG_L0_TYPE_START(ipol_ans_cfg, "Wireless Access Network Selection Configuration(IMS Normal Part)";) |
| |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint32, IPOL_IMS_MD_SUPPORTING_RAT, ipol_ims_md_supporting_rat, 0x41, UNDEF_CONFIG_32, |
| "[MCF]IMS support RAT." { |
| ipol_ims_md_supporting_rat:32 "Bit[0]:LTE, Bit[1]:UMTS, Bit[2]:GSM, Bit[3]:1x, Bit[4]:HRPD, Bit[5]:EHRPD, Bit[6]:NR" { |
| 1: "support LTE only"; |
| 3: "support LTE + UMTS"; |
| 7: "support LTE + UMTS + GSM"; |
| 63: "support LTE + UMTS + GSM + 3GPP2"; |
| 64: "support NR only"; |
| 65: "support NR + LTE"; |
| 67: "support NR + LTE + UMTS"; |
| 71: "support NR + LTE + UMTS + GSM"; |
| 127:"support NR + LTE + UMTS + GSM + 3GPP2"; |
| }; |
| };) |
| |
| /* C2K */ |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_C2K_SETUP_BARRING, ipol_c2k_setup_barring, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring IMS setup on C2K";) |
| |
| /* VoPS */ |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_BARRING_HPLMN_ENABLE, ipol_ims_vops_barring_hplmn_enable, 0x03, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE not allow IMS on CEll when VOPS no capability while not roaming, Bit[0]:LTE, Bit[1]:NR";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_BARRING_VPLMN_ENABLE, ipol_ims_vops_barring_vplmn_enable, 0x03, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE not allow IMS on CELL when VOPS no capability while roaming, Bit[0]:LTE, Bit[1]:NR";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_SETUP_BARRING_ENABLE, ipol_ims_vops_setup_barring_enable, 0x03, UNDEF_CONFIG_8, |
| "[MCF]When enable, only allow IMS setup on Cell with VOPS capability, Bit[0]:LTE, Bit[1]:NR";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_IDLE_HO_BARRING_ENABLE, ipol_ims_vops_idle_ho_barring_enable, 0x00, UNDEF_CONFIG_8, |
| "[MCF]When enable, deny idle HO on Cell with non-VOPS capability, Bit[0]:LTE, Bit[1]:NR";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_OFF_INCALL_DEREG_ENABLE, ipol_ims_vops_off_incall_dereg_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, during call active, UT trigger dereg when VOPS turning to OFF";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOPS_OFF_CALL_GUARD_ENABLE, ipol_ims_vops_off_call_guard_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, IMS call start and then VOPS off,not dereg IMS";) |
| |
| /* 2/3G */ |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_23G_SETUP_BARRING_ENABLE, ipol_ims_23G_setup_barring_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring IMS setup on 2/3G";) |
| |
| /* Roaming */ |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ROAMING_BARRING_ENABLE, ipol_ims_roaming_barring_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring IMS on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_WLAN_ROAMING_BARRING_ENABLE, ipol_ims_wlan_roaming_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring IMS on roaming WLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ROAMING_HO_ENABLE, ipol_ims_roaming_ho_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When disable, UE won't perform handover on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ROAMING_INCALL_HO_ENABLE, ipol_ims_roaming_incall_ho_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When disable, UE won't perform handover during on-going IMS call on roaming Cell";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ROAMING_RAT_RESELECT_BY_DREG_ENABLE, ipol_ims_roaming_rat_reselect_by_dreg_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will perform IMS deregistration on current RAT and set up on another RAT if HO is expected to happened originally when roaming.";) |
| |
| /* Misc */ |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VODM_PREF_BARRING_ENABLE, ipol_ims_vodm_pref_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring IMS when voice domain prefer not setting to 3";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_SIPCPI_BARRING_ENABLE, ipol_ims_sipcpi_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, barring current RAT when SIP 403 error";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_CS_PREF_ENABLE, ipol_ims_cs_pref_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, prefer CS if CS quality is better than WLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_CS_PREF_WHILE_ROAMING_ENABLE, ipol_ims_cs_pref_while_roaming_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, prefer CS while roaming if CS quality is better than WLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_WLAN_DEREG_ENABLE, ipol_ims_wlan_dereg_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will de-register IMS on WLAN if prefer CS, and call is not active";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_WIFI_CALL_ROVEOUT_ALERT_ENABLE, ipol_wifi_call_roveout_alert_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will display notification if UE is going to rove out WLAN during VoWiFi call";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_WIFI_CALL_MOBIKE_IND_ENABLE, ipol_wifi_call_mobike_ind_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will trigger speed-enhanced-MOBIKE during VoWiFi call if WLAN quality is poor and no LTE available";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint32, IPOL_WIFI_CALL_ROVEOUT_ALERT_DURATION, ipol_wifi_call_roveout_alert_duration, 5, UNDEF_CONFIG_32, |
| "[MCF]Duration of report wifi call rove out alert indication in second.";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_POOR_WIFI_ENABLE, ipol_ims_dereg_poor_wifi_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will de-register IMS on WLAN, if WLAN RSSI value is below HO Low threshold";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_DEAD_ZONE_ENABLE, ipol_ims_dereg_dead_zone_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will de-register IMS on WLAN, if WLAN RSSI value is below Low threshold and threre is no cellular coverage";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NO_VOICE_SUP_SMS_ENABLE, ipol_ims_no_voice_sup_sms_enable, 3, UNDEF_CONFIG_8, |
| "[MCF]When enable, IMS PDN will still be activated for SMS even if the network has no VoPS ability" { |
| ipol_ims_sms_only_by_centric_type_enable:8 "" { |
| 0: "No SMS-only for all centric types"; |
| 1: "SMS-only for all centric types"; |
| 2: "SMS-only for voice-centric devices"; |
| 3: "SMS-only for data-centric devices"; |
| }; |
| };) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_VOICE_CAP_PREF_ENABLE, ipol_ims_voice_cap_pref_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, IMS PDN will select RAT which has voice capability rather than RAT no voice capability(e.g. VOPS OFF)";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_INCALL_VOICE_CAP_PREF, ipol_ims_incall_voice_cap_pref, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, IMS call will select RAT which has voice capability rather than RAT no voice capability(e.g. VOPS OFF)";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NORMAL_CALL_OVER_IMS_HO_LTE_TO_WIFI_ENABLE, ipol_ims_normal_call_ho_lte_to_wifi_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, while normal call over IMS PDN, IMS PDN can hand over to WLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NORMAL_CALL_OVER_IMS_HO_WIFI_TO_LTE_ENABLE, ipol_ims_normal_call_ho_wifi_to_lte_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, while normal call over IMS PDN, IMS PDN can hand over to 3GPP";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ECC_OVER_IMS_HO_LTE_TO_WIFI_ENABLE, ipol_ims_ecc_over_ims_ho_lte_to_wifi_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, while ECC call over IMS PDN, IMS PDN can hand over to WLAN";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ECC_OVER_IMS_HO_WIFI_TO_LTE_ENABLE, ipol_ims_ecc_over_ims_ho_wifi_to_lte_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, while ECC call over IMS PDN, IMS PDN can hand over to 3GPP";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_DEAD_ZONE_INCALL_BARRING_ENABLE, ipol_ims_dereg_dead_zone_incall_barring_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When ipol_ims_dereg_dead_zone_enable and this flag is enabled, UE will not de-register IMS on WLAN when call is active, if WLAN RSSI value is below Low threshold and threre is no cellular coverage";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_DEAD_ZONE_MDPOOR_BARRING_ENABLE, ipol_ims_dereg_dead_zone_mdpoor_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When ipol_ims_dereg_dead_zone_enable and this flag is enabled, UE will de-register IMS on WLAN, if WLAN RSSI and MD signal value is below Low threshold";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_3GPP_SIM_INVALID_ENABLE, ipol_ims_3gpp_sim_invalid_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE stop ims registration attempt while receiving sim invalid until next cellular attach time";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_POOR_WIFI, ipol_ims_dereg_poor_wifi, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable and wans_ims_cs_pref_enable is disabled UE will de-register IMS on WLAN, if WLAN RSSI is below HO Low threshold";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_MAINTAIN_CALL_IN_WIFI_WHEN_IN_CS_PREFERRED, ipol_ims_maintain_call_in_wifi_when_in_cs_preferred, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enabled UE will maintain IMS registration and active call on WLAN, when CS preferred condition is true";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_23G_WIFI_RAT_RESELECT_BY_DREG_ENABLE, ipol_ims_23g_wifi_rat_reselect_by_dreg_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enabled, UE will perform IMS deregistration on current RAT and set up on another RAT if HO is expected to happened between 23g and wifi";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NR_WIFI_RAT_RESELECT_BY_DREG_ENABLE, ipol_ims_nr_wifi_rat_reselect_by_dreg_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enabled, UE will perform IMS deregistration on current RAT and set up on another RAT if HO is expected to happened between NR and wifi";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_CONFIG_PEND_NONE_ACT_CALL_MSG, ipol_config_pend_none_act_call_msg, KAL_TRUE, UNDEF_CONFIG_8, |
| "[INTERNAL]When enable, pend the none active call for switch RPL msg sequence in dual IMS mode";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_SPECIAL_CUST, ipol_special_cust, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[INTERNAL]For special customization by project(each project may have different function)";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NR_IDLE_HO_MODE, ipol_ims_nr_idle_ho_mode, 1, UNDEF_CONFIG_8, |
| "[MCF]5G idle handover mode" { |
| ipol_ims_nr_idle_ho_mode:8 "" { |
| 0: "No handover"; |
| 1: "Bidirectional handover"; |
| 2: "Unidirectional handover: 5G to WLAN"; |
| 3: "Unidirectional handover: WLAN to 5G"; |
| }; |
| };) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NR_INCALL_HO_ENABLE, ipol_ims_nr_incall_ho_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When disable, UE won't perform handover between NR and WLAN during on-going IMS call";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_NR_INCALL_HO_MODE_WHEN_INCALL_HO_ENABLE, ipol_ims_nr_incall_ho_mode_when_incall_ho_enable, 0, UNDEF_CONFIG_8, |
| "[MCF]5G in-call handover mode when ipol_ims_nr_incall_ho_enable is KAL_TRUE." { |
| ipol_ims_nr_incall_ho_mode_when_incall_ho_enable:8 "" { |
| 0: "Bidirectional handover"; |
| 1: "Unidirectional: 5G to WLAN"; |
| 2: "Unidirectional: WLAN to 5G"; |
| }; |
| };) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_DEREG_AFTER_RAU_ENABLE, ipol_ims_dereg_after_rau_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will IMS dereg after RAU complete,no matter there is a CS call or not";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_ECC_OVER_EMERG_HO_ENABLE, ipol_ims_ecc_over_emerg_ho_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "[MCF]When enable, while ECC call over emergency PDN, allow ims handover";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_BLOCK_WIFI_UNTIL_SRVCC_CALL_END, ipol_ims_block_wifi_until_srvcc_call_end, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, UE will not attempt IMS over WLAN until SRVCC CS call end";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_INCALL_PREFER_CURRENT_RAT, ipol_incall_prefer_current_rat, 0, UNDEF_CONFIG_8, |
| "[MCF]Incall RAT preference" { |
| ipol_incall_prefer_current_rat:8 "" { |
| 0: "Disable"; |
| 1: "When UE is in-call, prefer current RAT regardless of the preference setting."; |
| 2: "Enable only when the current RAT is CELL"; |
| 3: "Enable only when the current RAT is WLAN"; |
| }; |
| };) |
| |
| /* AFR config */ |
| IWLAN_CFG_L1_TYPE_START(ipol_ans_cfg, afr_cfg, "[MCF]The IMS configuration during AFR stage";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, afr_cfg, kal_uint8, IPOL_IMS_AFR_CS_PAGING_ENABLE, ipol_ims_afr_cs_paging_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, the AFR stage will start from MT cs paging(only affect the range of AFR stage)";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, afr_cfg, kal_uint8, IPOL_IMS_AFR_REG_MAINTAIN_ENABLE, ipol_ims_afr_reg_maintain_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, IMS will be maintained instead deregistration from CS call start until AFR complete";) |
| IWLAN_CFG_L1_TYPE_END(ipol_ans_cfg, afr_cfg) |
| |
| /* Signal Threshold Config */ |
| IWLAN_CFG_L1_TYPE_START(ipol_ans_cfg, sig_cfg, "[MCF]Signal Treshold Configurarion";) |
| /* Wlan */ |
| IWLAN_CFG_L2_TYPE_START(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, "[MCF]WLAN Signal Treshold Configurarion";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_ROVE_POOR_TH, ipol_wlan_rssi_rove_poor_th, -85, UNDEF_CONFIG_32, |
| "Low threshold value of WLAN RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_ROVE_FAIR_TH, ipol_wlan_rssi_rove_fair_th, -75, UNDEF_CONFIG_32, |
| "High threshold value of WLAN RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_HO_POOR_TH, ipol_wlan_rssi_ho_poor_th, -88, UNDEF_CONFIG_32, |
| "Low threshold value of WLAN RSSI when in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_HO_FAIR_TH, ipol_wlan_rssi_ho_fair_th, -78, UNDEF_CONFIG_32, |
| "High threshold value of WLAN RSSI when in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_SNR_POOR_TH, ipol_wlan_rssi_snr_poor_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of WLAN SNR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_SNR_FAIR_TH, ipol_wlan_rssi_snr_fair_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of WLAN SNR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_NO_CELL_POOR_TH, ipol_wlan_rssi_no_cell_poor_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of WLAN RSSI when no cellular coverage";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg, kal_int32, IPOL_WLAN_RSSI_NO_CELL_FAIR_TH, ipol_wlan_rssi_no_cell_fair_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of WLAN RSSI when no cellular coverage";) |
| IWLAN_CFG_L2_TYPE_END(ipol_ans_cfg, sig_cfg, wlan_sig_thr_cfg) |
| |
| /* Celular */ |
| IWLAN_CFG_L2_TYPE_START(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, "[MCF]Cell Signal Treshold Configurarion";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRP_POOR_TH, ipol_nr_rsrp_poor_th , -105, UNDEF_CONFIG_32, |
| "Low threshold value of NR SS-RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRP_FAIR_TH, ipol_nr_rsrp_fair_th , -95, UNDEF_CONFIG_32, |
| "High threshold value of NR SS-RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRP_GOOD_TH, ipol_nr_rsrp_good_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of NR SS-RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_SINR_POOR_TH, ipol_nr_sinr_poor_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of NR SS-SINR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_SINR_FAIR_TH, ipol_nr_sinr_fair_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of NR SS-SINR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_SINR_GOOD_TH, ipol_nr_sinr_good_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of NR SS-SINR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRQ_POOR_TH, ipol_nr_rsrq_poor_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of NR SS-RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRQ_FAIR_TH, ipol_nr_rsrq_fair_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of NR SS-RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_NR_RSRQ_GOOD_TH, ipol_nr_rsrq_good_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of NR SS-RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRP_POOR_TH, ipol_lte_rsrp_poor_th , -116, UNDEF_CONFIG_32, |
| "Low threshold value of LTE RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRP_FAIR_TH, ipol_lte_rsrp_fair_th , -106, UNDEF_CONFIG_32, |
| "High threshold value of LTE RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRP_GOOD_TH, ipol_lte_rsrp_good_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of LTE RSRP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSSNR_POOR_TH, ipol_lte_rssnr_poor_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of LTE RSSNR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSSNR_FAIR_TH, ipol_lte_rssnr_fair_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of LTE RSSNR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSSNR_GOOD_TH, ipol_lte_rssnr_good_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of LTE RSSNR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRQ_POOR_TH, ipol_lte_rsrq_poor_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of LTE RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRQ_FAIR_TH, ipol_lte_rsrq_fair_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of LTE RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_LTE_RSRQ_GOOD_TH, ipol_lte_rsrq_good_th , UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Top threshold value of LTE RSRQ";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_UMTS_RSCP_POOR_TH, ipol_umts_rscp_poor_th, -109, UNDEF_CONFIG_32, |
| "Low threshold value of UMTS RSCP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_UMTS_RSCP_FAIR_TH, ipol_umts_rscp_fair_th, -104, UNDEF_CONFIG_32, |
| "High threshold value of UMTS RSCP";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_UMTS_ECNO_POOR_TH, ipol_umts_ecno_poor_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Low threshold value of UMTS ECNO";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_UMTS_ECNO_FAIR_TH, ipol_umts_ecno_fair_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "High threshold value of UMTS ECNO";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_GSM_RSSI_POOR_TH, ipol_gsm_rssi_poor_th , -102, UNDEF_CONFIG_32, |
| "Low threshold value of GSM RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_GSM_RSSI_FAIR_TH, ipol_gsm_rssi_fair_th , -94, UNDEF_CONFIG_32, |
| "High threshold value of GSM RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_1X_RSSI_POOR_TH, ipol_1x_rssi_poor_th , -100, UNDEF_CONFIG_32, |
| "Low threshold value of 1x RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_1X_RSSI_FAIR_TH, ipol_1x_rssi_fair_th , -90, UNDEF_CONFIG_32, |
| "High threshold value of 1x RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_1X_ECIO_POOR_TH, ipol_1x_ecio_poor_th , -12, UNDEF_CONFIG_32, |
| "Low threshold value of 1x ECIO";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_1X_ECIO_FAIR_TH, ipol_1x_ecio_fair_th , -9, UNDEF_CONFIG_32, |
| "High threshold value of 1x ECIO";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_EVDO_RSSI_POOR_TH, ipol_evdo_rssi_poor_th, -105, UNDEF_CONFIG_32, |
| "Low threshold value of EVDO RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_EVDO_RSSI_FAIR_TH, ipol_evdo_rssi_fair_th, -95, UNDEF_CONFIG_32, |
| "High threshold value of EVDO RSSI";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_EVDO_ECIO_POOR_TH, ipol_evdo_ecio_poor_th, -12, UNDEF_CONFIG_32, |
| "Low threshold value of EVDO ECIO";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg, kal_int32, IPOL_EVDO_ECIO_FAIR_TH, ipol_evdo_ecio_fair_th, -9, UNDEF_CONFIG_32, |
| "High threshold value of EVDO ECIO";) |
| IWLAN_CFG_L2_TYPE_END(ipol_ans_cfg, sig_cfg, md_sig_thr_cfg) |
| IWLAN_CFG_L1_TYPE_END(ipol_ans_cfg, sig_cfg) |
| |
| /* QoS Config */ |
| IWLAN_CFG_L1_TYPE_START(ipol_ans_cfg, qos_cfg, "[MCF]QOS Configurarion";) |
| /* QoS - RTP */ |
| IWLAN_CFG_L2_TYPE_START(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, "RTP QOS Configurarion";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint8, IPOL_RTP_QOS_ENABLE, ipol_rtp_qos_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, RTP QOS monitoring will be turn on";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint8, IPOL_IMS_RTP_TO_STERRING_ENABLE, ipol_ims_rtp_to_sterring_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "Phase out.";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_WLAN_VOICE_RTP_JITTER_TH, ipol_ims_wlan_voice_rtp_jitter_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP jitter loss when voice call in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_WLAN_VIDEO_RTP_JITTER_TH, ipol_ims_wlan_video_rtp_jitter_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP jitter loss when video call in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_RTP_WLAN_PKT_LOSS_TH, ipol_ims_rtp_wlan_pkt_loss_th, 50, UNDEF_CONFIG_32, |
| "Threshold value of RTP packet loss rate";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_RTP_WLAN_QOS_BKOFF_T, ipol_ims_rtp_wlan_qos_bkoff_t, 20, UNDEF_CONFIG_32, // in sec |
| "Duration of handover back to WLAN after handover out, and clear call qos on wlan";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_RTP_PKT_LOSS_TH, ipol_wlan_rtp_pkt_loss_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Phase out.";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_RTP_SAMPLING_DURATION, ipol_wlan_rtp_sampling_duration, 5, UNDEF_CONFIG_32, // in sec |
| "Duration of monitoring RTP status for IWLAN";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_RTCP_JITTER_DELAY_TH, ipol_wlan_rtcp_jitter_delay_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // in ms |
| "Threshold value of RTCP jitter delay";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_RTCP_PLR_TH, ipol_wlan_rtcp_plr_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // percentage |
| "Threshold value of RTCP PLR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint8, IPOL_WLAN_NO_RTP_HANDOVER, ipol_wlan_no_rtp_handover_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, No RTP timeout will trigger handover from WLAN to Cellular";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_HO_BEGIN_NO_RTP_ROLLBACK, ipol_wlan_ho_begin_no_rtp_rollback, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // in ms |
| "value == 0: disalbe, value > 0: enable, and the measurement duraiton for no RTP. When enable, if target RAT No RTP after HO, trigger handover back to Cellular";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint8, IPOL_INCALL_CHECK_NO_RTP, ipol_incall_check_no_rtp_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enabled, No RTP timeout value is set only if call is connected";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_NO_RTP_CLEAR_TH, ipol_wlan_no_rtp_clear_th, 0, UNDEF_CONFIG_32, |
| "If RTP packet loss rate is less or equal to threshold, clear WLAN no rtp status";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_WLAN_NO_RTCP_HANDOVER_TIMER, ipol_wlan_no_rtcp_handover_timer, 15, UNDEF_CONFIG_32, |
| "Duration of no RTCP timeout trigger handover from WLAN to Cellular, 0:disable";) |
| |
| /* RTP setting for Cellular */ |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_CELL_VOICE_RTP_JITTER_TH, ipol_ims_cell_voice_rtp_jitter_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP jitter loss when voice call in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_CELL_VIDEO_RTP_JITTER_TH, ipol_ims_cell_video_rtp_jitter_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP jitter loss when video call in call";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_RTP_CELL_PKT_LOSS_TH, ipol_ims_rtp_cell_pkt_loss_th, 50, UNDEF_CONFIG_32, |
| "Threshold value of RTP packet loss rate";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_IMS_RTP_CELL_QOS_BKOFF_T, ipol_ims_rtp_cell_qos_bkoff_t, 20, UNDEF_CONFIG_32, // in sec |
| "Duration of handover back to Cellular after handover out, and clear call qos on cell";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_RTP_SAMPLING_DURATION, ipol_cell_rtp_sampling_duration, 5, UNDEF_CONFIG_32, // in sec |
| "Duration of monitoring RTP status for IWLAN";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_RTCP_JITTER_DELAY_TH, ipol_cell_rtcp_jitter_delay_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // in ms |
| "Threshold value of RTCP jitter delay";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_RTCP_PLR_TH, ipol_cell_rtcp_plr_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // percentage |
| "Threshold value of RTCP PLR";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint8, IPOL_CELL_NO_RTP_HANDOVER, ipol_cell_no_rtp_handover_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, No RTP timeout will trigger handover from Cellular to WLAN";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_HO_BEGIN_NO_RTP_ROLLBACK, ipol_cell_ho_begin_no_rtp_rollback, UNDEF_CONFIG_32, UNDEF_CONFIG_32, // in ms |
| "value == 0: disalbe, value > 0: enable, and the measurement duraiton for no RTP. When enable, if target RAT No RTP after HO, trigger handover back to WLAN";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_NO_RTP_CLEAR_TH, ipol_cell_no_rtp_clear_th, 0, UNDEF_CONFIG_32, |
| "If RTP packet loss rate is less or equal to threshold, clear 3GPP no rtp status";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_rtp_cfg, kal_uint32, IPOL_CELL_NO_RTCP_HANDOVER_TIMER, ipol_cell_no_rtcp_handover_timer, 15, UNDEF_CONFIG_32, |
| "Duration of no RTCP timeout trigger handover from Cellular to WLAN, 0:disable";) |
| IWLAN_CFG_L2_TYPE_END(ipol_ans_cfg, qos_cfg, qos_rtp_cfg) |
| |
| /* QoS - Ping */ |
| IWLAN_CFG_L2_TYPE_START(ipol_ans_cfg, qos_cfg, qos_ping_cfg, "[MCF]Ping QOS Configurarion";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_ping_cfg, kal_uint8, IPOL_PING_QOS_ENABLE, ipol_ping_qos_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, Ping QOS monitoring will be turn on";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_ping_cfg, kal_uint32, IPOL_PING_INTERVAL, ipol_ping_interval, UNDEF_CONFIG_32, UNDEF_CONFIG_32, //in sec |
| "Duration of monitoring Ping status for IWLAN";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_ping_cfg, kal_uint32, IPOL_PING_LATENCY_TH, ipol_ping_latency_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, //in ms |
| "Threshold value of Ping latency";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_ping_cfg, kal_uint32, IPOL_PING_LOSS_TH, ipol_ping_loss_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, //0~100% |
| "Threshold value of Ping packet loss rate";) |
| IWLAN_CFG_L2_TYPE_END(ipol_ans_cfg, qos_cfg, qos_ping_cfg) |
| |
| /* QoS - DPD */ |
| IWLAN_CFG_L2_TYPE_START(ipol_ans_cfg, qos_cfg, qos_dpd_cfg, "[MCF]DPD QOS Configuration";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_dpd_cfg, kal_uint8, IPOL_DPD_QOS_ENABLE, ipol_dpd_qos_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, IWLAN can trigger DPD mechanism";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_dpd_cfg, kal_uint32, IPOL_IMS_RTP_HIGH_PKT_LOSS_FOR_DPD_TH, ipol_ims_rtp_high_pkt_loss_for_dpd_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP high packet loss rate. If over it, do DPD";) |
| IWLAN_CFG_L2_TYPE_DCL(ipol_ans_cfg, qos_cfg, qos_dpd_cfg, kal_uint32, IPOL_IMS_RTP_LOW_PKT_LOSS_FOR_DPD_TH, ipol_ims_rtp_low_pkt_loss_for_dpd_th, UNDEF_CONFIG_32, UNDEF_CONFIG_32, |
| "Threshold value of RTP low packet loss rate. If under it, clear DPD";) |
| IWLAN_CFG_L2_TYPE_END(ipol_ans_cfg, qos_cfg, qos_dpd_cfg) |
| |
| IWLAN_CFG_L1_TYPE_END(ipol_ans_cfg, qos_cfg) |
| |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint8, IPOL_IMS_PCSCF_QUALITY_ENABLE, ipol_ims_pcscf_quality_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[MCF]When enable, P-CSCF connection quality monitoring will be turned on";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_uint32, IPOL_IMS_PCSCF_STATE_BKOFF_T, ipol_ims_pcscf_state_bkoff_t, 0, UNDEF_CONFIG_32, |
| "[MCF]Duration of handover back after handover out for pcscf connection quality poor";) |
| IWLAN_CFG_L0_TYPE_DCL(ipol_ans_cfg, kal_int8, IPOL_IMS_EVS_CALL_THR_OFFSET, ipol_ims_evs_call_thr_offset, 0, UNDEF_CONFIG_8, |
| "[MCF]Threshold offset when UE have on-going EVS call";) |
| |
| /* Location Config */ |
| IWLAN_CFG_L1_TYPE_START(ipol_ans_cfg, loc_cfg, "[MCF]Location Configurarion";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_LOCATION_ENABLE, ipol_location_enable, KAL_TRUE, UNDEF_CONFIG_8, |
| "When enable, loaction query will be turn on";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_WLAN_NO_LOCATION_BARRING_ENABLE, ipol_ims_wlan_no_location_barring_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, barring IMS on WLAN when no location information";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_WLAN_BLOCK_IN_AP_MODE_WHEN_HOME_ENABLE, ipol_ims_wlan_block_in_ap_mode_when_home_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "When enable, barring IMS on WLAN when in home network";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_WLAN_USE_NV_MD_SRV_IF_UNKNOWN_HOME_IN_FLIGHT_MODE, ipol_ims_wlan_use_nv_md_srv_if_unknown_home_in_flight_mode, KAL_FALSE, UNDEF_CONFIG_8, |
| "[INTERNAL] When enable, IWLAN use NVRAM stored last MD srv state if unknown home network status in flight mode";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_WLAN_NO_LOCATION_NO_CELL_NO_LAST_CELL_AS_HOME_ENABLE, ipol_ims_wlan_no_location_no_cell_no_last_cell_as_home_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[INTERNAL] When enable, no location, no cell and no last cell define as at home network";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_LAST_MD_SRV_STATE, ipol_ims_last_md_srv_state, UNDEF_CONFIG_8, UNDEF_CONFIG_8, |
| "[INTERNAL] ***";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, loc_cfg, kal_uint8, IPOL_IMS_CELL_SIG_RANK_WHEN_CELL_DEREG__ENABLE, ipol_ims_cell_sig_rank_when_cell_dereg_enable, KAL_FALSE, UNDEF_CONFIG_8, |
| "[INTERNAL] When enable, Cell signaling is ranked even if cell is deregistered";) |
| IWLAN_CFG_L1_TYPE_END(ipol_ans_cfg, loc_cfg) |
| |
| /* ICAP - REG Capabilities Configuration */ |
| IWLAN_CFG_L1_TYPE_START(ipol_ans_cfg, icap_cfg, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, CHECK_MSISDN, check_msisdn, KAL_FALSE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_uint32, SMS_NETWORK_TYPES, sms_network_types, 15, UNDEF_CONFIG_32, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, SMS_CHECK_VOPS, sms_check_vops, KAL_FALSE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, VOICE_CAP_WHENEVER, voice_cap_whenever, KAL_FALSE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, CHECK_VOPS, check_vops, KAL_FALSE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, CHECK_CALL_DOMAIN, check_call_domain, KAL_FALSE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, VIDEO_CAP_DEPEND_ON_VOICE_LTE, video_cap_depend_on_voice_lte, KAL_TRUE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, VIDEO_CAP_DEPEND_ON_VOICE_WIFI, video_cap_depend_on_voice_wifi, KAL_TRUE, UNDEF_CONFIG_8, "";) |
| IWLAN_CFG_L1_TYPE_DCL(ipol_ans_cfg, icap_cfg, kal_bool, CHECK_ROAM_VOPS,check_roam_vops, KAL_TRUE, UNDEF_CONFIG_8, "";) |
| |
| IWLAN_CFG_L1_TYPE_END(ipol_ans_cfg, icap_cfg) |
| |
| IWLAN_CFG_L0_TYPE_END(ipol_ans_cfg) |
| /* CONFIG_END */ |