summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2011-07-27 20:41:23 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-07-27 20:41:23 -0700
commit35a9c52791882bc58d3a6716e0fd8544889d90c3 (patch)
tree3bcaeb9ff285eba40ad24d3fa4d40e0aaf9d12b9
parentb6f7a27c59fd170b5d7617e43e21bfd8587f234e (diff)
parent5ad5c9e3efd26155ae7b5d0f3e9e2094e1f65dfe (diff)
downloadframeworks_base-35a9c52791882bc58d3a6716e0fd8544889d90c3.zip
frameworks_base-35a9c52791882bc58d3a6716e0fd8544889d90c3.tar.gz
frameworks_base-35a9c52791882bc58d3a6716e0fd8544889d90c3.tar.bz2
am 5ad5c9e3: am d20f60c8: Merge "Support of LTE Only mode" into honeycomb-LTE
* commit '5ad5c9e3efd26155ae7b5d0f3e9e2094e1f65dfe': Support of LTE Only mode
-rw-r--r--telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
index d3bb6a5..4d86903 100644
--- a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
+++ b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
@@ -217,6 +217,26 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
" mNewDataConnectionState = " + mNewDataConnectionState);
}
+ // TODO: Add proper support for LTE Only, we should be looking at
+ // the preferred network mode, to know when newSS state should
+ // be coming from mLteSs state. This was needed to pass a VZW
+ // LTE Only test.
+ //
+ // If CDMA service is OOS, double check if the device is running with LTE only
+ // mode. If that is the case, derive the service state from LTE side.
+ // To set in LTE only mode, sqlite3 /data/data/com.android.providers.settings/
+ // databases/settings.db "update secure set value='11' where name='preferred_network_mode'"
+ if (newSS.getState() == ServiceState.STATE_OUT_OF_SERVICE) {
+ int networkMode = android.provider.Settings.Secure.getInt(phone.getContext()
+ .getContentResolver(),
+ android.provider.Settings.Secure.PREFERRED_NETWORK_MODE,
+ RILConstants.PREFERRED_NETWORK_MODE);
+ if (networkMode == RILConstants.NETWORK_MODE_LTE_ONLY) {
+ if (DBG) log("pollState: LTE Only mode");
+ newSS.setState(mLteSS.getState());
+ }
+ }
+
if (DBG) log("pollStateDone: oldSS=[" + ss + "] newSS=[" + newSS + "]");
boolean hasRegistered = ss.getState() != ServiceState.STATE_IN_SERVICE