freebsd-skq/sys/dev/usb/wlan
Adrian Chadd a3767659f0 modify the rssi logic a bit to actually return a useful rssi.
The fullmac firmware doesn't seem to populate a useful rssi indicator
in the RX descriptor, so if one plotted said values, they'd basically
look like garbage.

The reference driver implements a "get current rssi" firmware command
which I guess is really meant for station operation only (as hostap
operation would need rssi per station, not a single firmware read.)

So:

* populate sc_currssi during each calibration run;
* use this in the RX path instead of trying to reconstruct the RSSI
  value and passing it around as a pointer;
* do up a quick hack to map the rssi hardware value to some useful
  signal level;
* the survey results provide an RSSI value between 0..100, so just
  do another quick hack to map it into some usefulish signal level;
* supply a faked noise floor - I haven't yet found how to pull it
  out of the firmware.

The scan results and the station RSSI information is now more useful
for indicating signal strength / distance.
2015-09-30 05:19:16 +00:00
..
if_rsu.c modify the rssi logic a bit to actually return a useful rssi. 2015-09-30 05:19:16 +00:00
if_rsureg.h modify the rssi logic a bit to actually return a useful rssi. 2015-09-30 05:19:16 +00:00
if_rum.c Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
if_rumfw.h
if_rumreg.h Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this 2013-11-30 22:17:27 +00:00
if_rumvar.h Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
if_run.c net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap 2015-09-22 06:34:07 +00:00
if_runreg.h Add support for the MediaTek/Ralink RT3593 chipset. 2014-01-03 06:01:05 +00:00
if_runvar.h net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap 2015-09-22 06:34:07 +00:00
if_uath.c net80211 & wireless drivers: remove duplicate defines (noop) 2015-09-22 02:48:59 +00:00
if_uathreg.h
if_uathvar.h net80211 & wireless drivers: remove duplicate defines (noop) 2015-09-22 02:48:59 +00:00
if_upgt.c Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
if_upgtvar.h Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
if_ural.c net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap 2015-09-22 06:34:07 +00:00
if_uralreg.h Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this 2013-11-30 22:17:27 +00:00
if_uralvar.h net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap 2015-09-22 06:34:07 +00:00
if_urtw.c net80211 & wireless drivers: remove duplicate defines (noop) 2015-09-22 02:48:59 +00:00
if_urtwn.c urtwn driver fixes - missing include, free node references, shut down xfers first 2015-09-29 05:03:24 +00:00
if_urtwnreg.h net80211: include one copy of struct ieee80211_beacon_offsets into ieee80211vap 2015-09-22 06:34:07 +00:00
if_urtwreg.h Fix undefined behavior: (1 << 31) is not defined as 1 is an int and this 2013-11-30 22:17:27 +00:00
if_urtwvar.h Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00
if_zyd.c net80211 & wireless drivers: remove duplicate defines (noop) 2015-09-22 02:48:59 +00:00
if_zydfw.h
if_zydreg.h Replay r286410. Change KPI of how device drivers that provide wireless 2015-08-27 08:56:39 +00:00