summaryrefslogtreecommitdiffstats
path: root/plugins/ifx.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/ifx.c')
-rw-r--r--plugins/ifx.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/plugins/ifx.c b/plugins/ifx.c
index eb30141b..6936fd10 100644
--- a/plugins/ifx.c
+++ b/plugins/ifx.c
@@ -139,19 +139,24 @@ static void ifx_set_sim_state(struct ifx_data *data, int state)
switch (state) {
case 0: /* SIM not present */
+ case 6: /* SIM Error */
+ case 8: /* SIM Technical Problem */
case 9: /* SIM Removed */
ofono_sim_inserted_notify(data->sim, FALSE);
break;
case 1: /* PIN verification needed */
- case 2: /* PIN verification not needed – Ready */
- case 3: /* PIN verified – Ready */
case 4: /* PUK verification needed */
case 5: /* SIM permanently blocked */
- case 6: /* SIM Error */
case 7: /* ready for attach (+COPS) */
- case 8: /* SIM Technical Problem */
ofono_sim_inserted_notify(data->sim, TRUE);
break;
+ case 2: /* PIN verification not needed – Ready */
+ case 3: /* PIN verified – Ready */
+ /*
+ * State 3 is handled in the SIM atom driver
+ * while for state 2 we should be waiting for state 7
+ */
+ break;
case 10: /* SIM Reactivating */
case 11: /* SIM Reactivated */
case 12: /* SIM SMS Caching Completed */