aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com/android/internal/telephony/ServiceStateTracker.java
diff options
context:
space:
mode:
authorRobert Greenwalt <rgreenwalt@google.com>2016-07-26 12:02:16 -0700
committerRobert Greenwalt <rgreenwalt@google.com>2016-07-26 12:02:16 -0700
commit2f43e7848e6039b1f7541ef129fedad3b66947f0 (patch)
treebf986c8e13fa5ae481e1db87e1e27dbc8732dbed /src/java/com/android/internal/telephony/ServiceStateTracker.java
parent625407ffc32664bb63c8f4edaf4f17355bfd92ec (diff)
downloadandroid_frameworks_opt_telephony-2f43e7848e6039b1f7541ef129fedad3b66947f0.tar.gz
android_frameworks_opt_telephony-2f43e7848e6039b1f7541ef129fedad3b66947f0.tar.bz2
android_frameworks_opt_telephony-2f43e7848e6039b1f7541ef129fedad3b66947f0.zip
Fix tcp buffer sizes on LTE_CA.
Make them the same as LTE since we don't have an overlay setting for LTE_CA (nor do we want one). Also noticed that on CDMA/CDMA+LTE we didn't enable the ratcheting mechanism so we'd bounce between LTE and LTE_CA unnecessarily. bug:30269506 Change-Id: I34d308c7ee92745ce18700f31b8b68e78728b01e
Diffstat (limited to 'src/java/com/android/internal/telephony/ServiceStateTracker.java')
-rw-r--r--src/java/com/android/internal/telephony/ServiceStateTracker.java30
1 files changed, 26 insertions, 4 deletions
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java
index 54edc37fb..69391e229 100644
--- a/src/java/com/android/internal/telephony/ServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java
@@ -2794,6 +2794,19 @@ public class ServiceStateTracker extends Handler {
boolean hasCdmaDataConnectionChanged =
mSS.getDataRegState() != mNewSS.getDataRegState();
+ boolean hasLocationChanged = !mNewCellLoc.equals(mCellLoc);
+
+ // ratchet the new tech up through it's rat family but don't drop back down
+ // until cell change
+ if (hasLocationChanged == false) {
+ mNewSS.setRilVoiceRadioTechnology(mRatRatcheter.ratchetRat(
+ mSS.getRilVoiceRadioTechnology(),
+ mNewSS.getRilVoiceRadioTechnology()));
+ mNewSS.setRilDataRadioTechnology(mRatRatcheter.ratchetRat(
+ mSS.getRilDataRadioTechnology(),
+ mNewSS.getRilDataRadioTechnology()));
+ }
+
boolean hasRilVoiceRadioTechnologyChanged =
mSS.getRilVoiceRadioTechnology() != mNewSS.getRilVoiceRadioTechnology();
@@ -2810,8 +2823,6 @@ public class ServiceStateTracker extends Handler {
boolean hasDataRoamingOff = mSS.getDataRoaming() && !mNewSS.getDataRoaming();
- boolean hasLocationChanged = !mNewCellLoc.equals(mCellLoc);
-
TelephonyManager tm =
(TelephonyManager) mPhone.getContext().getSystemService(Context.TELEPHONY_SERVICE);
@@ -2989,6 +3000,19 @@ public class ServiceStateTracker extends Handler {
boolean hasCdmaDataConnectionChanged =
mSS.getDataRegState() != mNewSS.getDataRegState();
+ boolean hasLocationChanged = !mNewCellLoc.equals(mCellLoc);
+
+ // ratchet the new tech up through it's rat family but don't drop back down
+ // until cell change
+ if (hasLocationChanged == false) {
+ mNewSS.setRilVoiceRadioTechnology(mRatRatcheter.ratchetRat(
+ mSS.getRilVoiceRadioTechnology(),
+ mNewSS.getRilVoiceRadioTechnology()));
+ mNewSS.setRilDataRadioTechnology(mRatRatcheter.ratchetRat(
+ mSS.getRilDataRadioTechnology(),
+ mNewSS.getRilDataRadioTechnology()));
+ }
+
boolean hasVoiceRadioTechnologyChanged = mSS.getRilVoiceRadioTechnology()
!= mNewSS.getRilVoiceRadioTechnology();
@@ -3005,8 +3029,6 @@ public class ServiceStateTracker extends Handler {
boolean hasDataRoamingOff = mSS.getDataRoaming() && !mNewSS.getDataRoaming();
- boolean hasLocationChanged = !mNewCellLoc.equals(mCellLoc);
-
boolean has4gHandoff =
mNewSS.getDataRegState() == ServiceState.STATE_IN_SERVICE &&
((ServiceState.isLte(mSS.getRilDataRadioTechnology()) &&