Fix RadioInfo for CDMA.
diff --git a/src/com/android/settings/RadioInfo.java b/src/com/android/settings/RadioInfo.java
index 27d8c7e..ac9600d 100644
--- a/src/com/android/settings/RadioInfo.java
+++ b/src/com/android/settings/RadioInfo.java
@@ -51,6 +51,7 @@
 import android.widget.TextView;
 import android.widget.EditText;
 
+import com.android.internal.telephony.DataConnection;
 import com.android.internal.telephony.Phone;
 import com.android.internal.telephony.PhoneFactory;
 import com.android.internal.telephony.PhoneStateIntentReceiver;
@@ -200,7 +201,7 @@
                         int type = ((int[])ar.result)[0];
                         preferredNetworkType.setSelection(type, true);
                     } else {
-                        preferredNetworkType.setSelection(3, true);
+                        preferredNetworkType.setSelection(8, true);
                     }
                     break;
                 case EVENT_SET_PREFERRED_TYPE_DONE:
@@ -916,20 +917,24 @@
     private final void updatePdpList() {
         StringBuilder sb = new StringBuilder("========DATA=======\n");
 
-        List<PdpConnection> pdps = phone.getCurrentPdpList();
+        List<DataConnection> dcs = phone.getCurrentDataConnectionList();
 
-        for (PdpConnection pdp : pdps) {
-            sb.append("    State: ").append(pdp.getState().toString()).append("\n");
-            if (pdp.getState().isActive()) {
+        for (DataConnection dc : dcs) {
+            sb.append("    State: ").append(dc.getState().toString()).append("\n");
+            if (dc.getState().isActive()) {
                 long timeElapsed =
-                    (System.currentTimeMillis() - pdp.getConnectionTime())/1000;
+                    (System.currentTimeMillis() - dc.getConnectionTime())/1000;
                 sb.append("    connected at ")
-                  .append(DateUtils.timeString(pdp.getConnectionTime()))
+                  .append(DateUtils.timeString(dc.getConnectionTime()))
                   .append(" and elapsed ")
-                  .append(DateUtils.formatElapsedTime(timeElapsed))
-                  .append("\n    to ")
-                  .append(pdp.getApn().toString())
-                  .append("\ninterface: ")
+                  .append(DateUtils.formatElapsedTime(timeElapsed));
+
+                if (dc instanceof PdpConnection) {
+                    PdpConnection pdp = (PdpConnection)dc;
+                    sb.append("\n    to ")
+                      .append(pdp.getApn().toString());
+                }
+                sb.append("\ninterface: ")
                   .append(phone.getInterfaceName(phone.getActiveApnTypes()[0]))
                   .append("\naddress: ")
                   .append(phone.getIpAddress(phone.getActiveApnTypes()[0]))
@@ -939,14 +944,19 @@
                 if (dns != null) {
                     sb.append("\ndns: ").append(dns[0]).append(", ").append(dns[1]);
                 }
-            } else if (pdp.getState().isInactive()) {
+            } else if (dc.getState().isInactive()) {
                 sb.append("    disconnected with last try at ")
-                  .append(DateUtils.timeString(pdp.getLastFailTime()))
+                  .append(DateUtils.timeString(dc.getLastFailTime()))
                   .append("\n    fail because ")
-                  .append(pdp.getLastFailCause().toString());
+                  .append(dc.getLastFailCause().toString());
             } else {
-                sb.append("    is connecting to ")
-                  .append(pdp.getApn().toString());
+                if (dc instanceof PdpConnection) {
+                    PdpConnection pdp = (PdpConnection)dc;
+                    sb.append("    is connecting to ")
+                      .append(pdp.getApn().toString());
+                } else {
+                    sb.append("    is connecting");
+                }
             }
             sb.append("\n===================");
         }
@@ -1148,5 +1158,13 @@
     };
 
     private String[] mPreferredNetworkLabels = {
-            "WCDMA preferred", "GSM only", "WCDMA only", "Unknown"};
+            "WCDMA preferred",
+            "GSM only",
+            "WCDMA only",
+            "GSM auto (PRL)",
+            "CDMA auto (PRL)",
+            "CDMA only",
+            "EvDo only",
+            "GSM/CDMA auto (PRL)",
+            "Unknown"};
 }