aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSusheel nyamala <snyamala@codeaurora.org>2016-04-07 13:11:07 +0530
committerSteve Kondik <steve@cyngn.com>2016-07-02 10:55:01 -0700
commit09ca1bb16eabefb09dc50d94ff00463f6ed79fa0 (patch)
tree2d4fef711cf66cc0a4d219826fe7acbfc1d8bb5c
parent4a6e7c5d98a223cb5642107a011413d4e101c18b (diff)
downloadandroid_frameworks_opt_telephony-09ca1bb16eabefb09dc50d94ff00463f6ed79fa0.tar.gz
android_frameworks_opt_telephony-09ca1bb16eabefb09dc50d94ff00463f6ed79fa0.tar.bz2
android_frameworks_opt_telephony-09ca1bb16eabefb09dc50d94ff00463f6ed79fa0.zip
Fix ims pdn issue on non dds sub on iwlan
Set Dds flag if top sub id doesnt match dds sub id. Allow Dds switch in iwlan, only if dds flag is set. Change-Id: I39695cf11b27fcffe222620ce0ea0ac046bc9683 CRs-Fixed: 998685
-rw-r--r--src/java/com/android/internal/telephony/dataconnection/DcSwitchStateMachine.java3
-rw-r--r--src/java/com/android/internal/telephony/dataconnection/DctController.java3
2 files changed, 5 insertions, 1 deletions
diff --git a/src/java/com/android/internal/telephony/dataconnection/DcSwitchStateMachine.java b/src/java/com/android/internal/telephony/dataconnection/DcSwitchStateMachine.java
index 6caf20d92..12d2c0323 100644
--- a/src/java/com/android/internal/telephony/dataconnection/DcSwitchStateMachine.java
+++ b/src/java/com/android/internal/telephony/dataconnection/DcSwitchStateMachine.java
@@ -454,7 +454,8 @@ public class DcSwitchStateMachine extends StateMachine {
if (DBG) log("AttachedState: REQ_CONNECT, apnRequest=" + apnRequest);
int dataRat = mPhone.getServiceState().getRilDataRadioTechnology();
- if (dataRat == ServiceState.RIL_RADIO_TECHNOLOGY_IWLAN) {
+ if (dataRat == ServiceState.RIL_RADIO_TECHNOLOGY_IWLAN &&
+ DctController.getInstance().isDdsSwitchNeeded()) {
SubscriptionController subController = SubscriptionController.getInstance();
int ddsSubId = subController.getDefaultDataSubId();
int ddsPhoneId = subController.getPhoneId(ddsSubId);
diff --git a/src/java/com/android/internal/telephony/dataconnection/DctController.java b/src/java/com/android/internal/telephony/dataconnection/DctController.java
index fdc5145a0..6d86afe89 100644
--- a/src/java/com/android/internal/telephony/dataconnection/DctController.java
+++ b/src/java/com/android/internal/telephony/dataconnection/DctController.java
@@ -585,6 +585,9 @@ public class DctController extends Handler {
PhoneConstants.APN_TYPE_IMS) && mNeedsDdsSwitch.get()) {
logd("getTopPriorityRequestPhoneId: ims request, use dds phone id");
subId = mSubController.getDefaultDataSubId();
+ } else if (subId != mSubController.getDefaultDataSubId()) {
+ logd("getTopPriorityRequestPhoneId: Request needs Dds switch");
+ mNeedsDdsSwitch.set(true);
}
}
final int phoneId = mSubController.getPhoneId(subId);