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