linux_dsm_epyc7002/drivers/net/wireless
Luis R. Rodriguez 371842448c cfg80211: fix regression on beacon world roaming feature
A regression was added through patch a4ed90d6:

"cfg80211: respect API on orig_flags on channel for beacon hint"

We did indeed respect _orig flags but the intention was not clearly
stated in the commit log. This patch fixes firmware issues picked
up by iwlwifi when we lift passive scan of beaconing restrictions
on channels its EEPROM has been configured to always enable.

By doing so though we also disallowed beacon hints on devices
registering their wiphy with custom world regulatory domains
enabled, this happens to be currently ath5k, ath9k and ar9170.
The passive scan and beacon restrictions on those devices would
never be lifted even if we did find a beacon and the hardware did
support such enhancements when world roaming.

Since Johannes indicates iwlwifi firmware cannot be changed to
allow beacon hinting we set up a flag now to specifically allow
drivers to disable beacon hints for devices which cannot use them.

We enable the flag on iwlwifi to disable beacon hints and by default
enable it for all other drivers. It should be noted beacon hints lift
passive scan flags and beacon restrictions when we receive a beacon from
an AP on any 5 GHz non-DFS channels, and channels 12-14 on the 2.4 GHz
band. We don't bother with channels 1-11 as those channels are allowed
world wide.

This should fix world roaming for ath5k, ath9k and ar9170, thereby
improving scan time when we receive the first beacon from any AP,
and also enabling beaconing operation (AP/IBSS/Mesh) on cards which
would otherwise not be allowed to do so. Drivers not using custom
regulatory stuff (wiphy_apply_custom_regulatory()) were not affected
by this as the orig_flags for the channels would have been cleared
upon wiphy registration.

I tested this with a world roaming ath5k card.

Cc: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Reviewed-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-08-03 16:31:21 -04:00
..
ath ath9k: Read outside array bounds 2009-07-27 15:19:36 -04:00
b43 b43: Add support for 4318E 2009-07-08 15:24:24 -04:00
b43legacy b43/b43legacy: fix radio LED initialization 2009-07-07 12:55:26 -04:00
hostap Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
ipw2x00 net: use symbolic values for ndo_start_xmit() return codes 2009-06-13 01:18:50 -07:00
iwlwifi cfg80211: fix regression on beacon world roaming feature 2009-08-03 16:31:21 -04:00
iwmc3200wifi wireless: ERR_PTR vs null 2009-07-27 15:19:35 -04:00
libertas libertas: Read buffer overflow 2009-07-29 14:52:01 -04:00
libertas_tf
orinoco netdev: restore MAC address set and validate operations 2009-07-12 14:20:02 -07:00
p54 p54spi: fix potential null deref in p54spi.c 2009-07-21 15:59:48 -04:00
prism54 net: fix network drivers ndo_start_xmit() return values (part 3) 2009-06-13 01:18:37 -07:00
rt2x00 rt2x00: Fix chipset detection for rt2500usb 2009-07-21 12:07:43 -04:00
rtl818x rtl8187: Fix for kernel oops when unloading with LEDs enabled 2009-07-21 12:07:42 -04:00
wl12xx
zd1211rw zd1211rw: adding SONY IFU-WLM2 (054c:0257) as a zd1211b device 2009-07-08 15:24:23 -04:00
adm8211.c
adm8211.h
airo_cs.c
airo.c airo: Buffer overflow 2009-07-27 15:19:36 -04:00
airo.h
arlan-main.c net: use symbolic values for ndo_start_xmit() return codes 2009-06-13 01:18:50 -07:00
arlan-proc.c
arlan.h
at76c50x-usb.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2009-06-03 02:43:41 -07:00
at76c50x-usb.h
atmel_cs.c
atmel_pci.c
atmel.c net: use symbolic values for ndo_start_xmit() return codes 2009-06-13 01:18:50 -07:00
atmel.h
i82586.h
i82593.h
Kconfig Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
mac80211_hwsim.c mac80211_hwsim: fix use after free 2009-07-21 12:07:40 -04:00
Makefile
mwl8k.c
netwave_cs.c
ray_cs.c net: use symbolic values for ndo_start_xmit() return codes 2009-06-13 01:18:50 -07:00
ray_cs.h
rayctl.h
rndis_wlan.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
strip.c Revert "NET: Fix locking issues in PPP, 6pack, mkiss and strip line disciplines." 2009-07-14 13:13:41 -07:00
wavelan_cs.c Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-06-15 03:02:23 -07:00
wavelan_cs.h
wavelan_cs.p.h
wavelan.c net: use symbolic values for ndo_start_xmit() return codes 2009-06-13 01:18:50 -07:00
wavelan.h
wavelan.p.h
wl3501_cs.c net: fix network drivers ndo_start_xmit() return values (part 3) 2009-06-13 01:18:37 -07:00
wl3501.h
zd1201.c net: fix network drivers ndo_start_xmit() return values (part 3) 2009-06-13 01:18:37 -07:00
zd1201.h