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