summaryrefslogtreecommitdiffstats
path: root/plugins/huawei.c
diff options
context:
space:
mode:
authorGuillaume Zajac <guillaume.zajac@linux.intel.com>2012-01-11 17:28:34 +0100
committerDenis Kenzior <denkenz@gmail.com>2012-01-11 06:46:38 -0600
commitb1eb2209ab3795cb9ccb2094b375a1ee6f4a27c7 (patch)
treea2cd289daf1ea999566d5d9e80a515b3ba689515 /plugins/huawei.c
parent38056fdd50e71894044ec02627d0b40aaf9ee23c (diff)
downloadofono-b1eb2209ab3795cb9ccb2094b375a1ee6f4a27c7.tar.bz2
huawei: Create sim atom for cdma modems
Don't create atom if sim is embedded. Atom will use "atmodem-noef" drivers to support PIN management and IMSI retrieval.
Diffstat (limited to 'plugins/huawei.c')
-rw-r--r--plugins/huawei.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/plugins/huawei.c b/plugins/huawei.c
index d57e7955..e4deb767 100644
--- a/plugins/huawei.c
+++ b/plugins/huawei.c
@@ -758,6 +758,18 @@ static void huawei_pre_sim(struct ofono_modem *modem)
ofono_sim_inserted_notify(sim, TRUE);
} else if (data->have_cdma == TRUE) {
ofono_devinfo_create(modem, 0, "cdmamodem", data->pcui);
+
+ /* Create SIM atom only if SIM is not embedded */
+ if (data->sim_state != SIM_STATE_ROMSIM) {
+ struct ofono_sim *sim;
+
+ /* Use sim drivers without Elementary File entries */
+ sim = ofono_sim_create(modem, OFONO_VENDOR_HUAWEI,
+ "atmodem-noef", data->pcui);
+
+ if (sim && data->have_sim == TRUE)
+ ofono_sim_inserted_notify(sim, TRUE);
+ }
}
}