From 8ede9fa98b65d8873219b801565b4a1ccf2a6000 Mon Sep 17 00:00:00 2001 From: Utkarsh Gupta Date: Thu, 23 Apr 2015 13:21:49 +0530 Subject: [PATCH] libril: Fix signal strength for xmm6260 too Change-Id: I3b35eb2c18df9110c7ec1bd3cf989cd34cc18fd7 --- ril/libril/ril.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ril/libril/ril.cpp b/ril/libril/ril.cpp index 1256e93a..44e6b868 100644 --- a/ril/libril/ril.cpp +++ b/ril/libril/ril.cpp @@ -2979,15 +2979,19 @@ static int responseRilSignalStrength(Parcel &p, if (responselen >= sizeof (RIL_SignalStrength_v5)) { RIL_SignalStrength_v10 *p_cur = ((RIL_SignalStrength_v10 *) response); -#if defined(MODEM_TYPE_XMM6262) || defined(MODEM_TYPE_XMM7260) gsmSignalStrength = p_cur->GW_SignalStrength.signalStrength & 0xFF; + +#ifdef MODEM_TYPE_XMM6260 + if (gsmSignalStrength < 0 || + (gsmSignalStrength > 31 && p_cur->GW_SignalStrength.signalStrength != 99)) { + gsmSignalStrength = p_cur->CDMA_SignalStrength.dbm; + } +#else if (gsmSignalStrength < 0) { gsmSignalStrength = 99; } else if (gsmSignalStrength > 31 && gsmSignalStrength != 99) { gsmSignalStrength = 31; } -#else - gsmSignalStrength = p_cur->GW_SignalStrength.signalStrength; #endif p.writeInt32(gsmSignalStrength);