Page MenuHomeFreeBSD

iwx: clean up / document noise floor and RSSI fetching
Needs RevisionPublic

Authored by adrian on Sun, Nov 16, 3:28 AM.
Referenced Files
Unknown Object (File)
Tue, Dec 9, 11:41 AM
Unknown Object (File)
Fri, Dec 5, 9:24 AM
Unknown Object (File)
Tue, Dec 2, 3:08 AM
Unknown Object (File)
Sun, Nov 30, 2:26 PM
Unknown Object (File)
Sun, Nov 30, 6:53 AM
Unknown Object (File)
Fri, Nov 28, 9:16 AM
Unknown Object (File)
Thu, Nov 27, 6:41 PM
Unknown Object (File)
Wed, Nov 19, 12:35 AM
Subscribers

Details

Reviewers
bz
Group Reviewers
wireless
Summary
  • Document what iwx_rxmq_get_signal_strength() is doing in a comment, noting what the firmware returns and what math is being done on it to turn it into a dBm value.
  • Document what iwx_get_noise() is supposed to do, that we can't just go do math with log numbers like we're doing, but also that we're seeing zeros in this firmware (AX210), which may mean we're decoding using the wrong structs.
  • And handle the lowest noise floor value - it can't be -127dBm as that will throw things off. Cap it at -107dBm.

Note that this still isn't ENTIRELY correct, as in theory the RSSI
value in net80211 and wpa_supplicant should be relative to the
noise floor, not an absolute signal level. (eg ifconfig wlan0 list scan
will do (rssi/2)+noise for the 'S' signal part of S/N output, but
ifconfig wlan0 list sta will show the RSSI, (rssi/2)).

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 68752
Build 65635: arc lint + arc unit

Event Timeline

adrian added a reviewer: wireless.
adrian added a project: wireless.
adrian added a subscriber: bz.

@bz here's another great example of "almost but not quite what net80211 "expects" " ;-) sigh.. :)

more cleanups, inspired by bz's poking at this whole rssi/nf/signal strength cleanup.

It wasn't clear from out last conversation if this is ready for review or if there is more related work.

bz requested changes to this revision.Fri, Nov 28, 4:43 PM
bz added inline comments.
sys/dev/iwx/if_iwxreg.h
7914

If you define this, you may as well replace the -127 you got from D50929 with that define.

This revision now requires changes to proceed.Fri, Nov 28, 4:43 PM