source: trunk/package/mac80211/Makefile @ 27285

Last change on this file since 27285 was 27285, checked in by nbd, 5 years ago

mac80211: force b44 and atl* to be disabled, even if they are enabled in the kernel tree

File size: 47.4 KB
Line 
1#
2# Copyright (C) 2007-2010 OpenWrt.org
3#
4# This is free software, licensed under the GNU General Public License v2.
5# See /LICENSE for more information.
6#
7
8include $(TOPDIR)/rules.mk
9include $(INCLUDE_DIR)/kernel.mk
10
11PKG_NAME:=mac80211
12
13PKG_VERSION:=2011-06-22
14PKG_RELEASE:=1
15PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
16PKG_MD5SUM:=3ffdd5cecedcf4236f599bdbc55ba10d
17
18PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
19PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
20PKG_BUILD_PARALLEL:=1
21
22PKG_DRIVERS = \
23        ath5k libertas-usb libertas-sd p54-common p54-pci p54-usb p54-spi \
24        rt2x00-lib rt2x00-pci rt2x00-usb rt2x00-soc rt2800-lib rt2400-pci \
25        rt2500-pci rt2500-usb rt61-pci rt73-usb rt2800-pci rt2800-usb \
26        rtl8180 rtl8187 zd1211rw mac80211-hwsim carl9170 b43 b43legacy \
27        ath9k-common ath9k ath9k-htc ath net-libipw net-ipw2100 net-ipw2200 \
28        mwl8k net-hermes net-hermes-pci net-hermes-plx net-hermes-pcmcia \
29        iwl-legacy iwl3945 iwl4965 iwlagn
30
31PKG_CONFIG_DEPENDS:= \
32        CONFIG_PACKAGE_kmod-mac80211 \
33        $(patsubst %,CONFIG_PACKAGE_kmod-%,$(PKG_DRIVERS)) \
34        CONFIG_PACKAGE_MAC80211_DEBUGFS \
35        CONFIG_PACKAGE_ATH_DEBUG \
36        CONFIG_PACKAGE_B43_DEBUG \
37        CONFIG_PACKAGE_B43_PIO \
38        CONFIG_PACKAGE_B43_N_PHY \
39        CONFIG_ATH_USER_REGD \
40
41CARL9170_FW_VERSION:=1.9.2
42
43include $(INCLUDE_DIR)/package.mk
44
45WMENU:=Wireless Drivers
46
47define KernelPackage/mac80211/Default
48  SUBMENU:=$(WMENU)
49  URL:=http://linuxwireless.org/
50  MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
51  DEPENDS:=@(!(TARGET_avr32||TARGET_ep93xx||TARGET_ps3||TARGET_pxcab)||BROKEN)
52endef
53
54define KernelPackage/cfg80211
55  $(call KernelPackage/mac80211/Default)
56  TITLE:=cfg80211 - wireless configuration API
57  DEPENDS+= +wireless-tools +iw +crda
58ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.33)),1)
59  FILES:= \
60        $(PKG_BUILD_DIR)/compat/compat.ko \
61        $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
62  AUTOLOAD:=$(call AutoLoad,20,compat cfg80211)
63else
64  FILES:= \
65        $(PKG_BUILD_DIR)/compat/compat.ko \
66        $(PKG_BUILD_DIR)/compat/compat_firmware_class.ko \
67        $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
68  AUTOLOAD:=$(call AutoLoad,20,compat compat_firmware_class cfg80211)
69endif
70endef
71
72define KernelPackage/cfg80211/description
73cfg80211 is the Linux wireless LAN (802.11) configuration API.
74endef
75
76define KernelPackage/mac80211
77  $(call KernelPackage/mac80211/Default)
78  TITLE:=Linux 802.11 Wireless Networking Stack
79  DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211
80  KCONFIG:=\
81        CONFIG_AVERAGE=y
82  FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.ko
83  AUTOLOAD:=$(call AutoLoad,21,mac80211)
84  MENU:=1
85endef
86
87define KernelPackage/mac80211/config
88        menu "Configuration"
89                depends on PACKAGE_kmod-mac80211
90
91        config PACKAGE_MAC80211_DEBUGFS
92                bool "Export mac80211 internals in DebugFS"
93                default y
94                help
95                  Select this to see extensive information about
96                  the internal state of mac80211 in debugfs.
97
98                  Say N unless you know you need this.
99
100        endmenu
101endef
102
103define KernelPackage/mac80211/description
104Generic IEEE 802.11 Networking Stack (mac80211)
105endef
106
107PKG_LINUX_FIRMWARE_NAME:=linux-firmware
108PKG_LINUX_FIRMWARE_VERSION:=97649b1e5449029c845ebf7500e780a8867c3e89
109PKG_LINUX_FIRMWARE_SOURCE:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION).tar.bz2
110PKG_LINUX_FIRMWARE_PROTO:=git
111PKG_LINUX_FIRMWARE_SOURCE_URL:=git://git.kernel.org/pub/scm/linux/kernel/git/dwmw2/linux-firmware.git
112PKG_LINUX_FIRMWARE_SUBDIR:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION)
113
114define Download/linux-firmware
115  FILE:=$(PKG_LINUX_FIRMWARE_SOURCE)
116  URL:=$(PKG_LINUX_FIRMWARE_SOURCE_URL)
117  MD5SUM:=$(PKG_LINUX_FIRMWARE_MD5SUM)
118  PROTO:=$(PKG_LINUX_FIRMWARE_PROTO)
119  VERSION:=$(PKG_LINUX_FIRMWARE_VERSION)
120  SUBDIR:=$(PKG_LINUX_FIRMWARE_SUBDIR)
121endef
122$(eval $(call Download,linux-firmware))
123
124# Prism54 drivers
125P54PCIFW:=2.13.12.0.arm
126P54USBFW:=2.13.24.0.lm87.arm
127P54SPIFW:=2.13.0.0.a.13.14.arm
128CARL9170_FW:=carl9170-1.fw
129
130define Download/p54usb
131  FILE:=$(P54USBFW)
132  URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
133  MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
134endef
135$(eval $(call Download,p54usb))
136
137define Download/p54pci
138  FILE:=$(P54PCIFW)
139  URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
140  MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
141endef
142$(eval $(call Download,p54pci))
143
144define Download/p54spi
145  FILE:=$(P54SPIFW)
146  URL:=http://daemonizer.de/prism54/prism54-fw/stlc4560
147  MD5SUM:=42661f8ecbadd88012807493f596081d
148endef
149$(eval $(call Download,p54spi))
150
151define Download/carl9170
152  FILE:=$(CARL9170_FW)-$(CARL9170_FW_VERSION)
153  URL:=http://downloads.openwrt.org/sources/
154  MD5SUM:=9e33ac39dcd610aa1ad80bbf4f1abccf
155endef
156$(eval $(call Download,carl9170))
157
158define KernelPackage/p54/Default
159  $(call KernelPackage/mac80211/Default)
160  TITLE:=Prism54 Drivers
161endef
162
163define KernelPackage/p54/description
164  Kernel module for Prism54 chipsets (mac80211)
165endef
166
167define KernelPackage/p54-common
168  $(call KernelPackage/p54/Default)
169  DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT||@TARGET_omap24xx +kmod-mac80211 +kmod-crc-ccitt
170  TITLE+= (COMMON)
171  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.ko
172  AUTOLOAD:=$(call AutoLoad,30,p54common)
173endef
174
175define KernelPackage/p54-pci
176  $(call KernelPackage/p54/Default)
177  TITLE+= (PCI)
178  DEPENDS+= @PCI_SUPPORT +kmod-p54-common
179  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.ko
180  AUTOLOAD:=$(call AutoLoad,31,p54pci)
181endef
182
183define KernelPackage/p54-usb
184  $(call KernelPackage/p54/Default)
185  TITLE+= (USB)
186  DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
187  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.ko
188  AUTOLOAD:=$(call AutoLoad,31,p54usb)
189endef
190
191define KernelPackage/p54-spi
192  $(call KernelPackage/p54/Default)
193  TITLE+= (SPI)
194  DEPENDS+= @TARGET_omap24xx +kmod-p54-common
195  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54spi.ko
196  AUTOLOAD:=$(call AutoLoad,31,p54spi)
197endef
198
199NEED_RT2X00_LIB_CRYPTO:=y
200NEED_RT2X00_LIB_FIRMWARE:=y
201NEED_RT2X00_LIB_HT:=y
202NEED_RT2X00_LIB_LEDS:=y
203
204define KernelPackage/rt2x00/Default
205  $(call KernelPackage/mac80211/Default)
206  TITLE:=Ralink Drivers for RT2x00 cards
207endef
208
209define KernelPackage/rt2x00-lib
210$(call KernelPackage/rt2x00/Default)
211  DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-crc-itu-t
212  TITLE+= (LIB)
213  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.ko
214  AUTOLOAD:=$(call AutoLoad,25,rt2x00lib)
215  MENU:=1
216endef
217
218define KernelPackage/rt2x00-lib/config
219        menu "Configuration"
220                depends PACKAGE_kmod-rt2x00-lib
221
222        config PACKAGE_RT2X00_LIB_DEBUGFS
223                bool "Enable rt2x00 debugfs support"
224                depends PACKAGE_MAC80211_DEBUGFS
225                help
226                  Enable creation of debugfs files for the rt2x00 drivers.
227                  These debugfs files support both reading and writing of the
228                  most important register types of the rt2x00 hardware.
229
230        config PACKAGE_RT2X00_DEBUG
231                bool "Enable rt2x00 debug output"
232                help
233                  Enable debugging output for all rt2x00 modules
234
235        endmenu
236endef
237
238define KernelPackage/rt2x00-pci
239$(call KernelPackage/rt2x00/Default)
240  DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
241  TITLE+= (PCI)
242  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.ko
243  AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
244endef
245
246define KernelPackage/rt2x00-usb
247$(call KernelPackage/rt2x00/Default)
248  DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
249  TITLE+= (USB)
250  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.ko
251  AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
252endef
253
254define KernelPackage/rt2x00-soc
255$(call KernelPackage/rt2x00/Default)
256  DEPENDS+= @TARGET_ramips +kmod-rt2x00-lib
257  TITLE+= (SoC)
258  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.ko
259  AUTOLOAD:=$(call AutoLoad,26,rt2x00soc)
260endef
261
262define KernelPackage/rt2800-lib
263$(call KernelPackage/rt2x00/Default)
264  DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +TARGET_ramips:kmod-rt2x00-soc +@DRIVER_11N_SUPPORT
265  TITLE+= (rt2800 LIB)
266  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.ko
267  AUTOLOAD:=$(call AutoLoad,27,rt2800lib)
268endef
269
270define KernelPackage/rt2400-pci
271$(call KernelPackage/rt2x00/Default)
272  DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
273  TITLE+= (RT2400 PCI)
274  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.ko
275  AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
276endef
277
278define KernelPackage/rt2500-pci
279$(call KernelPackage/rt2x00/Default)
280  DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
281  TITLE+= (RT2500 PCI)
282  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.ko
283  AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
284endef
285
286define KernelPackage/rt2500-usb
287$(call KernelPackage/rt2x00/Default)
288  DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
289  TITLE+= (RT2500 USB)
290  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.ko
291  AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
292endef
293
294define KernelPackage/rt61-pci
295$(call KernelPackage/rt2x00/Default)
296  DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
297  TITLE+= (RT2x61 PCI)
298  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.ko
299  AUTOLOAD:=$(call AutoLoad,27,rt61pci)
300endef
301
302define KernelPackage/rt73-usb
303  $(call KernelPackage/rt2x00/Default)
304  DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
305  TITLE+= (RT73 USB)
306  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.ko
307  AUTOLOAD:=$(call AutoLoad,27,rt73usb)
308endef
309
310define KernelPackage/rt2800-pci
311$(call KernelPackage/rt2x00/Default)
312  DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-crc-ccitt +TARGET_ramips:kmod-rt2x00-soc
313  TITLE+= (RT2860 PCI)
314  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.ko
315  AUTOLOAD:=$(call AutoLoad,28,rt2800pci)
316endef
317
318define KernelPackage/rt2800-usb
319$(call KernelPackage/rt2x00/Default)
320  DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-crc-ccitt
321  TITLE+= (RT2870 USB)
322  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.ko
323  AUTOLOAD:=$(call AutoLoad,28,rt2800usb)
324endef
325
326define KernelPackage/rtl818x/Default
327  $(call KernelPackage/mac80211/Default)
328  TITLE:=Realtek Drivers for RTL818x devices
329  URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
330  DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
331endef
332
333define KernelPackage/rtl8180
334  $(call KernelPackage/rtl818x/Default)
335  DEPENDS+= @PCI_SUPPORT
336  TITLE+= (RTL8180 PCI)
337  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko
338  AUTOLOAD:=$(call AutoLoad,27,rtl8180)
339endef
340
341define KernelPackage/rtl8187
342$(call KernelPackage/rtl818x/Default)
343  DEPENDS+= @USB_SUPPORT +kmod-usb-core
344  TITLE+= (RTL8187 USB)
345  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko
346  AUTOLOAD:=$(call AutoLoad,27,rtl8187)
347endef
348
349ZD1211FW_NAME:=zd1211-firmware
350ZD1211FW_VERSION:=1.4
351define Download/zd1211rw
352  FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
353  URL:=@SF/zd1211/
354  MD5SUM:=19f28781d76569af8551c9d11294c870
355endef
356$(eval $(call Download,zd1211rw))
357
358define KernelPackage/zd1211rw
359  $(call KernelPackage/mac80211/Default)
360  TITLE:=Zydas ZD1211 support
361  DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
362  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.ko
363  AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
364endef
365
366define KernelPackage/ath/config
367        menu "Configuration"
368                depends on PACKAGE_kmod-ath
369
370        config ATH_USER_REGD
371                bool "Force Atheros drivers to respect the user's regdomain settings"
372                help
373                  Atheros' idea of regulatory handling is that the EEPROM of the card defines
374                  the regulatory limits and the user is only allowed to restrict the settings
375                  even further, even if the country allows frequencies or power levels that
376                  are forbidden by the EEPROM settings.
377
378                  Select this option if you want the driver to respect the user's decision about
379                  regulatory settings.
380
381        config PACKAGE_ATH_DEBUG
382                bool "Atheros wireless debugging"
383                help
384                  Say Y, if you want to debug atheros wireless drivers.
385                  Right now only ath9k makes use of this.
386
387        endmenu
388endef
389
390define KernelPackage/ath
391  $(call KernelPackage/mac80211/Default)
392  TITLE:=Atheros common driver part
393  DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx +kmod-mac80211
394  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
395  AUTOLOAD:=$(call AutoLoad,26,ath)
396  MENU:=1
397endef
398
399define KernelPackage/ath/description
400 This module contains some common parts needed by Atheros Wireless drivers.
401endef
402
403define KernelPackage/ath5k
404  $(call KernelPackage/mac80211/Default)
405  TITLE:=Atheros 5xxx wireless cards support
406  URL:=http://linuxwireless.org/en/users/Drivers/ath5k
407  DEPENDS+= @PCI_SUPPORT||@TARGET_atheros +kmod-ath
408  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
409  AUTOLOAD:=$(call AutoLoad,27,ath5k)
410endef
411
412define KernelPackage/ath5k/description
413 This module adds support for wireless adapters based on
414 Atheros 5xxx chipset.
415endef
416
417define KernelPackage/ath9k-common
418  $(call KernelPackage/mac80211/Default)
419  TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
420  URL:=http://linuxwireless.org/en/users/Drivers/ath9k
421  DEPENDS+= @PCI_SUPPORT||TARGET_ar71xx +kmod-ath +@DRIVER_11N_SUPPORT
422  FILES:= \
423        $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
424        $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
425  AUTOLOAD:=$(call AutoLoad,27,ath9k_hw ath9k_common)
426endef
427
428define KernelPackage/ath9k
429  $(call KernelPackage/mac80211/Default)
430  TITLE:=Atheros 802.11n PCI wireless cards support
431  URL:=http://linuxwireless.org/en/users/Drivers/ath9k
432  DEPENDS+= @PCI_SUPPORT||TARGET_ar71xx +kmod-ath9k-common
433  FILES:= \
434        $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
435  AUTOLOAD:=$(call AutoLoad,28,ath9k)
436endef
437
438define KernelPackage/ath9k/description
439This module adds support for wireless adapters based on
440Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
441endef
442
443define KernelPackage/ath9k-htc
444  $(call KernelPackage/mac80211/Default)
445  TITLE:=Atheros 802.11n USB device support
446  URL:=http://linuxwireless.org/en/users/Drivers/ath9k
447  DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core
448  FILES:= \
449        $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
450  AUTOLOAD:=$(call AutoLoad,28,ath9k_htc)
451endef
452
453define KernelPackage/ath9k-htc/description
454This module adds support for wireless adapters based on
455Atheros USB AR9271 and AR7010 family of chipsets.
456endef
457
458define KernelPackage/carl9170
459  $(call KernelPackage/mac80211/Default)
460  TITLE:=Driver for Atheros AR9170 USB sticks
461  DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +@DRIVER_11N_SUPPORT
462  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
463  AUTOLOAD:=$(call AutoLoad,60,carl9170)
464endef
465
466define KernelPackage/carl9170/install
467        $(INSTALL_DIR) $(1)/lib/firmware
468        $(INSTALL_DATA) $(DL_DIR)/$(CARL9170_FW)-$(CARL9170_FW_VERSION) $(1)/lib/firmware/$(CARL9170_FW)
469endef
470
471define KernelPackage/libertas-usb
472  $(call KernelPackage/mac80211/Default)
473  DEPENDS+= @USB_SUPPORT +kmod-mac80211 +kmod-usb-core +kmod-lib80211
474  TITLE:=Marvell 88W8015 Wireless Driver
475  FILES:= \
476        $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
477        $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.ko
478  AUTOLOAD:=$(call AutoLoad,27,libertas usb8xxx)
479endef
480
481define KernelPackage/libertas-sd
482  $(call KernelPackage/mac80211/Default)
483  DEPENDS+= +kmod-mac80211 +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
484  TITLE:=Marvell 88W8686 Wireless Driver
485  FILES:= \
486        $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
487        $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas_sdio.ko
488  AUTOLOAD:=$(call AutoLoad,91,libertas libertas_sdio)
489endef
490
491define KernelPackage/mac80211-hwsim
492  $(call KernelPackage/mac80211/Default)
493  TITLE:=mac80211 HW simulation device
494  DEPENDS+= +kmod-mac80211
495  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
496  AUTOLOAD:=$(call AutoLoad,60,mac80211_hwsim)
497endef
498
499define KernelPackage/net-libipw
500  $(call KernelPackage/mac80211/Default)
501  TITLE:=libipw for ipw2100 and ipw2200
502  DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211
503  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.ko
504  AUTOLOAD:=$(call AutoLoad,49,libipw)
505endef
506
507define KernelPackage/net-libipw/description
508 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
509endef
510
511IPW2100_NAME:=ipw2100-fw
512IPW2100_VERSION:=1.3
513
514define Download/net-ipw2100
515  URL:=http://bughost.org/firmware/
516  FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
517  MD5SUM=46aa75bcda1a00efa841f9707bbbd113
518endef
519$(eval $(call Download,net-ipw2100))
520
521define KernelPackage/net-ipw2100
522  $(call KernelPackage/mac80211/Default)
523  TITLE:=Intel IPW2100 driver
524  DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
525  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.ko
526  AUTOLOAD:=$(call AutoLoad,50,ipw2100)
527endef
528
529define KernelPackage/net-ipw2100/description
530 Kernel support for Intel IPW2100
531 Includes:
532 - ipw2100
533endef
534
535IPW2200_NAME:=ipw2200-fw
536IPW2200_VERSION:=3.1
537
538define Download/net-ipw2200
539  URL:=http://bughost.org/firmware/
540  FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
541  MD5SUM=eaba788643c7cc7483dd67ace70f6e99
542endef
543$(eval $(call Download,net-ipw2200))
544
545define KernelPackage/net-ipw2200
546  $(call KernelPackage/mac80211/Default)
547  TITLE:=Intel IPW2200 driver
548  DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
549  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.ko
550  AUTOLOAD:=$(call AutoLoad,50,ipw2200)
551endef
552
553define KernelPackage/net-ipw2200/description
554 Kernel support for Intel IPW2200
555 Includes:
556 - ipw2200
557endef
558
559
560define KernelPackage/net-hermes
561  $(call KernelPackage/mac80211/Default)
562  TITLE:=Hermes 802.11b chipset support
563  DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
564  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco.ko
565  AUTOLOAD:=$(call AutoLoad,50,orinoco)
566endef
567
568define KernelPackage/net-hermes/description
569 Kernel support for Hermes 802.11b chipsets
570endef
571
572define KernelPackage/net-hermes-pci
573  $(call KernelPackage/mac80211/Default)
574  TITLE:=Intersil Prism 2.5 PCI support
575  DEPENDS:=@PCI_SUPPORT +kmod-net-hermes +kmod-cfg80211
576  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_pci.ko
577  AUTOLOAD:=$(call AutoLoad,55,orinoco_pci)
578endef
579
580define KernelPackage/net-hermes-pci/description
581 Kernel modules for Intersil Prism 2.5 PCI support
582endef
583
584define KernelPackage/net-hermes-plx
585  $(call KernelPackage/mac80211/Default)
586  TITLE:=PLX9052 based PCI adaptor
587  DEPENDS:=@PCI_SUPPORT +kmod-net-hermes +kmod-cfg80211
588  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_plx.ko
589  AUTOLOAD:=$(call AutoLoad,55,orinoco_plx)
590endef
591
592define KernelPackage/net-hermes-plx/description
593 Kernel modules for Hermes in PLX9052 based PCI adaptors
594endef
595
596define KernelPackage/net-hermes-pcmcia
597  $(call KernelPackage/mac80211/Default)
598  TITLE:=Hermes based PCMCIA adaptors
599  DEPENDS:=@PCMCIA_SUPPORT +kmod-net-hermes +kmod-cfg80211 @BROKEN
600  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_cs.ko
601  AUTOLOAD:=$(call AutoLoad,55,orinoco_cs)
602endef
603
604define KernelPackage/net-hermes-pcmcia/description
605 Kernel modules for Hermes based PCMCIA adaptors
606endef
607
608define KernelPackage/iwlagn
609  $(call KernelPackage/mac80211/Default)
610  DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
611  TITLE:=Intel AGN Wireless support
612  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlagn.$(LINUX_KMOD_SUFFIX)
613  AUTOLOAD:=$(call AutoLoad,60,iwlagn)
614  MENU:=1
615endef
616
617define KernelPackage/iwlagn/description
618 iwlagn kernel module for Intel 5000/5150/1000/6000/6050/6005/6030/100 support
619endef
620
621define KernelPackage/iwlagn/config
622        menu "Configuration"
623                depends on PACKAGE_kmod-iwlagn
624
625        config IWL5000_FW
626                bool "Intel 5000 Firmware"
627                default y
628                help
629                  Download and install firmware for:
630                    Intel 5000 wireless card into /lib/firmware.
631
632        config IWL5150_FW
633                bool "Intel 5150 Firmware"
634                default y
635                help
636                  Download and install firmware for:
637                    Intel 5150 wireless card into /lib/firmware.
638
639        config IWL1000_FW
640                bool "Intel 1000 Firmware"
641                default y
642                help
643                  Download and install firmware for:
644                    Intel 1000 wireless card into /lib/firmware.
645
646        config IWL6000_FW
647                bool "Intel 6000 Firmware"
648                default y
649                help
650                  Download and install firmware for:
651                    Intel 6000 wireless card into /lib/firmware.
652
653        config IWL6050_FW
654                bool "Intel 6050 Firmware"
655                default y
656                help
657                  Download and install firmware for:
658                    Intel 6050 wireless card into /lib/firmware.
659
660        config IWL6005_FW
661                bool "Intel 6005 Firmware"
662                default y
663                help
664                  Download and install firmware for:
665                    Intel 6005 wireless card into /lib/firmware.
666
667        config IWL6030_FW
668                bool "Intel 6030 Firmware"
669                default y
670                help
671                  Download and install firmware for:
672                    Intel 6030 wireless card into /lib/firmware.
673
674        config IWL100_FW
675                bool "Intel 100 Firmware"
676                default y
677                help
678                  Download and install firmware for:
679                    Intel 100 wireless card into /lib/firmware.
680
681        endmenu
682endef
683
684define KernelPackage/iwl-legacy
685  $(call KernelPackage/mac80211/Default)
686  DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
687  TITLE:=Intel legacy Wireless support
688  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl-legacy.$(LINUX_KMOD_SUFFIX)
689  AUTOLOAD:=$(call AutoLoad,60,iwl-legacy)
690endef
691
692define KernelPackage/iwl-legacy/description
693 iwl-legacy kernel module for legacy Intel wireless support
694endef
695
696define KernelPackage/iwl3945
697  $(call KernelPackage/mac80211/Default)
698  DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
699  TITLE:=Intel iwl3945 Wireless support
700  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.$(LINUX_KMOD_SUFFIX)
701  AUTOLOAD:=$(call AutoLoad,61,iwl3945)
702endef
703
704define KernelPackage/iwl3945/description
705 iwl3945 kernel module for Intel 3945 support
706endef
707
708define KernelPackage/iwl4965
709  $(call KernelPackage/mac80211/Default)
710  DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
711  TITLE:=Intel iwl4965 Wireless support
712  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.$(LINUX_KMOD_SUFFIX)
713  AUTOLOAD:=$(call AutoLoad,61,iwl4965)
714endef
715
716define KernelPackage/iwl4965/description
717 iwl4965 kernel module for Intel 4965 support
718endef
719
720
721define KernelPackage/mwl8k
722  $(call KernelPackage/mac80211/Default)
723  TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
724  URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
725  DEPENDS+= @PCI_SUPPORT +kmod-mac80211
726  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
727  AUTOLOAD:=$(call AutoLoad,27,mwl8k)
728endef
729
730define KernelPackage/mwl8k/description
731 Kernel modules for Marvell TOPDOG 802.11 Wireless cards
732endef
733
734#Broadcom firmware
735ifneq ($(CONFIG_B43_FW_5_10),)
736  PKG_B43_FWV4_NAME:=broadcom-wl
737  PKG_B43_FWV4_VERSION:=5.10.56.27.3
738  PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
739  PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
740  PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
741  PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
742else
743ifneq ($(CONFIG_B43_FW_4_178),)
744  PKG_B43_FWV4_NAME:=broadcom-wl
745  PKG_B43_FWV4_VERSION:=4.178.10.4
746  PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
747  PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
748  PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
749  PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
750else
751  PKG_B43_FWV4_NAME:=broadcom-wl
752  PKG_B43_FWV4_VERSION:=4.150.10.5
753  PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
754  PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
755  PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
756  PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
757endif
758endif
759ifneq ($(CONFIG_B43_OPENFIRMWARE),)
760  PKG_B43_FWV4_NAME:=broadcom-wl
761  PKG_B43_FWV4_VERSION:=5.2
762  PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
763  PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
764  PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
765  PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
766endif
767
768
769PKG_B43_FWV3_NAME:=wl_apsta
770PKG_B43_FWV3_VERSION:=3.130.20.0
771PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
772PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
773PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
774
775ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
776  PKG_B43_FWCUTTER_NAME:=b43-fwcutter
777  PKG_B43_FWCUTTER_VERSION:=3e69531aa65b8f664a0ab00dfc3e2eefeb0cb417
778  PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
779  PKG_B43_FWCUTTER_PROTO:=git
780  PKG_B43_FWCUTTER_SOURCE_URL:=http://git.bu3sch.de/git/b43-tools.git
781  PKG_B43_FWCUTTER_SUBDIR:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)
782  PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/fwcutter/
783else
784  PKG_B43_FWCUTTER_NAME:=b43-fwcutter
785  PKG_B43_FWCUTTER_VERSION:=014
786  PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
787  PKG_B43_FWCUTTER_PROTO:=default
788  PKG_B43_FWCUTTER_SOURCE_URL:=http://bu3sch.de/b43/fwcutter/
789  PKG_B43_FWCUTTER_MD5SUM:=dd63f9149510bd6e01b89314e955083b
790  PKG_B43_FWCUTTER_SUBDIR:=b43-fwcutter-$(PKG_B43_FWCUTTER_VERSION)
791  PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/
792endif
793
794define Download/b43-common
795  FILE:=$(PKG_B43_FWCUTTER_SOURCE)
796  URL:=$(PKG_B43_FWCUTTER_SOURCE_URL)
797  MD5SUM:=$(PKG_B43_FWCUTTER_MD5SUM)
798  PROTO:=$(PKG_B43_FWCUTTER_PROTO)
799  VERSION:=$(PKG_B43_FWCUTTER_VERSION)
800  SUBDIR:=$(PKG_B43_FWCUTTER_SUBDIR)
801endef
802$(eval $(call Download,b43-common))
803
804define Download/b43
805  FILE:=$(PKG_B43_FWV4_SOURCE)
806  URL:=$(PKG_B43_FWV4_SOURCE_URL)
807  MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
808endef
809$(eval $(call Download,b43))
810
811define Download/b43legacy
812  FILE:=$(PKG_B43_FWV3_SOURCE)
813  URL:=$(PKG_B43_FWV3_SOURCE_URL)
814  MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
815endef
816$(eval $(call Download,b43legacy))
817
818define KernelPackage/b43-common
819  $(call KernelPackage/mac80211/Default)
820  TITLE:=Generic stuff for Broadcom wireless devices
821  URL:=http://linuxwireless.org/en/users/Drivers/b43
822  KCONFIG:= \
823        CONFIG_HW_RANDOM=y
824  DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
825endef
826
827define KernelPackage/b43
828$(call KernelPackage/b43-common)
829  TITLE:=Broadcom 43xx wireless support
830  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
831  AUTOLOAD:=$(call AutoLoad,30,b43)
832  MENU:=1
833endef
834
835define KernelPackage/b43/config
836        menu "Configuration"
837                depends on PACKAGE_kmod-b43
838
839        choice
840                prompt "b43 firmware version"
841                default B43_FW_4_150
842                help
843                  This option allows you to select the version of the b43 firmware.
844
845        config B43_FW_4_150
846                bool "Firmware 410.2160 from driver 4.150.10.5 (stable)"
847                help
848                  Stable firmware for BCM43xx devices.
849
850                  If unsure, select this.
851
852        config B43_FW_4_178
853                bool "Firmware 478.104 from driver 4.178.10.4"
854                help
855                  Experimental firmware for BCM43xx devices.
856
857                  This firmware is not tested as much as the "stable" firmware.
858
859                  If unsure, select the "stable" firmware.
860
861        config B43_FW_5_10
862                bool "Firmware 508.1084 from driver 5.10.56.27"
863                help
864                  Newer experimental firmware for BCM43xx devices.
865
866                  This firmware is mostly untested. It is needed for some N-PHY devices.
867
868                  If unsure, select the "stable" firmware.
869
870        config B43_OPENFIRMWARE
871                bool "Open FirmWare for WiFi networks"
872                help
873                  Opensource firmware for BCM43xx devices.
874
875                  Do _not_ select this, unless you know what you are doing.
876                  The Opensource firmware is not suitable for embedded devices, yet.
877                  It does not support QoS, which is bad for AccessPoints.
878                  It does not support hardware crypto acceleration, which is a showstopper
879                  for embedded devices with low CPU resources.
880
881                  If unsure, select the "stable" firmware.
882
883        endchoice
884
885        config B43_FW_SQUASH
886                bool "Remove unnecessary firmware files"
887                depends on !B43_OPENFIRMWARE
888                default y
889                help
890                  This options allows you to remove unnecessary b43 firmware files
891                  from the final rootfs image. This can reduce the rootfs size by
892                  up to 200k.
893
894                  If unsure, say Y.
895
896        config B43_FW_SQUASH_COREREVS
897                string "Core revisions to include"
898                depends on B43_FW_SQUASH
899                default "5,6,7,8,9,10,11,13,14,15,16" if PACKAGE_B43_PHY_N
900                default "5,6,7,8,9,10,13,14,15" if !PACKAGE_B43_PHY_N
901                help
902                  This is a comma seperated list of core revision numbers.
903
904                  Example (keep files for rev5 only):
905                    5
906
907                  Example (keep files for rev5 and rev11):
908                    5,11
909
910        config B43_FW_SQUASH_PHYTYPES
911                string "PHY types to include"
912                depends on B43_FW_SQUASH
913                default "G,LP,N" if PACKAGE_B43_PHY_N
914                default "G,LP" if !PACKAGE_B43_PHY_N
915                help
916                  This is a comma seperated list of PHY types:
917                    A  => A-PHY
918                    AG => Dual A-PHY G-PHY
919                    G  => G-PHY
920                    LP => LP-PHY
921                    N  => N-PHY
922
923                  Example (keep files for G-PHY only):
924                    G
925
926                  Example (keep files for G-PHY and N-PHY):
927                    G,N
928
929        config PACKAGE_B43_DEBUG
930                bool "Enable debug output and debugfs for b43"
931                default n
932                help
933                  Enable additional debug output and runtime sanity checks for b43
934                  and enables the debugfs interface.
935
936                  If unsure, say N.
937
938        config PACKAGE_B43_PIO
939                bool "Enable support for PIO transfer mode"
940                default n
941                help
942                  Enable support for using PIO instead of DMA. Unless you have DMA
943                  transfer problems you don't need this.
944
945                  If unsure, say N.
946
947        config PACKAGE_B43_PHY_N
948                bool "Enable support for N-PHYs"
949                select B43_FW_5_10
950                default n
951                help
952                  Enable support for BCM4321 and BCM4322.
953
954                  Currently only 11g speed is available.
955
956                  If unsure, say N.
957
958        endmenu
959endef
960
961define KernelPackage/b43/description
962Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
963endef
964
965define KernelPackage/b43legacy
966$(call KernelPackage/b43-common)
967  TITLE:=Broadcom 43xx-legacy wireless support
968  FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
969  AUTOLOAD:=$(call AutoLoad,30,b43legacy)
970  MENU:=1
971endef
972
973define KernelPackage/b43legacy/config
974        menu "Configuration"
975                depends on PACKAGE_kmod-b43legacy
976
977        config B43LEGACY_FW_SQUASH
978                bool "Remove unnecessary firmware files"
979                default y
980                help
981                  This options allows you to remove unnecessary b43legacy firmware files
982                  from the final rootfs image. This can reduce the rootfs size by
983                  up to 50k.
984
985                  If unsure, say Y.
986
987        config B43LEGACY_FW_SQUASH_COREREVS
988                string "Core revisions to include"
989                depends on B43LEGACY_FW_SQUASH
990                default "1,2,3,4"
991                help
992                  This is a comma seperated list of core revision numbers.
993
994                  Example (keep files for rev4 only):
995                    4
996
997                  Example (keep files for rev2 and rev4):
998                    2,4
999
1000        endmenu
1001endef
1002
1003define KernelPackage/b43legacy/description
1004Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
1005endef
1006
1007BUILDFLAGS:= \
1008        -I$(PKG_BUILD_DIR)/include \
1009        $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
1010        $(if $(CONFIG_PCI),-DCONFIG_B43_PCI_AUTOSELECT -DCONFIG_B43_PCICORE_AUTOSELECT) \
1011        $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS) \
1012        -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
1013        $(if $(CONFIG_PCI),-DCONFIG_ATH9K_PCI) \
1014        $(if $(CONFIG_TARGET_ar71xx),-DCONFIG_ATH9K_AHB) \
1015        $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS), -DCONFIG_CFG80211_DEBUGFS -DCONFIG_MAC80211_DEBUGFS -DCONFIG_ATH9K_DEBUGFS -DCONFIG_CARL9170_DEBUGFS -DCONFIG_ATH9K_HTC_DEBUGFS -DCONFIG_ATH5K_DEBUG) \
1016        $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG -DCONFIG_ATH9K_PKTLOG) \
1017        -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
1018        -DCONFIG_MAC80211_RC_MINSTREL_HT \
1019        $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1) \
1020        $(if $(CONFIG_PACKAGE_B43_DEBUG),-DCONFIG_B43_DEBUG) \
1021        $(if $(CONFIG_PACKAGE_B43_PIO),-DCONFIG_B43_PIO) \
1022        $(if $(CONFIG_PACKAGE_B43_PHY_N),-DCONFIG_B43_PHY_N) \
1023        $(if $(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS),-DCONFIG_RT2X00_LIB_DEBUGFS) \
1024        $(if $(CONFIG_PACKAGE_RT2X00_DEBUG),-DCONFIG_RT2X00_DEBUG) \
1025        $(if $(NEED_RT2X00_LIB_HT),-DCONFIG_RT2X00_LIB_HT) \
1026        $(if $(NEED_RT2X00_LIB_CRYPTO),-DCONFIG_RT2X00_LIB_CRYPTO) \
1027        $(if $(NEED_RT2X00_LIB_FIRMWARE),-DCONFIG_RT2X00_LIB_FIRMWARE) \
1028        $(if $(NEED_RT2X00_LIB_LEDS),-DCONFIG_RT2X00_LIB_LEDS) \
1029        $(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),-DCONFIG_RT2X00_LIB_PCI) \
1030        $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2X00_LIB_USB) \
1031        $(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),-DCONFIG_RT2X00_LIB_SOC) \
1032        $(if $(CONFIG_TARGET_atheros),-DCONFIG_ATH5K_AHB,-DCONFIG_ATH5K_PCI) \
1033        $(if $(CONFIG_PACKAGE_kmod-iwl3945),-DCONFIG_IWL3945) \
1034        $(if $(CONFIG_PACKAGE_kmod-iwl4965),-DCONFIG_COMPAT_IWL4965)
1035
1036MAKE_OPTS:= \
1037        CROSS_COMPILE="$(KERNEL_CROSS)" \
1038        ARCH="$(LINUX_KARCH)" \
1039        EXTRA_CFLAGS="$(BUILDFLAGS)" \
1040        $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
1041        CONFIG_MAC80211=$(if $(CONFIG_PACKAGE_kmod-mac80211),m) \
1042        CONFIG_MAC80211_RC_MINSTREL=y \
1043        CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
1044        CONFIG_CFG80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1045        CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1046        CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
1047        CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
1048        CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
1049        CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
1050        CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
1051        CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
1052        CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
1053        CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
1054        CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
1055        CONFIG_B43_DEBUG=$(if $(CONFIG_PACKAGE_B43_DEBUG),y) \
1056        CONFIG_B43_PIO=$(if $(CONFIG_PACKAGE_B43_PIO),y) \
1057        CONFIG_B43_PHY_N=$(if $(CONFIG_PACKAGE_B43_PHY_N),y) \
1058        CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
1059        CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
1060        CONFIG_ATH9K_PKTLOG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
1061        CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
1062        CONFIG_ATH5K_PCI=$(if $(CONFIG_TARGET_atheros),,y) \
1063        CONFIG_ATH5K_AHB=$(if $(CONFIG_TARGET_atheros),y) \
1064        CONFIG_ATH5K_DEBUG=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1065        CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
1066        CONFIG_ATH9K_PCI=$(CONFIG_PCI) \
1067        CONFIG_ATH9K_AHB=$(if $(CONFIG_TARGET_ar71xx),y) \
1068        CONFIG_ATH9K_HTC=$(if $(CONFIG_PACKAGE_kmod-ath9k-htc),m) \
1069        CONFIG_ATH9K_HTC_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1070        CONFIG_ATH9K_HW=$(if $(CONFIG_PACKAGE_kmod-ath9k-common),m) \
1071        CONFIG_ATH9K_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath9k-common),m) \
1072        CONFIG_ATH9K_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1073        CONFIG_CARL9170=$(if $(CONFIG_PACKAGE_kmod-carl9170),m) \
1074        CONFIG_CARL9170_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
1075        CONFIG_COMPAT_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
1076        CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
1077        CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
1078        CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
1079        CONFIG_P54_SPI=$(if $(CONFIG_PACKAGE_kmod-p54-spi),m) \
1080        CONFIG_P54_SPI_DEFAULT_EEPROM=n \
1081        CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
1082        CONFIG_RT2X00_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
1083        CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
1084        CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
1085        CONFIG_RT2X00_LIB_SOC=$(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),m) \
1086        CONFIG_RT2X00_LIB_DEBUGFS=$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) \
1087        CONFIG_RT2X00_LIB_CRYPTO=$(NEED_RT2X00_LIB_CRYPTO) \
1088        CONFIG_RT2X00_LIB_FIRMWARE=$(NEED_RT2X00_LIB_FIRMWARE) \
1089        CONFIG_RT2X00_LIB_HT=$(NEED_RT2X00_LIB_HT) \
1090        CONFIG_RT2X00_LIB_LEDS=$(NEED_RT2X00_LIB_LEDS) \
1091        CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
1092        CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
1093        CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
1094        CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
1095        CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
1096        CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
1097        CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
1098        CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
1099        CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
1100        CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
1101        CONFIG_RTL8192CE= \
1102        CONFIG_RTLWIFI= \
1103        CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
1104        CONFIG_PCMCIA= \
1105        CONFIG_LIBIPW=$(if $(CONFIG_PACKAGE_kmod-net-libipw),m) \
1106        CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas-sd)$(CONFIG_PACKAGE_kmod-libertas-usb),m) \
1107        CONFIG_LIBERTAS_CS= \
1108        CONFIG_LIBERTAS_SPI= \
1109        CONFIG_LIBERTAS_SDIO=$(if $(CONFIG_PACKAGE_kmod-libertas-sd),m) \
1110        CONFIG_LIBERTAS_THINFIRM= \
1111        CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas-usb),m) \
1112        CONFIG_IPW2100=$(if $(CONFIG_PACKAGE_kmod-net-ipw2100),m) \
1113        CONFIG_IPW2200=$(if $(CONFIG_PACKAGE_kmod-net-ipw2200),m) \
1114        CONFIG_NL80211=y \
1115        CONFIG_LIB80211= \
1116        CONFIG_LIB80211_CRYPT_WEP= \
1117        CONFIG_LIB80211_CRYPT_CCMP= \
1118        CONFIG_LIB80211_CRYPT_TKIP= \
1119        CONFIG_IWLAGN=$(if $(CONFIG_PACKAGE_kmod-iwlagn),m) \
1120        CONFIG_IWLWIFI_LEGACY=$(if $(CONFIG_PACKAGE_kmod-iwl-legacy),m) \
1121        CONFIG_COMPAT_IWL4965=$(if $(CONFIG_PACKAGE_kmod-iwl4965),m) \
1122        CONFIG_IWL3945=$(if $(CONFIG_PACKAGE_kmod-iwl3945),m) \
1123        CONFIG_MWL8K=$(if $(CONFIG_PACKAGE_kmod-mwl8k),m) \
1124        CONFIG_ATMEL= \
1125        CONFIG_PCMCIA_ATMEL= \
1126        CONFIG_ADM8211= \
1127        CONFIG_USB_NET_RNDIS_HOST= \
1128        CONFIG_USB_NET_RNDIS_WLAN= \
1129        CONFIG_USB_NET_CDCETHER= \
1130        CONFIG_USB_USBNET= \
1131        CONFIG_AT76C50X_USB= \
1132        CONFIG_WL12XX= \
1133        CONFIG_EEPROM_93CX6= \
1134        CONFIG_HERMES=$(if $(CONFIG_PACKAGE_kmod-net-hermes),m) \
1135        CONFIG_HERMES_CACHE_FW_ON_INIT= \
1136        CONFIG_PCI_HERMES=$(if $(CONFIG_PACKAGE_kmod-net-hermes-pci),m) \
1137        CONFIG_PLX_HERMES=$(if $(CONFIG_PACKAGE_kmod-net-hermes-plx),m) \
1138        CONFIG_PCMCIA_HERMES=$(if $(CONFIG_PACKAGE_kmod-net-hermes-pcmcia),m) \
1139        CONFIG_HERMES_PRISM= \
1140        CONFIG_APPLE_AIRPORT= \
1141        CONFIG_TMD_HERMES= \
1142        CONFIG_NORTEL_HERMES= \
1143        CONFIG_PCMCIA_SPECTRUM= \
1144        CONFIG_ORINOCO_USB= \
1145        CONFIG_IWM= \
1146        CONFIG_MWIFIEX= \
1147        CONFIG_MAC80211_RC_MINSTREL_HT=y \
1148        MADWIFI= \
1149        CONFIG_B44= \
1150        CONFIG_ATL1= \
1151        CONFIG_ATL2= \
1152        CONFIG_ATL1E= \
1153        CONFIG_ATL1C= \
1154        KLIB_BUILD="$(LINUX_DIR)" \
1155        MODPROBE=: \
1156        KLIB=$(TARGET_MODULES_DIR) \
1157        KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1158        KBUILD_LDFLAGS_MODULE_PREREQ=
1159
1160ifeq ($(CONFIG_PACKAGE_kmod-libertas-sd)$(CONFIG_PACKAGE_kmod-libertas-usb)$(CONFIG_PACKAGE_kmod-rt2x00-lib),)
1161  MAKE_OPTS += CONFIG_COMPAT_KFIFO=
1162endif
1163
1164define Build/Prepare
1165        rm -rf $(PKG_BUILD_DIR)
1166        mkdir -p $(PKG_BUILD_DIR)
1167        $(PKG_UNPACK)
1168        $(Build/Patch)
1169        $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1170        $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1171        $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1172        $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
1173        rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
1174        rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
1175endef
1176
1177ifneq ($(CONFIG_PACKAGE_kmod-cfg80211),)
1178 define Build/Compile/kmod
1179        rm -rf $(PKG_BUILD_DIR)/modules
1180        $(MAKE) $(PKG_JOBS) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
1181 endef
1182endif
1183
1184define Build/Compile
1185        $(call Build/Compile/kmod)
1186endef
1187
1188define Build/InstallDev
1189        mkdir -p \
1190                $(1)/usr/include/mac80211 \
1191                $(1)/usr/include/mac80211/ath \
1192                $(1)/usr/include/net/mac80211
1193        $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1194        $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1195        $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1196endef
1197
1198define KernelPackage/libertas-usb/install
1199        $(INSTALL_DIR) $(1)/lib/firmware
1200        $(INSTALL_DATA) \
1201                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
1202                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v5.bin \
1203                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
1204                $(1)/lib/firmware/
1205endef
1206
1207define KernelPackage/libertas-sd/install
1208        $(INSTALL_DIR) $(1)/lib/firmware
1209        $(INSTALL_DATA) \
1210                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
1211                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
1212                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
1213                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
1214                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v8_helper.bin \
1215                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v8.bin \
1216                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
1217                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
1218                $(1)/lib/firmware/
1219endef
1220
1221define KernelPackage/cfg80211/install
1222        $(INSTALL_DIR) $(1)/lib/wifi
1223        $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1224endef
1225
1226define KernelPackage/p54-pci/install
1227        $(INSTALL_DIR) $(1)/lib/firmware
1228        $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
1229endef
1230
1231define KernelPackage/p54-usb/install
1232        $(INSTALL_DIR) $(1)/lib/firmware
1233        $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
1234endef
1235
1236define KernelPackage/p54-spi/install
1237        $(INSTALL_DIR) $(1)/lib/firmware
1238        $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
1239endef
1240
1241define KernelPackage/rt61-pci/install
1242        $(INSTALL_DIR) $(1)/lib/firmware
1243        $(INSTALL_DATA) \
1244                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
1245                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
1246                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
1247                $(1)/lib/firmware/
1248endef
1249
1250define KernelPackage/rt73-usb/install
1251        $(INSTALL_DIR) $(1)/lib/firmware
1252        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
1253endef
1254
1255define KernelPackage/rt2800-pci/install
1256        $(INSTALL_DIR) $(1)/lib/firmware
1257        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin $(1)/lib/firmware/
1258endef
1259
1260define KernelPackage/rt2800-usb/install
1261        $(INSTALL_DIR) $(1)/lib/firmware
1262        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
1263endef
1264
1265define KernelPackage/zd1211rw/install
1266        $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1267        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1268endef
1269
1270define KernelPackage/ath9k-htc/install
1271        $(INSTALL_DIR) $(1)/lib/firmware
1272        $(INSTALL_DATA) \
1273                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ar9271.fw \
1274                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ar7010.fw \
1275                $(1)/lib/firmware/
1276endef
1277
1278define KernelPackage/mwl8k/install
1279        $(INSTALL_DIR) $(1)/lib/firmware
1280        $(INSTALL_DATA) \
1281                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-2.fw \
1282                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
1283                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
1284                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
1285                $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
1286                $(1)/lib/firmware/
1287endef
1288
1289define KernelPackage/net-ipw2100/install
1290        $(INSTALL_DIR) $(1)/lib/firmware
1291        $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1292endef
1293
1294define KernelPackage/net-ipw2200/install
1295        $(INSTALL_DIR) $(1)/lib/firmware
1296        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1297endef
1298
1299define KernelPackage/iwlagn/install
1300        $(INSTALL_DIR) $(1)/lib/firmware
1301ifneq ($(CONFIG_IWL5000_FW),)
1302        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
1303endif
1304ifneq ($(CONFIG_IWL5150_FW),)
1305        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
1306endif
1307ifneq ($(CONFIG_IWL1000_FW),)
1308        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
1309endif
1310ifneq ($(CONFIG_IWL6000_FW),)
1311        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
1312endif
1313ifneq ($(CONFIG_IWL6050_FW),)
1314        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
1315endif
1316ifneq ($(CONFIG_IWL6005_FW),)
1317        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-5.ucode $(1)/lib/firmware
1318endif
1319ifneq ($(CONFIG_IWL6030_FW),)
1320        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-5.ucode $(1)/lib/firmware
1321endif
1322ifneq ($(CONFIG_IWL100_FW),)
1323        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
1324endif
1325endef
1326
1327define KernelPackage/iwl3945/install
1328        $(INSTALL_DIR) $(1)/lib/firmware
1329        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
1330endef
1331
1332define KernelPackage/iwl4965/install
1333        $(INSTALL_DIR) $(1)/lib/firmware
1334        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
1335endef
1336
1337define Build/b43-common
1338        tar xjf "$(DL_DIR)/$(PKG_B43_FWCUTTER_SOURCE)" -C "$(PKG_BUILD_DIR)"
1339        $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)" \
1340                CFLAGS="-I$(STAGING_DIR_HOST)/include -include endian.h" \
1341                QUIET_SPARSE=:
1342        $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
1343ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1344        $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
1345        $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
1346        $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
1347        $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
1348endif
1349        $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
1350endef
1351
1352define KernelPackage/b43/install
1353        rm -rf $(1)/lib/firmware/
1354        $(call Build/b43-common)
1355ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1356        tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1357else
1358        tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1359endif
1360        $(INSTALL_DIR) $(1)/lib/firmware/
1361ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1362        $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1363        $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1364        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1365        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1366        $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1367else
1368        b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1369endif
1370ifneq ($(CONFIG_B43_FW_SQUASH),)
1371        b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1372endif
1373endef
1374
1375define KernelPackage/b43legacy/install
1376        $(call Build/b43-common)
1377        $(INSTALL_DIR) $(1)/lib/firmware/
1378
1379        b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1380ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1381        b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1382endif
1383endef
1384
1385$(eval $(call KernelPackage,ath5k))
1386$(eval $(call KernelPackage,libertas-usb))
1387$(eval $(call KernelPackage,libertas-sd))
1388$(eval $(call KernelPackage,cfg80211))
1389$(eval $(call KernelPackage,mac80211))
1390$(eval $(call KernelPackage,p54-common))
1391$(eval $(call KernelPackage,p54-pci))
1392$(eval $(call KernelPackage,p54-usb))
1393$(eval $(call KernelPackage,p54-spi))
1394$(eval $(call KernelPackage,rt2x00-lib))
1395$(eval $(call KernelPackage,rt2x00-pci))
1396$(eval $(call KernelPackage,rt2x00-usb))
1397$(eval $(call KernelPackage,rt2x00-soc))
1398$(eval $(call KernelPackage,rt2800-lib))
1399$(eval $(call KernelPackage,rt2400-pci))
1400$(eval $(call KernelPackage,rt2500-pci))
1401$(eval $(call KernelPackage,rt2500-usb))
1402$(eval $(call KernelPackage,rt61-pci))
1403$(eval $(call KernelPackage,rt73-usb))
1404$(eval $(call KernelPackage,rt2800-pci))
1405$(eval $(call KernelPackage,rt2800-usb))
1406$(eval $(call KernelPackage,rtl8180))
1407$(eval $(call KernelPackage,rtl8187))
1408$(eval $(call KernelPackage,zd1211rw))
1409$(eval $(call KernelPackage,mac80211-hwsim))
1410$(eval $(call KernelPackage,ath9k-common))
1411$(eval $(call KernelPackage,ath9k))
1412$(eval $(call KernelPackage,ath9k-htc))
1413$(eval $(call KernelPackage,ath))
1414$(eval $(call KernelPackage,carl9170))
1415$(eval $(call KernelPackage,b43))
1416$(eval $(call KernelPackage,b43legacy))
1417$(eval $(call KernelPackage,net-libipw))
1418$(eval $(call KernelPackage,net-ipw2100))
1419$(eval $(call KernelPackage,net-ipw2200))
1420$(eval $(call KernelPackage,iwlagn))
1421$(eval $(call KernelPackage,iwl-legacy))
1422$(eval $(call KernelPackage,iwl4965))
1423$(eval $(call KernelPackage,iwl3945))
1424$(eval $(call KernelPackage,mwl8k))
1425$(eval $(call KernelPackage,net-hermes))
1426$(eval $(call KernelPackage,net-hermes-pci))
1427$(eval $(call KernelPackage,net-hermes-plx))
1428$(eval $(call KernelPackage,net-hermes-pcmcia))
Note: See TracBrowser for help on using the repository browser.