OSDN Git Service

rtw89: add Realtek 802.11ax driver
authorPing-Ke Shih <pkshih@realtek.com>
Mon, 11 Oct 2021 11:47:27 +0000 (14:47 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 13 Oct 2021 06:01:12 +0000 (09:01 +0300)
commite3ec7017f6a20d12ddd9fe23d345ebb7b8c104dd
treec4f4f5fda894f4c7e1cdc859ec543410035ea229
parent9b793db5fca44d01f72d3564a168171acf7c4076
rtw89: add Realtek 802.11ax driver

This driver named rtw89, which is the next generation of rtw88, supports
Realtek 8852AE 802.11ax 2x2 chip whose new features are OFDMA, DBCC,
Spatial reuse, TWT and BSS coloring; now some of them aren't implemented
though.

The chip architecture is entirely different from the chips supported by
rtw88 like RTL8822CE 802.11ac chip. First of all, register address ranges
are totally redefined, so it's impossible to reuse register definition. To
communicate with firmware, new H2C/C2H format is proposed. In order to have
better utilization, TX DMA flow is changed to two stages DMA. To provide
rich RX status information, additional RX PPDU packets are added.

Since there are so many differences mentioned above, we decide to propose
a new driver. It has many authors, they are listed in alphabetic order:

Chin-Yen Lee <timlee@realtek.com>
Ping-Ke Shih <pkshih@realtek.com>
Po Hao Huang <phhuang@realtek.com>
Tzu-En Huang <tehuang@realtek.com>
Vincent Fann <vincent_fann@realtek.com>
Yan-Hsuan Chuang <tony0620emma@gmail.com>
Zong-Zhe Yang <kevin_yang@realtek.com>

Tested-by: Aaron Ma <aaron.ma@canonical.com>
Tested-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/20211008035627.19463-1-pkshih@realtek.com
41 files changed:
drivers/net/wireless/realtek/Kconfig
drivers/net/wireless/realtek/Makefile
drivers/net/wireless/realtek/rtw89/Kconfig [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/Makefile [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/cam.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/cam.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/coex.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/coex.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/core.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/core.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/debug.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/debug.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/efuse.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/efuse.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/fw.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/fw.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/mac.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/mac.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/mac80211.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/pci.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/pci.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/phy.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/phy.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/ps.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/ps.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/reg.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/regd.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_rfk_table.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_table.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/rtw8852a_table.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/sar.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/sar.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/ser.c [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/ser.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/txrx.h [new file with mode: 0644]
drivers/net/wireless/realtek/rtw89/util.h [new file with mode: 0644]