freebsd-dev/sys
Adrian Chadd f858e9281c [ath] Handle STA + AP beacon programming without stomping over HW AP beacon programming
I've been using STA+AP modes at home for a couple years now
and I've been finding and fixing a lot of weird corner cases.
This is the eventual patchset I've landed on.

* Don't force beacon resync in STA mode if we're using sw beacon tracking.
  This stops a variety of stomping issues when the STA VAP is reconfigured;
  the AP hardware beacons were being stomped on!

* Use the first AP VAP to configure beacons on, rather than the first VAP.
  This prevents weird behaviour in ath_beacon_config() when the hardware
  is being reconfigured and the STA VAP was the first one created.
* Ensure the beacon interval / timing programming is within the AR9300
  HAL bounds by masking off any flags that may have been there before
  shifting the value up to 1/8 TUs rather than the 1 TU resolution the
  previous chips used.

Now I don't get weird beacon reprogramming during startup, STA state
changes and hardware recovery which showed up as HI-LARIOUS beacon
configurations and STAs that would just disconnect from the AP very
frequently.

Tested:

* AR9344/AR9380, STA and AP and STA+AP modes
2021-05-22 16:39:16 -07:00
..
amd64 linux: refactor bsd_to_linux_regset() out of linux_ptrace.c 2021-05-21 07:26:07 +01:00
arm arm: allwinner: aw_mmc: Check regulators status before enabling/disabling them 2021-05-21 17:39:47 +02:00
arm64 arm64: rockchip: gpio: Give friendlier name to gpio 2021-05-21 17:35:43 +02:00
bsm
cam mmccam: Add two new XPT for MMC and use them in mmc_sim and sdhci 2021-05-21 17:34:05 +02:00
cddl fbt: Remove some handling for multiple CTF containers 2021-04-02 17:49:13 -04:00
compat There is a window where threads are removed from the process list and where 2021-05-21 13:18:41 +02:00
conf mmc: Only build mmc_fdt_helper and mmc_pwrseq for arch that uses ext_resources 2021-05-21 19:35:20 +02:00
contrib sys/*/conf/*, docs: fix links to handbook 2021-05-20 09:27:10 +01:00
crypto ossl: Don't encryt/decrypt too much data for chacha20. 2021-04-01 15:49:07 -07:00
ddb fix style nit: space after if 2021-05-05 15:26:09 -06:00
dev [ath] Handle STA + AP beacon programming without stomping over HW AP beacon programming 2021-05-22 16:39:16 -07:00
dts arm64: rockchip: Add some DTSO to disable sd/mmc 2021-05-13 18:15:31 +02:00
fs nfscl: Add hash lists for the NFSv4 opens 2021-05-22 14:53:56 -07:00
gdb gdb: report specific stop reason for watchpoints 2021-03-30 11:36:41 -03:00
geom gmultipath: make physpath distinct from the underlying providers' 2021-05-06 12:32:27 -06:00
gnu Remove the old dts imported tree. 2021-01-15 20:09:55 +01:00
i386 sys/*/conf/*, docs: fix links to handbook 2021-05-20 09:27:10 +01:00
isa Remove more remnants of sio(4) 2021-04-07 14:33:02 -04:00
kern umtx: convert umtxq_lock to a macro 2021-05-22 21:01:05 +00:00
kgssapi opencrypto: Introduce crypto_dispatch_async() 2021-02-08 09:19:19 -05:00
libkern Use '.arch_extension crc' in the arm64 crc32 code 2021-05-06 07:42:35 +00:00
mips [ar71xx] During reset, don't spin, just keep trying 2021-05-22 15:53:00 -07:00
modules modules: Only build sdhci_fdt for arm and arm64 2021-05-13 20:23:59 +02:00
net pf: Track the original kif for floating states 2021-05-20 12:49:27 +02:00
net80211 net80211: prefix get_random_bytes() with net80211_ 2021-03-24 22:16:09 +00:00
netgraph Fix packet cbs/ebs conversion. 2021-05-19 11:04:08 -04:00
netinet ip_forward: Restore RFC reference 2021-05-23 00:01:37 +02:00
netinet6 Fix mbuf leaks in various pru_send implementations 2021-05-12 13:00:09 -04:00
netipsec Add missing sockaddr length and family validation to various protocols 2021-05-03 13:35:19 -04:00
netpfil pf: Support killing floating states by interface 2021-05-20 12:49:27 +02:00
netsmb
nfs Fix panic when using BOOTP to resolve root path. 2021-03-28 14:02:40 -05:00
nfsclient nfs: Cleanup dead files 2021-03-17 06:16:31 +11:00
nfsserver nfs: Cleanup dead files 2021-03-17 06:16:31 +11:00
nlm
ofed Add missing sockaddr length and family validation to various protocols 2021-05-03 13:35:19 -04:00
opencrypto cryptodev: Fix some input validation bugs 2021-05-11 17:36:12 -04:00
powerpc cam: clear on-stack CCBs in last few drivers 2021-05-21 08:53:59 +01:00
riscv sys/*/conf/*, docs: fix links to handbook 2021-05-20 09:27:10 +01:00
rpc nfsd: fix a NFSv4.1 Linux client mount stuck in CLOSE_WAIT 2021-04-27 15:32:35 -07:00
security tcp_input/syncache: acquire only read lock on PCB for SYN,!ACK packets 2021-04-12 08:25:31 -07:00
sys Fix a braino in previous. 2021-05-22 19:53:40 +00:00
teken
tests Revise FIB lookups per second benchmarking routines. 2021-05-05 12:28:17 +02:00
tools makesyscalls.lua: improve generated file style(9) compliance 2021-05-13 13:59:25 -04:00
ufs Move mnt_maxsymlinklen into appropriate fs mount data structures 2021-05-22 15:16:09 +03:00
vm vm: add another pager private flag 2021-05-15 20:47:29 +00:00
x86 x86/xen: further PVHv1 removal cleanup 2021-05-18 10:43:31 +02:00
xdr
xen x86/xen: remove PVHv1 code 2021-05-17 11:41:21 +02:00
Makefile