70102b2def8f5fb5fb52246388afde768364fde4
[openwrt/svn-archive/archive.git] / package / mac80211 / Makefile
1 #
2 # Copyright (C) 2007-2012 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=mac80211
12
13 PKG_VERSION:=2013-06-13
14 PKG_RELEASE:=1
15 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
16 PKG_MD5SUM:=986749f5fbc5ec9b963e49c7171be300
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_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
23
24 PKG_DRIVERS = \
25 adm8211 ath5k libertas-usb libertas-sd p54-common p54-pci p54-usb p54-spi \
26 rt2x00-lib rt2x00-pci rt2x00-usb rt2x00-soc rt2800-lib rt2400-pci \
27 rt2500-pci rt2500-usb rt61-pci rt73-usb rt2800-pci rt2800-usb \
28 rtl8180 rtl8187 zd1211rw mac80211-hwsim carl9170 b43 b43legacy \
29 ath9k-common ath9k ath9k-htc ath net-libipw net-ipw2100 net-ipw2200 \
30 mwl8k net-hermes net-hermes-pci net-hermes-plx net-hermes-pcmcia \
31 iwl-legacy iwl3945 iwl4965 iwlagn wl12xx lib80211
32
33 PKG_CONFIG_DEPENDS:= \
34 CONFIG_PACKAGE_kmod-mac80211 \
35 $(patsubst %,CONFIG_PACKAGE_kmod-%,$(PKG_DRIVERS)) \
36 CONFIG_PACKAGE_MAC80211_DEBUGFS \
37 CONFIG_PACKAGE_MAC80211_MESH \
38 CONFIG_PACKAGE_ATH_DEBUG \
39 CONFIG_PACKAGE_B43_DEBUG \
40 CONFIG_PACKAGE_B43_PIO \
41 CONFIG_PACKAGE_B43_N_PHY \
42 CONFIG_ATH_USER_REGD \
43
44 CARL9170_FW_VERSION:=1.9.6
45
46 include $(INCLUDE_DIR)/package.mk
47
48 WMENU:=Wireless Drivers
49
50 define KernelPackage/mac80211/Default
51 SUBMENU:=$(WMENU)
52 URL:=http://linuxwireless.org/
53 MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
54 DEPENDS:=@(!(TARGET_avr32||TARGET_ps3||TARGET_pxcab)||BROKEN)
55 endef
56
57 define KernelPackage/cfg80211
58 $(call KernelPackage/mac80211/Default)
59 TITLE:=cfg80211 - wireless configuration API
60 DEPENDS+= +iw
61 FILES:= \
62 $(PKG_BUILD_DIR)/compat/compat.ko \
63 $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
64 AUTOLOAD:=$(call AutoLoad,20,compat cfg80211)
65 endef
66
67 define KernelPackage/cfg80211/description
68 cfg80211 is the Linux wireless LAN (802.11) configuration API.
69 endef
70
71 define KernelPackage/mac80211
72 $(call KernelPackage/mac80211/Default)
73 TITLE:=Linux 802.11 Wireless Networking Stack
74 DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211
75 KCONFIG:=\
76 CONFIG_AVERAGE=y
77 FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.ko
78 AUTOLOAD:=$(call AutoLoad,21,mac80211)
79 MENU:=1
80 endef
81
82 define KernelPackage/mac80211/config
83 if PACKAGE_kmod-mac80211
84
85 config PACKAGE_MAC80211_DEBUGFS
86 bool "Export mac80211 internals in DebugFS"
87 select KERNEL_DEBUG_FS
88 select KERNEL_RELAY if PACKAGE_kmod-ath9k-common
89 default y
90 help
91 Select this to see extensive information about
92 the internal state of mac80211 in debugfs.
93
94 config PACKAGE_MAC80211_MESH
95 bool "Enable 802.11s mesh support"
96 default y
97
98 endif
99 endef
100
101 define KernelPackage/mac80211/description
102 Generic IEEE 802.11 Networking Stack (mac80211)
103 endef
104
105 PKG_LINUX_FIRMWARE_NAME:=linux-firmware
106 PKG_LINUX_FIRMWARE_VERSION:=6942dba419d2ebf8c15514972e89734fd7a8cebc
107 PKG_LINUX_FIRMWARE_SOURCE:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION).tar.bz2
108 PKG_LINUX_FIRMWARE_PROTO:=git
109 PKG_LINUX_FIRMWARE_SOURCE_URL:=git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
110 PKG_LINUX_FIRMWARE_SUBDIR:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION)
111 PKG_LINUX_FIRMWARE_MIRROR_MD5SUM:=a5f8c27af9e43f0ad24d7f821c5a781e
112
113 define Download/linux-firmware
114 FILE:=$(PKG_LINUX_FIRMWARE_SOURCE)
115 URL:=$(PKG_LINUX_FIRMWARE_SOURCE_URL)
116 MD5SUM:=$(PKG_LINUX_FIRMWARE_MD5SUM)
117 PROTO:=$(PKG_LINUX_FIRMWARE_PROTO)
118 VERSION:=$(PKG_LINUX_FIRMWARE_VERSION)
119 SUBDIR:=$(PKG_LINUX_FIRMWARE_SUBDIR)
120 MIRROR_MD5SUM:=$(PKG_LINUX_FIRMWARE_MIRROR_MD5SUM)
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:=2fa6ed98d53d0b5fbcc136d1cf5e9609
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-lib-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 define KernelPackage/rt2x00/Default
200 $(call KernelPackage/mac80211/Default)
201 TITLE:=Ralink Drivers for RT2x00 cards
202 endef
203
204 define KernelPackage/rt2x00-lib
205 $(call KernelPackage/rt2x00/Default)
206 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-lib-crc-itu-t
207 TITLE+= (LIB)
208 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.ko
209 AUTOLOAD:=$(call AutoLoad,24,rt2x00lib)
210 MENU:=1
211 endef
212
213 define KernelPackage/rt2x00-lib/config
214 if PACKAGE_kmod-rt2x00-lib
215
216 config PACKAGE_RT2X00_LIB_DEBUGFS
217 bool "Enable rt2x00 debugfs support"
218 depends on PACKAGE_MAC80211_DEBUGFS
219 help
220 Enable creation of debugfs files for the rt2x00 drivers.
221 These debugfs files support both reading and writing of the
222 most important register types of the rt2x00 hardware.
223
224 config PACKAGE_RT2X00_DEBUG
225 bool "Enable rt2x00 debug output"
226 help
227 Enable debugging output for all rt2x00 modules
228
229 endif
230 endef
231
232 define KernelPackage/rt2x00-pci
233 $(call KernelPackage/rt2x00/Default)
234 DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
235 TITLE+= (PCI)
236 FILES:= \
237 $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.ko \
238 $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00mmio.ko
239 AUTOLOAD:=$(call AutoLoad,25,rt2x00mmio rt2x00pci)
240 endef
241
242 define KernelPackage/rt2x00-usb
243 $(call KernelPackage/rt2x00/Default)
244 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
245 TITLE+= (USB)
246 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.ko
247 AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
248 endef
249
250 define KernelPackage/rt2x00-soc
251 $(call KernelPackage/rt2x00/Default)
252 DEPENDS+= @TARGET_ramips +kmod-rt2x00-lib
253 TITLE+= (SoC)
254 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.ko
255 AUTOLOAD:=$(call AutoLoad,26,rt2x00soc)
256 endef
257
258 define KernelPackage/rt2800-lib
259 $(call KernelPackage/rt2x00/Default)
260 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +TARGET_ramips:kmod-rt2x00-soc +@DRIVER_11N_SUPPORT
261 TITLE+= (rt2800 LIB)
262 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.ko
263 AUTOLOAD:=$(call AutoLoad,27,rt2800lib)
264 endef
265
266 define KernelPackage/rt2400-pci
267 $(call KernelPackage/rt2x00/Default)
268 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
269 TITLE+= (RT2400 PCI)
270 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.ko
271 AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
272 endef
273
274 define KernelPackage/rt2500-pci
275 $(call KernelPackage/rt2x00/Default)
276 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
277 TITLE+= (RT2500 PCI)
278 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.ko
279 AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
280 endef
281
282 define KernelPackage/rt2500-usb
283 $(call KernelPackage/rt2x00/Default)
284 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
285 TITLE+= (RT2500 USB)
286 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.ko
287 AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
288 endef
289
290 define KernelPackage/rt61-pci
291 $(call KernelPackage/rt2x00/Default)
292 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
293 TITLE+= (RT2x61 PCI)
294 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.ko
295 AUTOLOAD:=$(call AutoLoad,27,rt61pci)
296 endef
297
298 define KernelPackage/rt73-usb
299 $(call KernelPackage/rt2x00/Default)
300 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
301 TITLE+= (RT73 USB)
302 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.ko
303 AUTOLOAD:=$(call AutoLoad,27,rt73usb)
304 endef
305
306 define KernelPackage/rt2800-pci
307 $(call KernelPackage/rt2x00/Default)
308 DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-lib-crc-ccitt +TARGET_ramips:kmod-rt2x00-soc
309 TITLE+= (RT2860 PCI)
310 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.ko
311 AUTOLOAD:=$(call AutoLoad,28,rt2800pci)
312 endef
313
314 define KernelPackage/rt2800-usb
315 $(call KernelPackage/rt2x00/Default)
316 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-lib-crc-ccitt
317 TITLE+= (RT2870 USB)
318 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.ko
319 AUTOLOAD:=$(call AutoLoad,28,rt2800usb)
320 endef
321
322 define KernelPackage/rtl818x/Default
323 $(call KernelPackage/mac80211/Default)
324 TITLE:=Realtek Drivers for RTL818x devices
325 URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
326 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
327 endef
328
329 define KernelPackage/rtl8180
330 $(call KernelPackage/rtl818x/Default)
331 DEPENDS+= @PCI_SUPPORT
332 TITLE+= (RTL8180 PCI)
333 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko
334 AUTOLOAD:=$(call AutoLoad,27,rtl8180)
335 endef
336
337 define KernelPackage/rtl8187
338 $(call KernelPackage/rtl818x/Default)
339 DEPENDS+= @USB_SUPPORT +kmod-usb-core
340 TITLE+= (RTL8187 USB)
341 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko
342 AUTOLOAD:=$(call AutoLoad,27,rtl8187)
343 endef
344
345 ZD1211FW_NAME:=zd1211-firmware
346 ZD1211FW_VERSION:=1.4
347 define Download/zd1211rw
348 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
349 URL:=@SF/zd1211/
350 MD5SUM:=19f28781d76569af8551c9d11294c870
351 endef
352 $(eval $(call Download,zd1211rw))
353
354 define KernelPackage/zd1211rw
355 $(call KernelPackage/mac80211/Default)
356 TITLE:=Zydas ZD1211 support
357 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
358 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.ko
359 AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
360 endef
361
362 define KernelPackage/adm8211
363 $(call KernelPackage/mac80211/Default)
364 TITLE:=ADMTek 8211 support
365 DEPENDS+=@PCI_SUPPORT +kmod-mac80211 +kmod-eeprom-93cx6
366 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/adm8211.ko
367 AUTOLOAD:=$(call AutoLoad,60,adm8211)
368 endef
369
370 define KernelPackage/ath/config
371 if PACKAGE_kmod-ath
372 config ATH_USER_REGD
373 bool "Force Atheros drivers to respect the user's regdomain settings"
374 help
375 Atheros' idea of regulatory handling is that the EEPROM of the card defines
376 the regulatory limits and the user is only allowed to restrict the settings
377 even further, even if the country allows frequencies or power levels that
378 are forbidden by the EEPROM settings.
379
380 Select this option if you want the driver to respect the user's decision about
381 regulatory settings.
382
383 config PACKAGE_ATH_DEBUG
384 bool "Atheros wireless debugging"
385 help
386 Say Y, if you want to debug atheros wireless drivers.
387 Right now only ath9k makes use of this.
388 endif
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||TARGET_atheros +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||USB_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,55,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 +kmod-input-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,21, \
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-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
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-cfg80211 +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 +@DRIVER_WEXT_SUPPORT
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
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
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 @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 +@DRIVER_11N_SUPPORT
637 TITLE:=Intel AGN Wireless support
638 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlwifi.ko
639 AUTOLOAD:=$(call AutoLoad,60,iwlwifi)
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 if PACKAGE_kmod-iwlagn
649
650 config IWL5000_FW
651 bool "Intel 5000 Firmware"
652 default y
653 help
654 Download and install firmware for:
655 Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
656
657 config IWL5150_FW
658 bool "Intel 5150 Firmware"
659 default y
660 help
661 Download and install firmware for:
662 Intel Wireless WiFi 5150AGN
663
664 config IWL1000_FW
665 bool "Intel 1000 Firmware"
666 default y
667 help
668 Download and install firmware for:
669 Intel Centrino Wireless-N 1000
670
671 config IWL6000_FW
672 bool "Intel 6000 Firmware"
673 default y
674 help
675 Download and install firmware for:
676 Intel Centrino Ultimate-N 6300 and Advanced-N 6200
677
678 config IWL6050_FW
679 bool "Intel 6050 Firmware"
680 default y
681 help
682 Download and install firmware for:
683 Intel Centrino Advanced-N + WiMAX 6250 and Wireless-N + WiMAX 6150
684
685 config IWL6005_FW
686 bool "Intel 6005 Firmware"
687 default y
688 help
689 Download and install firmware for:
690 Intel Centrino Advanced-N 6205
691
692 config IWL6030_FW
693 bool "Intel 6030 Firmware"
694 default y
695 help
696 Download and install firmware for:
697 Intel Centrino Advanced-N 6230, Wireless-N 1030, Wireless-N 130 and Advanced-N 6235
698
699 config IWL100_FW
700 bool "Intel 100 Firmware"
701 default y
702 help
703 Download and install firmware for:
704 Intel Centrino Wireless-N 100
705
706 config IWL2000_FW
707 bool "Intel 2000 Firmware"
708 default y
709 help
710 Download and install firmware for:
711 Intel Centrino Wireless-N 2200
712
713 config IWL2030_FW
714 bool "Intel 2030 Firmware"
715 default y
716 help
717 Download and install firmware for:
718 Intel Centrino Wireless-N 2230
719
720 config IWL105_FW
721 bool "Intel 105 Firmware"
722 default y
723 help
724 Download and install firmware for:
725 Intel Centrino Wireless-N 105
726
727 config IWL135_FW
728 bool "Intel 135 Firmware"
729 default y
730 help
731 Download and install firmware for:
732 Intel Centrino Wireless-N 135
733 endif
734 endef
735
736 define KernelPackage/iwl-legacy
737 $(call KernelPackage/mac80211/Default)
738 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
739 TITLE:=Intel legacy Wireless support
740 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwlegacy.ko
741 AUTOLOAD:=$(call AutoLoad,60,iwlegacy)
742 endef
743
744 define KernelPackage/iwl-legacy/description
745 iwl-legacy kernel module for legacy Intel wireless support
746 endef
747
748 define KernelPackage/iwl3945
749 $(call KernelPackage/mac80211/Default)
750 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
751 TITLE:=Intel iwl3945 Wireless support
752 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.ko
753 AUTOLOAD:=$(call AutoLoad,61,iwl3945)
754 endef
755
756 define KernelPackage/iwl3945/description
757 iwl3945 kernel module for Intel 3945 support
758 endef
759
760 define KernelPackage/iwl4965
761 $(call KernelPackage/mac80211/Default)
762 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT
763 TITLE:=Intel iwl4965 Wireless support
764 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.ko
765 AUTOLOAD:=$(call AutoLoad,61,iwl4965)
766 endef
767
768 define KernelPackage/iwl4965/description
769 iwl4965 kernel module for Intel 4965 support
770 endef
771
772
773 define KernelPackage/mwl8k
774 $(call KernelPackage/mac80211/Default)
775 TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
776 URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
777 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
778 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
779 AUTOLOAD:=$(call AutoLoad,27,mwl8k)
780 endef
781
782 define KernelPackage/mwl8k/description
783 Kernel modules for Marvell TOPDOG 802.11 Wireless cards
784 endef
785
786
787 define KernelPackage/wl12xx
788 $(call KernelPackage/mac80211/Default)
789 TITLE:=Driver for TI WL12xx
790 URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
791 DEPENDS+= @TARGET_omap4 +kmod-mac80211
792 FILES:= \
793 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko \
794 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
795 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
796 AUTOLOAD:=$(call AutoLoad,61,wlcore wlcore_sdio wl12xx)
797 endef
798
799 define KernelPackage/wl12xx/description
800 Kernel modules for TI WL12xx
801 endef
802
803 #Broadcom firmware
804 ifneq ($(CONFIG_B43_FW_5_10),)
805 PKG_B43_FWV4_NAME:=broadcom-wl
806 PKG_B43_FWV4_VERSION:=5.10.56.27.3
807 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
808 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
809 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
810 PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
811 else
812 ifneq ($(CONFIG_B43_FW_4_178),)
813 PKG_B43_FWV4_NAME:=broadcom-wl
814 PKG_B43_FWV4_VERSION:=4.178.10.4
815 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
816 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
817 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
818 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
819 else
820 ifneq ($(CONFIG_B43_FW_5_100_138),)
821 PKG_B43_FWV4_NAME:=broadcom-wl
822 PKG_B43_FWV4_VERSION:=5.100.138
823 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
824 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
825 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
826 PKG_B43_FWV4_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
827 else
828 PKG_B43_FWV4_NAME:=broadcom-wl
829 PKG_B43_FWV4_VERSION:=4.150.10.5
830 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
831 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
832 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
833 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
834 endif
835 endif
836 endif
837 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
838 PKG_B43_FWV4_NAME:=broadcom-wl
839 PKG_B43_FWV4_VERSION:=5.2
840 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
841 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
842 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
843 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
844 endif
845
846
847 PKG_B43_FWV3_NAME:=wl_apsta
848 PKG_B43_FWV3_VERSION:=3.130.20.0
849 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
850 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
851 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
852
853 define Download/b43
854 FILE:=$(PKG_B43_FWV4_SOURCE)
855 URL:=$(PKG_B43_FWV4_SOURCE_URL)
856 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
857 endef
858 $(eval $(call Download,b43))
859
860 define Download/b43legacy
861 FILE:=$(PKG_B43_FWV3_SOURCE)
862 URL:=$(PKG_B43_FWV3_SOURCE_URL)
863 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
864 endef
865 $(eval $(call Download,b43legacy))
866
867
868 define KernelPackage/b43
869 $(call KernelPackage/mac80211/Default)
870 TITLE:=Broadcom 43xx wireless support
871 URL:=http://linuxwireless.org/en/users/Drivers/b43
872 KCONFIG:= \
873 CONFIG_HW_RANDOM=y
874 DEPENDS+= +kmod-mac80211 +!TARGET_brcm47xx:kmod-bcma +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
875 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
876 AUTOLOAD:=$(call AutoLoad,30,b43)
877 MENU:=1
878 endef
879
880 define KernelPackage/b43/config
881 if PACKAGE_kmod-b43
882
883 choice
884 prompt "b43 firmware version"
885 default B43_FW_5_100_138
886 help
887 This option allows you to select the version of the b43 firmware.
888
889 config B43_FW_4_150
890 bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
891 help
892 Stable firmware for BCM43xx devices.
893
894 If unsure, select this.
895
896 config B43_FW_4_178
897 bool "Firmware 478.104 from driver 4.178.10.4"
898 help
899 Experimental firmware for BCM43xx devices.
900
901 This firmware is not tested as much as the "stable" firmware.
902
903 If unsure, select the "stable" firmware.
904
905 config B43_FW_5_10
906 bool "Firmware 508.1084 from driver 5.10.56.27"
907 help
908 Newer experimental firmware for BCM43xx devices.
909
910 This firmware is mostly untested. It is needed for some N-PHY devices.
911
912 If unsure, select the "stable" firmware.
913
914 config B43_FW_5_100_138
915 bool "Firmware 666.2 from driver 5.100.138 (stable)"
916 help
917 Newer experimental firmware for BCM43xx devices.
918
919 This firmware is mostly untested. It is needed for some N-PHY devices.
920
921 If unsure, select the "stable" firmware.
922
923 config B43_OPENFIRMWARE
924 bool "Open FirmWare for WiFi networks"
925 help
926 Opensource firmware for BCM43xx devices.
927
928 Do _not_ select this, unless you know what you are doing.
929 The Opensource firmware is not suitable for embedded devices, yet.
930 It does not support QoS, which is bad for AccessPoints.
931 It does not support hardware crypto acceleration, which is a showstopper
932 for embedded devices with low CPU resources.
933
934 If unsure, select the "stable" firmware.
935
936 endchoice
937
938 config B43_FW_SQUASH
939 bool "Remove unnecessary firmware files"
940 depends on !B43_OPENFIRMWARE
941 default y
942 help
943 This options allows you to remove unnecessary b43 firmware files
944 from the final rootfs image. This can reduce the rootfs size by
945 up to 200k.
946
947 If unsure, say Y.
948
949 config B43_FW_SQUASH_COREREVS
950 string "Core revisions to include"
951 depends on B43_FW_SQUASH
952 default "5,6,7,8,9,10,11,13,15,16,29"
953 help
954 This is a comma seperated list of core revision numbers.
955
956 Example (keep files for rev5 only):
957 5
958
959 Example (keep files for rev5 and rev11):
960 5,11
961
962 config B43_FW_SQUASH_PHYTYPES
963 string "PHY types to include"
964 depends on B43_FW_SQUASH
965 default "G,LP,N,HT"
966 help
967 This is a comma seperated list of PHY types:
968 A => A-PHY
969 AG => Dual A-PHY G-PHY
970 G => G-PHY
971 LP => LP-PHY
972 N => N-PHY
973 HT => HT-PHY
974 LCN => LCN-PHY
975
976 Example (keep files for G-PHY only):
977 G
978
979 Example (keep files for G-PHY and N-PHY):
980 G,N
981
982 config PACKAGE_B43_DEBUG
983 bool "Enable debug output and debugfs for b43"
984 default n
985 help
986 Enable additional debug output and runtime sanity checks for b43
987 and enables the debugfs interface.
988
989 If unsure, say N.
990
991 config PACKAGE_B43_PIO
992 bool "Enable support for PIO transfer mode"
993 default n
994 help
995 Enable support for using PIO instead of DMA. Unless you have DMA
996 transfer problems you don't need this.
997
998 If unsure, say N.
999
1000 config PACKAGE_B43_PHY_N
1001 bool "Enable support for N-PHYs"
1002 default y
1003 help
1004 Enable support for N-PHY. This includes support for the following devices:
1005 PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
1006 SoC: BCM4716, BCM4717, BCM4718
1007
1008 Currently only 11g speed is available.
1009
1010 If unsure, say Y.
1011
1012 config PACKAGE_B43_PHY_HT
1013 bool "Enable support for HT-PHYs"
1014 default y
1015 help
1016 Enable support for HT-PHY. This includes support for the following devices:
1017 PCI: BCM4331
1018
1019 Currently only 11g speed is available.
1020
1021 If unsure, say Y.
1022
1023 config PACKAGE_B43_PHY_LCN
1024 bool "Enable support for LCN-PHYs"
1025 depends on BROKEN
1026 default n
1027 help
1028 Currently broken.
1029
1030 If unsure, say N.
1031
1032 endif
1033 endef
1034
1035 define KernelPackage/b43/description
1036 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
1037 endef
1038
1039 define KernelPackage/b43legacy
1040 $(call KernelPackage/mac80211/Default)
1041 TITLE:=Broadcom 43xx-legacy wireless support
1042 URL:=http://linuxwireless.org/en/users/Drivers/b43
1043 KCONFIG:= \
1044 CONFIG_HW_RANDOM=y
1045 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
1046 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
1047 AUTOLOAD:=$(call AutoLoad,30,b43legacy)
1048 MENU:=1
1049 endef
1050
1051 define KernelPackage/b43legacy/config
1052 if PACKAGE_kmod-b43legacy
1053
1054 config B43LEGACY_FW_SQUASH
1055 bool "Remove unnecessary firmware files"
1056 default y
1057 help
1058 This options allows you to remove unnecessary b43legacy firmware files
1059 from the final rootfs image. This can reduce the rootfs size by
1060 up to 50k.
1061
1062 If unsure, say Y.
1063
1064 config B43LEGACY_FW_SQUASH_COREREVS
1065 string "Core revisions to include"
1066 depends on B43LEGACY_FW_SQUASH
1067 default "1,2,3,4"
1068 help
1069 This is a comma seperated list of core revision numbers.
1070
1071 Example (keep files for rev4 only):
1072 4
1073
1074 Example (keep files for rev2 and rev4):
1075 2,4
1076
1077 endif
1078 endef
1079
1080 define KernelPackage/b43legacy/description
1081 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
1082 endef
1083
1084
1085 define KernelPackage/brcmutil
1086 $(call KernelPackage/mac80211/Default)
1087 TITLE:=Broadcom IEEE802.11n common driver parts
1088 URL:=http://linuxwireless.org/en/users/Drivers/brcm80211
1089 DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
1090 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
1091 AUTOLOAD:=$(call AutoLoad,30,brcmutil)
1092 MENU:=1
1093 endef
1094
1095 define KernelPackage/brcmutil/description
1096 This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
1097 endef
1098
1099 define KernelPackage/brcmutil/config
1100 if PACKAGE_kmod-brcmutil
1101
1102 config PACKAGE_BRCM80211_DEBUG
1103 bool "Broadcom wireless driver debugging"
1104 help
1105 Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
1106
1107 endif
1108 endef
1109
1110 PKG_BRCMSMAC_FW_NAME:=broadcom-wl
1111 PKG_BRCMSMAC_FW_VERSION:=5.100.138
1112 PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
1113 PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
1114 PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1115 PKG_BRCMSMAC_FW_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
1116
1117 define Download/brcmsmac
1118 FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
1119 URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
1120 MD5SUM:=$(PKG_BRCMSMAC_FW_MD5SUM)
1121 endef
1122 $(eval $(call Download,brcmsmac))
1123
1124 define KernelPackage/brcmsmac
1125 $(call KernelPackage/mac80211/Default)
1126 TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
1127 URL:=http://linuxwireless.org/en/users/Drivers/brcm80211
1128 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil
1129 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
1130 AUTOLOAD:=$(call AutoLoad,31,brcmsmac)
1131 MENU:=1
1132 endef
1133
1134 define KernelPackage/brcmsmac/description
1135 Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
1136 endef
1137
1138 define KernelPackage/brcmsmac/config
1139 if PACKAGE_kmod-brcmsmac
1140
1141 config BRCMSMAC_USE_FW_FROM_WL
1142 bool "Use firmware extracted from broadcom proprietary driver"
1143 default y
1144 help
1145 Instead of using the official brcmsmac firmware a firmware
1146 version 666.2 extracted from the proprietary Broadcom driver
1147 is used. This is needed to get core rev 17 used in bcm4716
1148 to work.
1149
1150 If unsure, say Y.
1151
1152 endif
1153 endef
1154
1155
1156 define KernelPackage/brcmfmac
1157 $(call KernelPackage/mac80211/Default)
1158 TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
1159 URL:=http://linuxwireless.org/en/users/Drivers/brcm80211
1160 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-cfg80211 +@DRIVER_11N_SUPPORT +kmod-brcmutil
1161 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
1162 AUTOLOAD:=$(call AutoLoad,60,brcmfmac)
1163 endef
1164
1165 define KernelPackage/brcmfmac/description
1166 Kernel module for Broadcom IEEE802.11n USB Wireless cards
1167 endef
1168
1169 config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
1170
1171 config-y:= \
1172 WLAN \
1173 NL80211_TESTMODE \
1174 CFG80211_WEXT \
1175 CFG80211_INTERNAL_REGDB \
1176 MAC80211_RC_MINSTREL \
1177 MAC80211_RC_MINSTREL_HT \
1178 MAC80211_RC_DEFAULT_MINSTREL \
1179
1180 config-$(call config_package,cfg80211) += CFG80211
1181
1182 config-$(call config_package,mac80211) += MAC80211
1183 config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
1184 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
1185 config-y += \
1186 CFG80211_DEBUGFS \
1187 MAC80211_DEBUGFS \
1188 ATH9K_DEBUGFS \
1189 ATH9K_HTC_DEBUGFS \
1190 CARL9170_DEBUGFS \
1191 ATH5K_DEBUG
1192 endif
1193
1194 config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
1195
1196 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
1197 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG
1198
1199 config-$(call config_package,ath9k) += ATH9K
1200 config-$(call config_package,ath9k-common) += ATH9K_COMMON
1201 config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
1202 config-$(CONFIG_PCI) += ATH9K_PCI
1203 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
1204
1205 config-$(call config_package,ath9k-htc) += ATH9K_HTC
1206
1207 config-$(call config_package,ath5k) += ATH5K
1208 ifdef CONFIG_TARGET_atheros
1209 config-y += ATH5K_AHB
1210 else
1211 config-y += ATH5K_PCI
1212 endif
1213
1214 config-$(call config_package,carl9170) += CARL9170
1215
1216 config-$(call config_package,b43) += B43
1217 config-y += B43_SSB B43_BCMA B43_BCMA_EXTRA
1218 config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
1219 config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
1220 config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
1221 config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
1222 config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
1223
1224 config-$(call config_package,b43legacy) += B43LEGACY
1225 config-y += B43LEGACY_DMA_MODE
1226
1227 config-$(call config_package,brcmutil) += BRCMUTIL
1228 config-$(call config_package,brcmsmac) += BRCMSMAC
1229 config-$(call config_package,brcmfmac) += BRCMFMAC BRCMFMAC_USB
1230 config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
1231
1232 config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
1233
1234 config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
1235 config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI RT2X00_LIB_MMIO
1236 config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
1237 config-$(call config_package,rt2x00-soc) += RT2X00_LIB_SOC
1238 config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
1239 config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
1240
1241 config-$(call config_package,rt2400-pci) += RT2400PCI
1242 config-$(call config_package,rt2500-pci) += RT2500PCI
1243 config-$(call config_package,rt2500-usb) += RT2500USB
1244 config-$(call config_package,rt61-pci) += RT61PCI
1245 config-$(call config_package,rt73-usb) += RT73USB
1246
1247 config-$(call config_package,rt2800-lib) += RT2800_LIB
1248 config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
1249
1250 config-$(call config_package,rt2800-pci) += RT2800PCI
1251 config-$(call config_package,rt2800-usb) += RT2800USB
1252
1253 config-$(call config_package,iwl-legacy) += IWLEGACY
1254 config-$(call config_package,iwl3945) += IWL3945
1255 config-$(call config_package,iwl4965) += IWL4965
1256 config-$(call config_package,iwlagn) += IWLWIFI
1257
1258 config-$(call config_package,net-libipw) += LIBIPW
1259 config-$(call config_package,net-ipw2100) += IPW2100
1260 config-$(call config_package,net-ipw2200) += IPW2200
1261
1262 config-$(call config_package,p54-common) += P54_COMMON
1263 config-$(call config_package,p54-pci) += P54_PCI
1264 config-$(call config_package,p54-usb) += P54_USB
1265 config-$(call config_package,p54-spi) += P54_SPI
1266
1267 config-$(call config_package,net-hermes) += HERMES
1268 config-$(call config_package,net-hermes-pci) += PCI_HERMES
1269 config-$(call config_package,net-hermes-plx) += PLX_HERMES
1270 config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
1271 config-y += HERMES_PRISM
1272
1273 config-$(call config_package,adm8211) += ADM8211
1274 config-$(call config_package,libertas-sd) += LIBERTAS LIBERTAS_SDIO
1275 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
1276 config-$(call config_package,mwl8k) += MWL8K
1277 config-$(call config_package,rtl8180) += RTL8180
1278 config-$(call config_package,rtl8187) += RTL8187
1279 config-$(call config_package,wl12xx) += WL_TI WLCORE WLCORE_SDIO WL12XX
1280 config-$(call config_package,zd1211rw) += ZD1211RW
1281
1282 config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
1283
1284 MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
1285 CROSS_COMPILE="$(KERNEL_CROSS)" \
1286 ARCH="$(LINUX_KARCH)" \
1287 EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
1288 KLIB_BUILD="$(LINUX_DIR)" \
1289 MODPROBE=true \
1290 KLIB=$(TARGET_MODULES_DIR) \
1291 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1292 KBUILD_LDFLAGS_MODULE_PREREQ=
1293
1294 define ConfigVars
1295 $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
1296 ))
1297 endef
1298
1299 define mac80211_config
1300 $(call ConfigVars,m)$(call ConfigVars,y)
1301 endef
1302 $(eval $(call shexport,mac80211_config))
1303
1304 define Build/Prepare
1305 rm -rf $(PKG_BUILD_DIR)
1306 mkdir -p $(PKG_BUILD_DIR)
1307 $(PKG_UNPACK)
1308 $(Build/Patch)
1309 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1310 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1311 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1312 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
1313 rm -rf \
1314 $(PKG_BUILD_DIR)/include/linux/ssb \
1315 $(PKG_BUILD_DIR)/include/linux/bcma \
1316 $(PKG_BUILD_DIR)/include/net/bluetooth
1317
1318 rm -f \
1319 $(PKG_BUILD_DIR)/include/linux/cordic.h \
1320 $(PKG_BUILD_DIR)/include/linux/crc8.h \
1321 $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
1322 $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
1323 $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
1324 $(PKG_BUILD_DIR)/include/net/ieee80211.h
1325
1326 echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
1327 $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
1328 endef
1329
1330 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
1331 define Build/Compile/kmod
1332 rm -rf $(PKG_BUILD_DIR)/modules
1333 +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
1334 endef
1335 endif
1336
1337 define Build/Configure
1338 cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
1339 cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
1340 cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
1341 $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
1342 $(MAKE) $(MAKE_OPTS) allnoconfig
1343 endef
1344
1345 define Build/Compile
1346 $(call Build/Compile/kmod)
1347 endef
1348
1349 define Build/InstallDev
1350 mkdir -p \
1351 $(1)/usr/include/mac80211 \
1352 $(1)/usr/include/mac80211-backport \
1353 $(1)/usr/include/mac80211/ath \
1354 $(1)/usr/include/net/mac80211
1355 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1356 $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
1357 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1358 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1359 endef
1360
1361 define KernelPackage/libertas-usb/install
1362 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1363 $(INSTALL_DATA) \
1364 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
1365 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
1366 $(1)/lib/firmware/libertas/
1367 endef
1368
1369 define KernelPackage/libertas-sd/install
1370 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1371 $(INSTALL_DATA) \
1372 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
1373 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
1374 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
1375 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
1376 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
1377 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
1378 $(1)/lib/firmware/libertas
1379 endef
1380
1381 define KernelPackage/cfg80211/install
1382 $(INSTALL_DIR) $(1)/lib/wifi
1383 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1384 endef
1385
1386 define KernelPackage/p54-pci/install
1387 $(INSTALL_DIR) $(1)/lib/firmware
1388 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
1389 endef
1390
1391 define KernelPackage/p54-usb/install
1392 $(INSTALL_DIR) $(1)/lib/firmware
1393 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
1394 endef
1395
1396 define KernelPackage/p54-spi/install
1397 $(INSTALL_DIR) $(1)/lib/firmware
1398 $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
1399 endef
1400
1401 define KernelPackage/rt61-pci/install
1402 $(INSTALL_DIR) $(1)/lib/firmware
1403 $(INSTALL_DATA) \
1404 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
1405 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
1406 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
1407 $(1)/lib/firmware/
1408 endef
1409
1410 define KernelPackage/rt73-usb/install
1411 $(INSTALL_DIR) $(1)/lib/firmware
1412 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
1413 endef
1414
1415 define KernelPackage/rt2800-pci/install
1416 $(INSTALL_DIR) $(1)/lib/firmware
1417 $(INSTALL_DATA) \
1418 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
1419 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
1420 $(1)/lib/firmware
1421 endef
1422
1423 define KernelPackage/rt2800-usb/install
1424 $(INSTALL_DIR) $(1)/lib/firmware
1425 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
1426 endef
1427
1428 define KernelPackage/wl12xx/install
1429 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1430 $(INSTALL_DATA) \
1431 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
1432 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
1433 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
1434 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
1435 $(1)/lib/firmware/ti-connectivity
1436 endef
1437
1438
1439 define KernelPackage/zd1211rw/install
1440 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1441 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1442 endef
1443
1444 define KernelPackage/ath9k-htc/install
1445 $(INSTALL_DIR) $(1)/lib/firmware
1446 $(INSTALL_DATA) \
1447 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
1448 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
1449 $(1)/lib/firmware/
1450 endef
1451
1452 define KernelPackage/mwl8k/install
1453 $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
1454 $(INSTALL_DATA) \
1455 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
1456 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
1457 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
1458 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
1459 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
1460 $(1)/lib/firmware/mwl8k/
1461 endef
1462
1463 define KernelPackage/net-ipw2100/install
1464 $(INSTALL_DIR) $(1)/lib/firmware
1465 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1466 endef
1467
1468 define KernelPackage/net-ipw2200/install
1469 $(INSTALL_DIR) $(1)/lib/firmware
1470 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1471 endef
1472
1473 define KernelPackage/iwlagn/install
1474 $(INSTALL_DIR) $(1)/lib/firmware
1475 ifneq ($(CONFIG_IWL5000_FW),)
1476 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
1477 endif
1478 ifneq ($(CONFIG_IWL5150_FW),)
1479 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
1480 endif
1481 ifneq ($(CONFIG_IWL1000_FW),)
1482 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
1483 endif
1484 ifneq ($(CONFIG_IWL6000_FW),)
1485 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
1486 endif
1487 ifneq ($(CONFIG_IWL6050_FW),)
1488 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
1489 endif
1490 ifneq ($(CONFIG_IWL6005_FW),)
1491 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
1492 endif
1493 ifneq ($(CONFIG_IWL6030_FW),)
1494 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
1495 endif
1496 ifneq ($(CONFIG_IWL100_FW),)
1497 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
1498 endif
1499 ifneq ($(CONFIG_IWL2000_FW),)
1500 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
1501 endif
1502 ifneq ($(CONFIG_IWL2030_FW),)
1503 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
1504 endif
1505 ifneq ($(CONFIG_IWL105_FW),)
1506 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
1507 endif
1508 ifneq ($(CONFIG_IWL135_FW),)
1509 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
1510 endif
1511 endef
1512
1513 define KernelPackage/iwl3945/install
1514 $(INSTALL_DIR) $(1)/lib/firmware
1515 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
1516 endef
1517
1518 define KernelPackage/iwl4965/install
1519 $(INSTALL_DIR) $(1)/lib/firmware
1520 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
1521 endef
1522
1523 define KernelPackage/b43/install
1524 rm -rf $(1)/lib/firmware/
1525 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1526 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1527 else
1528 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1529 endif
1530 $(INSTALL_DIR) $(1)/lib/firmware/
1531 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1532 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1533 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1534 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1535 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1536 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1537 else
1538 b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1539 endif
1540 ifneq ($(CONFIG_B43_FW_SQUASH),)
1541 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1542 endif
1543 endef
1544
1545 define KernelPackage/b43legacy/install
1546 $(INSTALL_DIR) $(1)/lib/firmware/
1547 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1548 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1549 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1550 endif
1551 endef
1552
1553 define KernelPackage/brcmsmac/install
1554 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1555 ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
1556 tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
1557 b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
1558 else
1559 $(INSTALL_DATA) \
1560 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
1561 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
1562 $(1)/lib/firmware/brcm/
1563 endif
1564 endef
1565
1566 define KernelPackage/brcmfmac/install
1567 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1568 $(INSTALL_DATA) \
1569 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
1570 $(1)/lib/firmware/brcm/
1571 endef
1572
1573 $(eval $(call KernelPackage,adm8211))
1574 $(eval $(call KernelPackage,ath5k))
1575 $(eval $(call KernelPackage,lib80211))
1576 $(eval $(call KernelPackage,libertas-usb))
1577 $(eval $(call KernelPackage,libertas-sd))
1578 $(eval $(call KernelPackage,cfg80211))
1579 $(eval $(call KernelPackage,mac80211))
1580 $(eval $(call KernelPackage,p54-common))
1581 $(eval $(call KernelPackage,p54-pci))
1582 $(eval $(call KernelPackage,p54-usb))
1583 $(eval $(call KernelPackage,p54-spi))
1584 $(eval $(call KernelPackage,rt2x00-lib))
1585 $(eval $(call KernelPackage,rt2x00-pci))
1586 $(eval $(call KernelPackage,rt2x00-usb))
1587 $(eval $(call KernelPackage,rt2x00-soc))
1588 $(eval $(call KernelPackage,rt2800-lib))
1589 $(eval $(call KernelPackage,rt2400-pci))
1590 $(eval $(call KernelPackage,rt2500-pci))
1591 $(eval $(call KernelPackage,rt2500-usb))
1592 $(eval $(call KernelPackage,rt61-pci))
1593 $(eval $(call KernelPackage,rt73-usb))
1594 $(eval $(call KernelPackage,rt2800-pci))
1595 $(eval $(call KernelPackage,rt2800-usb))
1596 $(eval $(call KernelPackage,rtl8180))
1597 $(eval $(call KernelPackage,rtl8187))
1598 $(eval $(call KernelPackage,zd1211rw))
1599 $(eval $(call KernelPackage,mac80211-hwsim))
1600 $(eval $(call KernelPackage,ath9k-common))
1601 $(eval $(call KernelPackage,ath9k))
1602 $(eval $(call KernelPackage,ath9k-htc))
1603 $(eval $(call KernelPackage,ath))
1604 $(eval $(call KernelPackage,carl9170))
1605 $(eval $(call KernelPackage,b43))
1606 $(eval $(call KernelPackage,b43legacy))
1607 $(eval $(call KernelPackage,brcmutil))
1608 $(eval $(call KernelPackage,brcmsmac))
1609 $(eval $(call KernelPackage,brcmfmac))
1610 $(eval $(call KernelPackage,net-libipw))
1611 $(eval $(call KernelPackage,net-ipw2100))
1612 $(eval $(call KernelPackage,net-ipw2200))
1613 $(eval $(call KernelPackage,iwlagn))
1614 $(eval $(call KernelPackage,iwl-legacy))
1615 $(eval $(call KernelPackage,iwl4965))
1616 $(eval $(call KernelPackage,iwl3945))
1617 $(eval $(call KernelPackage,mwl8k))
1618 $(eval $(call KernelPackage,net-hermes))
1619 $(eval $(call KernelPackage,net-hermes-pci))
1620 $(eval $(call KernelPackage,net-hermes-plx))
1621 $(eval $(call KernelPackage,net-hermes-pcmcia))
1622 $(eval $(call KernelPackage,wl12xx))