summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Kenzior <denkenz@gmail.com>2009-05-29 18:31:46 -0500
committerDenis Kenzior <denkenz@gmail.com>2009-05-29 18:37:44 -0500
commite8421eea639c999fc3046f9e720087232fafbefb (patch)
tree8fc21973bfdd98b0afdbb40e60aca88af9518b7e
parentd6733e0746841274dd08cd6bb5fd02df2d98b62e (diff)
downloadofono-e8421eea639c999fc3046f9e720087232fafbefb.tar.bz2
Add atmodem driver implementation for SMS
-rw-r--r--drivers/Makefile.am2
-rw-r--r--drivers/atmodem/at.h3
-rw-r--r--drivers/atmodem/atmodem.c2
3 files changed, 6 insertions, 1 deletions
diff --git a/drivers/Makefile.am b/drivers/Makefile.am
index 709b5816..9559ed5f 100644
--- a/drivers/Makefile.am
+++ b/drivers/Makefile.am
@@ -6,7 +6,7 @@ builtin_cflags =
builtin_modules += atmodem
builtin_sources += atmodem/atmodem.c atmodem/at.h \
atmodem/session.h atmodem/session.c \
- atmodem/call-settings.c \
+ atmodem/call-settings.c atmodem/sms.c \
atmodem/call-forwarding.c atmodem/call-meter.c \
atmodem/network-registration.c atmodem/sim.c \
atmodem/ussd.c atmodem/voicecall.c \
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);