Make iwn, iwm, and iwx keep track of beacon parameters at run-time.
authorstsp <stsp@openbsd.org>
Thu, 29 Apr 2021 21:43:46 +0000 (21:43 +0000)
committerstsp <stsp@openbsd.org>
Thu, 29 Apr 2021 21:43:46 +0000 (21:43 +0000)
commit09268e1f27d8f5f2f53b7cc87ce46ea555fcc4f8
tree7669eacca3ceacfc21fbaaee1b8192adfb5403a4
parent9bd5c36d2a3c170ca4db787a207532ec7e63868f
Make iwn, iwm, and iwx keep track of beacon parameters at run-time.

- HT protection settings (this was already implemented)
- ERP (11g) protection setting
- short slottime setting
- short preamble setting
- EDCA (QoS) parameters

All of these parameters are communicated in beacons and hardware is
now kept up-to-date with them.

Prompted by a problem report from Christian Ehrhardt regarding ERP.

Tested:
iwn 6205: stsp, Josh Grosse
iwm 7265: trondd
iwm 8265: stsp, Matthias Schmidt
iwm 9260: phessler
iwx ax200: stsp, jmc, gnezdo
sys/dev/pci/if_iwm.c
sys/dev/pci/if_iwmvar.h
sys/dev/pci/if_iwn.c
sys/dev/pci/if_iwx.c
sys/dev/pci/if_iwxvar.h
sys/net80211/ieee80211_input.c
sys/net80211/ieee80211_node.c
sys/net80211/ieee80211_var.h