ath79: update WA/XC devices UBNT_VERSION to 8.7.4
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / ath.mk
1 PKG_DRIVERS += \
2 ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k ath10k-smallbuffers \
3 ath11k ath11k-ahb ath11k-pci carl9170 owl-loader ar5523 wil6210
4
5 PKG_CONFIG_DEPENDS += \
6 CONFIG_PACKAGE_ATH_DEBUG \
7 CONFIG_PACKAGE_ATH_DFS \
8 CONFIG_PACKAGE_ATH_SPECTRAL \
9 CONFIG_PACKAGE_ATH_DYNACK \
10 CONFIG_ATH9K_HWRNG \
11 CONFIG_ATH9K_SUPPORT_PCOEM \
12 CONFIG_ATH9K_TX99 \
13 CONFIG_ATH10K_LEDS \
14 CONFIG_ATH10K_THERMAL \
15 CONFIG_ATH11K_THERMAL \
16 CONFIG_ATH_USER_REGD
17
18 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
19 config-y += \
20 ATH9K_DEBUGFS \
21 ATH9K_HTC_DEBUGFS \
22 ATH10K_DEBUGFS \
23 ATH11K_DEBUGFS \
24 CARL9170_DEBUGFS \
25 ATH5K_DEBUG \
26 ATH6KL_DEBUG \
27 WIL6210_DEBUGFS
28 endif
29
30 ifdef CONFIG_PACKAGE_MAC80211_TRACING
31 config-y += \
32 ATH10K_TRACING \
33 ATH11K_TRACING \
34 ATH6KL_TRACING \
35 ATH_TRACEPOINTS \
36 ATH5K_TRACER \
37 WIL6210_TRACING
38 endif
39
40 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
41 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH11K_DEBUG ATH9K_STATION_STATISTICS
42 config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
43 config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL ATH11K_SPECTRAL
44 config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
45 config-$(call config_package,ath9k) += ATH9K
46 config-$(call config_package,ath9k-common) += ATH9K_COMMON
47 config-$(call config_package,owl-loader) += ATH9K_PCI_NO_EEPROM
48 config-$(CONFIG_TARGET_ath79) += ATH9K_AHB
49 config-$(CONFIG_TARGET_ipq40xx) += ATH10K_AHB
50 config-$(CONFIG_PCI) += ATH9K_PCI
51 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD ATH_REG_DYNAMIC_USER_REG_HINTS
52 config-$(CONFIG_ATH9K_HWRNG) += ATH9K_HWRNG
53 config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
54 config-$(CONFIG_ATH9K_TX99) += ATH9K_TX99
55 config-$(CONFIG_ATH9K_UBNTHSR) += ATH9K_UBNTHSR
56 config-$(CONFIG_ATH10K_LEDS) += ATH10K_LEDS
57 config-$(CONFIG_ATH10K_THERMAL) += ATH10K_THERMAL
58 config-$(CONFIG_ATH11K_THERMAL) += ATH11K_THERMAL
59
60 config-$(call config_package,ath9k-htc) += ATH9K_HTC
61 config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
62 config-$(call config_package,ath10k-smallbuffers) += ATH10K ATH10K_PCI ATH10K_SMALLBUFFERS
63 config-$(call config_package,ath11k) += ATH11K
64 config-$(call config_package,ath11k-ahb) += ATH11K_AHB
65 config-$(call config_package,ath11k-pci) += ATH11K_PCI
66
67 config-$(call config_package,ath5k) += ATH5K
68 ifdef CONFIG_TARGET_ath25
69 config-y += ATH5K_AHB
70 else
71 config-y += ATH5K_PCI
72 endif
73
74 config-$(call config_package,ath6kl) += ATH6KL
75 config-$(call config_package,ath6kl-sdio) += ATH6KL_SDIO
76 config-$(call config_package,ath6kl-usb) += ATH6KL_USB
77
78 config-$(call config_package,carl9170) += CARL9170
79 config-$(call config_package,ar5523) += AR5523
80
81 config-$(call config_package,wil6210) += WIL6210
82
83 define KernelPackage/ath/config
84 if PACKAGE_kmod-ath
85 config ATH_USER_REGD
86 bool "Force Atheros drivers to respect the user's regdomain settings"
87 default y
88 help
89 Atheros' idea of regulatory handling is that the EEPROM of the card defines
90 the regulatory limits and the user is only allowed to restrict the settings
91 even further, even if the country allows frequencies or power levels that
92 are forbidden by the EEPROM settings.
93
94 Select this option if you want the driver to respect the user's decision about
95 regulatory settings.
96
97 config PACKAGE_ATH_DEBUG
98 bool "Atheros wireless debugging"
99 help
100 Say Y, if you want to debug atheros wireless drivers.
101 Only ath9k & ath10k & ath11k make use of this.
102
103 config PACKAGE_ATH_DFS
104 bool "Enable DFS support"
105 default y
106 help
107 Dynamic frequency selection (DFS) is required for most of the 5 GHz band
108 channels in Europe, US, and Japan.
109
110 Select this option if you want to use such channels.
111
112 config PACKAGE_ATH_SPECTRAL
113 bool "Atheros spectral scan support"
114 depends on PACKAGE_ATH_DEBUG
115 select KERNEL_RELAY
116 help
117 Say Y to enable access to the FFT/spectral data via debugfs.
118
119 config PACKAGE_ATH_DYNACK
120 bool "Enable Dynack support"
121 depends on PACKAGE_kmod-ath9k-common
122 help
123 Enables support for Dynamic ACK estimation, which allows the fastest possible speed
124 at any distance automatically by increasing/decreasing the max frame ACK time for
125 the most remote station detected. It can be enabled by using iw (iw phy0 set distance auto),
126 or by sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink.
127
128 Select this option if you want to enable this feature
129
130 endif
131 endef
132
133 define KernelPackage/ath
134 $(call KernelPackage/mac80211/Default)
135 TITLE:=Atheros common driver part
136 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79||TARGET_ath25 +kmod-mac80211
137 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
138 MENU:=1
139 endef
140
141 define KernelPackage/ath/description
142 This module contains some common parts needed by Atheros Wireless drivers.
143 endef
144
145 define KernelPackage/ath5k
146 $(call KernelPackage/mac80211/Default)
147 TITLE:=Atheros 5xxx wireless cards support
148 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
149 DEPENDS+= @(PCI_SUPPORT||TARGET_ath25) +kmod-ath
150 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
151 AUTOLOAD:=$(call AutoProbe,ath5k)
152 endef
153
154 define KernelPackage/ath5k/description
155 This module adds support for wireless adapters based on
156 Atheros 5xxx chipset.
157 endef
158
159 define KernelPackage/ath6kl
160 $(call KernelPackage/mac80211/Default)
161 TITLE:=Atheros FullMAC wireless devices (common code for ath6kl_sdio and ath6kl_usb)
162 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
163 HIDDEN:=1
164 DEPENDS+= +kmod-ath
165 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_core.ko
166 endef
167
168 define KernelPackage/ath6kl-sdio
169 $(call KernelPackage/mac80211/Default)
170 TITLE:=Atheros 802.11n SDIO wireless cards support
171 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
172 DEPENDS+= +kmod-mmc +kmod-ath6kl
173 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko
174 AUTOLOAD:=$(call AutoProbe,ath6kl_sdio)
175 endef
176
177 define KernelPackage/ath6kl-sdio/description
178 This module adds support for wireless adapters based on
179 Atheros IEEE 802.11n AR6003 and AR6004 family of chipsets.
180 endef
181
182 define KernelPackage/ath6kl-usb
183 $(call KernelPackage/mac80211/Default)
184 TITLE:=Atheros 802.11n USB wireless cards support
185 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
186 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-ath6kl
187 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_usb.ko
188 AUTOLOAD:=$(call AutoProbe,ath6kl_usb)
189 endef
190
191 define KernelPackage/ath6kl-usb/description
192 This module adds support for wireless adapters based on the
193 Atheros IEEE 802.11n AR6004 chipset.
194 endef
195
196 define KernelPackage/ath9k-common
197 $(call KernelPackage/mac80211/Default)
198 TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
199 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
200 HIDDEN:=1
201 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79 +kmod-ath +kmod-random-core
202 FILES:= \
203 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
204 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
205 endef
206
207 define KernelPackage/ath9k
208 $(call KernelPackage/mac80211/Default)
209 TITLE:=Atheros 802.11n PCI wireless cards support
210 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
211 DEPENDS+= @PCI_SUPPORT||TARGET_ath79 +kmod-ath9k-common
212 FILES:= \
213 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
214 AUTOLOAD:=$(call AutoProbe,ath9k)
215 endef
216
217 define KernelPackage/ath9k/description
218 This module adds support for wireless adapters based on
219 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
220 endef
221
222 define KernelPackage/ath9k/config
223
224 config ATH9K_HWRNG
225 bool "Add wireless noise as source of randomness to kernel entropy pool"
226 depends on PACKAGE_kmod-ath9k
227 select PACKAGE_kmod-random-core
228 default y
229
230 config ATH9K_SUPPORT_PCOEM
231 bool "Support chips used in PC OEM cards"
232 depends on PACKAGE_kmod-ath9k
233 default y if (x86_64 || i386)
234
235 config ATH9K_TX99
236 bool "Enable TX99 support (WARNING: testing only, breaks normal operation!)"
237 depends on PACKAGE_kmod-ath9k
238
239 config ATH9K_UBNTHSR
240 bool "Support for Ubiquiti UniFi Outdoor+ access point"
241 depends on PACKAGE_kmod-ath9k && TARGET_ath79
242 default y
243
244 endef
245
246 define KernelPackage/ath9k-htc
247 $(call KernelPackage/mac80211/Default)
248 TITLE:=Atheros 802.11n USB device support
249 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
250 DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core +ath9k-htc-firmware
251 FILES:= \
252 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
253 AUTOLOAD:=$(call AutoProbe,ath9k_htc)
254 endef
255
256 define KernelPackage/ath9k-htc/description
257 This module adds support for wireless adapters based on
258 Atheros USB AR9271 and AR7010 family of chipsets.
259 endef
260
261 define KernelPackage/ath10k
262 $(call KernelPackage/mac80211/Default)
263 TITLE:=Atheros 802.11ac wireless cards support
264 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath10k
265 DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11AC_SUPPORT \
266 +ATH10K_THERMAL:kmod-hwmon-core +ATH10K_THERMAL:kmod-thermal
267 FILES:= \
268 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
269 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
270 AUTOLOAD:=$(call AutoProbe,ath10k_core ath10k_pci)
271 MODPARAMS.ath10k_core:=frame_mode=2
272 VARIANT:=regular
273 endef
274
275 define KernelPackage/ath10k/description
276 This module adds support for wireless adapters based on
277 Atheros IEEE 802.11ac family of chipsets. For now only
278 PCI is supported.
279 endef
280
281 define KernelPackage/ath10k/config
282
283 config ATH10K_LEDS
284 bool "Enable LED support"
285 default y
286 depends on PACKAGE_kmod-ath10k || PACKAGE_kmod-ath10k-smallbuffers
287
288 config ATH10K_THERMAL
289 bool "Enable thermal sensors and throttling support"
290 depends on PACKAGE_kmod-ath10k || PACKAGE_kmod-ath10k-smallbuffers
291
292 endef
293
294 define KernelPackage/ath10k-smallbuffers
295 $(call KernelPackage/ath10k)
296 TITLE+= (small buffers for low-RAM devices)
297 VARIANT:=smallbuffers
298 endef
299
300 define KernelPackage/ath11k
301 $(call KernelPackage/mac80211/Default)
302 TITLE:=Qualcomm 802.11ax wireless chipset support (common code)
303 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath11k
304 DEPENDS+= +kmod-ath +@DRIVER_11AC_SUPPORT +@DRIVER_11AX_SUPPORT \
305 +kmod-crypto-michael-mic +ATH11K_THERMAL:kmod-hwmon-core +ATH11K_THERMAL:kmod-thermal
306 FILES:=$(PKG_BUILD_DIR)/drivers/soc/qcom/qmi_helpers.ko \
307 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath11k/ath11k.ko
308 endef
309
310 define KernelPackage/ath11k/description
311 This module adds support for Qualcomm Technologies 802.11ax family of
312 chipsets.
313 endef
314
315 define KernelPackage/ath11k/config
316
317 config ATH11K_THERMAL
318 bool "Enable thermal sensors and throttling support"
319 depends on PACKAGE_kmod-ath11k
320 default y if TARGET_qualcommax
321
322 endef
323
324 define KernelPackage/ath11k-ahb
325 $(call KernelPackage/mac80211/Default)
326 TITLE:=Qualcomm 802.11ax AHB wireless chipset support
327 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath11k
328 DEPENDS+= @TARGET_qualcommax +kmod-ath11k +kmod-qrtr-smd
329 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath11k/ath11k_ahb.ko
330 AUTOLOAD:=$(call AutoProbe,ath11k_ahb)
331 endef
332
333 define KernelPackage/ath11k-ahb/description
334 This module adds support for Qualcomm Technologies 802.11ax family of
335 chipsets with AHB bus.
336 endef
337
338 define KernelPackage/ath11k-pci
339 $(call KernelPackage/mac80211/Default)
340 TITLE:=Qualcomm 802.11ax PCI wireless chipset support
341 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath11k
342 DEPENDS+= @PCI_SUPPORT +kmod-qrtr-mhi +kmod-ath11k
343 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath11k/ath11k_pci.ko
344 AUTOLOAD:=$(call AutoProbe,ath11k_pci)
345 endef
346
347 define KernelPackage/ath11k-pci/description
348 This module adds support for Qualcomm Technologies 802.11ax family of
349 chipsets with PCI bus.
350 endef
351
352 define KernelPackage/carl9170
353 $(call KernelPackage/mac80211/Default)
354 TITLE:=Driver for Atheros AR9170 USB sticks
355 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +carl9170-firmware
356 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
357 AUTOLOAD:=$(call AutoProbe,carl9170)
358 endef
359
360 define KernelPackage/owl-loader
361 $(call KernelPackage/mac80211/Default)
362 TITLE:=Owl loader for initializing Atheros PCI(e) Wifi chips
363 DEPENDS:=@PCI_SUPPORT +kmod-ath9k
364 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.ko
365 AUTOLOAD:=$(call AutoProbe,ath9k_pci_owl_loader)
366 endef
367
368 define KernelPackage/owl-loader/description
369 Kernel module that helps to initialize certain Qualcomm
370 Atheros' PCI(e) Wifi chips, which have the init data
371 (which contains the PCI device ID for example) stored
372 together with the calibration data in the file system.
373
374 This is necessary for devices like the Cisco Meraki Z1.
375 endef
376
377 define KernelPackage/ar5523
378 $(call KernelPackage/mac80211/Default)
379 TITLE:=Driver for Atheros AR5523 USB sticks
380 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core
381 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar5523/ar5523.ko
382 AUTOLOAD:=$(call AutoProbe,ar5523)
383 endef
384
385 define KernelPackage/wil6210
386 $(call KernelPackage/mac80211/Default)
387 TITLE:=QCA/Wilocity 60g WiFi card wil6210 support
388 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +wil6210-firmware
389 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/wil6210/wil6210.ko
390 AUTOLOAD:=$(call AutoProbe,wil6210)
391 endef