generic-poky/meta/packages/libgsmd/libgsmd/tihtc-csq-fix.patch

28 lines
893 B
Diff

Index: gsm/src/gsmd/vendor_tihtc.c
===================================================================
--- gsm.orig/src/gsmd/vendor_tihtc.c 2007-06-03 16:26:39.000000000 +0200
+++ gsm/src/gsmd/vendor_tihtc.c 2007-06-03 16:26:41.000000000 +0200
@@ -90,6 +90,8 @@
struct gsmd_evt_auxdata *aux;
struct gsmd_ucmd *ucmd = usock_build_event(GSMD_MSG_EVENT, GSMD_EVT_SIGNAL,
sizeof(*aux));
+ static int rssi_table[] = { 0,5,10,15,20,25,99 };
+ unsigned int i;
DEBUGP("entering htccsq_parse param=`%s'\n", param);
if (!ucmd)
@@ -98,9 +100,10 @@
aux = (struct gsmd_evt_auxdata *) ucmd->buf;
- /* FIXME: contains values 1-5, should be mapped to 0-31 somehow? */
- /* 2 --> 11 */
- aux->u.signal.sigq.rssi = atoi(buf);
+ i = atoi(buf);
+ if (i > 6)
+ i = 6;
+ aux->u.signal.sigq.rssi = rssi_table[atoi(buf)];
aux->u.signal.sigq.ber = 99;
DEBUGP("sending EVT_SIGNAL\n");