linux/drivers/net/wireless/ath
Sathishkumar Muruganandam 68c295f21a ath10k: disable 4addr source port learning in 10.4 FW by default
Currently in 10.4 FW, all the received 4addr frames are processed for
source port learning which is enabled by default. This learning can't be
disabled by default in FW since it breaks backward compatibility.

Since ath10k uses mac80211 based 4addr mode, source port learning done in
10.4 FW is redundant and also causes issues when 3addr frames are
transmitted/received for a 4addr station.

One such visible functional impact is when GTK rekey frame from
hostapd based AP to 4addr STA is dropped in AP's 10.4 FW. This is since
GTK rekey EAPOL frame is 3addr frame on AP interface and STA enabled
with 4addr is already allowed for receiving 3addr EAPOL frames.

Source port learning implementation in 10.4 FW drops this 3addr GTK rekey
frame in AP destinated for 4addr STA causing disassociation and
re-association for every GTK rekey session. GTK rekey issue is not seen
when learning is disabled in FW.

To prevent such issues without breaking backward compatibility, FW
advertises new service bit making the source port learning configurable and
this learning is being currently disabled during ath10k vdev creation.

* Tested HW: QCA9984
* Tested FW: 10.4-3.6.0.1-00004

Signed-off-by: Sathishkumar Muruganandam <murugana@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-12-20 19:01:05 +02:00
..
ar5523 ath: Convert timers to use timer_setup() 2017-10-27 16:54:19 +03:00
ath5k ath5k: Remove unused BUG_ON 2018-10-01 18:32:46 +03:00
ath6kl ath6kl: Use debug instead of error message when disabled 2018-12-20 09:30:48 +02:00
ath9k wireless-drivers-next patches for 4.21 2018-12-03 15:44:27 -08:00
ath10k ath10k: disable 4addr source port learning in 10.4 FW by default 2018-12-20 19:01:05 +02:00
carl9170 carl9170: tx: mark expected switch fall-throughs 2018-11-05 13:22:35 +02:00
wcn36xx wcn36xx: use dma_zalloc_coherent instead of allocator/memset 2018-08-24 14:50:20 +03:00
wil6210 wil6210: remove set but not used variable 'wdev' 2018-12-20 09:44:41 +02:00
ath.h ath: Remove unnecessary ath_bcast_mac and use eth_broadcast_addr 2018-03-29 12:10:26 +03:00
debug.c
dfs_pattern_detector.c ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
dfs_pattern_detector.h ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
dfs_pri_detector.c
dfs_pri_detector.h ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
hw.c
Kconfig net/wireless: fix spaces and grammar copy/paste in vendor Kconfig help text 2018-03-13 18:52:25 +02:00
key.c
main.c
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
reg.h
regd_common.h ath: Map Zimbabwe to ETSI1_WORLD 2018-05-25 12:56:18 +03:00
regd.c ath: Fix updating radar flags for coutry code India 2017-04-19 17:09:26 +03:00
regd.h ath: Add regulatory mapping for Uganda 2018-05-25 12:52:36 +03:00
spectral_common.h
trace.c
trace.h