linux/drivers/net/wireless/ath/ath10k
Wen Gong db8deae032 ath10k: add reorder and change PN check logic for mac80211
For sdio chip, if the rssi is not good, then it have some retry,
firmware will indicate the msdu list of a ppdu with a hole, it
means it lost the hole msdu, after the msdu retry from AP, the
hole msdu will indicate from firmware later. The hole msdu's PN
check will fail and the hole msdu will be dropped.

PN check fail example:
Sequence number PN number  PN check status
     3814         6101         success
     3815         6102         success
     3816         6103         success
     3818         6105         success
     3819         6106         success
     3820         6107         success
     3817         6104         fail

The correct logic is reorder the msdu list and then do PN check.
ieee80211_rx_reorder_ampdu of mac80211 will do the reorer logic
and then do PN check in ieee80211_rx_h_decrypt of mac80211.

example after reorder:
Sequence number PN number  PN check status
     3814         6101         success
     3815         6102         success
     3816         6103         success
     3817         6104         success
     3818         6105         success
     3819         6106         success
     3820         6107         success

Tested with QCA6174 SDIO with firmware
WLAN.RMH.4.4.1-00017-QCARMSWP-1.

Signed-off-by: Wen Gong <wgong@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2019-09-10 16:21:01 +03:00
..
ahb.c ath10k: initialise struct ath10k_bus params to zero 2019-04-23 16:23:54 +03:00
ahb.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
bmi.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
bmi.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
ce.c ath10k: perform crash dump collection in workqueue 2019-04-29 17:24:37 +03:00
ce.h ath10k: fix descriptor size in ce tx completion for WCN3990 2019-02-26 14:56:19 +02:00
core.c ath10k: add new hw_ops for sdio chip 2019-06-27 20:58:48 +03:00
core.h ath10k: Add WMI diag fw logging support for WCN3990 2019-06-25 16:16:54 +03:00
coredump.c Merge ath-next from git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git 2019-05-27 15:15:29 +03:00
coredump.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
debug.c ath10k: Add wrapper function to ath10k debug 2019-06-25 15:48:47 +03:00
debug.h ath10k: add support for controlling tx power to a station 2019-06-25 16:14:00 +03:00
debugfs_sta.c ath10k: Check tx_stats before use it 2019-05-07 17:03:47 +03:00
hif.h ath10k: Add WMI diag fw logging support for WCN3990 2019-06-25 16:16:54 +03:00
htc.c ath10k: add initialization of HTC header 2019-04-23 16:26:09 +03:00
htc.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
htt_rx.c ath10k: add reorder and change PN check logic for mac80211 2019-09-10 16:21:01 +03:00
htt_tx.c ath10k: add mic bytes for pmf management packet 2019-09-10 16:14:29 +03:00
htt.c ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg 2019-06-25 15:47:15 +03:00
htt.h ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg 2019-06-25 15:47:15 +03:00
hw.c ath10k: add new hw_ops for sdio chip 2019-06-27 20:58:48 +03:00
hw.h ath10k: add new hw_ops for sdio chip 2019-06-27 20:58:48 +03:00
Kconfig ath: fix SPDX tags 2019-06-26 18:11:06 +03:00
mac.c mac80211: pass the vif to cancel_remain_on_channel 2019-07-26 13:08:28 +02:00
mac.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
Makefile ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
p2p.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
p2p.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
pci.c ath10k: pci: remove unnecessary casts 2019-06-28 22:14:15 +03:00
pci.h ath10k: perform crash dump collection in workqueue 2019-04-29 17:24:37 +03:00
qmi_wlfw_v01.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
qmi_wlfw_v01.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
qmi.c ath10k: Fix memory leak in qmi 2019-06-28 22:09:11 +03:00
qmi.h ath10k: Add WMI diag fw logging support for WCN3990 2019-06-25 16:16:54 +03:00
rx_desc.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
sdio.c ath10k: destroy sdio workqueue while remove sdio module 2019-06-28 22:12:59 +03:00
sdio.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
snoc.c ath10k: Add WMI diag fw logging support for WCN3990 2019-06-25 16:16:54 +03:00
snoc.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
spectral.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
spectral.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
swap.c ath10k: remove unnecessary 'out of memory' message 2019-06-28 22:14:06 +03:00
swap.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
targaddrs.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
testmode_i.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
testmode.c ath10k: change firmware file name for UTF mode of SDIO/USB 2019-06-25 15:53:41 +03:00
testmode.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
thermal.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
thermal.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
trace.c ath10k: Add wrapper function to ath10k debug 2019-06-25 15:48:47 +03:00
trace.h ath10k: Add wrapper function to ath10k debug 2019-06-25 15:48:47 +03:00
txrx.c ath10k: add peer id check in ath10k_peer_find_by_id 2019-05-07 17:02:26 +03:00
txrx.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
usb.c ath10k: Change the warning message string 2019-06-25 16:00:12 +03:00
usb.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
wmi-ops.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
wmi-tlv.c ath10k: Add peer delete response event 2019-06-25 16:12:24 +03:00
wmi-tlv.h ath10k: Add peer delete response event 2019-06-25 16:12:24 +03:00
wmi.c ath10k: rx_duration update for fw_stats debugfs entry 2019-05-07 16:44:13 +03:00
wmi.h ath10k: add support for controlling tx power to a station 2019-06-25 16:14:00 +03:00
wow.c ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00
wow.h ath10k: switch to use SPDX license identifiers 2019-02-20 10:33:00 +02:00