summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Gernoth <michael@gernoth.net>2016-01-05 21:41:15 +0100
committerrogersb11 <brettrogers11@gmail.com>2016-01-16 05:25:58 -0500
commit9fd9be2bfdebc101869706cc23a252edfa0174b7 (patch)
tree74a7b33252c43227e4567b6e387481767a1b7f29
parent1eea24817b701c406e1d108f834bcbdeaae668d2 (diff)
downloadandroid_device_samsung_smdk4412-qcom-common-9fd9be2bfdebc101869706cc23a252edfa0174b7.tar.gz
android_device_samsung_smdk4412-qcom-common-9fd9be2bfdebc101869706cc23a252edfa0174b7.tar.bz2
android_device_samsung_smdk4412-qcom-common-9fd9be2bfdebc101869706cc23a252edfa0174b7.zip
ril: Fix data after reboot
In previous versions, setPreferredNetworkType was called directly after startup while the modem was powered down so the correct network type was available while the modem is initializing. This changed in M and the preferred network type is set much later which causes the modem to not allow datacalls until it is rebooted again. Rebooting the modem the first time setPreferredNetworkType is encountered fixes this. Change-Id: I4a8540c9d8b092bf3516a767cf9ec25c2b09d1a1
-rw-r--r--ril/telephony/java/com/android/internal/telephony/smdk4x12QComRIL.java15
1 files changed, 15 insertions, 0 deletions
diff --git a/ril/telephony/java/com/android/internal/telephony/smdk4x12QComRIL.java b/ril/telephony/java/com/android/internal/telephony/smdk4x12QComRIL.java
index 530ad80..68ba932 100644
--- a/ril/telephony/java/com/android/internal/telephony/smdk4x12QComRIL.java
+++ b/ril/telephony/java/com/android/internal/telephony/smdk4x12QComRIL.java
@@ -59,6 +59,8 @@ import com.android.internal.telephony.uicc.IccCardStatus;
*/
public class smdk4x12QComRIL extends RIL implements CommandsInterface {
+ private boolean setPreferredNetworkTypeSeen = false;
+
private AudioManager mAudioManager;
private Object mSMSLock = new Object();
@@ -666,4 +668,17 @@ public class smdk4x12QComRIL extends RIL implements CommandsInterface {
response.sendToTarget();
}
}
+
+ @Override
+ public void setPreferredNetworkType(int networkType , Message response) {
+ riljLog("setPreferredNetworkType: " + networkType);
+
+ if (!setPreferredNetworkTypeSeen) {
+ riljLog("Need to reboot modem!");
+ setRadioPower(false, null);
+ setPreferredNetworkTypeSeen = true;
+ }
+
+ super.setPreferredNetworkType(networkType, response);
+ }
}