2e4e5246b4da7c503a9772e22747bd0b66203054
[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-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
1225 config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
1226 config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
1227 config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
1228 config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
1229 config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
1230
1231 config-$(call config_package,b43legacy) += B43LEGACY
1232 config-y += B43LEGACY_DMA_MODE
1233
1234 config-$(call config_package,brcmutil) += BRCMUTIL
1235 config-$(call config_package,brcmsmac) += BRCMSMAC
1236 config-$(call config_package,brcmfmac) += BRCMFMAC BRCMFMAC_USB
1237 config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
1238
1239 config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
1240
1241 config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
1242 config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI
1243 config-$(call config_package,rt2x00-mmio) += RT2X00_LIB_MMIO
1244 config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
1245 config-$(call config_package,rt2x00-soc) += RT2X00_LIB_SOC
1246 config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
1247 config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
1248
1249 config-$(call config_package,rt2400-pci) += RT2400PCI
1250 config-$(call config_package,rt2500-pci) += RT2500PCI
1251 config-$(call config_package,rt2500-usb) += RT2500USB
1252 config-$(call config_package,rt61-pci) += RT61PCI
1253 config-$(call config_package,rt73-usb) += RT73USB
1254
1255 config-$(call config_package,rt2800-lib) += RT2800_LIB
1256 config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
1257
1258 config-$(call config_package,rt2800-pci) += RT2800PCI
1259 config-$(call config_package,rt2800-usb) += RT2800USB
1260
1261 config-$(call config_package,iwl-legacy) += IWLEGACY
1262 config-$(call config_package,iwl3945) += IWL3945
1263 config-$(call config_package,iwl4965) += IWL4965
1264 config-$(call config_package,iwlagn) += IWLWIFI
1265
1266 config-$(call config_package,net-libipw) += LIBIPW
1267 config-$(call config_package,net-ipw2100) += IPW2100
1268 config-$(call config_package,net-ipw2200) += IPW2200
1269
1270 config-$(call config_package,p54-common) += P54_COMMON
1271 config-$(call config_package,p54-pci) += P54_PCI
1272 config-$(call config_package,p54-usb) += P54_USB
1273 config-$(call config_package,p54-spi) += P54_SPI
1274
1275 config-$(call config_package,net-hermes) += HERMES
1276 config-$(call config_package,net-hermes-pci) += PCI_HERMES
1277 config-$(call config_package,net-hermes-plx) += PLX_HERMES
1278 config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
1279 config-y += HERMES_PRISM
1280
1281 config-$(call config_package,adm8211) += ADM8211
1282 config-$(call config_package,libertas-sd) += LIBERTAS LIBERTAS_SDIO
1283 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
1284 config-$(call config_package,mwl8k) += MWL8K
1285 config-$(call config_package,rtl8180) += RTL8180
1286 config-$(call config_package,rtl8187) += RTL8187
1287 config-$(call config_package,wl12xx) += WL_TI WLCORE WLCORE_SDIO WL12XX
1288 config-$(call config_package,zd1211rw) += ZD1211RW
1289
1290 config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
1291
1292 MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
1293 CROSS_COMPILE="$(KERNEL_CROSS)" \
1294 ARCH="$(LINUX_KARCH)" \
1295 EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
1296 KLIB_BUILD="$(LINUX_DIR)" \
1297 MODPROBE=true \
1298 KLIB=$(TARGET_MODULES_DIR) \
1299 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1300 KBUILD_LDFLAGS_MODULE_PREREQ=
1301
1302 define ConfigVars
1303 $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
1304 ))
1305 endef
1306
1307 define mac80211_config
1308 $(call ConfigVars,m)$(call ConfigVars,y)
1309 endef
1310 $(eval $(call shexport,mac80211_config))
1311
1312 define Build/Prepare
1313 rm -rf $(PKG_BUILD_DIR)
1314 mkdir -p $(PKG_BUILD_DIR)
1315 $(PKG_UNPACK)
1316 $(Build/Patch)
1317 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1318 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1319 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1320 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
1321 rm -rf \
1322 $(PKG_BUILD_DIR)/include/linux/ssb \
1323 $(PKG_BUILD_DIR)/include/linux/bcma \
1324 $(PKG_BUILD_DIR)/include/net/bluetooth
1325
1326 rm -f \
1327 $(PKG_BUILD_DIR)/include/linux/cordic.h \
1328 $(PKG_BUILD_DIR)/include/linux/crc8.h \
1329 $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
1330 $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
1331 $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
1332 $(PKG_BUILD_DIR)/include/net/ieee80211.h
1333
1334 echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
1335 $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
1336 endef
1337
1338 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
1339 define Build/Compile/kmod
1340 rm -rf $(PKG_BUILD_DIR)/modules
1341 +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
1342 endef
1343 endif
1344
1345 define Build/Configure
1346 cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
1347 cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
1348 cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
1349 endef
1350
1351 define Build/Compile
1352 $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
1353 $(MAKE) $(MAKE_OPTS) allnoconfig
1354 $(call Build/Compile/kmod)
1355 endef
1356
1357 define Build/InstallDev
1358 mkdir -p \
1359 $(1)/usr/include/mac80211 \
1360 $(1)/usr/include/mac80211-backport \
1361 $(1)/usr/include/mac80211/ath \
1362 $(1)/usr/include/net/mac80211
1363 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1364 $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
1365 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1366 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1367 endef
1368
1369 define KernelPackage/libertas-usb/install
1370 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1371 $(INSTALL_DATA) \
1372 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
1373 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
1374 $(1)/lib/firmware/libertas/
1375 endef
1376
1377 define KernelPackage/libertas-sd/install
1378 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1379 $(INSTALL_DATA) \
1380 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
1381 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
1382 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
1383 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
1384 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
1385 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
1386 $(1)/lib/firmware/libertas
1387 endef
1388
1389 define KernelPackage/cfg80211/install
1390 $(INSTALL_DIR) $(1)/lib/wifi
1391 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1392 endef
1393
1394 define KernelPackage/p54-pci/install
1395 $(INSTALL_DIR) $(1)/lib/firmware
1396 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
1397 endef
1398
1399 define KernelPackage/p54-usb/install
1400 $(INSTALL_DIR) $(1)/lib/firmware
1401 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
1402 endef
1403
1404 define KernelPackage/p54-spi/install
1405 $(INSTALL_DIR) $(1)/lib/firmware
1406 $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
1407 endef
1408
1409 define KernelPackage/rt61-pci/install
1410 $(INSTALL_DIR) $(1)/lib/firmware
1411 $(INSTALL_DATA) \
1412 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
1413 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
1414 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
1415 $(1)/lib/firmware/
1416 endef
1417
1418 define KernelPackage/rt73-usb/install
1419 $(INSTALL_DIR) $(1)/lib/firmware
1420 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
1421 endef
1422
1423 define KernelPackage/rt2800-pci/install
1424 $(INSTALL_DIR) $(1)/lib/firmware
1425 $(INSTALL_DATA) \
1426 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
1427 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
1428 $(1)/lib/firmware
1429 endef
1430
1431 define KernelPackage/rt2800-usb/install
1432 $(INSTALL_DIR) $(1)/lib/firmware
1433 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
1434 endef
1435
1436 define KernelPackage/wl12xx/install
1437 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1438 $(INSTALL_DATA) \
1439 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
1440 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
1441 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
1442 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
1443 $(1)/lib/firmware/ti-connectivity
1444 endef
1445
1446
1447 define KernelPackage/zd1211rw/install
1448 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1449 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1450 endef
1451
1452 define KernelPackage/ath9k-htc/install
1453 $(INSTALL_DIR) $(1)/lib/firmware
1454 $(INSTALL_DATA) \
1455 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
1456 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
1457 $(1)/lib/firmware/
1458 endef
1459
1460 define KernelPackage/mwl8k/install
1461 $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
1462 $(INSTALL_DATA) \
1463 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
1464 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
1465 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
1466 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
1467 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
1468 $(1)/lib/firmware/mwl8k/
1469 endef
1470
1471 define KernelPackage/net-ipw2100/install
1472 $(INSTALL_DIR) $(1)/lib/firmware
1473 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1474 endef
1475
1476 define KernelPackage/net-ipw2200/install
1477 $(INSTALL_DIR) $(1)/lib/firmware
1478 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1479 endef
1480
1481 define KernelPackage/iwlagn/install
1482 $(INSTALL_DIR) $(1)/lib/firmware
1483 ifneq ($(CONFIG_IWL5000_FW),)
1484 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
1485 endif
1486 ifneq ($(CONFIG_IWL5150_FW),)
1487 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
1488 endif
1489 ifneq ($(CONFIG_IWL1000_FW),)
1490 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
1491 endif
1492 ifneq ($(CONFIG_IWL6000_FW),)
1493 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
1494 endif
1495 ifneq ($(CONFIG_IWL6050_FW),)
1496 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
1497 endif
1498 ifneq ($(CONFIG_IWL6005_FW),)
1499 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
1500 endif
1501 ifneq ($(CONFIG_IWL6030_FW),)
1502 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
1503 endif
1504 ifneq ($(CONFIG_IWL100_FW),)
1505 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
1506 endif
1507 ifneq ($(CONFIG_IWL2000_FW),)
1508 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
1509 endif
1510 ifneq ($(CONFIG_IWL2030_FW),)
1511 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
1512 endif
1513 ifneq ($(CONFIG_IWL105_FW),)
1514 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
1515 endif
1516 ifneq ($(CONFIG_IWL135_FW),)
1517 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
1518 endif
1519 endef
1520
1521 define KernelPackage/iwl3945/install
1522 $(INSTALL_DIR) $(1)/lib/firmware
1523 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
1524 endef
1525
1526 define KernelPackage/iwl4965/install
1527 $(INSTALL_DIR) $(1)/lib/firmware
1528 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
1529 endef
1530
1531 define KernelPackage/b43/install
1532 rm -rf $(1)/lib/firmware/
1533 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1534 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1535 else
1536 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1537 endif
1538 $(INSTALL_DIR) $(1)/lib/firmware/
1539 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1540 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1541 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1542 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1543 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1544 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1545 else
1546 b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1547 endif
1548 ifneq ($(CONFIG_B43_FW_SQUASH),)
1549 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1550 endif
1551 endef
1552
1553 define KernelPackage/b43legacy/install
1554 $(INSTALL_DIR) $(1)/lib/firmware/
1555 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1556 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1557 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1558 endif
1559 endef
1560
1561 define KernelPackage/brcmsmac/install
1562 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1563 ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
1564 tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
1565 b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
1566 else
1567 $(INSTALL_DATA) \
1568 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
1569 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
1570 $(1)/lib/firmware/brcm/
1571 endif
1572 endef
1573
1574 define KernelPackage/brcmfmac/install
1575 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1576 $(INSTALL_DATA) \
1577 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
1578 $(1)/lib/firmware/brcm/
1579 endef
1580
1581 $(eval $(call KernelPackage,adm8211))
1582 $(eval $(call KernelPackage,ath5k))
1583 $(eval $(call KernelPackage,lib80211))
1584 $(eval $(call KernelPackage,libertas-usb))
1585 $(eval $(call KernelPackage,libertas-sd))
1586 $(eval $(call KernelPackage,cfg80211))
1587 $(eval $(call KernelPackage,mac80211))
1588 $(eval $(call KernelPackage,p54-common))
1589 $(eval $(call KernelPackage,p54-pci))
1590 $(eval $(call KernelPackage,p54-usb))
1591 $(eval $(call KernelPackage,p54-spi))
1592 $(eval $(call KernelPackage,rt2x00-lib))
1593 $(eval $(call KernelPackage,rt2x00-mmio))
1594 $(eval $(call KernelPackage,rt2x00-pci))
1595 $(eval $(call KernelPackage,rt2x00-usb))
1596 $(eval $(call KernelPackage,rt2x00-soc))
1597 $(eval $(call KernelPackage,rt2800-lib))
1598 $(eval $(call KernelPackage,rt2400-pci))
1599 $(eval $(call KernelPackage,rt2500-pci))
1600 $(eval $(call KernelPackage,rt2500-usb))
1601 $(eval $(call KernelPackage,rt61-pci))
1602 $(eval $(call KernelPackage,rt73-usb))
1603 $(eval $(call KernelPackage,rt2800-pci))
1604 $(eval $(call KernelPackage,rt2800-usb))
1605 $(eval $(call KernelPackage,rtl8180))
1606 $(eval $(call KernelPackage,rtl8187))
1607 $(eval $(call KernelPackage,zd1211rw))
1608 $(eval $(call KernelPackage,mac80211-hwsim))
1609 $(eval $(call KernelPackage,ath9k-common))
1610 $(eval $(call KernelPackage,ath9k))
1611 $(eval $(call KernelPackage,ath9k-htc))
1612 $(eval $(call KernelPackage,ath))
1613 $(eval $(call KernelPackage,carl9170))
1614 $(eval $(call KernelPackage,b43))
1615 $(eval $(call KernelPackage,b43legacy))
1616 $(eval $(call KernelPackage,brcmutil))
1617 $(eval $(call KernelPackage,brcmsmac))
1618 $(eval $(call KernelPackage,brcmfmac))
1619 $(eval $(call KernelPackage,net-libipw))
1620 $(eval $(call KernelPackage,net-ipw2100))
1621 $(eval $(call KernelPackage,net-ipw2200))
1622 $(eval $(call KernelPackage,iwlagn))
1623 $(eval $(call KernelPackage,iwl-legacy))
1624 $(eval $(call KernelPackage,iwl4965))
1625 $(eval $(call KernelPackage,iwl3945))
1626 $(eval $(call KernelPackage,mwl8k))
1627 $(eval $(call KernelPackage,net-hermes))
1628 $(eval $(call KernelPackage,net-hermes-pci))
1629 $(eval $(call KernelPackage,net-hermes-plx))
1630 $(eval $(call KernelPackage,net-hermes-pcmcia))
1631 $(eval $(call KernelPackage,wl12xx))