diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index 08cfc58..a46df0a 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -877,8 +877,8 @@
                 (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
 
         // TODO: Uncomment to re-enable SimSettings.
-        // return tm.getSimCount() > 0;
-        return false;
+        return tm.getSimCount() > 0;
+        //return false;
     }
 
     /**
diff --git a/src/com/android/settings/sim/SimSettings.java b/src/com/android/settings/sim/SimSettings.java
index 07d09f3..a49ede6 100644
--- a/src/com/android/settings/sim/SimSettings.java
+++ b/src/com/android/settings/sim/SimSettings.java
@@ -201,7 +201,7 @@
         if (sir != null) {
             simPref.setSelectedItem(sir.slotId + 1);
         }
-        simPref.setEnabled(mNumSims > 1);
+        simPref.setEnabled(mNumSims >= 1);
     }
 
     private void updateCellularDataValues() {
@@ -210,7 +210,7 @@
         if (sir != null) {
             simPref.setSelectedItem(sir.slotId);
         }
-        simPref.setEnabled(mNumSims > 1);
+        simPref.setEnabled(mNumSims >= 1);
     }
 
     private void updateCallValues() {
@@ -219,7 +219,7 @@
         if (sir != null) {
             simPref.setSelectedItem(sir.slotId + 1);
         }
-        simPref.setEnabled(mNumSims > 1);
+        simPref.setEnabled(mNumSims >= 1);
     }
 
     @Override
