[Feature][T8TSK-212][Modem]Update MTK modem version to MOLY.NR15.R3.MD700.MP.V75.P8.T800.L1.1215_20240425
MTK modem version: MOLY01242766_AUTO00283601(For_MOBILETEK35_IVT_T800_MOLY.NR15.R3.MD700.MP.V75.P8).tar.gz
RF modem version: T800/l1-1215.rar
Change-Id: Ibf34a0a7101d7678d03aeebf38e6dfd7d281cf61
diff --git a/mcu/custom/service/sbp/sbp_config_ctrl.c b/mcu/custom/service/sbp/sbp_config_ctrl.c
old mode 100755
new mode 100644
index 91956f0..f66cb38
--- a/mcu/custom/service/sbp/sbp_config_ctrl.c
+++ b/mcu/custom/service/sbp/sbp_config_ctrl.c
@@ -59,32 +59,32 @@
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
@@ -93,7 +93,7 @@
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
@@ -101,27 +101,27 @@
* removed!
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
@@ -134,7 +134,7 @@
*
* removed!
* removed!
- * removed!
+ *
* removed!
*
* removed!
@@ -143,34 +143,34 @@
*
* removed!
* removed!
+ *
* removed!
+ *
+ * removed!
+ * removed!
+ *
+ * removed!
+ *
+ * removed!
+ * removed!
+ *
+ * removed!
+ *
+ * removed!
+ * removed!
+ *
+ * removed!
+ *
+ * removed!
+ * removed!
+ *
* removed!
*
* removed!
* removed!
* removed!
- * removed!
*
* removed!
- * removed!
- * removed!
- * removed!
- *
- * removed!
- * removed!
- * removed!
- * removed!
- *
- * removed!
- * removed!
- * removed!
- * removed!
- *
- * removed!
- * removed!
- * removed!
- * removed!
- * removed!
*
* removed!
* removed!
@@ -525,7 +525,7 @@
#endif /* __NR_RAT__ */
#ifdef __CDMA2000_RAT__
extern void nvram_custom_config_c2k_nam_para(kal_uint32 old_sbp_id, protocol_id_enum ps_id);
-extern kal_bool nvram_custom_reconfig_c2k_nam_para(sbp_reconfig_custom_param_struct *param_ptr);
+extern kal_bool nvram_custom_reconfig_c2k_nam_para(sbp_reconfig_custom_param_struct *param_ptr);
#endif
extern kal_bool nvram_custom_config_umts(sbp_reconfig_custom_param_struct *param_ptr);
extern kal_bool nvram_custom_config_sbp(sbp_reconfig_custom_param_struct *param_ptr);
@@ -569,10 +569,12 @@
extern kal_bool nvram_custom_config_l5_profile(sbp_reconfig_custom_param_struct *param_ptr);
#endif
extern kal_bool nvram_custom_config_as_profile(sbp_reconfig_custom_param_struct *param_ptr);
+extern kal_bool nvram_custom_config_nwsel_nas_whitelist_dsbp_profile(sbp_reconfig_custom_param_struct *param_ptr);
#ifdef __IPC_ADAPTER__
extern kal_bool ss_nvram_custom_config_non_sbp_nv(protocol_id_enum ps_id, kal_uint32 sim_sbp_id);
#endif
+extern kal_bool nvram_custom_config_ps_conformance_setting(sbp_reconfig_custom_param_struct *param_ptr);
/* For MoDIS UT, SAP_INFO(xxx_SAP,MOD_A,ANY)
* If MOD_A is the test module and send msg to non test modules with above SAP INFO,
@@ -648,7 +650,7 @@
#ifdef __CDMA2000_RAT__
{MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD, nvram_custom_config_hlp_profile},
{MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD, nvram_custom_config_cval_para_mcf},
- {MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE, CFG_SINGLE_MOD, nvram_custom_reconfig_c2k_nam_para},
+ {MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE, CFG_SINGLE_MOD, nvram_custom_reconfig_c2k_nam_para},
#endif
{MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD, nvram_custom_config_mrs_profile},
{MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD, nvram_custom_config_a54_smc_whitelist_plmn},
@@ -678,7 +680,8 @@
{MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL , CFG_GEMINI_MOD, nvram_custom_config_l5_profile},
#endif
{MOD_MM, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD, nvram_custom_config_mm_dsbp_profile},
- {MOD_TMC, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD | CFG_CO_GEMINI_MOD, NULL}
+ {MOD_TMC, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL, CFG_GEMINI_MOD | CFG_CO_GEMINI_MOD, NULL},
+ {MOD_NIL, SBP_RECONFIGURE_SAP, RECONFIG_DSBP_CHANGE_ALL | RECONFIG_DSBP_CHANGE, CFG_GEMINI_MOD, nvram_custom_config_ps_conformance_setting},
};
sbp_reconfigure_module_info_struct *sbp_get_sbp_reconfigure_mod_tbl()
@@ -1023,7 +1026,7 @@
#endif /* __NR_RAT__ */
#ifdef __MD_TCPIP_SUPPORT__
nvram_custom_config_rsra_profile(&sbp_reconfig_custom_param);
-#endif
+#endif
#ifdef __L5_SUPPORT__
nvram_custom_config_l5_profile(&sbp_reconfig_custom_param);
diff --git a/mcu/custom/service/sbp/sbp_nvram_config.c b/mcu/custom/service/sbp/sbp_nvram_config.c
old mode 100755
new mode 100644
index 1b4ff9e..805fbc7
--- a/mcu/custom/service/sbp/sbp_nvram_config.c
+++ b/mcu/custom/service/sbp/sbp_nvram_config.c
@@ -742,17 +742,20 @@
sbp_set_md_feature(SBP_USE_T3402_VALUE_FOR_VOICE_NOT_POSSIBLE_TIMER, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_USE_T3502_VALUE_FOR_VOICE_NOT_POSSIBLE_TIMER, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_SMIC_USE_R16_4G_SET_ASSOCIATE_FOR_FD_EBI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
- sbp_set_md_feature(SBP_CUSTOM_TMO_LEGACY_SIM_EHPLMN_LIST, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_CUSTOM_TMO_LEGACY_SIM_EHPLMN_LIST, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_VOWIFI_DISABLE_5G_SA, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_DISABLE_5G_SA_CALL_HO_TO_VOWIFI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_DISABLE_NR_RRC_INACTIVE_STATUS, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_5G_SA_ROHC_IP_PROFILE_SUPPORT, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_MODEM_DISABLE_PC1DOT5_FOR_N41, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_NOT_RETRY_SKIP_ABNORMAL_PLMN, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_ENDC_ICON_CONSIDER_BAND_COMB, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_NO_MMTEL_SR_TRIGGERED_TAU_DURING_T3411, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_NWSEL_CLEAR_RPLMN_FOR_HOME_COUNTRY_POWER_ON_SEARCH, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_UPDATE_CAP_AND_FORCE_RELEASE_FOR_GENERAL_TIMER_EXPIRE, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature_data(SBP_N1_MAX_PDU_EST_TIMEOUT_REACHED_TIMER_VALUE, 60, (nvram_ef_sbp_modem_data_config_struct*) &sbp_data_buf);
- }
+ }
else if (sbp_id == SBP_ID_CT)
{
sbp_set_md_feature(SBP_DISABLE_2MIN_MINIMUM_HPPLMN_TIMER, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
@@ -902,8 +905,9 @@
else if (sbp_id == SBP_ID_TELEFONICA)
{
sbp_set_md_feature(SBP_DISABLE_DISPLAY_ROAMING_HPLMN_IN_EPLMN, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
- sbp_set_md_feature(SBP_AFR_XG4_EXCLUDE_ECC_CALL, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_AFR_XG4_EXCLUDE_ECC_CALL, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_AFR_XG5_EXCLUDE_ECC_CALL, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_BLOCK_ILLEGAL_ME, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
}
else if (sbp_id == SBP_ID_EE)
{
@@ -914,6 +918,7 @@
}
else if (sbp_id == SBP_ID_DOCOMO)
{
+ sbp_set_md_feature(SBP_EMM_TRIGGER_TAU_UPON_IRRDT_4G5_FAILURE, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_DISABLE_BEARER_RSC_ALLOC, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_DISABLE_BEARER_RSC_MOD, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_R12_CHECK_SSAC_IN_CONNECTED, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
@@ -973,6 +978,7 @@
#endif
sbp_set_md_feature(SBP_LBS_LPP_ALLOW_NILR_AFTER_EMC_END_IN_TWENTY_SECOND, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_EMM_INCLUDE_UE_STATUS_IE_WHEN_N1_DISABLE, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_ENABLE_EUTRAN_AFTER_TIMER_EXPIRY_FOR_TAU_EPS_ONLY_CAUSE_16_17, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
}
else if (sbp_id == SBP_ID_RJL)
{
@@ -1138,6 +1144,12 @@
sbp_set_md_feature(SBP_UE_APPLY_DELAY_AFTER_SR_REJECT_CONGESTION_WO_T3346, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_BG_SEARCH_4G5, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_VGMM_CARRY_UE_USAGE_SETTING_IE, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_DETACH_7_8_MAPPING_TO_REATTACH_REQUIRED, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+
+ //VDP update based on RAT mode
+ sbp_set_md_feature(SBP_RAC_SET_VDP_BASED_ON_RAT_MODE_FOR_OP50, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+
}
else if (sbp_id == SBP_ID_CSL)
{
@@ -1211,6 +1223,8 @@
sbp_set_md_feature(SBP_R13_DOS_ENHANCE, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_KOR_KSC5601_READ, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
#endif
+ sbp_set_md_feature_data(SBP_FLIGHT_MODE_ECC_3GPP_SEARCH_RAT, 2, (nvram_ef_sbp_modem_data_config_struct*)&sbp_data_buf);
+ sbp_set_md_feature_data(SBP_ECC_FULL_BAND_SEARCH_RAT_ORDER, 1, (nvram_ef_sbp_modem_data_config_struct*) &sbp_data_buf);
sbp_set_md_feature(SBP_CHANGE_RAT_FOR_CUSTOM_IMSI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_IMS_CONFIG_DELAY_REPORT_FOR_EPS_ONLY_NW, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_EPS_ONLY_CAUSE18_SELECT23G, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
@@ -1241,6 +1255,8 @@
sbp_set_md_feature(SBP_R13_DOS_ENHANCE, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_KOR_KSC5601_READ, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
#endif
+ sbp_set_md_feature_data(SBP_FLIGHT_MODE_ECC_3GPP_SEARCH_RAT, 2, (nvram_ef_sbp_modem_data_config_struct*)&sbp_data_buf);
+ sbp_set_md_feature_data(SBP_ECC_FULL_BAND_SEARCH_RAT_ORDER, 1, (nvram_ef_sbp_modem_data_config_struct*) &sbp_data_buf);
sbp_set_md_feature(SBP_CHANGE_RAT_FOR_CUSTOM_IMSI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_SIM_REJECT_CLOSE_CHANNEL_REQUEST_WHEN_ALREADY_CLOSE, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
}
@@ -1270,7 +1286,9 @@
sbp_set_md_feature(SBP_EUTRAN_DISABLE_AND_EPS_DETACH_WHEN_IMS_UNREGISTERED_OR_VOPS_NOT_SUPPORT, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_FLIGHT_MODE_RESET_T3402, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_CHANGE_RAT_FOR_CUSTOM_IMSI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
- sbp_set_md_feature(SBP_DETACH_WHEN_SET_RAT_GW2LN_WHILE_ROAMING, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_DETACH_WHEN_SET_RAT_GW2LN_WHILE_ROAMING, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature_data(SBP_FLIGHT_MODE_ECC_3GPP_SEARCH_RAT, 2, (nvram_ef_sbp_modem_data_config_struct*)&sbp_data_buf);
+ sbp_set_md_feature_data(SBP_ECC_FULL_BAND_SEARCH_RAT_ORDER, 1, (nvram_ef_sbp_modem_data_config_struct*) &sbp_data_buf);
}
else if (sbp_id == SBP_ID_SMARTFREN)
{
@@ -1342,6 +1360,7 @@
sbp_set_md_feature(SBP_DISABLE_EUTRAN_WHILE_NO_23G, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_LTE_DISABLE_SINGLE_BAND_WW_FILTER, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_LTE_APPLY_SINGLE_BAND_WW_FILTER_EVEN_NW_REQUEST_FREQBAND, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_CHECK_NW_ASSIGNMENT_NR_BW_SETTING_BY_NVRAM_VALUE, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_PUCCH_GROUP_LARGER_SCS_V15_6, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_SDAP_AS_REFLECTIVE_QOS_SUPPORT, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_DISABLE_EUTRAN_WHEN_ATTACH_REJECT_ESM_CAUSE_27, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
@@ -1459,6 +1478,7 @@
{
sbp_set_md_feature(SBP_NWSEL_START_HPPLMN_TIMER_IN_NON_HIGHEST_HPLMN, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_NWSEL_SELECT_HIGHEST_PRIORITY_EHPLMN, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ sbp_set_md_feature(SBP_MM_SEARCH_HPLMN_BEFORE_RPLMN, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_ENDC_PREFER_A2_ENH, KAL_FALSE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_CHANGE_RAT_FOR_CUSTOM_IMSI, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
sbp_set_md_feature(SBP_DISABLE_N1_WHEN_NOT_SUPPORT_ECC_ON_NR, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
@@ -1527,6 +1547,22 @@
sbp_set_md_feature(SBP_LBS_LPP_ALLOW_NILR_AFTER_EMC_END, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
}
+#ifdef __NR_DISABLE_UL_256QAM_FOR_LRA__
+ /* ALPS07854487/MOLY01025065 */
+ if ( ((!(kal_mem_cmp(param_ptr->mcc,"310",3))) && (!(kal_mem_cmp(param_ptr->mnc,"750",3)))) || // for Appalachian Wireless
+ ((!(kal_mem_cmp(param_ptr->mcc,"310",3))) && (!(kal_mem_cmp(param_ptr->mnc,"600",3)))) || // for Cellcom
+ ((!(kal_mem_cmp(param_ptr->mcc,"311",3))) && (!(kal_mem_cmp(param_ptr->mnc,"850",3)))) || // for Cellcom
+ ((!(kal_mem_cmp(param_ptr->mcc,"312",3))) && (!(kal_mem_cmp(param_ptr->mnc,"160",3)))) || // for Chat Mobility
+ ((!(kal_mem_cmp(param_ptr->mcc,"310",3))) && (!(kal_mem_cmp(param_ptr->mnc,"930",3)))) || // for Copper Valley, Custer Telephone
+ ((!(kal_mem_cmp(param_ptr->mcc,"311",3))) && (!(kal_mem_cmp(param_ptr->mnc,"350",3)))) || // for Nemont
+ ((!(kal_mem_cmp(param_ptr->mcc,"311",3))) && (!(kal_mem_cmp(param_ptr->mnc,"420",3)))) || // for Northwest Missouri Cellular
+ ((!(kal_mem_cmp(param_ptr->mcc,"310",3))) && (!(kal_mem_cmp(param_ptr->mnc,"360",3)))) || // for Pioneer Cellular
+ ((!(kal_mem_cmp(param_ptr->mcc,"310",3))) && (!(kal_mem_cmp(param_ptr->mnc,"960",3)))) || // for STRATA
+ ((!(kal_mem_cmp(param_ptr->mcc,"311",3))) && (!(kal_mem_cmp(param_ptr->mnc,"050",3)))) ) // for Thumb Cellular
+ {
+ sbp_set_md_feature(SBP_DISABLE_UL_256QAM, KAL_TRUE, (nvram_ef_sbp_modem_config_struct*)&sbp_feature_buf);
+ }
+#endif
#ifdef __IPC_ADAPTER__
/*ALPS05063851 [[A415F] The device should not supports "2G-LTE Measurements and Reporting"]
diff --git a/mcu/custom/service/sbp/sbp_nvram_l4c_config.c b/mcu/custom/service/sbp/sbp_nvram_l4c_config.c
old mode 100755
new mode 100644
index 5078abc..5bf846c
--- a/mcu/custom/service/sbp/sbp_nvram_l4c_config.c
+++ b/mcu/custom/service/sbp/sbp_nvram_l4c_config.c
@@ -245,13 +245,13 @@
break;
}
case 20: /* Sprint */
- {
+ {
//Add the codes for Sprint hVOLTE
nvram_hvolte_e911_profile_ptr->hvolte_enable = HVOLTE_AUTO_MODE;
//keep hVoLTE mode as SRLTE by default for sprint
nvram_hvolte_e911_profile_ptr->hvolte_mode = HVOLTE_SRLTE_MODE;
-
+
// Update WWAN timer to 17s
nvram_hvolte_e911_profile_ptr->t_wwan_911 = 17;
break;
@@ -403,7 +403,7 @@
mcf_tlvota_sbp_tag_t sbp_tag;
- if (param_ptr == NULL)
+ if (param_ptr == NULL)
{
return KAL_FALSE;
}
@@ -455,7 +455,7 @@
mcf_read_tlvota_buffer_sbp_tag(param_ptr->ps_id, sbp_tag, NVRAM_EF_SMSAL_COMMON_PARAM_LID, (kal_uint8 *)nvram_default_buf_ptr,
(sizeof(kal_uint8) * NVRAM_EF_SMSAL_COMMON_PARAM_SIZE));
- /* Update only sms_fdn_off value */
+ /* Update only sms_fdn_off value */
((nvram_ef_smsal_common_param_struct*)nvram_external_buf_ptr)->sms_fdn_off = ((nvram_ef_smsal_common_param_struct*)nvram_default_buf_ptr)->sms_fdn_off;
/* Write to NVRAM */
@@ -495,10 +495,10 @@
#ifndef L4_NOT_PRESENT
kal_uint8 *buf_from_nvram = NULL;
kal_bool ret = KAL_FALSE;
- sim_interface_enum sim_slot_id ;
+ sim_interface_enum sim_slot_id ;
-
-#if defined(__GEMINI__)
+
+#if defined(__GEMINI__)
sim_slot_id = 1 + l4c_gemini_get_actual_sim_id((sim_interface_enum)param_ptr->ps_id);
#else /* __GEMINI__ */
sim_slot_id = 1;
@@ -522,7 +522,7 @@
memcpy(param_ptr->buffer, buf_from_nvram,NVRAM_EF_SMSAL_COMMON_PARAM_SIZE);
ret = KAL_TRUE;
break;
-
+
default:
break;
}
@@ -536,7 +536,7 @@
}
return ret;
-
+
#else
return KAL_FALSE;
@@ -550,7 +550,7 @@
* DESCRIPTION
* This function gets called after SIM insertion.
* 1. Default values of PLMN_FOR_ESVC_LID
- * 2. If OTA file is present, then OTA file will
+ * 2. If OTA file is present, then OTA file will
* be read else default values will be present.
* 3. If OTA by OP file is present, then OTA by OP
* file will be read else default values/OTA values
@@ -576,16 +576,16 @@
/* Allocate buffer to read NVRAM default value */
nvram_cur_buf_ptr = (kal_uint8*) get_ctrl_buffer(sizeof(kal_uint8) * NVRAM_EF_PLMN_FOR_ESVC_SIZE);
- /* Read NVRAM LID Default value into buffer */
+ /* Read NVRAM LID Default value into buffer */
if (NVRAM_DEFAULT_VALUE_POINT == nvram_get_default_value(NVRAM_EF_PLMN_FOR_ESVC_LID,
sim_slot_id, &nvram_default_buf_ptr))
- {
+ {
kal_mem_cpy(nvram_cur_buf_ptr,nvram_default_buf_ptr,(sizeof(kal_uint8) * NVRAM_EF_PLMN_FOR_ESVC_SIZE));
}
- kal_mem_set(&sbp_tag, 0, sizeof(mcf_tlvota_sbp_tag_t));
-
+ kal_mem_set(&sbp_tag, 0, sizeof(mcf_tlvota_sbp_tag_t));
+
sbp_tag.sbp_id = param_ptr->sbp_id;
strncpy((char *)&sbp_tag.mcc[0], (const char *)param_ptr->mcc, MAX_MCC_STR_LEN);
@@ -595,7 +595,7 @@
mcf_read_ota_buffer(NVRAM_EF_PLMN_FOR_ESVC_LID, sim_slot_id, nvram_cur_buf_ptr, (sizeof(kal_uint8) * NVRAM_EF_PLMN_FOR_ESVC_SIZE));
/*OTA by OP*/
- mcf_read_tlvota_buffer_sbp_tag(param_ptr->ps_id, sbp_tag, NVRAM_EF_PLMN_FOR_ESVC_LID, (kal_uint8 *)nvram_cur_buf_ptr,
+ mcf_read_tlvota_buffer_sbp_tag(param_ptr->ps_id, sbp_tag, NVRAM_EF_PLMN_FOR_ESVC_LID, (kal_uint8 *)nvram_cur_buf_ptr,
(sizeof(kal_uint8) * NVRAM_EF_PLMN_FOR_ESVC_SIZE));
// Update NVRAM setting
@@ -617,7 +617,7 @@
return KAL_TRUE;
}
-
+
/*****************************************************************************
* FUNCTION
* mcf_custom_dump_hvolte_e911_data
@@ -698,3 +698,23 @@
return ret;
}
+kal_bool nvram_custom_config_ps_conformance_setting(sbp_reconfig_custom_param_struct *param_ptr)
+{
+
+ l4c_dsbp_setting_info_ind_struct *l4c_dsbp_setting_info_ind;
+
+ l4c_dsbp_setting_info_ind = (l4c_dsbp_setting_info_ind_struct *)construct_local_para
+ (sizeof(l4c_dsbp_setting_info_ind_struct), TD_RESET);
+
+ kal_mem_cpy(&(l4c_dsbp_setting_info_ind->sbp_parameters), param_ptr, sizeof(sbp_reconfig_custom_param_struct));
+
+ msg_send6(kal_get_active_module_id(),
+ MOD_L4C + param_ptr->ps_id,
+ L4C_ME_SAP,
+ MSG_ID_L4C_DSBP_SETTING_INFO_IND,
+ (local_para_struct *)l4c_dsbp_setting_info_ind,
+ NULL);
+
+ return KAL_TRUE;
+}
+
diff --git a/mcu/custom/service/sbp/sbp_nvram_nwsel_config.c b/mcu/custom/service/sbp/sbp_nvram_nwsel_config.c
old mode 100755
new mode 100644
index e95fa0a..0057f99
--- a/mcu/custom/service/sbp/sbp_nvram_nwsel_config.c
+++ b/mcu/custom/service/sbp/sbp_nvram_nwsel_config.c
@@ -482,6 +482,66 @@
}
/*****************************************************************************
+* FUNCTION
+ * nvram_custom_config_nwsel_nas_whitelist_dsbp_profile
+ * DESCRIPTION
+ * Set NWSEL Capabilities via DSBP
+ * PARAMETERS
+ * param_ptr
+ * RETURNS
+ * KAL_TRUE
+ *****************************************************************************/
+kal_bool nvram_custom_config_nwsel_nas_whitelist_dsbp_profile(sbp_reconfig_custom_param_struct *param_ptr)
+{
+ mcf_tlvota_sbp_tag_t sbp_tag;
+ kal_uint8 *buf_from_nvram, *nvram_default_buf=NULL;
+ sim_interface_enum sim_slot_id;
+ protocol_id_enum ps_id = param_ptr->ps_id;
+
+
+ #if defined(__GEMINI__)
+ sim_slot_id = 1 + l4c_gemini_get_actual_sim_id((sim_interface_enum) param_ptr->ps_id);
+ #else /* __GEMINI__ */
+ sim_slot_id = 1;
+ #endif /* __GEMINI__*/
+
+ /* Prepare the SBP tag */
+ memset((void *)&sbp_tag, 0, sizeof(mcf_tlvota_sbp_tag_t));
+ sbp_tag.sbp_id = param_ptr->sbp_id;
+ memcpy(sbp_tag.mcc, param_ptr->mcc, MAX_MCC_STR_LEN);
+ memcpy(sbp_tag.mnc, param_ptr->mnc, MAX_MNC_STR_LEN);
+
+
+ if (NVRAM_DEFAULT_VALUE_POINT == nvram_get_default_value(NVRAM_EF_NAS_NSA_WHITELIST_PLMN_LID,
+ sim_slot_id,
+ &nvram_default_buf))
+ {
+ //1 2.1 Read OTA/OTA_by_OP file
+
+ //4 NVRAM_EF_NAS_NSA_WHITELIST_PLMN_LID
+ buf_from_nvram = (kal_uint8*)get_ctrl_buffer(NVRAM_EF_NAS_NSA_WHITELIST_PLMN_SIZE);
+ kal_mem_cpy(buf_from_nvram, nvram_default_buf, NVRAM_EF_NAS_NSA_WHITELIST_PLMN_SIZE);
+
+ /* for MCF OTA */
+ mcf_read_ota_buffer(NVRAM_EF_NAS_NSA_WHITELIST_PLMN_LID, sim_slot_id, (kal_uint8 *)buf_from_nvram, NVRAM_EF_NAS_NSA_WHITELIST_PLMN_SIZE);
+
+ /* for MCF OTA by OP */
+ mcf_read_tlvota_buffer_sbp_tag(ps_id, sbp_tag, NVRAM_EF_NAS_NSA_WHITELIST_PLMN_LID, (kal_uint8 *)buf_from_nvram, NVRAM_EF_NAS_NSA_WHITELIST_PLMN_SIZE);
+
+ /* write back to NVRAM */
+ nvram_external_write_data(NVRAM_EF_NAS_NSA_WHITELIST_PLMN_LID,
+ sim_slot_id,
+ buf_from_nvram,
+ NVRAM_EF_NAS_NSA_WHITELIST_PLMN_SIZE);
+
+ free_ctrl_buffer(buf_from_nvram);
+ }
+
+ return KAL_TRUE;
+}
+
+
+/*****************************************************************************
* FUNCTION
* nvram_custom_config_nwsel_dsbp_profile
* DESCRIPTION
@@ -498,6 +558,7 @@
{
nvram_custom_config_nwsel_para(param_ptr); // Please ask NWSEL owner for this part if you want to modify
nvram_custom_config_gmss_para(param_ptr); // Please ask GMSS owner for this part if you want to modify
+ nvram_custom_config_nwsel_nas_whitelist_dsbp_profile(param_ptr);
return KAL_TRUE;
}
diff --git a/mcu/custom/service/sbp/sbp_nvram_vdm_config.c b/mcu/custom/service/sbp/sbp_nvram_vdm_config.c
old mode 100755
new mode 100644
index 5fba198..127facb
--- a/mcu/custom/service/sbp/sbp_nvram_vdm_config.c
+++ b/mcu/custom/service/sbp/sbp_nvram_vdm_config.c
@@ -573,6 +573,11 @@
//TTA request dial ECC over WCDMA when UE don't register to IMS
nvram_vdm_ads_profile_ptr->profile_emerg.prefer_cs_when_volte_unreged = 1;
+ if ((strcmp((char*)mcc, "635") == 0)&&(strcmp((char*)mnc, "17") == 0)) // korea Telecom
+ {
+ //Disallow WFC emergency call
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_wfc = 0;
+ }
break;
}
case 115: /* SKT */
@@ -690,6 +695,8 @@
{
// Allow UE to attempt IMS ECC although SIB1 don't have ims-emergencyservice
nvram_vdm_ads_profile_ptr->profile_emerg.allow_ims_with_negative_sib_emc_eutran = 1;
+ //SBP_ECBM_ENABLE
+ nvram_vdm_ads_profile_ptr->profile_common.is_ecbm_enable = 1;
break;
}
@@ -1126,14 +1133,6 @@
break;
}
- case 283: /* MEO/Portugal */
- {
- // Disallow emergency call over VoLTE and WFC
- nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_ims = 0;
- nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_wfc = 0;
-
- break;
- }
case 284: /* MTS Serbia */
{
// Disallow emergency call over VoLTE and WFC
@@ -1156,6 +1155,19 @@
break;
}
+ case 290: /*Omantel Oman*/
+ {
+ if (mcc != NULL && mnc != NULL)
+ {
+ if((strcmp((char*)mcc, "422") == 0)&&(strcmp((char*)mnc, "04") == 0))
+ {
+ // Disallow IMS emergency call while UE is roaming
+ nvram_vdm_ads_profile_ptr->profile_emerg.reject_ims_emerg_while_roaming = 1;
+ }
+ }
+ break;
+
+ }
case 291: /* LMT Latvia */
{
// Disallow emergency call over VoLTE and WFC
@@ -1187,6 +1199,14 @@
nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_ims = 0;
break;
}
+
+ case 303: /*Iliad Italy*/
+ {
+ // Disallow IMS emergency call while UE is roaming
+ nvram_vdm_ads_profile_ptr->profile_emerg.reject_ims_emerg_while_roaming = 1;
+ break;
+ }
+
case 312: /* Bite */
{
// Disallow emergency call over VoLTE and WFC
@@ -1311,6 +1331,30 @@
}
break;
}
+ case 415: /*Mauritius my.t*/
+ {
+ // Disallow emergency call over VoLTE and WFC
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_ims = 0;
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_wfc = 0;
+ break;
+ }
+ case 443: /*cubic telecom */
+ {
+ // Disallow emergency call over WFC
+ if(((strcmp((char*)mcc, "295") == 0)&&(strcmp((char*)mnc, "06") == 0)) ||
+ ((strcmp((char*)mcc, "724") == 0)&&(strcmp((char*)mnc, "46") == 0)))
+ {
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_wfc = 0;
+ }
+ break;
+ }
+ case 439: /* Airtel/Tanzania */
+ {
+ // Disallow emergency call over VoLTE and WFC
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_ims = 0;
+ nvram_vdm_ads_profile_ptr->profile_emerg.general_setting_emerg.allow_wfc = 0;
+ break;
+ }
default:
break;
}