p54: better rssi->dbm conversion for longbow phys
This patch should fix the dodgy signal and noise value reports for most longbow (p54spi) users: e.g.: (an older tcpdump extract) > 2.0 Mb/s 2437 MHz (0x00a0) -49dB signal -41dB noise > 1.0 Mb/s 2437 MHz (0x00a0) 4dB signal -41dB noise The formula is taken from stlc45xx: http://gitorious.org/stlc45xx/mainline/blobs/master/stlc45xx.c#line1199 Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
2c15a0cf27
commit
45f7e3116f
|
@ -275,15 +275,15 @@ static int p54_rssi_to_dbm(struct p54_common *priv, int rssi)
|
||||||
{
|
{
|
||||||
int band = priv->hw->conf.channel->band;
|
int band = priv->hw->conf.channel->band;
|
||||||
|
|
||||||
if (priv->rxhw != 5)
|
if (priv->rxhw != 5) {
|
||||||
return ((rssi * priv->rssical_db[band].mul) / 64 +
|
return ((rssi * priv->rssical_db[band].mul) / 64 +
|
||||||
priv->rssical_db[band].add) / 4;
|
priv->rssical_db[band].add) / 4;
|
||||||
else
|
} else {
|
||||||
/*
|
/*
|
||||||
* TODO: find the correct formula
|
* TODO: find the correct formula
|
||||||
*/
|
*/
|
||||||
return ((rssi * priv->rssical_db[band].mul) / 64 +
|
return rssi / 2 - 110;
|
||||||
priv->rssical_db[band].add) / 4;
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue