aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless/realtek/rtw89/txrx.h
diff options
context:
space:
mode:
authorPing-Ke Shih <pkshih@realtek.com>2022-03-18 10:32:13 +0800
committerKalle Valo <kvalo@kernel.org>2022-04-06 10:48:16 +0300
commit79a6c9a4f3c4473dd508a7384ae328bf683b7382 (patch)
tree8356535ebcf878a680f937c96ff83068536b2ed8 /drivers/net/wireless/realtek/rtw89/txrx.h
parentf59acdde5197f3ea96ebf3d6bd95741d210dab9b (diff)
rtw89: support hardware generate security header
The newer chip will generate security header itself, so don't set IEEE80211_KEY_FLAG_GENERATE_IV in this kind of chip. But, it needs to fill key_index, PN and 802.11 header length to TX descriptor, and then hardware uses these to generate security header. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://lore.kernel.org/r/20220318023214.32411-11-pkshih@realtek.com
Diffstat (limited to 'drivers/net/wireless/realtek/rtw89/txrx.h')
-rw-r--r--drivers/net/wireless/realtek/rtw89/txrx.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/realtek/rtw89/txrx.h b/drivers/net/wireless/realtek/rtw89/txrx.h
index c943e4e95721..1250e26ade40 100644
--- a/drivers/net/wireless/realtek/rtw89/txrx.h
+++ b/drivers/net/wireless/realtek/rtw89/txrx.h
@@ -38,6 +38,7 @@
/* TX WD BODY DWORD 1 */
#define RTW89_TXWD_BODY1_ADDR_INFO_NUM GENMASK(31, 26)
#define RTW89_TXWD_BODY1_PAYLOAD_ID GENMASK(31, 16)
+#define RTW89_TXWD_BODY1_SEC_KEYID GENMASK(5, 4)
#define RTW89_TXWD_BODY1_SEC_TYPE GENMASK(3, 0)
/* TX WD BODY DWORD 2 */
@@ -52,8 +53,14 @@
#define RTW89_TXWD_BODY3_SW_SEQ GENMASK(11, 0)
/* TX WD BODY DWORD 4 */
+#define RTW89_TXWD_BODY4_SEC_IV_L1 GENMASK(31, 24)
+#define RTW89_TXWD_BODY4_SEC_IV_L0 GENMASK(23, 16)
/* TX WD BODY DWORD 5 */
+#define RTW89_TXWD_BODY5_SEC_IV_H5 GENMASK(31, 24)
+#define RTW89_TXWD_BODY5_SEC_IV_H4 GENMASK(23, 16)
+#define RTW89_TXWD_BODY5_SEC_IV_H3 GENMASK(15, 8)
+#define RTW89_TXWD_BODY5_SEC_IV_H2 GENMASK(7, 0)
/* TX WD BODY DWORD 6 (V1) */