summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/java/com/android/internal/telephony/SamsungQualcommRIL.java57
1 files changed, 49 insertions, 8 deletions
diff --git a/src/java/com/android/internal/telephony/SamsungQualcommRIL.java b/src/java/com/android/internal/telephony/SamsungQualcommRIL.java
index 027af5a..8aa988b 100644
--- a/src/java/com/android/internal/telephony/SamsungQualcommRIL.java
+++ b/src/java/com/android/internal/telephony/SamsungQualcommRIL.java
@@ -289,10 +289,6 @@ public class SamsungQualcommRIL extends RIL implements CommandsInterface {
@Override
protected void
processSolicited (Parcel p) {
- if (isGSM){
- super.processSolicited(p);
- return;
- }
int serial, error;
boolean found = false;
@@ -498,15 +494,57 @@ public class SamsungQualcommRIL extends RIL implements CommandsInterface {
}
- // CDMA FIXES, this fixes bogus values in nv/sim on d2/jf/t0 cdma family
+ // CDMA FIXES, this fixes bogus values in nv/sim on d2/jf/t0 cdma family or bogus information from sim card
private Object
operatorCheck(Parcel p) {
String response[] = (String[])responseStrings(p);
for(int i=0; i<response.length; i++){
if (response[i]!= null){
- if (response[i].equals(" Empty") || (response[i].equals("")&& i<2))
- response[i]=operator;
- if (response[i].equals("31000")|| response[i].equals("11111") || response[i].equals("123456") || response[i].equals("31099") || (response[i].equals("")&& i>=2) )
+ if (i<2){
+ if (response[i].equals(" Empty") || (response[i].equals("") && !isGSM))
+ response[i]=operator;
+ else if (response[i].equals("23410")||response[i].equals("26207"))
+ response[i]="O2";
+ else if (response[i].equals("310260") || response[i].equals("23430")|| response[i].equals("23203")||response[i].equals("26201"))
+ response[i]="T-Mobile";
+ else if (response[i].equals("23201"))
+ response[i]="A1";
+ else if (response[i].equals("22210"))
+ response[i]="Vodafone Italia";
+ else if (response[i].equals("20810"))
+ response[i]="SFR";
+ else if (response[i].equals("20801")||response[i].equals("23205"))
+ response[i]="Orange";
+ else if (response[i].equals("24201"))
+ response[i]="N Telenor";
+ else if (response[i].equals("24202"))
+ response[i]="N NetCom";
+ else if (response[i].equals("24205"))
+ response[i]="Mobile Norway";
+ else if (response[i].equals("23433"))
+ response[i]="EE";
+ else if (response[i].equals("50212"))
+ response[i]="Maxis";
+ else if (response[i].equals("23210"))
+ response[i]="3";
+ else if (response[i].equals("26203"))
+ response[i]="E-Plus";
+ else if (response[i].equals("24412")||response[i].equals("24403"))
+ response[i]="DNA";
+ else if (response[i].equals("24414"))
+ response[i]="AMT";
+ else if (response[i].equals("24405"))
+ response[i]="Elisa";
+ else if (response[i].equals("24421"))
+ response[i]="Saunalahti";
+ else if (response[i].equals("24491"))
+ response[i]="Sonera";
+ else if (response[i].equals("26803"))
+ response[i]="Optimus";
+ else if (response[i].equals("21910"))
+ response[i]="VIPnet";
+ }
+ else if (response[i].equals("31000")|| response[i].equals("11111") || response[i].equals("123456") || response[i].equals("31099") || (response[i].equals("") && !isGSM))
response[i]=homeOperator;
}
}
@@ -516,6 +554,9 @@ public class SamsungQualcommRIL extends RIL implements CommandsInterface {
private Object
responseVoiceDataRegistrationState(Parcel p) {
String response[] = (String[])responseStrings(p);
+ if (isGSM){
+ return response;
+ }
if ( response.length>=10){
for(int i=6; i<=9; i++){
if (response[i]== null){