2 # Copyright (C) 2007-2009 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
13 PKG_VERSION:=2009-11-03
16 http://www.orbit-lab.org/kernel/compat-wireless-2.6/2009/11 \
17 http://wireless.kernel.org/download/compat-wireless-2.6
18 PKG_MD5SUM:=f8434790c9552abb9c98926d7ae616fe
20 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
21 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
23 PKG_CONFIG_DEPENDS:= \
24 CONFIG_PACKAGE_kmod-mac80211 \
26 include $(INCLUDE_DIR)/package.mk
28 WMENU:=Wireless Drivers
30 define KernelPackage/mac80211/Default
32 URL:=http://linuxwireless.org/
33 DEPENDS:=@LINUX_2_6 @!TARGET_avr32
36 define KernelPackage/mac80211
37 $(call KernelPackage/mac80211/Default)
38 TITLE:=Linux 802.11 Wireless Networking Stack
39 DEPENDS+= +kmod-crypto-arc4 +kmod-crypto-aes +wireless-tools +@PACKAGE_iw @!LINUX_2_6_21 @!LINUX_2_6_25
41 $(PKG_BUILD_DIR)/net/mac80211/mac80211.$(LINUX_KMOD_SUFFIX) \
42 $(PKG_BUILD_DIR)/net/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
43 AUTOLOAD:=$(call AutoLoad,20,cfg80211 mac80211)
46 define KernelPackage/mac80211/config
47 source "$(SOURCE)/Config.in"
50 define KernelPackage/mac80211/description
51 Linux 802.11 Wireless Networking Stack
55 P54PCIFW:=2.13.12.0.arm
56 P54USBFW:=2.13.24.0.lm86.arm
58 define Download/p54usb
60 URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
61 MD5SUM:=2efd50eab43c0d0376765576a54b7a30
63 $(eval $(call Download,p54usb))
65 define Download/p54pci
67 URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
68 MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
70 $(eval $(call Download,p54pci))
72 define KernelPackage/p54/Default
73 $(call KernelPackage/mac80211/Default)
74 TITLE:=Prism54 Drivers
77 define KernelPackage/p54/description
78 Kernel module for Prism54 chipsets (mac80211)
81 define KernelPackage/p54-common
82 $(call KernelPackage/p54/Default)
83 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT +kmod-mac80211
85 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.$(LINUX_KMOD_SUFFIX)
86 AUTOLOAD:=$(call AutoLoad,30,p54common)
89 define KernelPackage/p54-pci
90 $(call KernelPackage/p54/Default)
92 DEPENDS+= @PCI_SUPPORT +kmod-p54-common
93 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.$(LINUX_KMOD_SUFFIX)
94 AUTOLOAD:=$(call AutoLoad,31,p54pci)
97 define KernelPackage/p54-usb
98 $(call KernelPackage/p54/Default)
100 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
101 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.$(LINUX_KMOD_SUFFIX)
102 AUTOLOAD:=$(call AutoLoad,31,p54usb)
105 # Ralink rt2x00 drivers
106 RT61FW:=RT61_Firmware_V1.2.zip
107 RT71FW:=RT71W_Firmware_V1.8.zip
108 RT2860FW:=RT2860_Firmware_V11.zip
109 RT2870FW:=RT2870_Firmware_V8.zip
113 URL:=http://www.ralinktech.com.tw/data/
114 MD5SUM:=d4c690c93b470bc9a681297c2adc6281
116 $(eval $(call Download,rt61))
118 define Download/rt71w
120 URL:=http://www.ralinktech.com.tw/data/
121 MD5SUM:=1e7a5dc574e0268574fcda3fd5cf52f7
123 $(eval $(call Download,rt71w))
125 define Download/rt2860
127 URL:=http://www.ralinktech.com.tw/data/drivers
128 MD5SUM:=440a81756a52c53528f16faa41c40124
130 $(eval $(call Download,rt2860))
132 define Download/rt2870
134 URL:=http://www.ralinktech.com.tw/data/drivers
135 MD5SUM:=a7aae1d8cfd68e4d86a73000df0b6584
137 $(eval $(call Download,rt2870))
141 define Download/ar9170
143 URL:=http://www.kernel.org/pub/linux/kernel/people/mcgrof/firmware/ar9170
144 MD5SUM:=34feec4ec0eae3bb92c7c1ea2dfb4530
146 $(eval $(call Download,ar9170))
148 define KernelPackage/rt2x00/Default
149 $(call KernelPackage/mac80211/Default)
150 TITLE:=Ralink Drivers for RT2x00 cards
153 define KernelPackage/rt2x00-lib
154 $(call KernelPackage/rt2x00/Default)
155 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT +kmod-mac80211 +kmod-crc-itu-t
157 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.$(LINUX_KMOD_SUFFIX)
158 AUTOLOAD:=$(call AutoLoad,25,blkcipher ecb arc4 rt2x00lib)
161 define KernelPackage/rt2x00-pci
162 $(call KernelPackage/rt2x00/Default)
163 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-lib +kmod-eeprom-93cx6
165 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.$(LINUX_KMOD_SUFFIX)
166 AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
169 define KernelPackage/rt2x00-usb
170 $(call KernelPackage/rt2x00/Default)
171 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
173 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.$(LINUX_KMOD_SUFFIX)
174 AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
177 define KernelPackage/rt2400-pci
178 $(call KernelPackage/rt2x00/Default)
179 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
181 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.$(LINUX_KMOD_SUFFIX)
182 AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
185 define KernelPackage/rt2500-pci
186 $(call KernelPackage/rt2x00/Default)
187 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
189 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.$(LINUX_KMOD_SUFFIX)
190 AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
193 define KernelPackage/rt2500-usb
194 $(call KernelPackage/rt2x00/Default)
195 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
197 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.$(LINUX_KMOD_SUFFIX)
198 AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
201 define KernelPackage/rt61-pci
202 $(call KernelPackage/rt2x00/Default)
203 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
205 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.$(LINUX_KMOD_SUFFIX)
206 AUTOLOAD:=$(call AutoLoad,27,rt61pci)
209 define KernelPackage/rt73-usb
210 $(call KernelPackage/rt2x00/Default)
211 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
213 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.$(LINUX_KMOD_SUFFIX)
214 AUTOLOAD:=$(call AutoLoad,27,rt73usb)
217 define KernelPackage/rt2800-pci
218 $(call KernelPackage/rt2x00/Default)
219 DEPENDS+= +kmod-rt2x00-pci +kmod-crc-ccitt
221 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.$(LINUX_KMOD_SUFFIX)
222 AUTOLOAD:=$(call AutoLoad,27,rt2800pci)
225 define KernelPackage/rt2800-usb
226 $(call KernelPackage/rt2x00/Default)
227 DEPENDS+= +kmod-rt2x00-usb +kmod-crc-ccitt
229 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.$(LINUX_KMOD_SUFFIX)
230 AUTOLOAD:=$(call AutoLoad,27,rt2800usb)
233 define KernelPackage/rtl818x/Default
234 $(call KernelPackage/mac80211/Default)
235 TITLE:=Realtek Drivers for RTL818x devices
236 URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
237 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
240 define KernelPackage/rtl8180
241 $(call KernelPackage/rtl818x/Default)
242 DEPENDS+= @PCI_SUPPORT
243 TITLE+= (RTL8180 PCI)
244 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180.$(LINUX_KMOD_SUFFIX)
245 AUTOLOAD:=$(call AutoLoad,27,rtl8180)
248 define KernelPackage/rtl8187
249 $(call KernelPackage/rtl818x/Default)
250 DEPENDS+= @USB_SUPPORT
251 TITLE+= (RTL8187 USB)
252 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187.$(LINUX_KMOD_SUFFIX)
253 AUTOLOAD:=$(call AutoLoad,27,rtl8187)
256 ZD1211FW_NAME:=zd1211-firmware
257 ZD1211FW_VERSION:=1.4
258 define Download/zd1211rw
259 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
261 MD5SUM:=19f28781d76569af8551c9d11294c870
263 $(eval $(call Download,zd1211rw))
265 define KernelPackage/zd1211rw
266 $(call KernelPackage/mac80211/Default)
267 TITLE:=Zydas ZD1211 support
268 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
269 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.$(LINUX_KMOD_SUFFIX)
270 AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
273 define KernelPackage/ath/config
276 bool "Force Atheros drivers to respect the user's regdomain settings"
277 depends on PACKAGE_kmod-ath
279 Atheros' idea of regulatory handling is that the EEPROM of the card defines
280 the regulatory limits and the user is only allowed to restrict the settings
281 even further, even if the country allows frequencies or power levels that
282 are forbidden by the EEPROM settings.
283 Select this option if you want the driver to respect the user's decision about
286 config PACKAGE_ATH_DEBUG
287 bool "Atheros wireless debugging"
288 depends on PACKAGE_kmod-ath
290 Say Y, if you want to debug atheros wireless drivers.
291 Right now only ath9k makes use of this.
294 define KernelPackage/ath
295 $(call KernelPackage/mac80211/Default)
296 TITLE:=Atheros common driver part
297 DEPENDS+= @PCI_SUPPORT +kmod-mac80211
298 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.$(LINUX_KMOD_SUFFIX)
299 AUTOLOAD:=$(call AutoLoad,26,ath)
302 define KernelPackage/ath/description
303 This module contains some common parts needed by Atheros Wireless drivers.
306 define KernelPackage/ath5k
307 $(call KernelPackage/mac80211/Default)
308 TITLE:=Atheros 5xxx wireless cards support
309 URL:=http://linuxwireless.org/en/users/Drivers/ath5k
311 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.$(LINUX_KMOD_SUFFIX)
312 AUTOLOAD:=$(call AutoLoad,27,ath5k)
315 define KernelPackage/ath5k/description
316 This module adds support for wireless adapters based on
317 Atheros 5xxx chipset.
320 define KernelPackage/ath9k
321 $(call KernelPackage/mac80211/Default)
322 TITLE:=Atheros 802.11n wireless cards support
323 URL:=http://linuxwireless.org/en/users/Drivers/ath9k
326 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.$(LINUX_KMOD_SUFFIX) \
327 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.$(LINUX_KMOD_SUFFIX)
328 AUTOLOAD:=$(call AutoLoad,27,ath9k_hw ath9k)
331 define KernelPackage/ath9k/description
332 This module adds support for wireless adapters based on
333 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
336 define KernelPackage/ath9k/config
337 source "$(SOURCE)/Config.in.ath9k"
340 USB8388FW_NAME:=usb8388
341 USB8388FW_VERSION:=5.110.22.p23
343 define Download/usb8388
344 URL:=http://dev.laptop.org/pub/firmware/libertas/
345 FILE:=$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin
346 MD5SUM=5e38f55719df3d0c58dd3bd02575a09c
348 $(eval $(call Download,usb8388))
350 define KernelPackage/libertas
351 $(call KernelPackage/mac80211/Default)
352 DEPENDS+= @USB_SUPPORT +kmod-mac80211 +kmod-usb-core +kmod-lib80211
353 TITLE:=Marvell 88W8015 Wireless Driver
355 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.$(LINUX_KMOD_SUFFIX) \
356 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.$(LINUX_KMOD_SUFFIX)
357 AUTOLOAD:=$(call AutoLoad,27,libertas usb8xxx)
361 define KernelPackage/ar9170
362 $(call KernelPackage/mac80211/Default)
363 TITLE:=Atheros AR9170 802.11n USB support
364 URL:=http://wireless.kernel.org/en/users/Drivers/ar9170
365 DEPENDS+= @USB_SUPPORT @!LINUX_2_6_25 +kmod-ath +kmod-usb-core
366 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar9170/ar9170usb.$(LINUX_KMOD_SUFFIX)
367 AUTOLOAD:=$(call AutoLoad,27,ar9170usb)
370 define KernelPackage/ar9170/description
371 This is a driver for the Atheros "otus" 802.11n USB devices.
374 define KernelPackage/mac80211-hwsim
375 $(call KernelPackage/mac80211/Default)
376 TITLE:=mac80211 HW simulation device
377 DEPENDS+= +kmod-mac80211
378 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.$(LINUX_KMOD_SUFFIX)
379 AUTOLOAD:=$(call AutoLoad,60,mac80211_hwsim)
383 ifneq ($(CONFIG_B43_EXPERIMENTAL),)
384 PKG_B43_FWV4_NAME:=broadcom-wl
385 PKG_B43_FWV4_VERSION:=4.178.10.4
386 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl.o
387 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
388 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
389 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
391 PKG_B43_FWV4_NAME:=broadcom-wl
392 PKG_B43_FWV4_VERSION:=4.150.10.5
393 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
394 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
395 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
396 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
398 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
399 PKG_B43_FWV4_NAME:=broadcom-wl
400 PKG_B43_FWV4_VERSION:=5.2
401 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
402 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
403 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
404 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
408 PKG_B43_FWV3_NAME:=wl_apsta
409 PKG_B43_FWV3_VERSION:=3.130.20.0
410 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
411 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
412 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
414 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
415 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
416 PKG_B43_FWCUTTER_VERSION:=3e69531aa65b8f664a0ab00dfc3e2eefeb0cb417
417 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
418 PKG_B43_FWCUTTER_PROTO:=git
419 PKG_B43_FWCUTTER_SOURCE_URL:=http://git.bu3sch.de/git/b43-tools.git
420 PKG_B43_FWCUTTER_SUBDIR:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)
421 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/fwcutter/
423 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
424 PKG_B43_FWCUTTER_VERSION:=012
425 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
426 PKG_B43_FWCUTTER_PROTO:=default
427 PKG_B43_FWCUTTER_SOURCE_URL:=http://bu3sch.de/b43/fwcutter/
428 PKG_B43_FWCUTTER_MD5SUM:=69eadf67b459f313a8d6b37aaabef96c
429 PKG_B43_FWCUTTER_SUBDIR:=b43-fwcutter-$(PKG_B43_FWCUTTER_VERSION)
430 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/
433 define Download/b43-common
434 FILE:=$(PKG_B43_FWCUTTER_SOURCE)
435 URL:=$(PKG_B43_FWCUTTER_SOURCE_URL)
436 MD5SUM:=$(PKG_B43_FWCUTTER_MD5SUM)
437 PROTO:=$(PKG_B43_FWCUTTER_PROTO)
438 VERSION:=$(PKG_B43_FWCUTTER_VERSION)
439 SUBDIR:=$(PKG_B43_FWCUTTER_SUBDIR)
441 $(eval $(call Download,b43-common))
444 FILE:=$(PKG_B43_FWV4_SOURCE)
445 URL:=$(PKG_B43_FWV4_SOURCE_URL)
446 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
448 $(eval $(call Download,b43))
450 define Download/b43legacy
451 FILE:=$(PKG_B43_FWV3_SOURCE)
452 URL:=$(PKG_B43_FWV3_SOURCE_URL)
453 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
455 $(eval $(call Download,b43legacy))
457 define KernelPackage/b43-common
458 $(call KernelPackage/mac80211/Default)
459 TITLE:=Generic stuff for Broadcom wireless devices
460 URL:=http://linuxwireless.org/en/users/Drivers/b43
463 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
466 define KernelPackage/b43
467 $(call KernelPackage/b43-common)
468 TITLE:=Broadcom 43xx wireless support
469 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.$(LINUX_KMOD_SUFFIX)
470 AUTOLOAD:=$(call AutoLoad,30,b43)
473 define KernelPackage/b43/config
474 source "$(SOURCE)/Config.in.b43"
477 define KernelPackage/b43/description
478 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
481 define KernelPackage/b43legacy
482 $(call KernelPackage/b43-common)
483 TITLE:=Broadcom 43xx-legacy wireless support
484 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.$(LINUX_KMOD_SUFFIX)
485 AUTOLOAD:=$(call AutoLoad,30,b43legacy)
488 define KernelPackage/b43legacy/description
489 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
493 -I$(PKG_BUILD_DIR)/include \
494 $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
495 $(if $(CONFIG_PCI),-DCONFIG_B43_PCI_AUTOSELECT -DCONFIG_B43_PCICORE_AUTOSELECT -DCONFIG_SSB_DRIVER_PCICORE_POSSIBLE -DCONFIG_SSB_DRIVER_PCICORE) \
496 $(if $(CONFIG_PCI),-DCONFIG_SSB_PCIHOST_POSSIBLE -DCONFIG_SSB_PCIHOST) \
497 $(if $(CONFIG_PCI),-DCONFIG_SSB_SPROM) \
498 $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS -DCONFIG_AR9170_LEDS) \
499 -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
500 $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),-DCONFIG_MAC80211_DEBUGFS) \
501 $(if $(CONFIG_PACKAGE_ATH9K_DEBUG),-DCONFIG_ATH9K_DEBUG) \
502 $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG) \
503 -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
504 $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1)
507 CROSS_COMPILE="$(KERNEL_CROSS)" \
508 ARCH="$(LINUX_KARCH)" \
509 EXTRA_CFLAGS="$(BUILDFLAGS)" \
510 $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
511 CONFIG_MAC80211_RC_PID=y \
512 CONFIG_MAC80211_RC_MINSTREL=y \
513 CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
514 CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
515 CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
516 CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
517 CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
518 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=$(if $(CONFIG_PCI),y) \
519 CONFIG_SSB_DRIVER_PCICORE=$(if $(CONFIG_PCI),y) \
520 CONFIG_SSB_PCIHOST_POSSIBLE=$(if $(CONFIG_PCI),y) \
521 CONFIG_SSB_PCIHOST=$(if $(CONFIG_PCI),y) \
522 CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
523 CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
524 CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
525 CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
526 CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
527 CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
528 CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
529 CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
530 CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
531 CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
532 CONFIG_ATH9K_DEBUG=$(if $(CONFIG_PACKAGE_ATH9K_DEBUG),y) \
533 CONFIG_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
534 CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
535 CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
536 CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
538 CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
539 CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
540 CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
541 CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
542 CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
543 CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
544 CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
545 CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
546 CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
547 CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
548 CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
549 CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
550 CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
553 CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
554 CONFIG_LIBERTAS_CS= \
555 CONFIG_LIBERTAS_SDIO= \
556 CONFIG_LIBERTAS_THINFIRM= \
557 CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
562 CONFIG_LIB80211_CRYPT_WEP= \
563 CONFIG_LIB80211_CRYPT_CCMP= \
564 CONFIG_LIB80211_CRYPT_TKIP= \
569 CONFIG_PCMCIA_ATMEL= \
571 CONFIG_USB_NET_RNDIS_HOST= \
572 CONFIG_USB_NET_RNDIS_WLAN= \
573 CONFIG_USB_NET_CDCETHER= \
575 CONFIG_AT76C50X_USB= \
577 CONFIG_EEPROM_93CX6= \
578 CONFIG_AR9170_USB=$(if $(CONFIG_PACKAGE_kmod-ar9170),m) \
579 CONFIG_AR9170_LEDS=$(CONFIG_LEDS_TRIGGERS) \
583 KLIB_BUILD="$(LINUX_DIR)" \
585 KLIB=$(TARGET_MODULES_DIR) \
586 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER)))
589 rm -rf $(PKG_BUILD_DIR)
590 mkdir -p $(PKG_BUILD_DIR)
593 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT61FW)
594 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT71FW)
595 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2860FW)
596 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2870FW)
597 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
598 rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
599 rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
600 rm $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h
603 ifneq ($(CONFIG_PACKAGE_kmod-mac80211),)
604 define Build/Compile/kmod
605 rm -rf $(PKG_BUILD_DIR)/modules
606 $(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
611 $(call Build/Compile/kmod)
614 define Build/InstallDev
615 mkdir -p $(1)/usr/include/mac80211 $(1)/usr/include/net/mac80211
616 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
617 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
620 define KernelPackage/libertas/install
621 $(INSTALL_DIR) $(1)/lib/firmware
622 $(INSTALL_DATA) $(DL_DIR)/$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin $(1)/lib/firmware/$(USB8388FW_NAME).bin
625 define KernelPackage/mac80211/install
626 $(INSTALL_DIR) $(1)/lib/wifi
627 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
630 define KernelPackage/p54-pci/install
631 $(INSTALL_DIR) $(1)/lib/firmware
632 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
635 define KernelPackage/p54-usb/install
636 $(INSTALL_DIR) $(1)/lib/firmware
637 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3886usb
640 define KernelPackage/rt61-pci/install
641 $(INSTALL_DIR) $(1)/lib/firmware
642 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware/
645 define KernelPackage/rt73-usb/install
646 $(INSTALL_DIR) $(1)/lib/firmware
647 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware/
650 define KernelPackage/rt2800-pci/install
651 $(INSTALL_DIR) $(1)/lib/firmware
652 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2860.bin $(1)/lib/firmware/
655 define KernelPackage/rt2800-usb/install
656 $(INSTALL_DIR) $(1)/lib/firmware
657 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2870.bin $(1)/lib/firmware/
660 define KernelPackage/zd1211rw/install
661 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
662 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
665 define KernelPackage/ar9170/install
666 $(INSTALL_DIR) $(1)/lib/firmware
667 $(INSTALL_DATA) $(DL_DIR)/$(AR9170FW) $(1)/lib/firmware/
670 define Build/b43-common
671 tar xjf "$(DL_DIR)/$(PKG_B43_FWCUTTER_SOURCE)" -C "$(PKG_BUILD_DIR)"
672 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)" \
673 CFLAGS="-I$(STAGING_DIR_HOST)/include -include endian.h"
674 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
675 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
676 $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
677 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
678 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
679 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
681 $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
684 define KernelPackage/b43/install
685 rm -rf $(1)/lib/firmware/
686 $(call Build/b43-common)
687 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
688 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
690 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
692 $(INSTALL_DIR) $(1)/lib/firmware/
693 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
694 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
695 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
696 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
697 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
698 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
700 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
702 ifneq ($(CONFIG_B43_FW_SQUASH),)
703 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
707 define KernelPackage/b43legacy/install
708 $(call Build/b43-common)
709 $(INSTALL_DIR) $(1)/lib/firmware/
711 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
714 $(eval $(call KernelPackage,ath5k))
715 $(eval $(call KernelPackage,libertas))
716 $(eval $(call KernelPackage,mac80211))
717 $(eval $(call KernelPackage,p54-common))
718 $(eval $(call KernelPackage,p54-pci))
719 $(eval $(call KernelPackage,p54-usb))
720 $(eval $(call KernelPackage,rt2x00-lib))
721 $(eval $(call KernelPackage,rt2x00-pci))
722 $(eval $(call KernelPackage,rt2x00-usb))
723 $(eval $(call KernelPackage,rt2400-pci))
724 $(eval $(call KernelPackage,rt2500-pci))
725 $(eval $(call KernelPackage,rt2500-usb))
726 $(eval $(call KernelPackage,rt61-pci))
727 $(eval $(call KernelPackage,rt73-usb))
728 $(eval $(call KernelPackage,rt2800-pci))
729 $(eval $(call KernelPackage,rt2800-usb))
730 $(eval $(call KernelPackage,rtl8180))
731 $(eval $(call KernelPackage,rtl8187))
732 $(eval $(call KernelPackage,zd1211rw))
733 $(eval $(call KernelPackage,mac80211-hwsim))
734 $(eval $(call KernelPackage,ath9k))
735 $(eval $(call KernelPackage,ath))
736 $(eval $(call KernelPackage,ar9170))
737 $(eval $(call KernelPackage,b43))
738 $(eval $(call KernelPackage,b43legacy))