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