Patches 1..15 prepare things, patches 16..19 add the new files, and patch 20 enables their compilation. There are three new modules: rtw88_8821a, which handles all the logic for both chips (like rtl8821ae in rtlwifi), rtw88_8821au, and rtw88_8812au. More device IDs will be added later because those are not my patches and I assume they won't need (as m)any revisions. 20 patches is already a lot. Also to be added later: USB 3 support for RTL8812AU and RX aggregation for both chips. There are still some bugs. Sometimes all RX stops, including C2H, but I see the chip transmitting probe requests on multiple channels. It's pretty rare, difficult to trigger. It happened to me four times in three months. Bitterblue Smith (20): wifi: rtw88: Add some definitions for RTL8821AU/RTL8812AU wifi: rtw88: Dump the HW features only for some chips wifi: rtw88: Allow different C2H RA report sizes wifi: rtw88: Extend the init table parsing for RTL8812AU wifi: rtw88: Allow rtw_chip_info.ltecoex_addr to be NULL wifi: rtw88: Let each driver control the power on/off process wifi: rtw88: Enable data rate fallback for older chips wifi: rtw88: Make txagc_remnant_ofdm an array wifi: rtw88: Support TX page sizes bigger than 128 wifi: rtw88: Move pwr_track_tbl to struct rtw_rfe_def wifi: rtw88: usb: Set pkt_info.ls for the reserved page wifi: rtw88: Detect beacon loss with chips other than 8822c wifi: rtw88: coex: Support chips without a scoreboard wifi: rtw88: 8821a: Regularly ask for BT info updates wifi: rtw88: 8812a: Mitigate beacon loss wifi: rtw88: Add rtw8812a_table.{c,h} wifi: rtw88: Add rtw8821a_table.{c,h} wifi: rtw88: Add rtw8821a.{c,h} wifi: rtw88: Add rtw8821au.c and rtw8812au.c wifi: rtw88: Enable the new RTL8821AU/RTL8812AU drivers drivers/net/wireless/realtek/rtw88/Kconfig | 25 + drivers/net/wireless/realtek/rtw88/Makefile | 9 + drivers/net/wireless/realtek/rtw88/coex.c | 37 +- drivers/net/wireless/realtek/rtw88/coex.h | 1 + drivers/net/wireless/realtek/rtw88/debug.c | 2 +- drivers/net/wireless/realtek/rtw88/fw.c | 21 +- drivers/net/wireless/realtek/rtw88/mac.c | 13 +- drivers/net/wireless/realtek/rtw88/mac.h | 3 + drivers/net/wireless/realtek/rtw88/main.c | 31 +- drivers/net/wireless/realtek/rtw88/main.h | 39 +- drivers/net/wireless/realtek/rtw88/pci.c | 2 +- drivers/net/wireless/realtek/rtw88/phy.c | 71 +- drivers/net/wireless/realtek/rtw88/rtw8703b.c | 21 +- drivers/net/wireless/realtek/rtw88/rtw8723d.c | 21 +- drivers/net/wireless/realtek/rtw88/rtw8723x.c | 3 +- .../wireless/realtek/rtw88/rtw8812a_table.c | 2812 +++++++++++ .../wireless/realtek/rtw88/rtw8812a_table.h | 26 + .../net/wireless/realtek/rtw88/rtw8812au.c | 28 + drivers/net/wireless/realtek/rtw88/rtw8821a.c | 4139 +++++++++++++++++ drivers/net/wireless/realtek/rtw88/rtw8821a.h | 385 ++ .../wireless/realtek/rtw88/rtw8821a_table.c | 2350 ++++++++++ .../wireless/realtek/rtw88/rtw8821a_table.h | 21 + .../net/wireless/realtek/rtw88/rtw8821au.c | 28 + drivers/net/wireless/realtek/rtw88/rtw8821c.c | 21 +- drivers/net/wireless/realtek/rtw88/rtw8822b.c | 19 +- drivers/net/wireless/realtek/rtw88/rtw8822c.c | 27 +- drivers/net/wireless/realtek/rtw88/sdio.c | 2 +- drivers/net/wireless/realtek/rtw88/tx.c | 6 +- drivers/net/wireless/realtek/rtw88/tx.h | 4 +- drivers/net/wireless/realtek/rtw88/usb.c | 5 +- 30 files changed, 10083 insertions(+), 89 deletions(-) create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8812a_table.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8812a_table.h create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8812au.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8821a.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8821a.h create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8821a_table.c create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8821a_table.h create mode 100644 drivers/net/wireless/realtek/rtw88/rtw8821au.c -- 2.46.0