From 23d97f2c0a5b0ef89d69e92184c4669e31e89dbe Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Thu, 3 Jun 2010 08:54:08 -0700 Subject: Quirk SMS handling for Novatel based devices The Novatel based devices with Qualcomm chips seems to have various problems. First they advertise CNMI mode 2, but don't support it. And second they don't support CNMA acknowledgement with a PDU. So fall back to acks without PDU. --- drivers/atmodem/sms.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'drivers/atmodem') diff --git a/drivers/atmodem/sms.c b/drivers/atmodem/sms.c index 8049df6e..db2c152f 100644 --- a/drivers/atmodem/sms.c +++ b/drivers/atmodem/sms.c @@ -669,7 +669,8 @@ static gboolean build_cnmi_string(char *buf, int *cnmi_opts, const char *mode; int len = sprintf(buf, "AT+CNMI="); - if (data->vendor == OFONO_VENDOR_QUALCOMM_MSM) + if (data->vendor == OFONO_VENDOR_QUALCOMM_MSM || + data->vendor == OFONO_VENDOR_NOVATEL) /* MSM devices advertise support for mode 2, but return an * error if we attempt to actually use it. */ mode = "1"; @@ -769,7 +770,7 @@ static void at_cnmi_query_cb(gboolean ok, GAtResult *result, gpointer user_data) if (build_cnmi_string(buf, cnmi_opts, data)) supported = TRUE; - if (data->cnma_enabled) + if (data->cnma_enabled && data->vendor != OFONO_VENDOR_NOVATEL) construct_ack_pdu(data); out: -- cgit v1.2.3