diff options
author | Denis Kenzior <denkenz@gmail.com> | 2013-01-21 10:22:45 -0600 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2013-01-21 10:22:45 -0600 |
commit | 1103f8ae083272522a928f447df00b7f3e24a8db (patch) | |
tree | 4168a4b058988bfb5d18bdf0c537cc089c3e5eaf /plugins/mbm.c | |
parent | b9782fedfc51895ac56db173040d35f9aafe172e (diff) | |
download | ofono-1103f8ae083272522a928f447df00b7f3e24a8db.tar.gz |
mbm: Delay init until EMRDY
If we send these commands before the EMRDY notification has been seen,
they will simply return an error.
Diffstat (limited to 'plugins/mbm.c')
-rw-r--r-- | plugins/mbm.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/plugins/mbm.c b/plugins/mbm.c index 0d46643e..328833fd 100644 --- a/plugins/mbm.c +++ b/plugins/mbm.c @@ -207,6 +207,14 @@ static void cfun_query(gboolean ok, GAtResult *result, gpointer user_data) g_at_result_iter_next_number(&iter, &status); + g_at_chat_send(data->modem_port, "AT&F E0 V1 X4 &C0 +CMEE=1", NULL, + NULL, NULL, NULL); + g_at_chat_send(data->data_port, "AT&F E0 V1 X4 &C0 +CMEE=1", NULL, + NULL, NULL, NULL); + + g_at_chat_send(data->modem_port, "AT*E2CFUN=1", none_prefix, + NULL, NULL, NULL); + if (status != 4) { g_at_chat_send(data->modem_port, "AT+CFUN=4", none_prefix, cfun_enable, modem, NULL); @@ -331,13 +339,6 @@ static int mbm_enable(struct ofono_modem *modem) g_at_chat_register(data->modem_port, "*EMRDY:", emrdy_notifier, FALSE, modem, NULL); - g_at_chat_send(data->modem_port, "AT&F E0 V1 X4 &C0 +CMEE=1", NULL, - NULL, NULL, NULL); - g_at_chat_send(data->data_port, "AT&F E0 V1 X4 &C0 +CMEE=1", NULL, - NULL, NULL, NULL); - - g_at_chat_send(data->modem_port, "AT*E2CFUN=1", none_prefix, - NULL, NULL, NULL); g_at_chat_send(data->modem_port, "AT*EMRDY?", none_prefix, emrdy_query, modem, NULL); |