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