ath25: drop target
[openwrt/openwrt.git] / package / kernel / mac80211 / ath.mk
1 PKG_DRIVERS += \
2 ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k \
3 carl9170 owl-loader ar5523
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_ATH_USER_REGD
16
17 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
18 config-y += \
19 ATH9K_DEBUGFS \
20 ATH9K_HTC_DEBUGFS \
21 ATH10K_DEBUGFS \
22 CARL9170_DEBUGFS \
23 ATH5K_DEBUG \
24 ATH6KL_DEBUG
25 endif
26
27 ifdef CONFIG_PACKAGE_MAC80211_TRACING
28 config-y += \
29 ATH10K_TRACING \
30 ATH6KL_TRACING \
31 ATH_TRACEPOINTS \
32 ATH5K_TRACER
33 endif
34
35 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON ATH_REG_DYNAMIC_USER_REG_HINTS
36 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH9K_STATION_STATISTICS
37 config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
38 config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL
39 config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
40 config-$(call config_package,ath9k) += ATH9K
41 config-$(call config_package,ath9k-common) += ATH9K_COMMON
42 config-$(call config_package,owl-loader) += ATH9K_PCI_NO_EEPROM
43 config-$(CONFIG_TARGET_ath79) += ATH9K_AHB
44 config-$(CONFIG_TARGET_ipq40xx) += ATH10K_AHB
45 config-$(CONFIG_PCI) += ATH9K_PCI
46 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
47 config-$(CONFIG_ATH9K_HWRNG) += ATH9K_HWRNG
48 config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
49 config-$(CONFIG_ATH9K_TX99) += ATH9K_TX99
50 config-$(CONFIG_ATH9K_UBNTHSR) += ATH9K_UBNTHSR
51 config-$(CONFIG_ATH10K_LEDS) += ATH10K_LEDS
52 config-$(CONFIG_ATH10K_THERMAL) += ATH10K_THERMAL
53
54 config-$(call config_package,ath9k-htc) += ATH9K_HTC
55 config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
56
57 config-$(call config_package,ath5k) += ATH5K
58 config-y += ATH5K_PCI
59
60 config-$(call config_package,ath6kl) += ATH6KL
61 config-$(call config_package,ath6kl-sdio) += ATH6KL_SDIO
62 config-$(call config_package,ath6kl-usb) += ATH6KL_USB
63
64 config-$(call config_package,carl9170) += CARL9170
65 config-$(call config_package,ar5523) += AR5523
66
67 define KernelPackage/ath/config
68 if PACKAGE_kmod-ath
69 config ATH_USER_REGD
70 bool "Force Atheros drivers to respect the user's regdomain settings"
71 default y
72 help
73 Atheros' idea of regulatory handling is that the EEPROM of the card defines
74 the regulatory limits and the user is only allowed to restrict the settings
75 even further, even if the country allows frequencies or power levels that
76 are forbidden by the EEPROM settings.
77
78 Select this option if you want the driver to respect the user's decision about
79 regulatory settings.
80
81 config PACKAGE_ATH_DEBUG
82 bool "Atheros wireless debugging"
83 help
84 Say Y, if you want to debug atheros wireless drivers.
85 Only ath9k & ath10k make use of this.
86
87 config PACKAGE_ATH_DFS
88 bool "Enable DFS support"
89 default y
90 help
91 Dynamic frequency selection (DFS) is required for most of the 5 GHz band
92 channels in Europe, US, and Japan.
93
94 Select this option if you want to use such channels.
95
96 config PACKAGE_ATH_SPECTRAL
97 bool "Atheros spectral scan support"
98 depends on PACKAGE_ATH_DEBUG
99 select KERNEL_RELAY
100 help
101 Say Y to enable access to the FFT/spectral data via debugfs.
102
103 config PACKAGE_ATH_DYNACK
104 bool "Enable Dynack support"
105 depends on PACKAGE_kmod-ath9k-common
106 help
107 Enables support for Dynamic ACK estimation, which allows the fastest possible speed
108 at any distance automatically by increasing/decreasing the max frame ACK time for
109 the most remote station detected. It can be enabled by using iw (iw phy0 set distance auto),
110 or by sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink.
111
112 Select this option if you want to enable this feature
113
114 endif
115 endef
116
117 define KernelPackage/ath
118 $(call KernelPackage/mac80211/Default)
119 TITLE:=Atheros common driver part
120 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79 +kmod-mac80211
121 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
122 MENU:=1
123 endef
124
125 define KernelPackage/ath/description
126 This module contains some common parts needed by Atheros Wireless drivers.
127 endef
128
129 define KernelPackage/ath5k
130 $(call KernelPackage/mac80211/Default)
131 TITLE:=Atheros 5xxx wireless cards support
132 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
133 DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11W_SUPPORT
134 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
135 AUTOLOAD:=$(call AutoProbe,ath5k)
136 endef
137
138 define KernelPackage/ath5k/description
139 This module adds support for wireless adapters based on
140 Atheros 5xxx chipset.
141 endef
142
143 define KernelPackage/ath6kl
144 $(call KernelPackage/mac80211/Default)
145 TITLE:=Atheros FullMAC wireless devices (common code for ath6kl_sdio and ath6kl_usb)
146 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
147 HIDDEN:=1
148 DEPENDS+= +kmod-ath +@DRIVER_11N_SUPPORT
149 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_core.ko
150 endef
151
152 define KernelPackage/ath6kl-sdio
153 $(call KernelPackage/mac80211/Default)
154 TITLE:=Atheros 802.11n SDIO wireless cards support
155 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
156 DEPENDS+= +kmod-mmc +kmod-ath6kl
157 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko
158 AUTOLOAD:=$(call AutoProbe,ath6kl_sdio)
159 endef
160
161 define KernelPackage/ath6kl-sdio/description
162 This module adds support for wireless adapters based on
163 Atheros IEEE 802.11n AR6003 and AR6004 family of chipsets.
164 endef
165
166 define KernelPackage/ath6kl-usb
167 $(call KernelPackage/mac80211/Default)
168 TITLE:=Atheros 802.11n USB wireless cards support
169 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
170 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-ath6kl
171 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_usb.ko
172 AUTOLOAD:=$(call AutoProbe,ath6kl_usb)
173 endef
174
175 define KernelPackage/ath6kl-usb/description
176 This module adds support for wireless adapters based on the
177 Atheros IEEE 802.11n AR6004 chipset.
178 endef
179
180 define KernelPackage/ath9k-common
181 $(call KernelPackage/mac80211/Default)
182 TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
183 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
184 HIDDEN:=1
185 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ath79 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT
186 FILES:= \
187 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
188 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
189 endef
190
191 define KernelPackage/ath9k
192 $(call KernelPackage/mac80211/Default)
193 TITLE:=Atheros 802.11n PCI wireless cards support
194 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
195 DEPENDS+= @PCI_SUPPORT||TARGET_ath79 +kmod-ath9k-common
196 FILES:= \
197 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
198 AUTOLOAD:=$(call AutoProbe,ath9k)
199 endef
200
201 define KernelPackage/ath9k/description
202 This module adds support for wireless adapters based on
203 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
204 endef
205
206 define KernelPackage/ath9k/config
207
208 config ATH9K_HWRNG
209 bool "Add wireless noise as source of randomness to kernel entropy pool"
210 depends on PACKAGE_kmod-ath9k
211 select PACKAGE_kmod-random-core
212 default n
213
214 config ATH9K_SUPPORT_PCOEM
215 bool "Support chips used in PC OEM cards"
216 depends on PACKAGE_kmod-ath9k
217
218 config ATH9K_TX99
219 bool "Enable TX99 support (WARNING: testing only, breaks normal operation!)"
220 depends on PACKAGE_kmod-ath9k
221
222 config ATH9K_UBNTHSR
223 bool "Support for Ubiquiti UniFi Outdoor+ access point"
224 depends on PACKAGE_kmod-ath9k && TARGET_ath79
225 default y
226
227 endef
228
229 define KernelPackage/ath9k-htc
230 $(call KernelPackage/mac80211/Default)
231 TITLE:=Atheros 802.11n USB device support
232 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
233 DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core +ath9k-htc-firmware
234 FILES:= \
235 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
236 AUTOLOAD:=$(call AutoProbe,ath9k_htc)
237 endef
238
239 define KernelPackage/ath9k-htc/description
240 This module adds support for wireless adapters based on
241 Atheros USB AR9271 and AR7010 family of chipsets.
242 endef
243
244 define KernelPackage/ath10k
245 $(call KernelPackage/mac80211/Default)
246 TITLE:=Atheros 802.11ac wireless cards support
247 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath10k
248 DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +@DRIVER_11W_SUPPORT \
249 +ATH10K_THERMAL:kmod-hwmon-core +ATH10K_THERMAL:kmod-thermal
250 FILES:= \
251 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
252 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
253 AUTOLOAD:=$(call AutoProbe,ath10k_pci)
254 endef
255
256 define KernelPackage/ath10k/description
257 This module adds support for wireless adapters based on
258 Atheros IEEE 802.11ac family of chipsets. For now only
259 PCI is supported.
260 endef
261
262 define KernelPackage/ath10k/config
263
264 config ATH10K_LEDS
265 bool "Enable LED support"
266 default y
267 depends on PACKAGE_kmod-ath10k
268
269 config ATH10K_THERMAL
270 bool "Enable thermal sensors and throttling support"
271 depends on PACKAGE_kmod-ath10k
272
273 endef
274
275 define KernelPackage/carl9170
276 $(call KernelPackage/mac80211/Default)
277 TITLE:=Driver for Atheros AR9170 USB sticks
278 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT +carl9170-firmware
279 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
280 AUTOLOAD:=$(call AutoProbe,carl9170)
281 endef
282
283 define KernelPackage/owl-loader
284 $(call KernelPackage/mac80211/Default)
285 TITLE:=Owl loader for initializing Atheros PCI(e) Wifi chips
286 DEPENDS:=@PCI_SUPPORT +kmod-ath9k
287 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_pci_owl_loader.ko
288 AUTOLOAD:=$(call AutoProbe,ath9k_pci_owl_loader)
289 endef
290
291 define KernelPackage/owl-loader/description
292 Kernel module that helps to initialize certain Qualcomm
293 Atheros' PCI(e) Wifi chips, which have the init data
294 (which contains the PCI device ID for example) stored
295 together with the calibration data in the file system.
296
297 This is necessary for devices like the Cisco Meraki Z1.
298 endef
299
300 define KernelPackage/ar5523
301 $(call KernelPackage/mac80211/Default)
302 TITLE:=Driver for Atheros AR5523 USB sticks
303 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core
304 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar5523/ar5523.ko
305 AUTOLOAD:=$(call AutoProbe,ar5523)
306 endef