diff options
author | Denis Kenzior <denkenz@gmail.com> | 2013-11-26 16:25:03 -0600 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2013-11-26 16:25:03 -0600 |
commit | 85cdacb509505bde9b5934c537587a5e45e20754 (patch) | |
tree | f1e04e32efc6e2faa76d1d1fad09291dc71ede38 | |
parent | 3722e626f386e33b38e42ec9e9fe425fb283d366 (diff) | |
download | ofono-85cdacb509505bde9b5934c537587a5e45e20754.tar.gz |
netreg: Turn off CIEV indications other than rssi
-rw-r--r-- | drivers/atmodem/network-registration.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/atmodem/network-registration.c b/drivers/atmodem/network-registration.c index 5be22c99..a438726c 100644 --- a/drivers/atmodem/network-registration.c +++ b/drivers/atmodem/network-registration.c @@ -1656,6 +1656,8 @@ static void cind_support_cb(gboolean ok, GAtResult *result, gpointer user_data) int min = 0; int max = 0; int tmp_min, tmp_max, invalid; + int i, len; + char buf[256]; if (!ok) goto error; @@ -1715,6 +1717,15 @@ static void cind_support_cb(gboolean ok, GAtResult *result, gpointer user_data) if (nd->signal_index == 0) goto error; + /* Turn off all CIEV indicators except the signal indicator */ + len = sprintf(buf, "AT+CIND="); + + for (i = 1; i < index - 1; i++) + len += sprintf(buf + len, i == nd->signal_index ? "1," : "0,"); + + len += sprintf(buf + len, i == nd->signal_index ? "1" : "0"); + g_at_chat_send(nd->chat, buf, NULL, NULL, NULL, NULL); + switch (nd->vendor) { case OFONO_VENDOR_MBM: /* |