Skip to content

Commit e3ec701

Browse files
Ping-Ke ShihKalle Valo
authored andcommitted
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 <[email protected]> Ping-Ke Shih <[email protected]> Po Hao Huang <[email protected]> Tzu-En Huang <[email protected]> Vincent Fann <[email protected]> Yan-Hsuan Chuang <[email protected]> Zong-Zhe Yang <[email protected]> Tested-by: Aaron Ma <[email protected]> Tested-by: Brian Norris <[email protected]> Signed-off-by: Ping-Ke Shih <[email protected]> Signed-off-by: Kalle Valo <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 9b793db commit e3ec701

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+91102
-0
lines changed

drivers/net/wireless/realtek/Kconfig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,6 @@ source "drivers/net/wireless/realtek/rtl818x/Kconfig"
1616
source "drivers/net/wireless/realtek/rtlwifi/Kconfig"
1717
source "drivers/net/wireless/realtek/rtl8xxxu/Kconfig"
1818
source "drivers/net/wireless/realtek/rtw88/Kconfig"
19+
source "drivers/net/wireless/realtek/rtw89/Kconfig"
1920

2021
endif # WLAN_VENDOR_REALTEK

drivers/net/wireless/realtek/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ obj-$(CONFIG_RTL8187) += rtl818x/
88
obj-$(CONFIG_RTLWIFI) += rtlwifi/
99
obj-$(CONFIG_RTL8XXXU) += rtl8xxxu/
1010
obj-$(CONFIG_RTW88) += rtw88/
11+
obj-$(CONFIG_RTW89) += rtw89/
1112

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2+
menuconfig RTW89
3+
tristate "Realtek 802.11ax wireless chips support"
4+
depends on MAC80211
5+
help
6+
This module adds support for mac80211-based wireless drivers that
7+
enables Realtek IEEE 802.11ax wireless chipsets.
8+
9+
If you choose to build a module, it'll be called rtw89.
10+
11+
if RTW89
12+
13+
config RTW89_CORE
14+
tristate
15+
16+
config RTW89_PCI
17+
tristate
18+
19+
config RTW89_8852AE
20+
tristate "Realtek 8852AE PCI wireless network adapter"
21+
depends on PCI
22+
select RTW89_CORE
23+
select RTW89_PCI
24+
help
25+
Select this option will enable support for 8852AE chipset
26+
27+
802.11ax PCIe wireless network adapter
28+
29+
config RTW89_DEBUG
30+
bool
31+
32+
config RTW89_DEBUGMSG
33+
bool "Realtek rtw89 debug message support"
34+
depends on RTW89_CORE
35+
select RTW89_DEBUG
36+
help
37+
Enable debug message support
38+
39+
If unsure, say Y to simplify debug problems
40+
41+
config RTW89_DEBUGFS
42+
bool "Realtek rtw89 debugfs support"
43+
depends on RTW89_CORE
44+
select RTW89_DEBUG
45+
help
46+
Enable debugfs support
47+
48+
If unsure, say Y to simplify debug problems
49+
50+
endif
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2+
3+
obj-$(CONFIG_RTW89_CORE) += rtw89_core.o
4+
rtw89_core-y += core.o \
5+
mac80211.o \
6+
mac.o \
7+
phy.o \
8+
fw.o \
9+
rtw8852a.o \
10+
rtw8852a_table.o \
11+
rtw8852a_rfk.o \
12+
rtw8852a_rfk_table.o \
13+
cam.o \
14+
efuse.o \
15+
regd.o \
16+
sar.o \
17+
coex.o \
18+
ps.o \
19+
ser.o
20+
21+
rtw89_core-$(CONFIG_RTW89_DEBUG) += debug.o
22+
23+
obj-$(CONFIG_RTW89_PCI) += rtw89_pci.o
24+
rtw89_pci-y := pci.o
25+

0 commit comments

Comments
 (0)