source: trunk/package/mac80211/Makefile @ 29485

Last change on this file since 29485 was 29485, checked in by hauke, 4 years ago

mac80211: add support for firmware 666.2 for b43 devices

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