mac80211: realtek: rtw88: add RTL8821CU support
[openwrt/openwrt.git] / package / kernel / mac80211 / realtek.mk
1 PKG_DRIVERS += \
2 rtlwifi rtlwifi-pci rtlwifi-btcoexist rtlwifi-usb rtl8192c-common \
3 rtl8192ce rtl8192se rtl8192de rtl8192cu rtl8723bs rtl8821ae \
4 rtl8xxxu rtw88 rtw88-pci rtw88-usb rtw88-8821c rtw88-8822b rtw88-8822c \
5 rtw88-8723d rtw88-8821ce rtw88-8821cu rtw88-8822be rtw88-8822bu \
6 rtw88-8822ce rtw88-8723de
7
8 config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
9 config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
10 config-$(call config_package,rtlwifi-btcoexist) += RTLBTCOEXIST
11 config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
12 config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
13 config-$(call config_package,rtl8192ce) += RTL8192CE
14 config-$(call config_package,rtl8192se) += RTL8192SE
15 config-$(call config_package,rtl8192de) += RTL8192DE
16 config-$(call config_package,rtl8192cu) += RTL8192CU
17 config-$(call config_package,rtl8821ae) += RTL8821AE
18 config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
19
20 config-$(call config_package,rtl8xxxu) += RTL8XXXU
21 config-y += RTL8XXXU_UNTESTED
22
23 config-$(call config_package,rtl8723bs) += RTL8723BS
24 config-y += STAGING
25
26 config-$(call config_package,rtw88) += RTW88 RTW88_CORE
27 config-$(call config_package,rtw88-pci) += RTW88_PCI
28 config-$(call config_package,rtw88-usb) += RTW88_USB
29 config-$(call config_package,rtw88-8821c) += RTW88_8821C
30 config-$(call config_package,rtw88-8821ce) += RTW88_8821CE
31 config-$(call config_package,rtw88-8821cu) += RTW88_8821CU
32 config-$(call config_package,rtw88-8822b) += RTW88_8822B
33 config-$(call config_package,rtw88-8822be) += RTW88_8822BE
34 config-$(call config_package,rtw88-8822bu) += RTW88_8822BU
35 config-$(call config_package,rtw88-8822c) += RTW88_8822C
36 config-$(call config_package,rtw88-8822ce) += RTW88_8822CE
37 config-$(call config_package,rtw88-8723d) += RTW88_8723D
38 config-$(call config_package,rtw88-8723de) += RTW88_8723DE
39 config-$(CONFIG_PACKAGE_RTW88_DEBUG) += RTW88_DEBUG
40 config-$(CONFIG_PACKAGE_RTW88_DEBUGFS) += RTW88_DEBUGFS
41
42 define KernelPackage/rtlwifi/config
43 config PACKAGE_RTLWIFI_DEBUG
44 bool "Realtek wireless debugging"
45 depends on PACKAGE_kmod-rtlwifi
46 help
47 Say Y, if you want to debug realtek wireless drivers.
48
49 endef
50
51 define KernelPackage/rtlwifi
52 $(call KernelPackage/mac80211/Default)
53 TITLE:=Realtek common driver part
54 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211
55 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtlwifi.ko
56 HIDDEN:=1
57 endef
58
59 define KernelPackage/rtlwifi-pci
60 $(call KernelPackage/mac80211/Default)
61 TITLE:=Realtek common driver part (PCI support)
62 DEPENDS+= @PCI_SUPPORT +kmod-rtlwifi
63 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl_pci.ko
64 AUTOLOAD:=$(call AutoProbe,rtl_pci)
65 HIDDEN:=1
66 endef
67
68 define KernelPackage/rtlwifi-btcoexist
69 $(call KernelPackage/mac80211/Default)
70 TITLE:=Realtek BT coexist support
71 DEPENDS+= +kmod-rtlwifi
72 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist.ko
73 AUTOLOAD:=$(call AutoProbe,btcoexist)
74 HIDDEN:=1
75 endef
76
77 define KernelPackage/rtlwifi-usb
78 $(call KernelPackage/mac80211/Default)
79 TITLE:=Realtek common driver part (USB support)
80 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-rtlwifi
81 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl_usb.ko
82 AUTOLOAD:=$(call AutoProbe,rtl_usb)
83 HIDDEN:=1
84 endef
85
86 define KernelPackage/rtl8192c-common
87 $(call KernelPackage/mac80211/Default)
88 TITLE:=Realtek RTL8192CE/RTL8192CU common support module
89 DEPENDS+= +kmod-rtlwifi
90 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common.ko
91 HIDDEN:=1
92 endef
93
94 define KernelPackage/rtl8192ce
95 $(call KernelPackage/mac80211/Default)
96 TITLE:=Realtek RTL8192CE/RTL8188CE support
97 DEPENDS+= +kmod-rtlwifi-pci +kmod-rtl8192c-common +rtl8192ce-firmware
98 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192ce/rtl8192ce.ko
99 AUTOLOAD:=$(call AutoProbe,rtl8192ce)
100 endef
101
102 define KernelPackage/rtl8192se
103 $(call KernelPackage/mac80211/Default)
104 TITLE:=Realtek RTL8192SE/RTL8191SE support
105 DEPENDS+= +kmod-rtlwifi-pci +rtl8192se-firmware
106 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192se/rtl8192se.ko
107 AUTOLOAD:=$(call AutoProbe,rtl8192se)
108 endef
109
110 define KernelPackage/rtl8192de
111 $(call KernelPackage/mac80211/Default)
112 TITLE:=Realtek RTL8192DE/RTL8188DE support
113 DEPENDS+= +kmod-rtlwifi-pci +rtl8192de-firmware
114 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192de/rtl8192de.ko
115 AUTOLOAD:=$(call AutoProbe,rtl8192de)
116 endef
117
118 define KernelPackage/rtl8192cu
119 $(call KernelPackage/mac80211/Default)
120 TITLE:=Realtek RTL8192CU/RTL8188CU support
121 DEPENDS+= +kmod-rtlwifi-usb +kmod-rtl8192c-common +rtl8192cu-firmware
122 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192cu/rtl8192cu.ko
123 AUTOLOAD:=$(call AutoProbe,rtl8192cu)
124 endef
125
126 define KernelPackage/rtl8821ae
127 $(call KernelPackage/mac80211/Default)
128 TITLE:=Realtek RTL8821AE support
129 DEPENDS+= +kmod-rtlwifi-btcoexist +kmod-rtlwifi-pci +rtl8821ae-firmware
130 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/rtl8821ae.ko
131 AUTOLOAD:=$(call AutoProbe,rtl8821ae)
132 endef
133
134 define KernelPackage/rtl8xxxu
135 $(call KernelPackage/mac80211/Default)
136 TITLE:=alternative Realtek RTL8XXXU support
137 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
138 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.ko
139 AUTOLOAD:=$(call AutoProbe,rtl8xxxu)
140 endef
141
142 define KernelPackage/rtl8xxxu/description
143 This is an alternative driver for various Realtek RTL8XXX
144 parts written to utilize the Linux mac80211 stack.
145 The driver is known to work with a number of RTL8723AU,
146 RL8188CU, RTL8188RU, RTL8191CU, and RTL8192CU devices
147
148 This driver is under development and has a limited feature
149 set. In particular it does not yet support 40MHz channels
150 and power management. However it should have a smaller
151 memory footprint than the vendor drivers and benetifs
152 from the in kernel mac80211 stack.
153
154 It can coexist with drivers from drivers/staging/rtl8723au,
155 drivers/staging/rtl8192u, and drivers/net/wireless/rtlwifi,
156 but you will need to control which module you wish to load.
157
158 RTL8XXXU_UNTESTED is enabled
159 This option enables detection of Realtek 8723/8188/8191/8192 WiFi
160 USB devices which have not been tested directly by the driver
161 author or reported to be working by third parties.
162
163 Please report your results!
164 endef
165
166 define KernelPackage/rtw88/config
167 config PACKAGE_RTW88_DEBUG
168 bool "Realtek wireless debugging (rtw88)"
169 depends on PACKAGE_kmod-rtw88
170 help
171 Enable debugging output for rtw88 devices
172
173 config PACKAGE_RTW88_DEBUGFS
174 bool "Enable rtw88 debugfS support"
175 select KERNEL_DEBUG_FS
176 depends on PACKAGE_kmod-rtw88
177 help
178 Select this to see extensive information about
179 the internal state of rtw88 in debugfs.
180 endef
181
182 define KernelPackage/rtw88
183 $(call KernelPackage/mac80211/Default)
184 TITLE:=Realtek RTW88 common part
185 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211
186 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_core.ko
187 AUTOLOAD:=$(call AutoProbe,rtw88_core)
188 HIDDEN:=1
189 endef
190
191 define KernelPackage/rtw88-pci
192 $(call KernelPackage/mac80211/Default)
193 TITLE:=Realtek RTW88 PCI chips support
194 DEPENDS+= @PCI_SUPPORT +kmod-rtw88
195 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_pci.ko
196 AUTOLOAD:=$(call AutoProbe,rtw88_pci)
197 HIDDEN:=1
198 endef
199
200 define KernelPackage/rtw88-usb
201 $(call KernelPackage/mac80211/Default)
202 TITLE:=Realtek RTW88 USB chips support
203 DEPENDS+= @USB_SUPPORT +kmod-rtw88 +kmod-usb-core
204 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_usb.ko
205 AUTOLOAD:=$(call AutoProbe,rtw88_usb)
206 HIDDEN:=1
207 endef
208
209 define KernelPackage/rtw88-8821c
210 $(call KernelPackage/mac80211/Default)
211 TITLE:=Realtek RTL8821C family support
212 DEPENDS+= +kmod-rtw88 +rtl8821ce-firmware +@DRIVER_11AC_SUPPORT
213 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8821c.ko
214 AUTOLOAD:=$(call AutoProbe,rtw88_8821c)
215 HIDDEN:=1
216 endef
217
218 define KernelPackage/rtw88-8822b
219 $(call KernelPackage/mac80211/Default)
220 TITLE:=Realtek RTL8822B family support
221 DEPENDS+= +kmod-rtw88 +rtl8822be-firmware +@DRIVER_11AC_SUPPORT
222 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8822b.ko
223 AUTOLOAD:=$(call AutoProbe,rtw88_8822b)
224 HIDDEN:=1
225 endef
226
227 define KernelPackage/rtw88-8822c
228 $(call KernelPackage/mac80211/Default)
229 TITLE:=Realtek RTL8822C family support
230 DEPENDS+= +kmod-rtw88 +rtl8822ce-firmware +@DRIVER_11AC_SUPPORT
231 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8822c.ko
232 AUTOLOAD:=$(call AutoProbe,rtw88_8822c)
233 HIDDEN:=1
234 endef
235
236 define KernelPackage/rtw88-8723d
237 $(call KernelPackage/mac80211/Default)
238 TITLE:=Realtek RTL8723D family support
239 DEPENDS+= +kmod-rtw88 +rtl8723de-firmware
240 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8723d.ko
241 AUTOLOAD:=$(call AutoProbe,rtw88_8723d)
242 HIDDEN:=1
243 endef
244
245 define KernelPackage/rtw88-8821ce
246 $(call KernelPackage/mac80211/Default)
247 TITLE:=Realtek RTL8821CE support
248 DEPENDS+= +kmod-rtw88-pci +kmod-rtw88-8821c
249 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8821ce.ko
250 AUTOLOAD:=$(call AutoProbe,rtw88_8821ce)
251 endef
252
253 define KernelPackage/rtw88-8821cu
254 $(call KernelPackage/mac80211/Default)
255 TITLE:=Realtek RTL8821CU support
256 DEPENDS+= +kmod-rtw88-usb +kmod-rtw88-8821c
257 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8821cu.ko
258 AUTOLOAD:=$(call AutoProbe,rtw88_8821cu)
259 endef
260
261 define KernelPackage/rtw88-8822be
262 $(call KernelPackage/mac80211/Default)
263 TITLE:=Realtek RTL8822BE support
264 DEPENDS+= +kmod-rtw88-pci +kmod-rtw88-8822b
265 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8822be.ko
266 AUTOLOAD:=$(call AutoProbe,rtw88_8822be)
267 endef
268
269 define KernelPackage/rtw88-8822bu
270 $(call KernelPackage/mac80211/Default)
271 TITLE:=Realtek RTL8822BU support
272 DEPENDS+= +kmod-rtw88-usb +kmod-rtw88-8822b
273 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8822bu.ko
274 AUTOLOAD:=$(call AutoProbe,rtw88_8822bu)
275 endef
276
277 define KernelPackage/rtw88-8822ce
278 $(call KernelPackage/mac80211/Default)
279 TITLE:=Realtek RTL8822CE support
280 DEPENDS+= +kmod-rtw88-pci +kmod-rtw88-8822c
281 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8822ce.ko
282 AUTOLOAD:=$(call AutoProbe,rtw88_8822ce)
283 endef
284
285 define KernelPackage/rtw88-8723de
286 $(call KernelPackage/mac80211/Default)
287 TITLE:=Realtek RTL8723DE support
288 DEPENDS+= +kmod-rtw88-pci +kmod-rtw88-8723d
289 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtw88/rtw88_8723de.ko
290 AUTOLOAD:=$(call AutoProbe,rtw88_8723)
291 endef
292
293 define KernelPackage/rtl8723bs
294 $(call KernelPackage/mac80211/Default)
295 TITLE:=Realtek RTL8723BS SDIO Wireless LAN NIC driver (staging)
296 DEPENDS+=+kmod-mmc +kmod-mac80211
297 FILES:=$(PKG_BUILD_DIR)/drivers/staging/rtl8723bs/r8723bs.ko
298 AUTOLOAD:=$(call AutoProbe,r8723bs)
299 endef
300
301 define KernelPackage/rtl8723bs/description
302 This option enables support for RTL8723BS SDIO drivers, such as the wifi found
303 on the 1st gen Intel Compute Stick, the CHIP and many other Intel Atom and ARM
304 based devices.
305 endef