[Feature][T8TSK-209][Modem]Update Modem version to P5 0531
Change-Id: I2e8eae57738092652f476deea2da04d69e7f8426
diff --git a/mcu/custom/protocol/common/ps/custom_ssds.c b/mcu/custom/protocol/common/ps/custom_ssds.c
index b561706..1f265b4 100755
--- a/mcu/custom/protocol/common/ps/custom_ssds.c
+++ b/mcu/custom/protocol/common/ps/custom_ssds.c
@@ -223,6 +223,7 @@
case 278: /* Jazz-Pakistan */
case 294: /* MPT-Mayanmar */
case 296:/* CWW-US */
+ case 303: /* Iliad/Italy */
case 306: /* CUHK-Hongkong */
case 314: /* Telepost-Greenland */
case 315: /* Tele2-Kazakhstan */
@@ -245,6 +246,14 @@
*req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_CS;
is_changed = KAL_TRUE;
break;
+ case 420: /* Saudi Arabia -Redbull*/
+ *req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_CS;
+ is_changed = KAL_TRUE;
+ break;
+ case 426: /* NLC - Pakistan */
+ *req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_IMS;
+ is_changed = KAL_TRUE;
+ break;
case 5: /* TMOEU/DTAG Greece/Netherlands/Hungary/Slovakia */
if((0 == strcmp(params_info->mcc, "202")) || (0 == strcmp(params_info->mcc, "204")) ||
(0 == strcmp(params_info->mcc, "216")) || (0 == strcmp(params_info->mcc, "231")) ||
@@ -271,6 +280,13 @@
is_changed = KAL_TRUE;
}
break;
+ case 113: /* Beeline */
+ if(0 == strcmp(params_info->mcc, "250")) /* Beeline-Russia */
+ {
+ *req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_CS;
+ is_changed = KAL_TRUE;
+ }
+ break;
case 137:/* Tele2 */
if(0 == strcmp(params_info->mcc, "250")) /* Tele2/Russia USSD over CS */
{
@@ -292,13 +308,14 @@
is_changed = KAL_TRUE;
}
break;
- case 9:/* CT */
- case 304:/* CTMO: only support CF and CW --aomen*/
+ case 9:/* CT */
+ case 304:/* CTMO: only support CF and CW --aomen*/
+ case 430: /* Airtel- Nigeria */
*req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_NOT_SUPPORT;
is_changed = KAL_TRUE;
break;
- case 6: /* VDF */
- if(0 == strcmp(params_info->mcc, "655")) /* VDF-South Africa */
+ case 6: /* VDF-South Africa and VDF-EU IOT */
+ if((0 == strcmp(params_info->mcc, "655")) || (0 == strcmp(params_info->mcc, "901")))
{
*req_ussd_path_type = CUSTOM_SSDS_USSD_PATH_TYPE_CS;
is_changed = KAL_TRUE;
@@ -1464,6 +1481,10 @@
break;
}
}
+ else if(0 == strcmp(params_info->mcc, "901")) /* VDF-EU IOT */
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ }
need_check_roaming_data_off = KAL_FALSE;
break;
}
@@ -2339,7 +2360,7 @@
break;
default:
break;
- }
+ }
break;
}
case 125: /* DTAC-Thailand */
@@ -2370,25 +2391,33 @@
}
if(0 == strcmp(params_info->mcc, "250"))
- {
- if(0 == strcmp(params_info->mnc, "02")) /* MEGAFON-Russian */
- {
+ {
+ if(0 == strcmp(params_info->mnc, "02")) /* MEGAFON-Russian */
+ {
if ((KAL_FALSE == params_info->is_ims_registered) &&
- (params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING ||
+ (params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING ||
params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING))
{/* CW service*/
atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
}
- }
+ }
}
break;
}
- case 128: /* DNA */
+ case 128: /* DNA Finland */
{
- if (params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_SET_CLIR ||
- params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR)
- {/* CLIR service*/
- atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CLIR:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ default:
+ break;
}
break;
}
@@ -2400,10 +2429,19 @@
case CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR:
atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
break;
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CLIP:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CLIP:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
atcmd_path_type = (KAL_TRUE == params_info->is_ims_registered)?CUSTOM_SSDS_PATH_TYPE_PS_ONLY:CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
break;
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_BARRING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_BARRING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_OPERATION_NOT_SUPPORTED_4;
+ break;
+
default:
break;
}
@@ -2791,6 +2829,18 @@
break;
}
}
+ else if(0 == strcmp(params_info->mcc, "247")) //Latvia)
+ {
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = (KAL_TRUE == params_info->is_ims_registered)?CUSTOM_SSDS_PATH_TYPE_PS_ONLY:CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ break;
+ default:
+ break;
+ }
+ }
break;
}
case 139: /* BOUYGUES */
@@ -3250,8 +3300,8 @@
}
case 158: /* Zain */
{
- /*Kuwait*/
- if(0 == strcmp(params_info->mcc, "419"))
+ /*Kuwait*Jordan*/
+ if((0 == strcmp(params_info->mcc, "419")) || (0 == strcmp(params_info->mcc, "416")))
{
atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
}
@@ -4102,6 +4152,10 @@
params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR)
{
atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_OPERATION_NOT_SUPPORTED_4;
+ } else if (params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING ||
+ params_info->atcmd_type == CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING)
+ {
+ atcmd_path_type = (KAL_TRUE == params_info->is_ims_registered)?CUSTOM_SSDS_PATH_TYPE_PS_PREFER:CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
}
}
@@ -4299,7 +4353,21 @@
{
if(0 == strcmp(params_info->mcc, "220")) /* Serbia */
{
- atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_PS_ONLY;
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_PS_ONLY;
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ /* Set to CS only to sync the status with CS, then retun terminal based */
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ break;
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CLIR:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ default:
+ break;
+ }
}
break;
}
@@ -4827,6 +4895,11 @@
}
break;
}
+ case 303: /* Iliad/Italy */
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ break;
+ }
case 306:/* CUHK */
{
atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
@@ -5332,7 +5405,6 @@
}
case 357:/*CNT-Ecuador*/
{
- atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
switch(params_info->atcmd_type)
{
case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
@@ -5637,6 +5709,100 @@
}
break;
}
+ case 420: /* Redbull - Saudi Arabia */
+ {
+ atcmd_path_type = (KAL_TRUE == params_info->is_ims_registered)?CUSTOM_SSDS_PATH_TYPE_PS_ONLY:CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ default:
+ break;
+ }
+ break;
+ }
+ case 421: /* Mobile - Yemen */
+ {
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_BARRING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_BARRING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_PS_ONLY;
+ break;
+ default:
+ break;
+ }
+ if(params_info->roaming_status != CUSTOM_SSDS_ROAMING_TYPE_NO)
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ }
+ break;
+ }
+ case 424: /* Vodafone/Iceland */
+ {
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ default:
+ break;
+ }
+ if(params_info->roaming_status != CUSTOM_SSDS_ROAMING_TYPE_NO)
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ }
+ break;
+ }
+ case 426: /* NLC - Pakistan*/
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ break;
+ }
+ case 430: /* Airtel - Nigeria*/
+ {
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION;
+ break;
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CLIR:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CLIR:
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_OPERATION_NOT_SUPPORTED_4;
+ break;
+ default:
+ break;
+ }
+ if(atcmd_path_type == CUSTOM_SSDS_PATH_TYPE_PS_PREFER ||
+ atcmd_path_type == CUSTOM_SSDS_PATH_TYPE_PS_ONLY)
+ {
+ if(KAL_TRUE != params_info->is_mobile_data_setting_enabled)
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_CS_ONLY;
+ return atcmd_path_type;
+ }
+ }
+ need_check_roaming_data_off_cs_only = KAL_TRUE;
+ break;
+ }
+ case 431: /* Unifique - Brazil */
+ {
+ atcmd_path_type = CUSTOM_SSDS_PATH_TYPE_PS_PREFER;
+ switch(params_info->atcmd_type)
+ {
+ case CUSTOM_SSDS_ATCMD_TYPE_SET_CALL_WAITING:
+ case CUSTOM_SSDS_ATCMD_TYPE_GET_CALL_WAITING:
+ atcmd_path_type = (KAL_TRUE == params_info->is_ims_registered)?CUSTOM_SSDS_PATH_TYPE_TB_SOLUTION:CUSTOM_SSDS_PATH_TYPE_PS_PREFER;
+ break;
+ default:
+ break;
+ }
+ break;
+ }
case 1002: /* Nokia IODT */
{
/* default config */
@@ -6754,6 +6920,12 @@
is_ussi_allowed_during_ims_call = KAL_FALSE;
}
break;
+ case 220: /* Tigo */
+ if(0 == strcmp(params_info->mcc, "704")) /* Tigo-Guatemala */
+ {
+ is_ussi_allowed_during_ims_call = KAL_FALSE;
+ }
+ break;
case 246: /* Ooredoo */
if(0 == strcmp(params_info->mcc, "427")) /* Ooredoo-Qatar */
{
@@ -6773,7 +6945,13 @@
if(params_info->nr_attached == KAL_TRUE)
{
switch(params_info->op_id)
- {
+ {
+ case 3: /* Orange */
+ if(0 == strcmp(params_info->mcc, "214")) /* Spain */
+ {
+ is_rat_mode_change_allowed = KAL_TRUE;
+ }
+ break;
case 6: /* Vodafone */
if(0 == strcmp(params_info->mcc, "262")) /* Vodafone-Germany */
{