Merge "Stop exposing LTE_CA as a RAT type." into nyc-mr1-dev
diff --git a/src/java/com/android/internal/telephony/RatRatcheter.java b/src/java/com/android/internal/telephony/RatRatcheter.java
index b782bc8..d582af0 100644
--- a/src/java/com/android/internal/telephony/RatRatcheter.java
+++ b/src/java/com/android/internal/telephony/RatRatcheter.java
@@ -22,6 +22,7 @@
import android.os.PersistableBundle;
import android.os.UserHandle;
import android.telephony.CarrierConfigManager;
+import android.telephony.ServiceState;
import android.telephony.Rlog;
import android.util.SparseArray;
import android.util.SparseIntArray;
@@ -74,6 +75,19 @@
}
}
+ public void ratchetRat(ServiceState oldSS, ServiceState newSS) {
+ int newVoiceRat = ratchetRat(oldSS.getRilVoiceRadioTechnology(),
+ newSS.getRilVoiceRadioTechnology());
+ int newDataRat = ratchetRat(oldSS.getRilDataRadioTechnology(),
+ newSS.getRilDataRadioTechnology());
+ boolean newUsingCA = oldSS.isUsingCarrierAggregation() ||
+ newSS.isUsingCarrierAggregation();
+
+ newSS.setRilVoiceRadioTechnology(newVoiceRat);
+ newSS.setRilDataRadioTechnology(newDataRat);
+ newSS.setIsUsingCarrierAggregation(newUsingCA);
+ }
+
private BroadcastReceiver mConfigChangedReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
diff --git a/src/java/com/android/internal/telephony/ServiceStateTracker.java b/src/java/com/android/internal/telephony/ServiceStateTracker.java
index 58d3f6f..a919af2 100644
--- a/src/java/com/android/internal/telephony/ServiceStateTracker.java
+++ b/src/java/com/android/internal/telephony/ServiceStateTracker.java
@@ -2549,10 +2549,7 @@
// 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()));
+ mRatRatcheter.ratchetRat(mSS, mNewSS);
}
boolean hasRilVoiceRadioTechnologyChanged =
@@ -2800,12 +2797,7 @@
// 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()));
+ mRatRatcheter.ratchetRat(mSS, mNewSS);
}
boolean hasRilVoiceRadioTechnologyChanged =
@@ -3006,12 +2998,7 @@
// 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()));
+ mRatRatcheter.ratchetRat(mSS, mNewSS);
}
boolean hasVoiceRadioTechnologyChanged = mSS.getRilVoiceRadioTechnology()