mbm: Delay init until EMRDY

If we send these commands before the EMRDY notification has been seen,
they will simply return an error.
This commit is contained in:
Denis Kenzior 2013-01-21 10:22:45 -06:00
parent b9782fedfc
commit 1103f8ae08
1 changed files with 8 additions and 7 deletions

View File

@ -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);