summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWink Saville <wink@google.com>2011-06-07 11:03:25 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-06-07 11:03:25 -0700
commit7f13d0ed408c3ddce5b061c4370d99ba15d027b7 (patch)
tree3b93bfea913f5b588d6421428b4b1d826b34e9ae
parent31ced5c140cae9b3ad90066a540346acd821a3c9 (diff)
parentc368831d62ce68d6c9c83d7e49e5db11c47ebd85 (diff)
downloadframeworks_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.java6
-rw-r--r--telephony/java/com/android/internal/telephony/RIL.java24
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;