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