mac80211: move rt2x00 packaging code to ralink.mk
[openwrt/staging/wigyori.git] / package / kernel / mac80211 / Makefile
1 #
2 # Copyright (C) 2007-2015 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=mac80211
12
13 PKG_VERSION:=4.19-rc5-1
14 PKG_RELEASE:=1
15 PKG_SOURCE_URL:=https://mirrors.edge.kernel.org/pub/linux/kernel/projects/backports/stable/v4.19-rc5/
16 PKG_HASH:=5b61e64ea79d22bbac9e8612d5d5485974f223de00d4ec250b0faf4b7baf9957
17
18 PKG_SOURCE:=backports-$(PKG_VERSION).tar.xz
19 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/backports-$(PKG_VERSION)
20 PKG_BUILD_PARALLEL:=1
21
22 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
23
24 PKG_DRIVERS = \
25 adm8211 \
26 airo \
27 ath ath5k ath6kl ath6kl-sdio ath6kl-usb ath9k ath9k-common ath9k-htc ath10k \
28 b43 b43legacy brcmsmac brcmfmac brcmutil \
29 carl9170 \
30 hermes hermes-pci hermes-pcmcia hermes-plx\
31 iwl-legacy iwl3945 iwl4965 iwlwifi \
32 lib80211 \
33 libipw ipw2100 ipw2200 \
34 libertas-sdio libertas-usb libertas-spi \
35 mac80211-hwsim \
36 mt7601u \
37 mwl8k mwifiex-pcie mwifiex-sdio \
38 p54-common p54-pci p54-spi p54-usb \
39 rsi91x rsi91x-usb rsi91x-sdio\
40 rtl8180 rtl8187 \
41 rtlwifi rtlwifi-pci rtlwifi-btcoexist rtlwifi-usb rtl8192c-common \
42 rtl8192ce rtl8192se rtl8192de rtl8192cu rtl8821ae \
43 rtl8xxxu \
44 wlcore wl12xx wl18xx \
45 zd1211rw
46
47 PKG_CONFIG_DEPENDS:= \
48 CONFIG_PACKAGE_kmod-mac80211 \
49 CONFIG_PACKAGE_MAC80211_DEBUGFS \
50 CONFIG_PACKAGE_MAC80211_MESH \
51 CONFIG_PACKAGE_MAC80211_TRACING \
52 CONFIG_PACKAGE_ATH_DEBUG \
53 CONFIG_PACKAGE_ATH_DFS \
54 CONFIG_PACKAGE_ATH_SPECTRAL \
55 CONFIG_PACKAGE_ATH_DYNACK \
56 CONFIG_PACKAGE_B43_DEBUG \
57 CONFIG_PACKAGE_B43_PIO \
58 CONFIG_PACKAGE_B43_PHY_G \
59 CONFIG_PACKAGE_B43_PHY_N \
60 CONFIG_PACKAGE_B43_PHY_LP \
61 CONFIG_PACKAGE_B43_PHY_HT \
62 CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB \
63 CONFIG_PACKAGE_B43_BUSES_BCMA \
64 CONFIG_PACKAGE_B43_BUSES_SSB \
65 CONFIG_PACKAGE_BRCM80211_DEBUG \
66 CONFIG_PACKAGE_IWLWIFI_DEBUG \
67 CONFIG_PACKAGE_IWLWIFI_DEBUGFS \
68 CONFIG_PACKAGE_RTLWIFI_DEBUG \
69 CONFIG_ATH9K_SUPPORT_PCOEM \
70 CONFIG_ATH9K_TX99 \
71 CONFIG_ATH10K_LEDS \
72 CONFIG_ATH10K_THERMAL \
73 CONFIG_ATH_USER_REGD \
74
75 include $(INCLUDE_DIR)/package.mk
76
77 WMENU:=Wireless Drivers
78
79 define KernelPackage/mac80211/Default
80 SUBMENU:=$(WMENU)
81 URL:=https://wireless.wiki.kernel.org/
82 MAINTAINER:=Felix Fietkau <nbd@nbd.name>
83 endef
84
85 config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
86
87 config-y:= \
88 WLAN \
89 NL80211_TESTMODE \
90 CFG80211_WEXT \
91 CFG80211_CERTIFICATION_ONUS \
92 MAC80211_RC_MINSTREL \
93 MAC80211_RC_MINSTREL_HT \
94 MAC80211_RC_MINSTREL_VHT \
95 MAC80211_RC_DEFAULT_MINSTREL \
96 WLAN_VENDOR_ADMTEK \
97 WLAN_VENDOR_ATH \
98 WLAN_VENDOR_ATMEL \
99 WLAN_VENDOR_BROADCOM \
100 WLAN_VENDOR_CISCO \
101 WLAN_VENDOR_INTEL \
102 WLAN_VENDOR_INTERSIL \
103 WLAN_VENDOR_MARVELL \
104 WLAN_VENDOR_MEDIATEK \
105 WLAN_VENDOR_RALINK \
106 WLAN_VENDOR_REALTEK \
107 WLAN_VENDOR_RSI \
108 WLAN_VENDOR_ST \
109 WLAN_VENDOR_TI \
110 WLAN_VENDOR_ZYDAS \
111
112 config-$(call config_package,cfg80211) += CFG80211
113
114 config-$(call config_package,mac80211) += MAC80211
115 config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
116
117 include ralink.mk
118
119 PKG_CONFIG_DEPENDS += \
120 $(patsubst %,CONFIG_PACKAGE_kmod-%,$(PKG_DRIVERS))
121
122 define KernelPackage/cfg80211
123 $(call KernelPackage/mac80211/Default)
124 TITLE:=cfg80211 - wireless configuration API
125 DEPENDS+= +iw +wireless-regdb
126 FILES:= \
127 $(PKG_BUILD_DIR)/compat/compat.ko \
128 $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
129 endef
130
131 define KernelPackage/cfg80211/description
132 cfg80211 is the Linux wireless LAN (802.11) configuration API.
133 endef
134
135 define KernelPackage/mac80211
136 $(call KernelPackage/mac80211/Default)
137 TITLE:=Linux 802.11 Wireless Networking Stack
138 # +kmod-crypto-cmac is a runtime only dependency of net/mac80211/aes_cmac.c
139 DEPENDS+= +kmod-cfg80211 +hostapd-common
140 KCONFIG:=\
141 CONFIG_AVERAGE=y
142 FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.ko
143 MENU:=1
144 endef
145
146 define KernelPackage/mac80211/config
147 if PACKAGE_kmod-mac80211
148
149 config PACKAGE_MAC80211_DEBUGFS
150 bool "Export mac80211 internals in DebugFS"
151 select KERNEL_DEBUG_FS
152 default y
153 help
154 Select this to see extensive information about
155 the internal state of mac80211 in debugfs.
156
157 config PACKAGE_MAC80211_TRACING
158 bool "Enable tracing (mac80211 and supported drivers)"
159 select KERNEL_FTRACE
160 select KERNEL_ENABLE_DEFAULT_TRACERS
161 default n
162 help
163 Select this to enable tracing of mac80211 and
164 related wifi drivers (using trace-cmd).
165
166 config PACKAGE_MAC80211_MESH
167 bool "Enable 802.11s mesh support"
168 default y
169
170 endif
171 endef
172
173 define KernelPackage/mac80211/description
174 Generic IEEE 802.11 Networking Stack (mac80211)
175 endef
176
177 define KernelPackage/adm8211
178 $(call KernelPackage/mac80211/Default)
179 TITLE:=ADMTek 8211 support
180 DEPENDS+=@PCI_SUPPORT +kmod-mac80211 +kmod-eeprom-93cx6
181 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/admtek/adm8211.ko
182 AUTOLOAD:=$(call AutoProbe,adm8211)
183 endef
184
185 define KernelPackage/airo
186 $(call KernelPackage/mac80211/Default)
187 TITLE:=Cisco Aironet driver
188 DEPENDS+=@PCI_SUPPORT +@DRIVER_WEXT_SUPPORT +kmod-cfg80211 @TARGET_x86
189 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/cisco/airo.ko
190 AUTOLOAD:=$(call AutoProbe,airo)
191 endef
192
193 define KernelPackage/airo/description
194 Kernel support for Cisco Aironet cards
195 endef
196
197 define KernelPackage/ath/config
198 if PACKAGE_kmod-ath
199 config ATH_USER_REGD
200 bool "Force Atheros drivers to respect the user's regdomain settings"
201 default y
202 help
203 Atheros' idea of regulatory handling is that the EEPROM of the card defines
204 the regulatory limits and the user is only allowed to restrict the settings
205 even further, even if the country allows frequencies or power levels that
206 are forbidden by the EEPROM settings.
207
208 Select this option if you want the driver to respect the user's decision about
209 regulatory settings.
210
211 config PACKAGE_ATH_DEBUG
212 bool "Atheros wireless debugging"
213 help
214 Say Y, if you want to debug atheros wireless drivers.
215 Only ath9k & ath10k make use of this.
216
217 config PACKAGE_ATH_DFS
218 bool "Enable DFS support"
219 default y
220 help
221 Dynamic frequency selection (DFS) is required for most of the 5 GHz band
222 channels in Europe, US, and Japan.
223
224 Select this option if you want to use such channels.
225
226 config PACKAGE_ATH_SPECTRAL
227 bool "Atheros spectral scan support"
228 depends on PACKAGE_ATH_DEBUG
229 select KERNEL_RELAY
230 help
231 Say Y to enable access to the FFT/spectral data via debugfs.
232
233 config PACKAGE_ATH_DYNACK
234 bool "Enable Dynack support"
235 depends on PACKAGE_kmod-ath9k-common
236 help
237 Enables support for Dynamic ACK estimation, which allows the fastest possible speed
238 at any distance automatically by increasing/decreasing the max frame ACK time for
239 the most remote station detected. It can be enabled by using iw (iw phy0 set distance auto),
240 or by sending the NL80211_ATTR_WIPHY_DYN_ACK flag to mac80211 driver using netlink.
241
242 Select this option if you want to enable this feature
243
244 endif
245 endef
246
247 define KernelPackage/ath
248 $(call KernelPackage/mac80211/Default)
249 TITLE:=Atheros common driver part
250 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx||TARGET_ath79||TARGET_ath25 +kmod-mac80211
251 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
252 MENU:=1
253 endef
254
255 define KernelPackage/ath/description
256 This module contains some common parts needed by Atheros Wireless drivers.
257 endef
258
259 define KernelPackage/ath5k
260 $(call KernelPackage/mac80211/Default)
261 TITLE:=Atheros 5xxx wireless cards support
262 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
263 DEPENDS+= @PCI_SUPPORT||@TARGET_ath25 +kmod-ath +@DRIVER_11W_SUPPORT
264 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
265 AUTOLOAD:=$(call AutoProbe,ath5k)
266 endef
267
268 define KernelPackage/ath5k/description
269 This module adds support for wireless adapters based on
270 Atheros 5xxx chipset.
271 endef
272
273 define KernelPackage/ath6kl
274 $(call KernelPackage/mac80211/Default)
275 TITLE:=Atheros FullMAC wireless devices (common code for ath6kl_sdio and ath6kl_usb)
276 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
277 HIDDEN:=1
278 DEPENDS+= +kmod-ath +@DRIVER_11N_SUPPORT
279 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_core.ko
280 endef
281
282 define KernelPackage/ath6kl-sdio
283 $(call KernelPackage/mac80211/Default)
284 TITLE:=Atheros 802.11n SDIO wireless cards support
285 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
286 DEPENDS+= +kmod-mmc +kmod-ath6kl
287 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko
288 AUTOLOAD:=$(call AutoProbe,ath6kl_sdio)
289 endef
290
291 define KernelPackage/ath6kl-sdio/description
292 This module adds support for wireless adapters based on
293 Atheros IEEE 802.11n AR6003 and AR6004 family of chipsets.
294 endef
295
296 define KernelPackage/ath6kl-usb
297 $(call KernelPackage/mac80211/Default)
298 TITLE:=Atheros 802.11n USB wireless cards support
299 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath6kl
300 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-ath6kl
301 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath6kl/ath6kl_usb.ko
302 AUTOLOAD:=$(call AutoProbe,ath6kl_usb)
303 endef
304
305 define KernelPackage/ath6kl-usb/description
306 This module adds support for wireless adapters based on the
307 Atheros IEEE 802.11n AR6004 chipset.
308 endef
309
310 define KernelPackage/ath9k-common
311 $(call KernelPackage/mac80211/Default)
312 TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
313 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
314 HIDDEN:=1
315 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx||TARGET_ath79 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT
316 FILES:= \
317 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
318 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
319 endef
320
321 define KernelPackage/ath9k
322 $(call KernelPackage/mac80211/Default)
323 TITLE:=Atheros 802.11n PCI wireless cards support
324 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
325 DEPENDS+= @PCI_SUPPORT||TARGET_ar71xx||TARGET_ath79 +kmod-ath9k-common
326 FILES:= \
327 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
328 AUTOLOAD:=$(call AutoProbe,ath9k)
329 endef
330
331 define KernelPackage/ath9k/description
332 This module adds support for wireless adapters based on
333 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
334 endef
335
336 define KernelPackage/ath9k/config
337
338 config ATH9K_SUPPORT_PCOEM
339 bool "Support chips used in PC OEM cards"
340 depends on PACKAGE_kmod-ath9k
341
342 config ATH9K_TX99
343 bool "Enable TX99 support (WARNING: testing only, breaks normal operation!)"
344 depends on PACKAGE_kmod-ath9k
345
346 config ATH9K_UBNTHSR
347 bool "Support for Ubiquiti UniFi Outdoor+ access point"
348 depends on PACKAGE_kmod-ath9k && (TARGET_ar71xx_generic||TARGET_ath79)
349 default y
350
351 endef
352
353 define KernelPackage/ath9k-htc
354 $(call KernelPackage/mac80211/Default)
355 TITLE:=Atheros 802.11n USB device support
356 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
357 DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core +ath9k-htc-firmware
358 FILES:= \
359 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
360 AUTOLOAD:=$(call AutoProbe,ath9k_htc)
361 endef
362
363 define KernelPackage/ath9k-htc/description
364 This module adds support for wireless adapters based on
365 Atheros USB AR9271 and AR7010 family of chipsets.
366 endef
367
368 define KernelPackage/ath10k
369 $(call KernelPackage/mac80211/Default)
370 TITLE:=Atheros 802.11ac wireless cards support
371 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath10k
372 DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +@DRIVER_11W_SUPPORT \
373 +ATH10K_THERMAL:kmod-hwmon-core +ATH10K_THERMAL:kmod-thermal
374 FILES:= \
375 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
376 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
377 AUTOLOAD:=$(call AutoProbe,ath10k_pci)
378 endef
379
380 define KernelPackage/ath10k/description
381 This module adds support for wireless adapters based on
382 Atheros IEEE 802.11ac family of chipsets. For now only
383 PCI is supported.
384 endef
385
386 define KernelPackage/ath10k/config
387
388 config ATH10K_LEDS
389 bool "Enable LED support"
390 default y
391 depends on PACKAGE_kmod-ath10k
392
393 config ATH10K_THERMAL
394 bool "Enable thermal sensors and throttling support"
395 depends on PACKAGE_kmod-ath10k
396
397 endef
398
399 #Broadcom firmware
400 ifneq ($(CONFIG_B43_FW_6_30),)
401 PKG_B43_FWV4_NAME:=broadcom-wl
402 PKG_B43_FWV4_VERSION:=6.30.163.46
403 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).wl_apsta.o
404 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
405 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
406 PKG_B43_FWV4_HASH:=a07c3b6b277833c7dbe61daa511f908cd66c5e2763eb7a0859abc36cd9335c2d
407 else
408 ifneq ($(CONFIG_B43_FW_5_10),)
409 PKG_B43_FWV4_NAME:=broadcom-wl
410 PKG_B43_FWV4_VERSION:=5.10.56.27.3
411 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
412 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
413 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
414 PKG_B43_FWV4_HASH:=26a8c370f48fc129d0731cfd751c36cae1419b0bc8ca35781126744e60eae009
415 else
416 ifneq ($(CONFIG_B43_FW_4_178),)
417 PKG_B43_FWV4_NAME:=broadcom-wl
418 PKG_B43_FWV4_VERSION:=4.178.10.4
419 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
420 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
421 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
422 PKG_B43_FWV4_HASH:=32f6ad98facbb9045646fdc8b54bb03086d204153253f9c65d0234a5d90ae53f
423 else
424 ifneq ($(CONFIG_B43_FW_5_100_138),)
425 PKG_B43_FWV4_NAME:=broadcom-wl
426 PKG_B43_FWV4_VERSION:=5.100.138
427 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
428 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
429 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
430 PKG_B43_FWV4_HASH:=f1e7067aac5b62b67b8b6e4c517990277804339ac16065eb13c731ff909ae46f
431 else
432 PKG_B43_FWV4_NAME:=broadcom-wl
433 PKG_B43_FWV4_VERSION:=4.150.10.5
434 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
435 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
436 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
437 PKG_B43_FWV4_HASH:=a9f4e276a4d8d3a1cd0f2eb87080ae89b77f0a7140f06d4e9e2135fc44fdd533
438 endif
439 endif
440 endif
441 endif
442 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
443 PKG_B43_FWV4_NAME:=broadcom-wl
444 PKG_B43_FWV4_VERSION:=5.2
445 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
446 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
447 PKG_B43_FWV4_SOURCE_URL:=http://netweb.ing.unibs.it/~openfwwf/firmware
448 PKG_B43_FWV4_HASH:=9de03320083201080b2e94b81637ac07a159cf4e6f3481383e1a217e627bc0dc
449 endif
450
451
452 define Download/b43
453 FILE:=$(PKG_B43_FWV4_SOURCE)
454 URL:=$(PKG_B43_FWV4_SOURCE_URL)
455 HASH:=$(PKG_B43_FWV4_HASH)
456 endef
457 $(eval $(call Download,b43))
458
459 define KernelPackage/b43
460 $(call KernelPackage/mac80211/Default)
461 TITLE:=Broadcom 43xx wireless support
462 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
463 KCONFIG:= \
464 CONFIG_HW_RANDOM=y
465 # Depend on PCI_SUPPORT to make sure we can select kmod-bcma or kmod-ssb
466 DEPENDS += \
467 @PCI_SUPPORT +kmod-mac80211 \
468 $(if $(CONFIG_PACKAGE_B43_USE_SSB),+kmod-ssb) \
469 $(if $(CONFIG_PACKAGE_B43_USE_BCMA),+kmod-bcma)
470 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/broadcom/b43/b43.ko
471 AUTOLOAD:=$(call AutoProbe,b43)
472 MENU:=1
473 endef
474
475 define KernelPackage/b43/config
476
477 config PACKAGE_B43_USE_SSB
478 select PACKAGE_kmod-ssb
479 tristate
480 depends on !TARGET_brcm47xx && !TARGET_brcm63xx
481 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
482 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_SSB
483
484 config PACKAGE_B43_USE_BCMA
485 select PACKAGE_kmod-bcma
486 tristate
487 depends on !TARGET_brcm47xx && !TARGET_bcm53xx
488 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
489 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA
490
491 if PACKAGE_kmod-b43
492
493 choice
494 prompt "b43 firmware version"
495 default B43_FW_5_100_138
496 help
497 This option allows you to select the version of the b43 firmware.
498
499 config B43_FW_4_150
500 bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
501 help
502 Old stable firmware for BCM43xx devices.
503
504 If unsure, select this.
505
506 config B43_FW_4_178
507 bool "Firmware 478.104 from driver 4.178.10.4"
508 help
509 Older firmware for BCM43xx devices.
510
511 If unsure, select the "stable" firmware.
512
513 config B43_FW_5_10
514 bool "Firmware 508.1084 from driver 5.10.56.27"
515 help
516 Older firmware for BCM43xx devices.
517
518 If unsure, select the "stable" firmware.
519
520 config B43_FW_5_100_138
521 bool "Firmware 666.2 from driver 5.100.138 (stable)"
522 help
523 The currently default firmware for BCM43xx devices.
524
525 This firmware currently gets most of the testing and is needed for some N-PHY devices.
526
527 If unsure, select the this firmware.
528
529 config B43_FW_6_30
530 bool "Firmware 784.2 from driver 6.30.163.46 (experimental)"
531 help
532 Newer experimental firmware for BCM43xx devices.
533
534 This firmware is mostly untested.
535
536 If unsure, select the "stable" firmware.
537
538 config B43_OPENFIRMWARE
539 bool "Open FirmWare for WiFi networks"
540 help
541 Opensource firmware for BCM43xx devices.
542
543 Do _not_ select this, unless you know what you are doing.
544 The Opensource firmware is not suitable for embedded devices, yet.
545 It does not support QoS, which is bad for AccessPoints.
546 It does not support hardware crypto acceleration, which is a showstopper
547 for embedded devices with low CPU resources.
548
549 If unsure, select the "stable" firmware.
550
551 endchoice
552
553 config B43_FW_SQUASH
554 bool "Remove unnecessary firmware files"
555 depends on !B43_OPENFIRMWARE
556 default y
557 help
558 This options allows you to remove unnecessary b43 firmware files
559 from the final rootfs image. This can reduce the rootfs size by
560 up to 200k.
561
562 If unsure, say Y.
563
564 config B43_FW_SQUASH_COREREVS
565 string "Core revisions to include"
566 depends on B43_FW_SQUASH
567 default "5,6,7,8,9,10,11,13,15" if TARGET_brcm47xx_legacy
568 default "16,28,29,30" if TARGET_brcm47xx_mips74k
569 default "5,6,7,8,9,10,11,13,15,16,28,29,30"
570 help
571 This is a comma seperated list of core revision numbers.
572
573 Example (keep files for rev5 only):
574 5
575
576 Example (keep files for rev5 and rev11):
577 5,11
578
579 config B43_FW_SQUASH_PHYTYPES
580 string "PHY types to include"
581 depends on B43_FW_SQUASH
582 default "G,N,LP" if TARGET_brcm47xx_legacy
583 default "N,HT" if TARGET_brcm47xx_mips74k
584 default "G,N,LP,HT"
585 help
586 This is a comma seperated list of PHY types:
587 A => A-PHY
588 AG => Dual A-PHY G-PHY
589 G => G-PHY
590 LP => LP-PHY
591 N => N-PHY
592 HT => HT-PHY
593 LCN => LCN-PHY
594 LCN40 => LCN40-PHY
595 AC => AC-PHY
596
597 Example (keep files for G-PHY only):
598 G
599
600 Example (keep files for G-PHY and N-PHY):
601 G,N
602
603 choice
604 prompt "Supported buses"
605 default PACKAGE_B43_BUSES_BCMA_AND_SSB
606 help
607 This allows choosing buses that b43 should support.
608
609 config PACKAGE_B43_BUSES_BCMA_AND_SSB
610 depends on !TARGET_brcm47xx_legacy && !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
611 bool "BCMA and SSB"
612
613 config PACKAGE_B43_BUSES_BCMA
614 depends on !TARGET_brcm47xx_legacy
615 bool "BCMA only"
616
617 config PACKAGE_B43_BUSES_SSB
618 depends on !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
619 bool "SSB only"
620
621 endchoice
622
623 config PACKAGE_B43_DEBUG
624 bool "Enable debug output and debugfs for b43"
625 default n
626 help
627 Enable additional debug output and runtime sanity checks for b43
628 and enables the debugfs interface.
629
630 If unsure, say N.
631
632 config PACKAGE_B43_PIO
633 bool "Enable support for PIO transfer mode"
634 default n
635 help
636 Enable support for using PIO instead of DMA. Unless you have DMA
637 transfer problems you don't need this.
638
639 If unsure, say N.
640
641 config PACKAGE_B43_PHY_G
642 bool "Enable support for G-PHYs"
643 default n if TARGET_brcm47xx_mips74k
644 default y
645 help
646 Enable support for G-PHY. This includes support for the following devices:
647 PCI: BCM4306, BCM4311, BCM4318
648 SoC: BCM5352E, BCM4712
649
650 If unsure, say Y.
651
652 config PACKAGE_B43_PHY_N
653 bool "Enable support for N-PHYs"
654 default y
655 help
656 Enable support for N-PHY. This includes support for the following devices:
657 PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
658 SoC: BCM4716, BCM4717, BCM4718
659
660 Currently only 11g speed is available.
661
662 If unsure, say Y.
663
664 config PACKAGE_B43_PHY_LP
665 bool "Enable support for LP-PHYs"
666 default n if TARGET_brcm47xx_mips74k
667 default y
668 help
669 Enable support for LP-PHY. This includes support for the following devices:
670 PCI: BCM4312
671 SoC: BCM5354
672
673 If unsure, say Y.
674
675 config PACKAGE_B43_PHY_HT
676 bool "Enable support for HT-PHYs"
677 default n if TARGET_brcm47xx_legacy
678 default y
679 help
680 Enable support for HT-PHY. This includes support for the following devices:
681 PCI: BCM4331
682
683 Currently only 11g speed is available.
684
685 If unsure, say Y.
686
687 config PACKAGE_B43_PHY_LCN
688 bool "Enable support for LCN-PHYs"
689 depends on BROKEN
690 default n
691 help
692 Currently broken.
693
694 If unsure, say N.
695
696 endif
697 endef
698
699 define KernelPackage/b43/description
700 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
701 endef
702
703 define KernelPackage/b43legacy
704 $(call KernelPackage/mac80211/Default)
705 TITLE:=Broadcom 43xx-legacy wireless support
706 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
707 KCONFIG:= \
708 CONFIG_HW_RANDOM=y
709 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb +b43legacy-firmware
710 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/broadcom/b43legacy/b43legacy.ko
711 AUTOLOAD:=$(call AutoProbe,b43legacy)
712 MENU:=1
713 endef
714
715 define KernelPackage/b43legacy/description
716 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
717 endef
718
719
720 define KernelPackage/brcmutil
721 $(call KernelPackage/mac80211/Default)
722 TITLE:=Broadcom IEEE802.11n common driver parts
723 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
724 DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
725 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil.ko
726 AUTOLOAD:=$(call AutoProbe,brcmutil)
727 MENU:=1
728 endef
729
730 define KernelPackage/brcmutil/description
731 This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
732 endef
733
734 define KernelPackage/brcmutil/config
735 if PACKAGE_kmod-brcmutil
736
737 config PACKAGE_BRCM80211_DEBUG
738 bool "Broadcom wireless driver debugging"
739 help
740 Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
741
742 endif
743 endef
744
745 PKG_BRCMSMAC_FW_NAME:=broadcom-wl
746 PKG_BRCMSMAC_FW_VERSION:=5.100.138
747 PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
748 PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
749 PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
750 PKG_BRCMSMAC_FW_HASH:=f1e7067aac5b62b67b8b6e4c517990277804339ac16065eb13c731ff909ae46f
751
752 define Download/brcmsmac
753 FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
754 URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
755 HASH:=$(PKG_BRCMSMAC_FW_HASH)
756 endef
757 $(eval $(call Download,brcmsmac))
758
759 define KernelPackage/brcmsmac
760 $(call KernelPackage/mac80211/Default)
761 TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
762 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
763 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil +!BRCMSMAC_USE_FW_FROM_WL:brcmsmac-firmware
764 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcmsmac.ko
765 AUTOLOAD:=$(call AutoProbe,brcmsmac)
766 MENU:=1
767 endef
768
769 define KernelPackage/brcmsmac/description
770 Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
771 endef
772
773 define KernelPackage/brcmsmac/config
774 if PACKAGE_kmod-brcmsmac
775
776 config BRCMSMAC_USE_FW_FROM_WL
777 bool "Use firmware extracted from broadcom proprietary driver"
778 default y
779 help
780 Instead of using the official brcmsmac firmware a firmware
781 version 666.2 extracted from the proprietary Broadcom driver
782 is used. This is needed to get core rev 17 used in bcm4716
783 to work.
784
785 If unsure, say Y.
786
787 endif
788 endef
789
790
791 define KernelPackage/brcmfmac
792 $(call KernelPackage/mac80211/Default)
793 TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
794 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
795 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +kmod-brcmutil \
796 +BRCMFMAC_SDIO:kmod-mmc @!TARGET_uml \
797 +BRCMFMAC_USB:kmod-usb-core +BRCMFMAC_USB:brcmfmac-firmware-usb
798 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac.ko
799 AUTOLOAD:=$(call AutoProbe,brcmfmac)
800 endef
801
802 define KernelPackage/brcmfmac/description
803 Kernel module for Broadcom IEEE802.11n USB Wireless cards
804 endef
805
806 define KernelPackage/brcmfmac/config
807 if PACKAGE_kmod-brcmfmac
808
809 config BRCMFMAC_SDIO
810 bool "Enable SDIO bus interface support"
811 default y if TARGET_brcm2708
812 default y if TARGET_sunxi
813 default n
814 help
815 Enable support for cards attached to an SDIO bus.
816 Select this option only if you are sure that your
817 board has a Broadcom wireless chip atacched to
818 that bus.
819
820 config BRCMFMAC_USB
821 bool "Enable USB bus interface support"
822 depends on USB_SUPPORT
823 default y
824 help
825 Supported USB connected chipsets:
826 BCM43235, BCM43236, BCM43238 (all in revision 3 only)
827 BCM43143, BCM43242, BCM43566, BCM43569
828
829 config BRCMFMAC_PCIE
830 bool "Enable PCIE bus interface support"
831 depends on PCI_SUPPORT
832 default y
833 help
834 Supported PCIe connected chipsets:
835 BCM4354, BCM4356, BCM43567, BCM43570, BCM43602
836
837 endif
838 endef
839
840
841 define KernelPackage/carl9170
842 $(call KernelPackage/mac80211/Default)
843 TITLE:=Driver for Atheros AR9170 USB sticks
844 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT +carl9170-firmware
845 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
846 AUTOLOAD:=$(call AutoProbe,carl9170)
847 endef
848
849
850 define KernelPackage/hermes
851 $(call KernelPackage/mac80211/Default)
852 TITLE:=Hermes 802.11b chipset support
853 DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT +kmod-crypto-michael-mic
854 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/orinoco/orinoco.ko
855 AUTOLOAD:=$(call AutoProbe,orinoco)
856 endef
857
858 define KernelPackage/hermes/description
859 Kernel support for Hermes 802.11b chipsets
860 endef
861
862 define KernelPackage/hermes-pci
863 $(call KernelPackage/mac80211/Default)
864 TITLE:=Intersil Prism 2.5 PCI support
865 DEPENDS:=@PCI_SUPPORT +kmod-hermes
866 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/orinoco/orinoco_pci.ko
867 AUTOLOAD:=$(call AutoProbe,orinoco_pci)
868 endef
869
870 define KernelPackage/hermes-pci/description
871 Kernel modules for Intersil Prism 2.5 PCI support
872 endef
873
874 define KernelPackage/hermes-plx
875 $(call KernelPackage/mac80211/Default)
876 TITLE:=PLX9052 based PCI adaptor
877 DEPENDS:=@PCI_SUPPORT +kmod-hermes
878 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/orinoco/orinoco_plx.ko
879 AUTOLOAD:=$(call AutoProbe,orinoco_plx)
880 endef
881
882 define KernelPackage/hermes-plx/description
883 Kernel modules for Hermes in PLX9052 based PCI adaptors
884 endef
885
886 define KernelPackage/hermes-pcmcia
887 $(call KernelPackage/mac80211/Default)
888 TITLE:=Hermes based PCMCIA adaptors
889 DEPENDS:=@PCMCIA_SUPPORT +kmod-hermes
890 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/orinoco/orinoco_cs.ko
891 AUTOLOAD:=$(call AutoProbe,orinoco_cs)
892 endef
893
894 define KernelPackage/hermes-pcmcia/description
895 Kernel modules for Hermes based PCMCIA adaptors
896 endef
897
898
899 define KernelPackage/iwlwifi
900 $(call KernelPackage/mac80211/Default)
901 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT @!LINUX_3_18
902 TITLE:=Intel AGN Wireless support
903 FILES:= \
904 $(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlwifi/iwlwifi.ko \
905 $(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlwifi/dvm/iwldvm.ko \
906 $(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlwifi/mvm/iwlmvm.ko
907 AUTOLOAD:=$(call AutoProbe,iwlwifi iwldvm iwlmvm)
908 MENU:=1
909 endef
910
911 define KernelPackage/iwlwifi/description
912 iwlwifi kernel module for
913 Intel Wireless WiFi Link 6250AGN Adapter
914 Intel 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN)
915 Intel WiFi Link 1000BGN
916 Intel Wireless WiFi 5150AGN
917 Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
918 Intel 6005 Series Wi-Fi Adapters
919 Intel 6030 Series Wi-Fi Adapters
920 Intel Wireless WiFi Link 6150BGN 2 Adapter
921 Intel 100 Series Wi-Fi Adapters (100BGN and 130BGN)
922 Intel 2000 Series Wi-Fi Adapters
923 Intel 7260 Wi-Fi Adapter
924 Intel 3160 Wi-Fi Adapter
925 Intel 7265 Wi-Fi Adapter
926 Intel 8260 Wi-Fi Adapter
927 Intel 3165 Wi-Fi Adapter
928 endef
929
930 define KernelPackage/iwlwifi/config
931 if PACKAGE_kmod-iwlwifi
932
933 config PACKAGE_IWLWIFI_DEBUG
934 bool "Enable full debugging output in the iwlwifi driver"
935 default n
936 help
937 This option will enable debug tracing output for the iwlwifi drivers
938
939 This will result in the kernel module being ~100k larger. You can
940 control which debug output is sent to the kernel log by setting the
941 value in
942
943 /sys/module/iwlwifi/parameters/debug
944
945 This entry will only exist if this option is enabled.
946
947 To set a value, simply echo an 8-byte hex value to the same file:
948
949 % echo 0x43fff > /sys/module/iwlwifi/parameters/debug
950
951 You can find the list of debug mask values in:
952 drivers/net/wireless/intel/iwlwifi/iwl-debug.h
953
954 If this is your first time using this driver, you should say Y here
955 as the debug information can assist others in helping you resolve
956 any problems you may encounter.
957
958 config PACKAGE_IWLWIFI_DEBUGFS
959 bool "iwlwifi debugfs support"
960 depends on PACKAGE_MAC80211_DEBUGFS
961 default n
962 help
963 Enable creation of debugfs files for the iwlwifi drivers. This
964 is a low-impact option that allows getting insight into the
965 driver's state at runtime.
966
967 endif
968 endef
969
970 define KernelPackage/iwl-legacy
971 $(call KernelPackage/mac80211/Default)
972 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
973 TITLE:=Intel legacy Wireless support
974 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlegacy/iwlegacy.ko
975 AUTOLOAD:=$(call AutoProbe,iwlegacy)
976 endef
977
978 define KernelPackage/iwl-legacy/description
979 iwl-legacy kernel module for legacy Intel wireless support
980 endef
981
982 define KernelPackage/iwl3945
983 $(call KernelPackage/mac80211/Default)
984 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +iwl3945-firmware
985 TITLE:=Intel iwl3945 Wireless support
986 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlegacy/iwl3945.ko
987 AUTOLOAD:=$(call AutoProbe,iwl3945)
988 endef
989
990 define KernelPackage/iwl3945/description
991 iwl3945 kernel module for Intel 3945 support
992 endef
993
994 define KernelPackage/iwl4965
995 $(call KernelPackage/mac80211/Default)
996 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT +iwl4965-firmware
997 TITLE:=Intel iwl4965 Wireless support
998 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/iwlegacy/iwl4965.ko
999 AUTOLOAD:=$(call AutoProbe,iwl4965)
1000 endef
1001
1002 define KernelPackage/iwl4965/description
1003 iwl4965 kernel module for Intel 4965 support
1004 endef
1005
1006
1007 define KernelPackage/lib80211
1008 $(call KernelPackage/mac80211/Default)
1009 TITLE:=802.11 Networking stack
1010 DEPENDS:=+kmod-cfg80211 +kmod-crypto-hash
1011 FILES:= \
1012 $(PKG_BUILD_DIR)/net/wireless/lib80211.ko \
1013 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_wep.ko \
1014 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_ccmp.ko \
1015 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_tkip.ko
1016 AUTOLOAD:=$(call AutoProbe, \
1017 lib80211 \
1018 lib80211_crypt_wep \
1019 lib80211_crypt_ccmp \
1020 lib80211_crypt_tkip \
1021 )
1022 endef
1023
1024 define KernelPackage/lib80211/description
1025 Kernel modules for 802.11 Networking stack
1026 Includes:
1027 - lib80211
1028 - lib80211_crypt_wep
1029 - lib80211_crypt_tkip
1030 - lib80211_crytp_ccmp
1031 endef
1032
1033
1034 define KernelPackage/libipw
1035 $(call KernelPackage/mac80211/Default)
1036 TITLE:=libipw for ipw2100 and ipw2200
1037 DEPENDS:=@PCI_SUPPORT +kmod-crypto-michael-mic +kmod-crypto-ecb +kmod-lib80211 +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT @!BIG_ENDIAN @!LINUX_3_18
1038 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/ipw2x00/libipw.ko
1039 AUTOLOAD:=$(call AutoProbe,libipw)
1040 endef
1041
1042 define KernelPackage/libipw/description
1043 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
1044 endef
1045
1046 IPW2100_NAME:=ipw2100-fw
1047 IPW2100_VERSION:=1.3
1048
1049 define Download/ipw2100
1050 URL:= \
1051 https://src.fedoraproject.org/repo/pkgs/ipw2100-firmware/ipw2100-fw-1.3.tgz/46aa75bcda1a00efa841f9707bbbd113/ \
1052 https://archlinux.mirror.pkern.at/other/packages/ipw2100-fw/ \
1053 http://mirror.ox.ac.uk/sites/ftp.openbsd.org/pub/OpenBSD/distfiles/firmware/ \
1054 http://firmware.openbsd.org/firmware-dist/
1055 FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1056 HASH:=e1107c455e48d324a616b47a622593bc8413dcce72026f72731c0b03dae3a7a2
1057 endef
1058 $(eval $(call Download,ipw2100))
1059
1060 define KernelPackage/ipw2100
1061 $(call KernelPackage/mac80211/Default)
1062 TITLE:=Intel IPW2100 driver
1063 DEPENDS:=@PCI_SUPPORT +kmod-libipw
1064 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/ipw2x00/ipw2100.ko
1065 AUTOLOAD:=$(call AutoProbe,ipw2100)
1066 endef
1067
1068 define KernelPackage/ipw2100/description
1069 Kernel support for Intel IPW2100
1070 Includes:
1071 - ipw2100
1072 endef
1073
1074 IPW2200_NAME:=ipw2200-fw
1075 IPW2200_VERSION:=3.1
1076
1077 define Download/ipw2200
1078 URL:= \
1079 https://src.fedoraproject.org/repo/pkgs/ipw2200-firmware/ipw2200-fw-3.1.tgz/eaba788643c7cc7483dd67ace70f6e99/ \
1080 https://archlinux.mirror.pkern.at/other/packages/ipw2200-fw/ \
1081 http://mirror.ox.ac.uk/sites/ftp.openbsd.org/pub/OpenBSD/distfiles/firmware/ \
1082 http://firmware.openbsd.org/firmware-dist/
1083 FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1084 HASH:=c6818c11c18cc030d55ff83f64b2bad8feef485e7742f84f94a61d811a6258bd
1085 endef
1086 $(eval $(call Download,ipw2200))
1087
1088 define KernelPackage/ipw2200
1089 $(call KernelPackage/mac80211/Default)
1090 TITLE:=Intel IPW2200 driver
1091 DEPENDS:=@PCI_SUPPORT +kmod-libipw
1092 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intel/ipw2x00/ipw2200.ko
1093 AUTOLOAD:=$(call AutoProbe,ipw2200)
1094 endef
1095
1096 define KernelPackage/ipw2200/description
1097 Kernel support for Intel IPW2200
1098 Includes:
1099 - ipw2200
1100 endef
1101
1102
1103 define KernelPackage/libertas-usb
1104 $(call KernelPackage/mac80211/Default)
1105 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT +libertas-usb-firmware @!LINUX_3_18
1106 TITLE:=Marvell 88W8015 Wireless Driver
1107 FILES:= \
1108 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas.ko \
1109 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/usb8xxx.ko
1110 AUTOLOAD:=$(call AutoProbe,libertas usb8xxx)
1111 endef
1112
1113 define KernelPackage/libertas-sdio
1114 $(call KernelPackage/mac80211/Default)
1115 DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +kmod-mmc +@DRIVER_WEXT_SUPPORT @!TARGET_uml +libertas-sdio-firmware @!LINUX_3_18
1116 TITLE:=Marvell 88W8686 Wireless Driver
1117 FILES:= \
1118 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas.ko \
1119 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas_sdio.ko
1120 AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
1121 endef
1122
1123 define KernelPackage/libertas-spi
1124 $(call KernelPackage/mac80211/Default)
1125 SUBMENU:=Wireless Drivers
1126 DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +@DRIVER_WEXT_SUPPORT @!TARGET_uml +libertas-spi-firmware @!LINUX_3_18
1127 KCONFIG := \
1128 CONFIG_SPI=y \
1129 CONFIG_SPI_MASTER=y
1130 TITLE:=Marvell 88W8686 SPI Wireless Driver
1131 FILES:= \
1132 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas.ko \
1133 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/libertas/libertas_spi.ko
1134 AUTOLOAD:=$(call AutoProbe,libertas libertas_spi)
1135 endef
1136
1137 define KernelPackage/mac80211-hwsim
1138 $(call KernelPackage/mac80211/Default)
1139 TITLE:=mac80211 HW simulation device
1140 DEPENDS+= +kmod-mac80211 +@DRIVER_11AC_SUPPORT +@DRIVER_11N_SUPPORT +@DRIVER_11W_SUPPORT
1141 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
1142 AUTOLOAD:=$(call AutoProbe,mac80211_hwsim)
1143 endef
1144
1145
1146 define KernelPackage/mt7601u
1147 $(call KernelPackage/mac80211/Default)
1148 TITLE:=MT7601U-based USB dongles Wireless Driver
1149 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT @USB_SUPPORT +kmod-usb-core +mt7601u-firmware
1150 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mediatek/mt7601u/mt7601u.ko
1151 AUTOLOAD:=$(call AutoProbe,mt7601u)
1152 endef
1153
1154
1155 define KernelPackage/mwl8k
1156 $(call KernelPackage/mac80211/Default)
1157 TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
1158 URL:=https://wireless.wiki.kernel.org/en/users/drivers/mwl8k
1159 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT +mwl8k-firmware
1160 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/marvell/mwl8k.ko
1161 AUTOLOAD:=$(call AutoProbe,mwl8k)
1162 endef
1163
1164 define KernelPackage/mwl8k/description
1165 Kernel modules for Marvell TOPDOG 802.11 Wireless cards
1166 endef
1167
1168
1169 define KernelPackage/mwifiex-pcie
1170 $(call KernelPackage/mac80211/Default)
1171 TITLE:=Driver for Marvell 802.11n/802.11ac PCIe Wireless cards
1172 URL:=https://wireless.wiki.kernel.org/en/users/drivers/mwifiex
1173 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +mwifiex-pcie-firmware
1174 FILES:= \
1175 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/mwifiex/mwifiex.ko \
1176 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/mwifiex/mwifiex_pcie.ko
1177 AUTOLOAD:=$(call AutoProbe,mwifiex_pcie)
1178 endef
1179
1180 define KernelPackage/mwifiex-pcie/description
1181 Kernel modules for Marvell 802.11n/802.11ac PCIe Wireless cards
1182 endef
1183
1184 define KernelPackage/mwifiex-sdio
1185 $(call KernelPackage/mac80211/Default)
1186 TITLE:=Driver for Marvell 802.11n/802.11ac SDIO Wireless cards
1187 URL:=https://wireless.wiki.kernel.org/en/users/drivers/mwifiex
1188 DEPENDS+= +kmod-mmc +kmod-mac80211 +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT +mwifiex-sdio-firmware
1189 FILES:= \
1190 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/mwifiex/mwifiex.ko \
1191 $(PKG_BUILD_DIR)/drivers/net/wireless/marvell/mwifiex/mwifiex_sdio.ko
1192 AUTOLOAD:=$(call AutoProbe,mwifiex_sdio)
1193 endef
1194
1195 define KernelPackage/mwifiex-sdio/description
1196 Kernel modules for Marvell 802.11n/802.11ac SDIO Wireless cards
1197 endef
1198
1199 define KernelPackage/p54/Default
1200 $(call KernelPackage/mac80211/Default)
1201 TITLE:=Prism54 Drivers
1202 endef
1203
1204 define KernelPackage/p54/description
1205 Kernel module for Prism54 chipsets (mac80211)
1206 endef
1207
1208 define KernelPackage/p54-common
1209 $(call KernelPackage/p54/Default)
1210 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT||@TARGET_omap24xx +kmod-mac80211 +kmod-lib-crc-ccitt
1211 TITLE+= (COMMON)
1212 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/p54/p54common.ko
1213 endef
1214
1215 define KernelPackage/p54-pci
1216 $(call KernelPackage/p54/Default)
1217 TITLE+= (PCI)
1218 DEPENDS+= @PCI_SUPPORT +kmod-p54-common +p54-pci-firmware
1219 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/p54/p54pci.ko
1220 AUTOLOAD:=$(call AutoProbe,p54pci)
1221 endef
1222
1223 define KernelPackage/p54-usb
1224 $(call KernelPackage/p54/Default)
1225 TITLE+= (USB)
1226 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common +p54-usb-firmware
1227 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/p54/p54usb.ko
1228 AUTOLOAD:=$(call AutoProbe,p54usb)
1229 endef
1230
1231 define KernelPackage/p54-spi
1232 $(call KernelPackage/p54/Default)
1233 TITLE+= (SPI)
1234 DEPENDS+= @TARGET_omap24xx +kmod-p54-common +p54-spi-firmware
1235 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/intersil/p54/p54spi.ko
1236 AUTOLOAD:=$(call AutoProbe,p54spi)
1237 endef
1238
1239 define KernelPackage/rsi91x
1240 $(call KernelPackage/mac80211/Default)
1241 TITLE:=Redpine Signals Inc 91x WLAN driver support
1242 DEPENDS+= +kmod-mac80211 +rs9113-firmware
1243 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rsi/rsi_91x.ko
1244 endef
1245
1246 define KernelPackage/rsi91x-usb
1247 $(call KernelPackage/mac80211/Default)
1248 TITLE:=Redpine Signals USB bus support
1249 DEPENDS+= +kmod-mac80211 +kmod-usb2 +kmod-rsi91x +rs9113-firmware
1250 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rsi/rsi_usb.ko
1251 AUTOLOAD:=$(call AutoProbe,rsi_usb)
1252 endef
1253
1254 define KernelPackage/rsi91x-sdio
1255 $(call KernelPackage/mac80211/Default)
1256 TITLE:=Redpine Signals SDIO bus support
1257 DEPENDS+= +kmod-mac80211 +kmod-mmc +kmod-rsi91x +rs9113-firmware
1258 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rsi/rsi_sdio.ko
1259 AUTOLOAD:=$(call AutoProbe,rsi_sdio)
1260 endef
1261
1262
1263 define KernelPackage/rtl818x/Default
1264 $(call KernelPackage/mac80211/Default)
1265 TITLE:=Realtek Drivers for RTL818x devices
1266 URL:=https://wireless.wiki.kernel.org/en/users/drivers/rtl8187
1267 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
1268 endef
1269
1270 define KernelPackage/rtl8180
1271 $(call KernelPackage/rtl818x/Default)
1272 DEPENDS+= @PCI_SUPPORT
1273 TITLE+= (RTL8180 PCI)
1274 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtl818x/rtl8180/rtl818x_pci.ko
1275 AUTOLOAD:=$(call AutoProbe,rtl818x_pci)
1276 endef
1277
1278 define KernelPackage/rtl8187
1279 $(call KernelPackage/rtl818x/Default)
1280 DEPENDS+= @USB_SUPPORT +kmod-usb-core
1281 TITLE+= (RTL8187 USB)
1282 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtl818x/rtl8187/rtl8187.ko
1283 AUTOLOAD:=$(call AutoProbe,rtl8187)
1284 endef
1285
1286 define KernelPackage/rtlwifi/config
1287 config PACKAGE_RTLWIFI_DEBUG
1288 bool "Realtek wireless debugging"
1289 depends on PACKAGE_kmod-rtlwifi
1290 help
1291 Say Y, if you want to debug realtek wireless drivers.
1292
1293 endef
1294
1295 define KernelPackage/rtlwifi
1296 $(call KernelPackage/mac80211/Default)
1297 TITLE:=Realtek common driver part
1298 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211 +@DRIVER_11N_SUPPORT
1299 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtlwifi.ko
1300 HIDDEN:=1
1301 endef
1302
1303 define KernelPackage/rtlwifi-pci
1304 $(call KernelPackage/mac80211/Default)
1305 TITLE:=Realtek common driver part (PCI support)
1306 DEPENDS+= @PCI_SUPPORT +kmod-rtlwifi
1307 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl_pci.ko
1308 AUTOLOAD:=$(call AutoProbe,rtl_pci)
1309 HIDDEN:=1
1310 endef
1311
1312 define KernelPackage/rtlwifi-btcoexist
1313 $(call KernelPackage/mac80211/Default)
1314 TITLE:=Realtek BT coexist support
1315 DEPENDS+= +kmod-rtlwifi
1316 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist.ko
1317 AUTOLOAD:=$(call AutoProbe,btcoexist)
1318 HIDDEN:=1
1319 endef
1320
1321 define KernelPackage/rtlwifi-usb
1322 $(call KernelPackage/mac80211/Default)
1323 TITLE:=Realtek common driver part (USB support)
1324 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-rtlwifi
1325 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl_usb.ko
1326 AUTOLOAD:=$(call AutoProbe,rtl_usb)
1327 HIDDEN:=1
1328 endef
1329
1330 define KernelPackage/rtl8192c-common
1331 $(call KernelPackage/mac80211/Default)
1332 TITLE:=Realtek RTL8192CE/RTL8192CU common support module
1333 DEPENDS+= +kmod-rtlwifi
1334 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common.ko
1335 HIDDEN:=1
1336 endef
1337
1338 define KernelPackage/rtl8192ce
1339 $(call KernelPackage/mac80211/Default)
1340 TITLE:=Realtek RTL8192CE/RTL8188CE support
1341 DEPENDS+= +kmod-rtlwifi-pci +kmod-rtl8192c-common +rtl8192ce-firmware
1342 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192ce/rtl8192ce.ko
1343 AUTOLOAD:=$(call AutoProbe,rtl8192ce)
1344 endef
1345
1346 define KernelPackage/rtl8192se
1347 $(call KernelPackage/mac80211/Default)
1348 TITLE:=Realtek RTL8192SE/RTL8191SE support
1349 DEPENDS+= +kmod-rtlwifi-pci +rtl8192se-firmware
1350 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192se/rtl8192se.ko
1351 AUTOLOAD:=$(call AutoProbe,rtl8192se)
1352 endef
1353
1354 define KernelPackage/rtl8192de
1355 $(call KernelPackage/mac80211/Default)
1356 TITLE:=Realtek RTL8192DE/RTL8188DE support
1357 DEPENDS+= +kmod-rtlwifi-pci +rtl8192de-firmware
1358 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192de/rtl8192de.ko
1359 AUTOLOAD:=$(call AutoProbe,rtl8192de)
1360 endef
1361
1362 define KernelPackage/rtl8192cu
1363 $(call KernelPackage/mac80211/Default)
1364 TITLE:=Realtek RTL8192CU/RTL8188CU support
1365 DEPENDS+= +kmod-rtlwifi-usb +kmod-rtl8192c-common +rtl8192cu-firmware
1366 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8192cu/rtl8192cu.ko
1367 AUTOLOAD:=$(call AutoProbe,rtl8192cu)
1368 endef
1369
1370 define KernelPackage/rtl8821ae
1371 $(call KernelPackage/mac80211/Default)
1372 TITLE:=Realtek RTL8821AE support
1373 DEPENDS+= +kmod-rtlwifi-btcoexist +kmod-rtlwifi-pci +rtl8821ae-firmware
1374 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtlwifi/rtl8821ae/rtl8821ae.ko
1375 AUTOLOAD:=$(call AutoProbe,rtl8821ae)
1376 endef
1377
1378 define KernelPackage/rtl8xxxu
1379 $(call KernelPackage/mac80211/Default)
1380 TITLE:=alternative Realtek RTL8XXXU support
1381 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
1382 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/realtek/rtl8xxxu/rtl8xxxu.ko
1383 AUTOLOAD:=$(call AutoProbe,rtl8xxxu)
1384 endef
1385
1386 define KernelPackage/rtl8xxxu/description
1387 This is an alternative driver for various Realtek RTL8XXX
1388 parts written to utilize the Linux mac80211 stack.
1389 The driver is known to work with a number of RTL8723AU,
1390 RL8188CU, RTL8188RU, RTL8191CU, and RTL8192CU devices
1391
1392 This driver is under development and has a limited feature
1393 set. In particular it does not yet support 40MHz channels
1394 and power management. However it should have a smaller
1395 memory footprint than the vendor drivers and benetifs
1396 from the in kernel mac80211 stack.
1397
1398 It can coexist with drivers from drivers/staging/rtl8723au,
1399 drivers/staging/rtl8192u, and drivers/net/wireless/rtlwifi,
1400 but you will need to control which module you wish to load.
1401
1402 RTL8XXXU_UNTESTED is enabled
1403 This option enables detection of Realtek 8723/8188/8191/8192 WiFi
1404 USB devices which have not been tested directly by the driver
1405 author or reported to be working by third parties.
1406
1407 Please report your results!
1408 endef
1409
1410
1411 define KernelPackage/wlcore
1412 $(call KernelPackage/mac80211/Default)
1413 TITLE:=TI common driver part
1414 DEPENDS+= +kmod-mmc +kmod-mac80211 +@DRIVER_11N_SUPPORT
1415 FILES:= \
1416 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
1417 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
1418 AUTOLOAD:=$(call AutoProbe,wlcore wlcore_sdio)
1419 endef
1420
1421 define KernelPackage/wlcore/description
1422 This module contains some common parts needed by TI Wireless drivers.
1423 endef
1424
1425 define KernelPackage/wl12xx
1426 $(call KernelPackage/mac80211/Default)
1427 TITLE:=Driver for TI WL12xx
1428 URL:=https://wireless.wiki.kernel.org/en/users/drivers/wl12xx
1429 DEPENDS+= +kmod-wlcore +wl12xx-firmware
1430 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko
1431 AUTOLOAD:=$(call AutoProbe,wl12xx)
1432 endef
1433
1434 define KernelPackage/wl12xx/description
1435 Kernel modules for TI WL12xx
1436 endef
1437
1438 define KernelPackage/wl18xx
1439 $(call KernelPackage/mac80211/Default)
1440 TITLE:=Driver for TI WL18xx
1441 URL:=https://wireless.wiki.kernel.org/en/users/drivers/wl18xx
1442 DEPENDS+= +kmod-wlcore +wl18xx-firmware
1443 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko
1444 AUTOLOAD:=$(call AutoProbe,wl18xx)
1445 endef
1446
1447 define KernelPackage/wl18xx/description
1448 Kernel modules for TI WL18xx
1449 endef
1450
1451
1452 ZD1211FW_NAME:=zd1211-firmware
1453 ZD1211FW_VERSION:=1.4
1454 define Download/zd1211rw
1455 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1456 URL:=@SF/zd1211/
1457 HASH:=866308f6f59f7075f075d4959dff2ede47735c751251fecd1496df1ba4d338e1
1458 endef
1459 $(eval $(call Download,zd1211rw))
1460
1461 define KernelPackage/zd1211rw
1462 $(call KernelPackage/mac80211/Default)
1463 TITLE:=Zydas ZD1211 support
1464 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
1465 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zydas/zd1211rw/zd1211rw.ko
1466 AUTOLOAD:=$(call AutoProbe,zd1211rw)
1467 endef
1468
1469
1470
1471 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
1472 config-y += \
1473 CFG80211_DEBUGFS \
1474 MAC80211_DEBUGFS \
1475 ATH9K_DEBUGFS \
1476 ATH9K_HTC_DEBUGFS \
1477 ATH10K_DEBUGFS \
1478 CARL9170_DEBUGFS \
1479 ATH5K_DEBUG \
1480 ATH6KL_DEBUG
1481 endif
1482
1483 ifdef CONFIG_PACKAGE_MAC80211_TRACING
1484 config-y += \
1485 ATH10K_TRACING \
1486 ATH6KL_TRACING \
1487 ATH_TRACEPOINTS \
1488 WIL6210_TRACING \
1489 ATH5K_TRACER \
1490 IWLWIFI_DEVICE_TRACING
1491 endif
1492
1493 config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
1494
1495 config-$(call config_package,airo) += AIRO
1496
1497 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON ATH_REG_DYNAMIC_USER_REG_HINTS
1498 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG ATH9K_STATION_STATISTICS
1499 config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
1500 config-$(CONFIG_PACKAGE_ATH_SPECTRAL) += ATH9K_COMMON_SPECTRAL ATH10K_SPECTRAL
1501 config-$(CONFIG_PACKAGE_ATH_DYNACK) += ATH9K_DYNACK
1502 config-$(call config_package,ath9k) += ATH9K
1503 config-$(call config_package,ath9k-common) += ATH9K_COMMON
1504 config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
1505 config-$(CONFIG_TARGET_ath79) += ATH9K_AHB
1506 config-$(CONFIG_TARGET_ipq40xx) += ATH10K_AHB
1507 config-$(CONFIG_PCI) += ATH9K_PCI
1508 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
1509 config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
1510 config-$(CONFIG_ATH9K_TX99) += ATH9K_TX99
1511 config-$(CONFIG_ATH9K_UBNTHSR) += ATH9K_UBNTHSR
1512 config-$(CONFIG_ATH10K_LEDS) += ATH10K_LEDS
1513 config-$(CONFIG_ATH10K_THERMAL) += ATH10K_THERMAL
1514
1515 config-$(call config_package,ath9k-htc) += ATH9K_HTC
1516 config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
1517
1518 config-$(call config_package,ath5k) += ATH5K
1519 ifdef CONFIG_TARGET_ath25
1520 config-y += ATH5K_AHB
1521 else
1522 config-y += ATH5K_PCI
1523 endif
1524
1525 config-$(call config_package,ath6kl) += ATH6KL
1526 config-$(call config_package,ath6kl-sdio) += ATH6KL_SDIO
1527 config-$(call config_package,ath6kl-usb) += ATH6KL_USB
1528
1529 config-$(call config_package,carl9170) += CARL9170
1530
1531 config-$(call config_package,b43) += B43
1532 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB) += B43_BUSES_BCMA_AND_SSB
1533 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA) += B43_BUSES_BCMA
1534 config-$(CONFIG_PACKAGE_B43_BUSES_SSB) += B43_BUSES_SSB
1535 config-$(CONFIG_PACKAGE_B43_PHY_G) += B43_PHY_G
1536 config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
1537 config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
1538 config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
1539 config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
1540 config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
1541
1542 config-$(call config_package,b43legacy) += B43LEGACY
1543 config-y += B43LEGACY_DMA_MODE
1544
1545 config-$(call config_package,brcmutil) += BRCMUTIL
1546 config-$(call config_package,brcmsmac) += BRCMSMAC
1547 config-$(call config_package,brcmfmac) += BRCMFMAC
1548 config-$(CONFIG_BRCMFMAC_SDIO) += BRCMFMAC_SDIO
1549 config-$(CONFIG_BRCMFMAC_USB) += BRCMFMAC_USB
1550 config-$(CONFIG_BRCMFMAC_PCIE) += BRCMFMAC_PCIE
1551 config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
1552
1553 config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
1554 config-$(call config_package,mt7601u) += MT7601U
1555 config-y += WL_MEDIATEK
1556
1557 config-$(call config_package,iwl-legacy) += IWLEGACY
1558 config-$(call config_package,iwl3945) += IWL3945
1559 config-$(call config_package,iwl4965) += IWL4965
1560 config-$(call config_package,iwlwifi) += IWLWIFI IWLDVM IWLMVM
1561 config-$(CONFIG_PACKAGE_IWLWIFI_DEBUG)+= IWLWIFI_DEBUG
1562 config-$(CONFIG_PACKAGE_IWLWIFI_DEBUGFS)+= IWLWIFI_DEBUGFS
1563
1564 config-$(call config_package,libipw) += LIBIPW
1565 config-$(call config_package,ipw2100) += IPW2100
1566 config-$(call config_package,ipw2200) += IPW2200
1567
1568 config-$(call config_package,p54-common) += P54_COMMON
1569 config-$(call config_package,p54-pci) += P54_PCI
1570 config-$(call config_package,p54-usb) += P54_USB
1571 config-$(call config_package,p54-spi) += P54_SPI
1572
1573 config-$(call config_package,hermes) += HERMES
1574 config-$(call config_package,hermes-pci) += PCI_HERMES
1575 config-$(call config_package,hermes-plx) += PLX_HERMES
1576 config-$(call config_package,hermes-pcmcia) += PCMCIA_HERMES
1577 config-y += HERMES_PRISM
1578
1579 config-$(call config_package,adm8211) += ADM8211
1580 config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
1581 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
1582 config-$(call config_package,libertas-spi) += LIBERTAS LIBERTAS_SPI
1583 config-$(call config_package,mwl8k) += MWL8K
1584 config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
1585 config-$(call config_package,mwifiex-sdio) += MWIFIEX MWIFIEX_SDIO
1586 config-$(call config_package,rtl8180) += RTL8180
1587 config-$(call config_package,rtl8187) += RTL8187
1588 config-$(call config_package,wlcore) += WLCORE WLCORE_SDIO
1589 config-$(call config_package,wl12xx) += WL12XX
1590 config-$(call config_package,wl18xx) += WL18XX
1591 config-y += WL_TI WILINK_PLATFORM_DATA
1592 config-$(call config_package,zd1211rw) += ZD1211RW
1593 config-$(call config_package,rsi91x) += RSI_91X
1594 config-$(call config_package,rsi91x-usb) += RSI_USB
1595 config-$(call config_package,rsi91x-sdio) += RSI_SDIO
1596
1597 config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
1598 config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
1599 config-$(call config_package,rtlwifi-btcoexist) += RTLBTCOEXIST
1600 config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
1601 config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
1602 config-$(call config_package,rtl8192ce) += RTL8192CE
1603 config-$(call config_package,rtl8192se) += RTL8192SE
1604 config-$(call config_package,rtl8192de) += RTL8192DE
1605 config-$(call config_package,rtl8192cu) += RTL8192CU
1606 config-$(call config_package,rtl8821ae) += RTL8821AE
1607 config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
1608
1609 config-$(call config_package,rtl8xxxu) += RTL8XXXU
1610 config-y += RTL8XXXU_UNTESTED
1611
1612 config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
1613
1614 MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
1615 $(KERNEL_MAKE_FLAGS) \
1616 EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include $(IREMAP_CFLAGS)" \
1617 KLIB_BUILD="$(LINUX_DIR)" \
1618 MODPROBE=true \
1619 KLIB=$(TARGET_MODULES_DIR) \
1620 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1621 KBUILD_LDFLAGS_MODULE_PREREQ=
1622
1623 define ConfigVars
1624 $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
1625 ))
1626 endef
1627
1628 define mac80211_config
1629 $(call ConfigVars,m)$(call ConfigVars,y)
1630 endef
1631 $(eval $(call shexport,mac80211_config))
1632
1633 define Build/Prepare
1634 rm -rf $(PKG_BUILD_DIR)
1635 mkdir -p $(PKG_BUILD_DIR)
1636 $(PKG_UNPACK)
1637 $(Build/Patch)
1638 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1639 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1640 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1641 rm -rf \
1642 $(PKG_BUILD_DIR)/include/linux/ssb \
1643 $(PKG_BUILD_DIR)/include/linux/bcma \
1644 $(PKG_BUILD_DIR)/include/net/bluetooth
1645
1646 rm -f \
1647 $(PKG_BUILD_DIR)/include/linux/cordic.h \
1648 $(PKG_BUILD_DIR)/include/linux/crc8.h \
1649 $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
1650 $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
1651 $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
1652 $(PKG_BUILD_DIR)/include/net/ieee80211.h \
1653 $(PKG_BUILD_DIR)/backport-include/linux/bcm47xx_nvram.h
1654
1655 echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
1656 endef
1657
1658 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
1659 define Build/Compile/kmod
1660 rm -rf $(PKG_BUILD_DIR)/modules
1661 +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
1662 endef
1663 endif
1664
1665 #do not Build/Configure for EXTERNAL KERNEL
1666 ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
1667 ifeq ($(strip $(CONFIG_KERNEL_GIT_CLONE_URI)),"")
1668 define Build/Configure
1669 cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
1670 cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
1671 cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
1672 endef
1673 endif
1674 endif
1675
1676 define Build/Patch
1677 $(if $(QUILT),rm -rf $(PKG_BUILD_DIR)/patches; mkdir -p $(PKG_BUILD_DIR)/patches)
1678 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/build,build/)
1679 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/subsys,subsys/)
1680 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath,ath/)
1681 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
1682 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
1683 $(call PatchDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/brcm,brcm/)
1684 $(if $(QUILT),touch $(PKG_BUILD_DIR)/.quilt_used)
1685 endef
1686
1687 define Quilt/Refresh/Package
1688 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/build,build/)
1689 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/subsys,subsys/)
1690 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/ath,ath/)
1691 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/rt2x00,rt2x00/)
1692 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/mwl,mwl/)
1693 $(call Quilt/RefreshDir,$(PKG_BUILD_DIR),$(PATCH_DIR)/brcm,brcm/)
1694 endef
1695
1696 define Build/Compile
1697 $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
1698 $(MAKE) $(MAKE_OPTS) allnoconfig
1699 $(call Build/Compile/kmod)
1700 endef
1701
1702 define Build/InstallDev
1703 mkdir -p \
1704 $(1)/usr/include/mac80211 \
1705 $(1)/usr/include/mac80211-backport \
1706 $(1)/usr/include/mac80211/ath \
1707 $(1)/usr/include/net/mac80211
1708 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1709 $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
1710 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1711 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1712 rm -f $(1)/usr/include/mac80211-backport/linux/module.h
1713 endef
1714
1715
1716 define KernelPackage/b43/install
1717 rm -rf $(1)/lib/firmware/
1718 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1719 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1720 else
1721 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1722 endif
1723 $(INSTALL_DIR) $(1)/lib/firmware/
1724 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1725 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1726 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1727 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1728 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1729 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1730 else
1731 b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1732 endif
1733 ifneq ($(CONFIG_B43_FW_SQUASH),)
1734 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1735 endif
1736 endef
1737
1738 define KernelPackage/brcmsmac/install
1739 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1740 ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
1741 tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
1742 b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
1743 endif
1744 endef
1745
1746 define KernelPackage/cfg80211/install
1747 $(INSTALL_DIR) $(1)/lib/wifi $(1)/lib/netifd/wireless
1748 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1749 $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
1750 $(INSTALL_DIR) $(1)/etc/hotplug.d/ieee80211
1751 $(INSTALL_DATA) ./files/mac80211.hotplug $(1)/etc/hotplug.d/ieee80211/10-wifi-detect
1752 endef
1753
1754 define KernelPackage/ipw2100/install
1755 $(INSTALL_DIR) $(1)/lib/firmware
1756 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1757 endef
1758
1759 define KernelPackage/ipw2200/install
1760 $(INSTALL_DIR) $(1)/lib/firmware
1761 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1762 endef
1763
1764 define KernelPackage/zd1211rw/install
1765 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1766 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1767 endef
1768
1769 $(eval $(foreach drv,$(PKG_DRIVERS),$(call KernelPackage,$(drv))))
1770 $(eval $(call KernelPackage,cfg80211))
1771 $(eval $(call KernelPackage,mac80211))