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