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