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