mirror of
https://github.com/opnsense/src.git
synced 2026-02-25 19:05:20 -05:00
One of the fun issues with scanning has been how the existing
ANI values were programmed into the hardware when channels were
changed. If you're on a really crappy channel and ANI has made
you deaf then when you scan you continue to be deaf on all channels.
This code passes in a flag to startpcureceive which in AR5416 and later
is also used to enable ANI. This allows it to know if it's a normal
operation or a scan operation.
This fixes my situation at home where a temporary spot of a device
going deaf due to interference starts scanning and .. can't hear
anything until I restart.
Now, this isn't the full fix - ideally:
(a) all the ANI config and per-channel information would be migrated
to the shared HAL stuff and enabled for all of the NICs;
(b) when a station reassociates and some other error conditions
(like missed beacons, NF calibration failures, etc) a knob
to reset ANI parameters would likely help recovery.
But hey, I'm committing bits of code again! woo!
Tested:
* AR9344 (2G), STA operation
|
||
|---|---|---|
| .. | ||
| ar5211.h | ||
| ar5211_attach.c | ||
| ar5211_beacon.c | ||
| ar5211_interrupts.c | ||
| ar5211_keycache.c | ||
| ar5211_misc.c | ||
| ar5211_phy.c | ||
| ar5211_power.c | ||
| ar5211_recv.c | ||
| ar5211_reset.c | ||
| ar5211_xmit.c | ||
| ar5211desc.h | ||
| ar5211phy.h | ||
| ar5211reg.h | ||
| boss.ini | ||