[Bugfix][bug-view-154]MTK AP patch for MIPC_APN_SET_IA_REQ block mipc channel
Only Configure: No
Affected branch: DSDS
Affected module: Network
Is it affected on both ZXIC and MTK: only MTK
Self-test: Yes
Doc Update: No
Change-Id: I85c73cc2390f3b8f6c79b601317d888905759e93
diff --git a/IC_src/mtk/telephonyware/3.0/hardware/ril/platformlib/libmipc/lib/src/api/mipc_apn_api.c b/IC_src/mtk/telephonyware/3.0/hardware/ril/platformlib/libmipc/lib/src/api/mipc_apn_api.c
index 1707c4d..2157466 100644
--- a/IC_src/mtk/telephonyware/3.0/hardware/ril/platformlib/libmipc/lib/src/api/mipc_apn_api.c
+++ b/IC_src/mtk/telephonyware/3.0/hardware/ril/platformlib/libmipc/lib/src/api/mipc_apn_api.c
@@ -40,7 +40,7 @@
result_ptr->result_code = (mipc_result_enum)(*((uint32_t*)val_ptr));
//acording to MBIM spec, non-succ result should have no information buffer(9.4.5)
if (MIPC_RESULT_SUCCESS != result_ptr->result_code) {
- result = MIPC_API_RESULT_SUCCESS;
+ result = MIPC_API_RESULT_FAIL;
break;
}
val_ptr = mipc_msg_get_val_ptr(msg_cnf_ptr, MIPC_APN_SET_IA_CNF_T_IA_COUNT, NULL);
diff --git a/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.cpp b/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.cpp
index 53385cb..26213d1 100755
--- a/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.cpp
+++ b/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.cpp
@@ -92,7 +92,8 @@
mApnInit(false),
mcc(String8("")),
mnc(String8("")),
- emptyStr(String8("")) {
+ emptyStr(String8("")),
+ mIaRetryCount(0) {
}
RpApnController::~RpApnController() {
@@ -701,9 +702,15 @@
if (response->getError() != RIL_E_SUCCESS) {
logD(RFX_LOG_TAG, "setdataprofile response fail!");
+ mIaRetryCount++;
+ if (mIaRetryCount < 20) {
+ usleep(50 * 1000);
+ setInitialAttachApn();
+ }
return;
- }else{
+ } else {
logD(RFX_LOG_TAG, "setdataprofile response success!");
+ mIaRetryCount = 0;
}
}
diff --git a/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.h b/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.h
index baab352..520b777 100755
--- a/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.h
+++ b/IC_src/mtk/telephonyware/3.0/libvendor-ril/mtk-rilproxy/telephony/apn/RpApnController.h
@@ -176,6 +176,7 @@
bool mApnInit;
String8 emptyStr;
int mDataprofileid;
+ int mIaRetryCount;
};
#endif /* __RP_APN_CONTROLLER_H__ */