diff options
author | Wink Saville <wink@google.com> | 2011-06-07 11:03:25 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-06-07 11:03:25 -0700 |
commit | 7f13d0ed408c3ddce5b061c4370d99ba15d027b7 (patch) | |
tree | 3b93bfea913f5b588d6421428b4b1d826b34e9ae | |
parent | 31ced5c140cae9b3ad90066a540346acd821a3c9 (diff) | |
parent | c368831d62ce68d6c9c83d7e49e5db11c47ebd85 (diff) | |
download | frameworks_base-7f13d0ed408c3ddce5b061c4370d99ba15d027b7.zip frameworks_base-7f13d0ed408c3ddce5b061c4370d99ba15d027b7.tar.gz frameworks_base-7f13d0ed408c3ddce5b061c4370d99ba15d027b7.tar.bz2 |
am c368831d: Merge "Preferred network discrepancy after rild is restarted." into honeycomb-LTE
* commit 'c368831d62ce68d6c9c83d7e49e5db11c47ebd85':
Preferred network discrepancy after rild is restarted.
-rw-r--r-- | telephony/java/com/android/internal/telephony/BaseCommands.java | 6 | ||||
-rw-r--r-- | telephony/java/com/android/internal/telephony/RIL.java | 24 |
2 files changed, 23 insertions, 7 deletions
diff --git a/telephony/java/com/android/internal/telephony/BaseCommands.java b/telephony/java/com/android/internal/telephony/BaseCommands.java index e1d8c85..13afbb7 100644 --- a/telephony/java/com/android/internal/telephony/BaseCommands.java +++ b/telephony/java/com/android/internal/telephony/BaseCommands.java @@ -97,8 +97,10 @@ public abstract class BaseCommands implements CommandsInterface { protected Registrant mRestrictedStateRegistrant; protected Registrant mGsmBroadcastSmsRegistrant; - // Network Mode received from PhoneFactory - protected int mNetworkMode; + // Preferred network type received from PhoneFactory. + // This is used when establishing a connection to the + // vendor ril so it starts up in the correct mode. + protected int mPreferredNetworkType; // CDMA subscription received from PhoneFactory protected int mCdmaSubscription; // Type of Phone, GSM or CDMA. Set by CDMAPhone or GSMPhone. diff --git a/telephony/java/com/android/internal/telephony/RIL.java b/telephony/java/com/android/internal/telephony/RIL.java index f9f641c..40a396e 100644 --- a/telephony/java/com/android/internal/telephony/RIL.java +++ b/telephony/java/com/android/internal/telephony/RIL.java @@ -612,14 +612,14 @@ public final class RIL extends BaseCommands implements CommandsInterface { //***** Constructors - public RIL(Context context, int networkMode, int cdmaSubscription) { + public RIL(Context context, int preferredNetworkType, int cdmaSubscription) { super(context); if (RILJ_LOGD) { - riljLog("RIL(context, networkMode=" + networkMode + + riljLog("RIL(context, preferredNetworkType=" + preferredNetworkType + " cdmaSubscription=" + cdmaSubscription + ")"); } mCdmaSubscription = cdmaSubscription; - mNetworkMode = networkMode; + mPreferredNetworkType = preferredNetworkType; mPhoneType = RILConstants.NO_PHONE; PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE); @@ -1814,6 +1814,8 @@ public final class RIL extends BaseCommands implements CommandsInterface { rr.mp.writeInt(1); rr.mp.writeInt(networkType); + mPreferredNetworkType = networkType; + if (RILJ_LOGD) riljLog(rr.serialString() + "> " + requestToString(rr.mRequest) + " : " + networkType); @@ -2223,7 +2225,7 @@ public final class RIL extends BaseCommands implements CommandsInterface { case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: ret = responseInts(p); break; case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: ret = responseVoid(p); break; case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: ret = responseVoid(p); break; - case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: ret = responseInts(p); break; + case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: ret = responseGetPreferredNetworkType(p); break; case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: ret = responseCellList(p); break; case RIL_REQUEST_SET_LOCATION_UPDATES: ret = responseVoid(p); break; case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE: ret = responseVoid(p); break; @@ -2738,7 +2740,7 @@ public final class RIL extends BaseCommands implements CommandsInterface { // Initial conditions setRadioPower(false, null); - setPreferredNetworkType(mNetworkMode, null); + setPreferredNetworkType(mPreferredNetworkType, null); setCdmaSubscriptionSource(mCdmaSubscription, null); notifyRegistrantsRilConnectionChanged(((int[])ret)[0]); break; @@ -3162,6 +3164,18 @@ public final class RIL extends BaseCommands implements CommandsInterface { return response; } + private Object responseGetPreferredNetworkType(Parcel p) { + int [] response = (int[]) responseInts(p); + + if (response.length >= 1) { + // Since this is the response for getPreferredNetworkType + // we'll assume that it should be the value we want the + // vendor ril to take if we reestablish a connection to it. + mPreferredNetworkType = response[0]; + } + return response; + } + private Object responseGmsBroadcastConfig(Parcel p) { int num; ArrayList<SmsBroadcastConfigInfo> response; |