summaryrefslogtreecommitdiffstats
path: root/drivers/atmodem
diff options
context:
space:
mode:
authorAnthony Viallard <viallard@syscom-instruments.com>2013-07-19 15:35:37 +0200
committerDenis Kenzior <denkenz@gmail.com>2013-07-22 15:48:59 -0500
commitd1ac1ba3d474e56593ac3207d335a4de3d1f4a1d (patch)
treec3e93ca7680bb9185bc8853091620bf594d79a39 /drivers/atmodem
parent8c6eea33853d706326a79a573dc59e2c02722d1c (diff)
downloadofono-d1ac1ba3d474e56593ac3207d335a4de3d1f4a1d.tar.bz2
SIMCOM: add a quirk for signal strength reporting
We must tell we want the signal strength reporting using AT+AUTOCSQ command (ref. "SIM5215_SIM5216_ATC_V1.18.pdf - ยง10.7").
Diffstat (limited to 'drivers/atmodem')
-rw-r--r--drivers/atmodem/network-registration.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/atmodem/network-registration.c b/drivers/atmodem/network-registration.c
index 24b71a3b..8cc04b7b 100644
--- a/drivers/atmodem/network-registration.c
+++ b/drivers/atmodem/network-registration.c
@@ -1753,6 +1753,14 @@ static void at_creg_set_cb(gboolean ok, GAtResult *result, gpointer user_data)
}
switch (nd->vendor) {
+ case OFONO_VENDOR_SIMCOM:
+ /* Register for CSQ changes */
+ g_at_chat_send(nd->chat, "AT+AUTOCSQ=1,1", none_prefix,
+ NULL, NULL, NULL);
+
+ g_at_chat_register(nd->chat, "+CSQ:",
+ csq_notify, FALSE, netreg, NULL);
+ break;
case OFONO_VENDOR_PHONESIM:
g_at_chat_register(nd->chat, "+CSQ:",
csq_notify, FALSE, netreg, NULL);
@@ -1898,7 +1906,6 @@ static void at_creg_set_cb(gboolean ok, GAtResult *result, gpointer user_data)
break;
case OFONO_VENDOR_NOKIA:
case OFONO_VENDOR_SAMSUNG:
- case OFONO_VENDOR_SIMCOM:
/* Signal strength reporting via CIND is not supported */
break;
default: