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