diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-09 00:13:53 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-03-16 14:53:23 +0100 |
commit | 4b64d3dcf044937d92f4bc0c7af54da6ee92c34e (patch) | |
tree | f7fe752ba664a963595dec78a2925c9f16977b47 /plugins/nokia/mm-broadband-modem-nokia.c | |
parent | 25e8bfd2a31c87bc2a1a4f5d98ebb173303b348b (diff) |
nokia: new `MMSimNokia'
Nokia phones don't support AT+CRSM.
Diffstat (limited to 'plugins/nokia/mm-broadband-modem-nokia.c')
-rw-r--r-- | plugins/nokia/mm-broadband-modem-nokia.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/plugins/nokia/mm-broadband-modem-nokia.c b/plugins/nokia/mm-broadband-modem-nokia.c index 3e8a1661..9991fce0 100644 --- a/plugins/nokia/mm-broadband-modem-nokia.c +++ b/plugins/nokia/mm-broadband-modem-nokia.c @@ -30,6 +30,7 @@ #include "mm-iface-modem.h" #include "mm-base-modem-at.h" #include "mm-broadband-modem-nokia.h" +#include "mm-sim-nokia.h" static void iface_modem_init (MMIfaceModem *iface); @@ -37,7 +38,30 @@ G_DEFINE_TYPE_EXTENDED (MMBroadbandModemNokia, mm_broadband_modem_nokia, MM_TYPE G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM, iface_modem_init)); /*****************************************************************************/ -/* MODEM INIT */ +/* Create SIM (Modem interface) */ + +static MMSim * +create_sim_finish (MMIfaceModem *self, + GAsyncResult *res, + GError **error) +{ + return mm_sim_new_finish (res, error); +} + +static void +create_sim (MMIfaceModem *self, + GAsyncReadyCallback callback, + gpointer user_data) +{ + /* New Nokia SIM */ + mm_sim_nokia_new (MM_BASE_MODEM (self), + NULL, /* cancellable */ + callback, + user_data); +} + +/*****************************************************************************/ +/* Modem initialization (Modem interface) */ static gboolean modem_init_finish (MMIfaceModem *self, @@ -113,6 +137,10 @@ iface_modem_init (MMIfaceModem *iface) iface->modem_init = modem_init; iface->modem_init_finish = modem_init_finish; + /* Create Nokia-specific SIM*/ + iface->create_sim = create_sim; + iface->create_sim_finish = create_sim_finish; + /* Nokia headsets (at least N85) do not support "power on"; they do * support "power off" but you proabably do not want to turn off the * power on your telephone if something went wrong with connecting |