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