From e6d7885d7fc34722e459d7a4b3c55bb8680d2401 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Fri, 13 Jul 2012 20:15:35 +0200 Subject: [PATCH] huawei: implement CDMA unsolicited signal change report handling --- plugins/huawei/mm-broadband-modem-huawei.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/plugins/huawei/mm-broadband-modem-huawei.c b/plugins/huawei/mm-broadband-modem-huawei.c index 78b764f0..95aa1f8e 100644 --- a/plugins/huawei/mm-broadband-modem-huawei.c +++ b/plugins/huawei/mm-broadband-modem-huawei.c @@ -1121,6 +1121,14 @@ huawei_1x_signal_changed (MMAtSerialPort *port, GMatchInfo *match_info, MMBroadbandModemHuawei *self) { + guint quality = 0; + + if (!mm_get_uint_from_match_info (match_info, 1, &quality)) + return; + + quality = CLAMP (quality, 0, 100); + mm_dbg ("1X signal quality: %u", quality); + mm_iface_modem_update_signal_quality (MM_IFACE_MODEM (self), (guint)quality); } static void @@ -1128,6 +1136,14 @@ huawei_evdo_signal_changed (MMAtSerialPort *port, GMatchInfo *match_info, MMBroadbandModemHuawei *self) { + guint quality = 0; + + if (!mm_get_uint_from_match_info (match_info, 1, &quality)) + return; + + quality = CLAMP (quality, 0, 100); + mm_dbg ("EVDO signal quality: %u", quality); + mm_iface_modem_update_signal_quality (MM_IFACE_MODEM (self), (guint)quality); } static void