source: trunk/package/mac80211/Makefile @ 31277

Last change on this file since 31277 was 31277, checked in by hauke, 5 years ago

mac80211: add missing dependency to mac80211 to brcmsmac

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