summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/atmodem')
-rw-r--r--drivers/atmodem/at.h3
-rw-r--r--drivers/atmodem/atmodem.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/atmodem/at.h b/drivers/atmodem/at.h
index de38a893..6c29e004 100644
--- a/drivers/atmodem/at.h
+++ b/drivers/atmodem/at.h
@@ -90,3 +90,6 @@ extern void at_call_barring_exit(struct ofono_modem *modem);
extern void at_sim_init(struct ofono_modem *modem);
extern void at_sim_exit(struct ofono_modem *modem);
+
+extern void at_sms_init(struct ofono_modem *modem);
+extern void at_sms_exit(struct ofono_modem *modem);
diff --git a/drivers/atmodem/atmodem.c b/drivers/atmodem/atmodem.c
index 2d87a8ad..2f1e4304 100644
--- a/drivers/atmodem/atmodem.c
+++ b/drivers/atmodem/atmodem.c
@@ -102,6 +102,7 @@ static void manager_free(gpointer user)
for (l = g_sessions; l; l = l->next) {
struct at_data *at = l->data;
+ at_sms_exit(at->modem);
at_call_forwarding_exit(at->modem);
at_call_settings_exit(at->modem);
at_network_registration_exit(at->modem);
@@ -344,6 +345,7 @@ static void create_cb(GIOChannel *io, gboolean success, gpointer user)
at_voicecall_init(at->modem);
at_call_meter_init(at->modem);
at_call_barring_init(at->modem);
+ at_sms_init(at->modem);
at->io = io;
at->driver = g_strdup(driver);