mac80211: update to wireless-testing 2010-04-16
[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:=2010-04-16
14 PKG_RELEASE:=1
15 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
16 # http://www.orbit-lab.org/kernel/compat-wireless-2.6/2010/11 \
17 # http://wireless.kernel.org/download/compat-wireless-2.6
18 PKG_MD5SUM:=49afa00f47127ec3cd5e2cc8a8c11fe4
19
20 PKG_SOURCE:=compat-wireless-$(PKG_VERSION).tar.bz2
21 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
22
23 PKG_CONFIG_DEPENDS:= \
24 CONFIG_PACKAGE_kmod-mac80211 \
25 CONFIG_PACKAGE_MAC80211_DEBUGFS \
26 CONFIG_PACKAGE_ATH9K_USE_MINSTREL \
27 CONFIG_PACKAGE_ATH_DEBUG \
28 CONFIG_ATH_USER_REGD \
29
30 include $(INCLUDE_DIR)/package.mk
31
32 WMENU:=Wireless Drivers
33
34 define KernelPackage/mac80211/Default
35 SUBMENU:=$(WMENU)
36 URL:=http://linuxwireless.org/
37 MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
38 DEPENDS:=@LINUX_2_6 @(!(TARGET_avr32||TARGET_ep93xx||TARGET_ps3||TARGET_pxcab)||BROKEN)
39 endef
40
41 define KernelPackage/cfg80211
42 $(call KernelPackage/mac80211/Default)
43 TITLE:=cfg80211 - wireless configuration API
44 DEPENDS+= +wireless-tools +iw @!LINUX_2_6_25
45 ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.33)),1)
46 FILES:= \
47 $(PKG_BUILD_DIR)/compat/compat.$(LINUX_KMOD_SUFFIX) \
48 $(PKG_BUILD_DIR)/net/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
49 AUTOLOAD:=$(call AutoLoad,20,compat cfg80211)
50 else
51 FILES:= \
52 $(PKG_BUILD_DIR)/compat/compat.$(LINUX_KMOD_SUFFIX) \
53 $(PKG_BUILD_DIR)/compat/compat_firmware_class.$(LINUX_KMOD_SUFFIX) \
54 $(PKG_BUILD_DIR)/net/wireless/cfg80211.$(LINUX_KMOD_SUFFIX)
55 AUTOLOAD:=$(call AutoLoad,20,compat compat_firmware_class cfg80211)
56 endif
57 endef
58
59 define KernelPackage/cfg80211/description
60 cfg80211 is the Linux wireless LAN (802.11) configuration API.
61 endef
62
63 define KernelPackage/mac80211
64 $(call KernelPackage/mac80211/Default)
65 TITLE:=Linux 802.11 Wireless Networking Stack
66 DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211
67 FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.$(LINUX_KMOD_SUFFIX)
68 AUTOLOAD:=$(call AutoLoad,21,mac80211)
69 MENU:=1
70 endef
71
72 define KernelPackage/mac80211/config
73 menu "Configuration"
74 depends on PACKAGE_kmod-mac80211
75
76 config PACKAGE_MAC80211_DEBUGFS
77 bool "Export mac80211 internals in DebugFS"
78 default y
79 help
80 Select this to see extensive information about
81 the internal state of mac80211 in debugfs.
82
83 Say N unless you know you need this.
84
85 endmenu
86 endef
87
88 define KernelPackage/mac80211/description
89 Generic IEEE 802.11 Networking Stack (mac80211)
90 endef
91
92 # Prism54 drivers
93 P54PCIFW:=2.13.12.0.arm
94 P54USBFW:=2.13.24.0.lm87.arm
95
96 define Download/p54usb
97 FILE:=$(P54USBFW)
98 URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
99 MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
100 endef
101 $(eval $(call Download,p54usb))
102
103 define Download/p54pci
104 FILE:=$(P54PCIFW)
105 URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
106 MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
107 endef
108 $(eval $(call Download,p54pci))
109
110 define KernelPackage/p54/Default
111 $(call KernelPackage/mac80211/Default)
112 TITLE:=Prism54 Drivers
113 endef
114
115 define KernelPackage/p54/description
116 Kernel module for Prism54 chipsets (mac80211)
117 endef
118
119 define KernelPackage/p54-common
120 $(call KernelPackage/p54/Default)
121 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT +kmod-mac80211
122 TITLE+= (COMMON)
123 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.$(LINUX_KMOD_SUFFIX)
124 AUTOLOAD:=$(call AutoLoad,30,p54common)
125 endef
126
127 define KernelPackage/p54-pci
128 $(call KernelPackage/p54/Default)
129 TITLE+= (PCI)
130 DEPENDS+= @PCI_SUPPORT +kmod-p54-common
131 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.$(LINUX_KMOD_SUFFIX)
132 AUTOLOAD:=$(call AutoLoad,31,p54pci)
133 endef
134
135 define KernelPackage/p54-usb
136 $(call KernelPackage/p54/Default)
137 TITLE+= (USB)
138 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
139 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.$(LINUX_KMOD_SUFFIX)
140 AUTOLOAD:=$(call AutoLoad,31,p54usb)
141 endef
142
143 # Ralink rt2x00 drivers
144 RT61FW:=RT61_Firmware_V1.2.zip
145 RT71FW:=RT71W_Firmware_V1.8.zip
146 RT2860FW:=RT2860_Firmware_V11.zip
147 RT2870FW:=RT2870_Firmware_V8.zip
148
149 define Download/rt61
150 FILE:=$(RT61FW)
151 URL:=http://www.ralinktech.com.tw/data/
152 MD5SUM:=d4c690c93b470bc9a681297c2adc6281
153 endef
154 $(eval $(call Download,rt61))
155
156 define Download/rt71w
157 FILE:=$(RT71FW)
158 URL:=http://www.ralinktech.com.tw/data/
159 MD5SUM:=1e7a5dc574e0268574fcda3fd5cf52f7
160 endef
161 $(eval $(call Download,rt71w))
162
163 define Download/rt2860
164 FILE:=$(RT2860FW)
165 URL:=http://www.ralinktech.com.tw/data/drivers
166 MD5SUM:=440a81756a52c53528f16faa41c40124
167 endef
168 $(eval $(call Download,rt2860))
169
170 define Download/rt2870
171 FILE:=$(RT2870FW)
172 URL:=http://www.ralinktech.com.tw/data/drivers
173 MD5SUM:=a7aae1d8cfd68e4d86a73000df0b6584
174 endef
175 $(eval $(call Download,rt2870))
176
177 AR9170FW:=ar9170.fw
178
179 define Download/ar9170
180 FILE:=$(AR9170FW)
181 URL:=http://www.kernel.org/pub/linux/kernel/people/mcgrof/firmware/ar9170
182 MD5SUM:=34feec4ec0eae3bb92c7c1ea2dfb4530
183 endef
184 $(eval $(call Download,ar9170))
185
186 NEED_RT2X00_LIB_CRYPTO:=y
187 NEED_RT2X00_LIB_FIRMWARE:=y
188 NEED_RT2X00_LIB_HT:=y
189 NEED_RT2X00_LIB_LEDS:=y
190
191 define KernelPackage/rt2x00/Default
192 $(call KernelPackage/mac80211/Default)
193 TITLE:=Ralink Drivers for RT2x00 cards
194 endef
195
196 define KernelPackage/rt2x00-lib
197 $(call KernelPackage/rt2x00/Default)
198 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-crc-itu-t
199 TITLE+= (LIB)
200 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.$(LINUX_KMOD_SUFFIX)
201 AUTOLOAD:=$(call AutoLoad,25,rt2x00lib)
202 MENU:=1
203 endef
204
205 define KernelPackage/rt2x00-lib/config
206 menu "Configuration"
207 depends PACKAGE_kmod-rt2x00-lib
208
209 config PACKAGE_RT2X00_LIB_DEBUGFS
210 bool "Enable rt2x00 debugfs support"
211 depends PACKAGE_MAC80211_DEBUGFS
212 help
213 Enable creation of debugfs files for the rt2x00 drivers.
214 These debugfs files support both reading and writing of the
215 most important register types of the rt2x00 hardware.
216
217 config PACKAGE_RT2X00_DEBUG
218 bool "Enable rt2x00 debug output"
219 help
220 Enable debugging output for all rt2x00 modules
221
222 endmenu
223 endef
224
225 define KernelPackage/rt2x00-pci
226 $(call KernelPackage/rt2x00/Default)
227 DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
228 TITLE+= (PCI)
229 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.$(LINUX_KMOD_SUFFIX)
230 AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
231 endef
232
233 define KernelPackage/rt2x00-usb
234 $(call KernelPackage/rt2x00/Default)
235 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
236 TITLE+= (USB)
237 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.$(LINUX_KMOD_SUFFIX)
238 AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
239 endef
240
241 define KernelPackage/rt2x00-soc
242 $(call KernelPackage/rt2x00/Default)
243 DEPENDS+= @TARGET_ramips +kmod-rt2x00-lib
244 TITLE+= (SoC)
245 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.$(LINUX_KMOD_SUFFIX)
246 AUTOLOAD:=$(call AutoLoad,26,rt2x00soc)
247 endef
248
249 define KernelPackage/rt2800-lib
250 $(call KernelPackage/rt2x00/Default)
251 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +USB_SUPPORT:kmod-rt2x00-usb +TARGET_ramips:kmod-rt2x00-soc
252 TITLE+= (rt2800 LIB)
253 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.$(LINUX_KMOD_SUFFIX)
254 AUTOLOAD:=$(call AutoLoad,27,rt2800lib)
255 endef
256
257 define KernelPackage/rt2400-pci
258 $(call KernelPackage/rt2x00/Default)
259 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
260 TITLE+= (RT2400 PCI)
261 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.$(LINUX_KMOD_SUFFIX)
262 AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
263 endef
264
265 define KernelPackage/rt2500-pci
266 $(call KernelPackage/rt2x00/Default)
267 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
268 TITLE+= (RT2500 PCI)
269 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.$(LINUX_KMOD_SUFFIX)
270 AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
271 endef
272
273 define KernelPackage/rt2500-usb
274 $(call KernelPackage/rt2x00/Default)
275 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
276 TITLE+= (RT2500 USB)
277 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.$(LINUX_KMOD_SUFFIX)
278 AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
279 endef
280
281 define KernelPackage/rt61-pci
282 $(call KernelPackage/rt2x00/Default)
283 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
284 TITLE+= (RT2x61 PCI)
285 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.$(LINUX_KMOD_SUFFIX)
286 AUTOLOAD:=$(call AutoLoad,27,rt61pci)
287 endef
288
289 define KernelPackage/rt73-usb
290 $(call KernelPackage/rt2x00/Default)
291 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
292 TITLE+= (RT73 USB)
293 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.$(LINUX_KMOD_SUFFIX)
294 AUTOLOAD:=$(call AutoLoad,27,rt73usb)
295 endef
296
297 define KernelPackage/rt2800-pci
298 $(call KernelPackage/rt2x00/Default)
299 DEPENDS+= +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-crc-ccitt +TARGET_ramips:kmod-rt2x00-soc
300 TITLE+= (RT2860 PCI)
301 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.$(LINUX_KMOD_SUFFIX)
302 AUTOLOAD:=$(call AutoLoad,28,rt2800pci)
303 endef
304
305 define KernelPackage/rt2800-usb
306 $(call KernelPackage/rt2x00/Default)
307 DEPENDS+= +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-crc-ccitt
308 TITLE+= (RT2870 USB)
309 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.$(LINUX_KMOD_SUFFIX)
310 AUTOLOAD:=$(call AutoLoad,28,rt2800usb)
311 endef
312
313 define KernelPackage/rtl818x/Default
314 $(call KernelPackage/mac80211/Default)
315 TITLE:=Realtek Drivers for RTL818x devices
316 URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
317 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
318 endef
319
320 define KernelPackage/rtl8180
321 $(call KernelPackage/rtl818x/Default)
322 DEPENDS+= @PCI_SUPPORT
323 TITLE+= (RTL8180 PCI)
324 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180.$(LINUX_KMOD_SUFFIX)
325 AUTOLOAD:=$(call AutoLoad,27,rtl8180)
326 endef
327
328 define KernelPackage/rtl8187
329 $(call KernelPackage/rtl818x/Default)
330 DEPENDS+= @USB_SUPPORT
331 TITLE+= (RTL8187 USB)
332 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187.$(LINUX_KMOD_SUFFIX)
333 AUTOLOAD:=$(call AutoLoad,27,rtl8187)
334 endef
335
336 ZD1211FW_NAME:=zd1211-firmware
337 ZD1211FW_VERSION:=1.4
338 define Download/zd1211rw
339 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
340 URL:=@SF/zd1211/
341 MD5SUM:=19f28781d76569af8551c9d11294c870
342 endef
343 $(eval $(call Download,zd1211rw))
344
345 define KernelPackage/zd1211rw
346 $(call KernelPackage/mac80211/Default)
347 TITLE:=Zydas ZD1211 support
348 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
349 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.$(LINUX_KMOD_SUFFIX)
350 AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
351 endef
352
353 define KernelPackage/ath/config
354 menu "Configuration"
355 depends on PACKAGE_kmod-ath
356
357 config ATH_USER_REGD
358 bool "Force Atheros drivers to respect the user's regdomain settings"
359 help
360 Atheros' idea of regulatory handling is that the EEPROM of the card defines
361 the regulatory limits and the user is only allowed to restrict the settings
362 even further, even if the country allows frequencies or power levels that
363 are forbidden by the EEPROM settings.
364
365 Select this option if you want the driver to respect the user's decision about
366 regulatory settings.
367
368 config PACKAGE_ATH_DEBUG
369 bool "Atheros wireless debugging"
370 help
371 Say Y, if you want to debug atheros wireless drivers.
372 Right now only ath9k makes use of this.
373
374 endmenu
375 endef
376
377 define KernelPackage/ath
378 $(call KernelPackage/mac80211/Default)
379 TITLE:=Atheros common driver part
380 DEPENDS+= @PCI_SUPPORT +kmod-mac80211
381 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.$(LINUX_KMOD_SUFFIX)
382 AUTOLOAD:=$(call AutoLoad,26,ath)
383 MENU:=1
384 endef
385
386 define KernelPackage/ath/description
387 This module contains some common parts needed by Atheros Wireless drivers.
388 endef
389
390 define KernelPackage/ath5k
391 $(call KernelPackage/mac80211/Default)
392 TITLE:=Atheros 5xxx wireless cards support
393 URL:=http://linuxwireless.org/en/users/Drivers/ath5k
394 DEPENDS+= +kmod-ath
395 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.$(LINUX_KMOD_SUFFIX)
396 AUTOLOAD:=$(call AutoLoad,27,ath5k)
397 endef
398
399 define KernelPackage/ath5k/description
400 This module adds support for wireless adapters based on
401 Atheros 5xxx chipset.
402 endef
403
404 define KernelPackage/ath9k
405 $(call KernelPackage/mac80211/Default)
406 TITLE:=Atheros 802.11n wireless cards support
407 URL:=http://linuxwireless.org/en/users/Drivers/ath9k
408 DEPENDS+= +kmod-ath
409 FILES:= \
410 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.$(LINUX_KMOD_SUFFIX) \
411 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.$(LINUX_KMOD_SUFFIX) \
412 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.$(LINUX_KMOD_SUFFIX)
413 AUTOLOAD:=$(call AutoLoad,27,ath9k_hw ath9k_common ath9k)
414 MENU:=1
415 endef
416
417 define KernelPackage/ath9k/description
418 This module adds support for wireless adapters based on
419 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
420 endef
421
422 define KernelPackage/ath9k/config
423 menu "Configuration"
424 depends PACKAGE_kmod-ath9k
425
426 config PACKAGE_ATH9K_DEBUG
427 bool "ath9k debugging"
428 depends KERNEL_DEBUG_FS
429 help
430 Say Y, if you need ath9k to display debug messages.
431 Pass the debug mask as a module parameter:
432
433 modprobe ath9k debug=0x00002000
434
435 Look in ath9k/core.h for possible debug masks
436
437 config PACKAGE_ATH9K_USE_MINSTREL
438 bool "use the new minstrel_ht rate control for ath9k"
439
440 endmenu
441 endef
442
443 USB8388FW_NAME:=usb8388
444 USB8388FW_VERSION:=5.110.22.p23
445
446 define Download/usb8388
447 URL:=http://dev.laptop.org/pub/firmware/libertas/
448 FILE:=$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin
449 MD5SUM=5e38f55719df3d0c58dd3bd02575a09c
450 endef
451 $(eval $(call Download,usb8388))
452
453 define KernelPackage/libertas
454 $(call KernelPackage/mac80211/Default)
455 DEPENDS+= @USB_SUPPORT +kmod-mac80211 +kmod-usb-core +kmod-lib80211
456 TITLE:=Marvell 88W8015 Wireless Driver
457 FILES:= \
458 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.$(LINUX_KMOD_SUFFIX) \
459 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.$(LINUX_KMOD_SUFFIX)
460 AUTOLOAD:=$(call AutoLoad,27,libertas usb8xxx)
461 endef
462
463
464 define KernelPackage/ar9170
465 $(call KernelPackage/mac80211/Default)
466 TITLE:=Atheros AR9170 802.11n USB support
467 URL:=http://wireless.kernel.org/en/users/Drivers/ar9170
468 DEPENDS+= @USB_SUPPORT @!LINUX_2_6_25 +kmod-ath +kmod-usb-core
469 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar9170/ar9170usb.$(LINUX_KMOD_SUFFIX)
470 AUTOLOAD:=$(call AutoLoad,27,ar9170usb)
471 endef
472
473 define KernelPackage/ar9170/description
474 This is a driver for the Atheros "otus" 802.11n USB devices.
475 endef
476
477 define KernelPackage/mac80211-hwsim
478 $(call KernelPackage/mac80211/Default)
479 TITLE:=mac80211 HW simulation device
480 DEPENDS+= +kmod-mac80211
481 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.$(LINUX_KMOD_SUFFIX)
482 AUTOLOAD:=$(call AutoLoad,60,mac80211_hwsim)
483 endef
484
485 define KernelPackage/net-libipw
486 $(call KernelPackage/mac80211/Default)
487 TITLE:=libipw for ipw2100 and ipw2200
488 DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211
489 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.$(LINUX_KMOD_SUFFIX)
490 AUTOLOAD:=$(call AutoLoad,49,libipw)
491 endef
492
493 define KernelPackage/net-libipw/description
494 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
495 endef
496
497 IPW2100_NAME:=ipw2100-fw
498 IPW2100_VERSION:=1.3
499
500 define Download/net-ipw2100
501 URL:=http://bughost.org/firmware/
502 FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
503 MD5SUM=46aa75bcda1a00efa841f9707bbbd113
504 endef
505 $(eval $(call Download,net-ipw2100))
506
507 define KernelPackage/net-ipw2100
508 $(call KernelPackage/mac80211/Default)
509 TITLE:=Intel IPW2100 driver
510 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
511 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.$(LINUX_KMOD_SUFFIX)
512 AUTOLOAD:=$(call AutoLoad,50,ipw2100)
513 endef
514
515 define KernelPackage/net-ipw2100/description
516 Kernel support for Intel IPW2100
517 Includes:
518 - ipw2100
519 endef
520
521 IPW2200_NAME:=ipw2200-fw
522 IPW2200_VERSION:=3.1
523
524 define Download/net-ipw2200
525 URL:=http://bughost.org/firmware/
526 FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
527 MD5SUM=eaba788643c7cc7483dd67ace70f6e99
528 endef
529 $(eval $(call Download,net-ipw2200))
530
531 define KernelPackage/net-ipw2200
532 $(call KernelPackage/mac80211/Default)
533 TITLE:=Intel IPW2200 driver
534 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
535 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.$(LINUX_KMOD_SUFFIX)
536 AUTOLOAD:=$(call AutoLoad,50,ipw2200)
537 endef
538
539 define KernelPackage/net-ipw2200/description
540 Kernel support for Intel IPW2200
541 Includes:
542 - ipw2200
543 endef
544
545 #Broadcom firmware
546 ifneq ($(CONFIG_B43_EXPERIMENTAL),)
547 PKG_B43_FWV4_NAME:=broadcom-wl
548 PKG_B43_FWV4_VERSION:=4.178.10.4
549 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl.o
550 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
551 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
552 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
553 else
554 PKG_B43_FWV4_NAME:=broadcom-wl
555 PKG_B43_FWV4_VERSION:=4.150.10.5
556 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
557 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
558 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
559 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
560 endif
561 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
562 PKG_B43_FWV4_NAME:=broadcom-wl
563 PKG_B43_FWV4_VERSION:=5.2
564 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
565 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
566 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
567 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
568 endif
569
570
571 PKG_B43_FWV3_NAME:=wl_apsta
572 PKG_B43_FWV3_VERSION:=3.130.20.0
573 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
574 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
575 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
576
577 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
578 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
579 PKG_B43_FWCUTTER_VERSION:=3e69531aa65b8f664a0ab00dfc3e2eefeb0cb417
580 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
581 PKG_B43_FWCUTTER_PROTO:=git
582 PKG_B43_FWCUTTER_SOURCE_URL:=http://git.bu3sch.de/git/b43-tools.git
583 PKG_B43_FWCUTTER_SUBDIR:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)
584 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/fwcutter/
585 else
586 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
587 PKG_B43_FWCUTTER_VERSION:=012
588 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
589 PKG_B43_FWCUTTER_PROTO:=default
590 PKG_B43_FWCUTTER_SOURCE_URL:=http://bu3sch.de/b43/fwcutter/
591 PKG_B43_FWCUTTER_MD5SUM:=69eadf67b459f313a8d6b37aaabef96c
592 PKG_B43_FWCUTTER_SUBDIR:=b43-fwcutter-$(PKG_B43_FWCUTTER_VERSION)
593 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/
594 endif
595
596 define Download/b43-common
597 FILE:=$(PKG_B43_FWCUTTER_SOURCE)
598 URL:=$(PKG_B43_FWCUTTER_SOURCE_URL)
599 MD5SUM:=$(PKG_B43_FWCUTTER_MD5SUM)
600 PROTO:=$(PKG_B43_FWCUTTER_PROTO)
601 VERSION:=$(PKG_B43_FWCUTTER_VERSION)
602 SUBDIR:=$(PKG_B43_FWCUTTER_SUBDIR)
603 endef
604 $(eval $(call Download,b43-common))
605
606 define Download/b43
607 FILE:=$(PKG_B43_FWV4_SOURCE)
608 URL:=$(PKG_B43_FWV4_SOURCE_URL)
609 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
610 endef
611 $(eval $(call Download,b43))
612
613 define Download/b43legacy
614 FILE:=$(PKG_B43_FWV3_SOURCE)
615 URL:=$(PKG_B43_FWV3_SOURCE_URL)
616 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
617 endef
618 $(eval $(call Download,b43legacy))
619
620 define KernelPackage/b43-common
621 $(call KernelPackage/mac80211/Default)
622 TITLE:=Generic stuff for Broadcom wireless devices
623 URL:=http://linuxwireless.org/en/users/Drivers/b43
624 KCONFIG:= \
625 CONFIG_HW_RANDOM=y
626 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
627 endef
628
629 define KernelPackage/b43
630 $(call KernelPackage/b43-common)
631 TITLE:=Broadcom 43xx wireless support
632 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.$(LINUX_KMOD_SUFFIX)
633 AUTOLOAD:=$(call AutoLoad,30,b43)
634 MENU:=1
635 endef
636
637 define KernelPackage/b43/config
638 menu "Configuration"
639 depends on PACKAGE_kmod-b43
640
641 choice
642 prompt "b43 firmware version"
643 default B43_EXPERIMENTAL
644 help
645 This option allows you to select the version of the b43 firmware.
646
647 config B43_STABLE
648 bool "4.150.10.5 (stable)"
649 help
650 Stable firmware for BCM43xx devices.
651
652 If unsure, select this.
653
654 config B43_EXPERIMENTAL
655 bool "4.178.10.4 (experimental)"
656 help
657 Experimental firmware for BCM43xx devices.
658
659 This firmware is not tested as much as the "stable" firmware.
660
661 If unsure, select the "stable" firmware.
662
663 config B43_OPENFIRMWARE
664 bool "Open FirmWare for WiFi networks"
665 help
666 Opensource firmware for BCM43xx devices.
667
668 Do _not_ select this, unless you know what you are doing.
669 The Opensource firmware is not suitable for embedded devices, yet.
670 It does not support QoS, which is bad for AccessPoints.
671 It does not support hardware crypto acceleration, which is a showstopper
672 for embedded devices with low CPU resources.
673
674 If unsure, select the "stable" firmware.
675
676 endchoice
677
678 config B43_FW_SQUASH
679 bool "Remove unnecessary firmware files"
680 depends on !B43_OPENFIRMWARE
681 default y
682 help
683 This options allows you to remove unnecessary b43 firmware files
684 from the final rootfs image. This can reduce the rootfs size by
685 up to 200k.
686
687 If unsure, say Y.
688
689 config B43_FW_SQUASH_COREREVS
690 string "Core revisions to include"
691 depends on B43_FW_SQUASH
692 default "5,6,7,8,9,10,13,14,15"
693 help
694 This is a comma seperated list of core revision numbers.
695
696 Example (keep files for rev5 only):
697 5
698
699 Example (keep files for rev5 and rev11):
700 5,11
701
702 config B43_FW_SQUASH_PHYTYPES
703 string "PHY types to include"
704 depends on B43_FW_SQUASH
705 default "G,LP"
706 help
707 This is a comma seperated list of PHY types:
708 A => A-PHY
709 AG => Dual A-PHY G-PHY
710 G => G-PHY
711 LP => LP-PHY
712 N => N-PHY
713
714 Example (keep files for G-PHY only):
715 G
716
717 Example (keep files for G-PHY and N-PHY):
718 G,N
719
720 endmenu
721 endef
722
723 define KernelPackage/b43/description
724 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
725 endef
726
727 define KernelPackage/b43legacy
728 $(call KernelPackage/b43-common)
729 TITLE:=Broadcom 43xx-legacy wireless support
730 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.$(LINUX_KMOD_SUFFIX)
731 AUTOLOAD:=$(call AutoLoad,30,b43legacy)
732 MENU:=1
733 endef
734
735 define KernelPackage/b43legacy/config
736 menu "Configuration"
737 depends on PACKAGE_kmod-b43legacy
738
739 config B43LEGACY_FW_SQUASH
740 bool "Remove unnecessary firmware files"
741 default y
742 help
743 This options allows you to remove unnecessary b43legacy firmware files
744 from the final rootfs image. This can reduce the rootfs size by
745 up to 50k.
746
747 If unsure, say Y.
748
749 config B43LEGACY_FW_SQUASH_COREREVS
750 string "Core revisions to include"
751 depends on B43LEGACY_FW_SQUASH
752 default "1,2,3,4"
753 help
754 This is a comma seperated list of core revision numbers.
755
756 Example (keep files for rev4 only):
757 4
758
759 Example (keep files for rev2 and rev4):
760 2,4
761
762 endmenu
763 endef
764
765 define KernelPackage/b43legacy/description
766 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
767 endef
768
769 BUILDFLAGS:= \
770 -I$(PKG_BUILD_DIR)/include \
771 $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
772 $(if $(CONFIG_PCI),-DCONFIG_B43_PCI_AUTOSELECT -DCONFIG_B43_PCICORE_AUTOSELECT -DCONFIG_SSB_DRIVER_PCICORE_POSSIBLE -DCONFIG_SSB_DRIVER_PCICORE) \
773 $(if $(CONFIG_PCI),-DCONFIG_SSB_PCIHOST_POSSIBLE -DCONFIG_SSB_PCIHOST) \
774 $(if $(CONFIG_PCI),-DCONFIG_SSB_SPROM) \
775 $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS -DCONFIG_AR9170_LEDS) \
776 -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
777 $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),-DCONFIG_MAC80211_DEBUGFS -DCONFIG_ATH9K_DEBUGFS) \
778 $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG) \
779 -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
780 $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1) \
781 $(if $(CONFIG_PACKAGE_ATH9K_USE_MINSTREL),-DATH9K_USE_MINSTREL) \
782 $(if $(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS),-DCONFIG_RT2X00_LIB_DEBUGFS) \
783 $(if $(CONFIG_PACKAGE_RT2X00_DEBUG),-DCONFIG_RT2X00_DEBUG) \
784 $(if $(NEED_RT2X00_LIB_HT),-DCONFIG_RT2X00_LIB_HT) \
785 $(if $(NEED_RT2X00_LIB_CRYPTO),-DCONFIG_RT2X00_LIB_CRYPTO) \
786 $(if $(NEED_RT2X00_LIB_FIRMWARE),-DCONFIG_RT2X00_LIB_FIRMWARE) \
787 $(if $(NEED_RT2X00_LIB_LEDS),-DCONFIG_RT2X00_LIB_LEDS) \
788 $(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),-DCONFIG_RT2X00_LIB_PCI) \
789 $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2X00_LIB_USB) \
790 $(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),-DCONFIG_RT2X00_LIB_SOC) \
791 $(if $(CONFIG_PCI_SUPPORT),-DCONFIG_RT2800PCI_PCI) \
792 $(if $(CONFIG_TARGET_ramips),-DCONFIG_RT2800PCI_SOC) \
793
794 MAKE_OPTS:= \
795 CROSS_COMPILE="$(KERNEL_CROSS)" \
796 ARCH="$(LINUX_KARCH)" \
797 EXTRA_CFLAGS="$(BUILDFLAGS)" \
798 $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
799 CONFIG_MAC80211=$(if $(CONFIG_PACKAGE_kmod-mac80211),m) \
800 CONFIG_MAC80211_RC_PID=y \
801 CONFIG_MAC80211_RC_MINSTREL=y \
802 CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
803 CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
804 CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
805 CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
806 CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
807 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=$(if $(CONFIG_PCI),y) \
808 CONFIG_SSB_DRIVER_PCICORE=$(if $(CONFIG_PCI),y) \
809 CONFIG_SSB_PCIHOST_POSSIBLE=$(if $(CONFIG_PCI),y) \
810 CONFIG_SSB_PCIHOST=$(if $(CONFIG_PCI),y) \
811 CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
812 CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
813 CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
814 CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
815 CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
816 CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
817 CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
818 CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
819 CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
820 CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
821 CONFIG_ATH9K_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
822 CONFIG_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
823 CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
824 CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
825 CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
826 CONFIG_P54_SPI= \
827 CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
828 CONFIG_RT2X00_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
829 CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
830 CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
831 CONFIG_RT2X00_LIB_SOC=$(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),m) \
832 CONFIG_RT2X00_LIB_DEBUGFS=$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) \
833 CONFIG_RT2X00_LIB_CRYPTO=$(NEED_RT2X00_LIB_CRYPTO) \
834 CONFIG_RT2X00_LIB_FIRMWARE=$(NEED_RT2X00_LIB_FIRMWARE) \
835 CONFIG_RT2X00_LIB_HT=$(NEED_RT2X00_LIB_HT) \
836 CONFIG_RT2X00_LIB_LEDS=$(NEED_RT2X00_LIB_LEDS) \
837 CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
838 CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
839 CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
840 CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
841 CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
842 CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
843 CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
844 CONFIG_RT2800PCI_PCI=$(if $(CONFIG_PCI_SUPPORT),y) \
845 CONFIG_RT2800PCI_SOC=$(if $(CONFIG_TARGET_ramips),y) \
846 CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
847 CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
848 CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
849 CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
850 CONFIG_PCMCIA= \
851 CONFIG_LIBIPW=$(if $(CONFIG_PACKAGE_kmod-net-libipw),m) \
852 CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
853 CONFIG_LIBERTAS_CS= \
854 CONFIG_LIBERTAS_SDIO= \
855 CONFIG_LIBERTAS_THINFIRM= \
856 CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
857 CONFIG_IPW2100=$(if $(CONFIG_PACKAGE_kmod-net-ipw2100),m) \
858 CONFIG_IPW2200=$(if $(CONFIG_PACKAGE_kmod-net-ipw2200),m) \
859 CONFIG_NL80211=y \
860 CONFIG_LIB80211= \
861 CONFIG_LIB80211_CRYPT_WEP= \
862 CONFIG_LIB80211_CRYPT_CCMP= \
863 CONFIG_LIB80211_CRYPT_TKIP= \
864 CONFIG_IWLWIFI= \
865 CONFIG_IWLAGN= \
866 CONFIG_MWL8K= \
867 CONFIG_ATMEL= \
868 CONFIG_PCMCIA_ATMEL= \
869 CONFIG_ADM8211= \
870 CONFIG_USB_NET_RNDIS_HOST= \
871 CONFIG_USB_NET_RNDIS_WLAN= \
872 CONFIG_USB_NET_CDCETHER= \
873 CONFIG_USB_USBNET= \
874 CONFIG_AT76C50X_USB= \
875 CONFIG_WL12XX= \
876 CONFIG_EEPROM_93CX6= \
877 CONFIG_HERMES= \
878 CONFIG_AR9170_USB=$(if $(CONFIG_PACKAGE_kmod-ar9170),m) \
879 CONFIG_AR9170_LEDS=$(CONFIG_LEDS_TRIGGERS) \
880 CONFIG_IWM= \
881 CONFIG_ATH9K_HTC= \
882 MADWIFI= \
883 OLD_IWL= \
884 KLIB_BUILD="$(LINUX_DIR)" \
885 MODPROBE=: \
886 KLIB=$(TARGET_MODULES_DIR) \
887 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER)))
888
889 define Build/Prepare
890 rm -rf $(PKG_BUILD_DIR)
891 mkdir -p $(PKG_BUILD_DIR)
892 $(PKG_UNPACK)
893 $(Build/Patch)
894 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT61FW)
895 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT71FW)
896 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2860FW)
897 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2870FW)
898 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
899 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
900 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
901 rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
902 rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
903 rm $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h
904 endef
905
906 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211),)
907 define Build/Compile/kmod
908 rm -rf $(PKG_BUILD_DIR)/modules
909 $(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
910 endef
911 endif
912
913 define Build/Compile
914 $(call Build/Compile/kmod)
915 endef
916
917 define Build/InstallDev
918 mkdir -p \
919 $(1)/usr/include/mac80211 \
920 $(1)/usr/include/mac80211/ath \
921 $(1)/usr/include/net/mac80211
922 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
923 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
924 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
925 endef
926
927 define KernelPackage/libertas/install
928 $(INSTALL_DIR) $(1)/lib/firmware
929 $(INSTALL_DATA) $(DL_DIR)/$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin $(1)/lib/firmware/$(USB8388FW_NAME).bin
930 endef
931
932 define KernelPackage/cfg80211/install
933 $(INSTALL_DIR) $(1)/lib/wifi
934 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
935 endef
936
937 define KernelPackage/p54-pci/install
938 $(INSTALL_DIR) $(1)/lib/firmware
939 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
940 endef
941
942 define KernelPackage/p54-usb/install
943 $(INSTALL_DIR) $(1)/lib/firmware
944 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
945 endef
946
947 define KernelPackage/rt61-pci/install
948 $(INSTALL_DIR) $(1)/lib/firmware
949 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware/
950 endef
951
952 define KernelPackage/rt73-usb/install
953 $(INSTALL_DIR) $(1)/lib/firmware
954 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware/
955 endef
956
957 define KernelPackage/rt2800-pci/install
958 $(INSTALL_DIR) $(1)/lib/firmware
959 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2860.bin $(1)/lib/firmware/
960 endef
961
962 define KernelPackage/rt2800-usb/install
963 $(INSTALL_DIR) $(1)/lib/firmware
964 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2870.bin $(1)/lib/firmware/
965 endef
966
967 define KernelPackage/zd1211rw/install
968 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
969 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
970 endef
971
972 define KernelPackage/ar9170/install
973 $(INSTALL_DIR) $(1)/lib/firmware
974 $(INSTALL_DATA) $(DL_DIR)/$(AR9170FW) $(1)/lib/firmware/
975 endef
976
977 define KernelPackage/net-ipw2100/install
978 $(INSTALL_DIR) $(1)/lib/firmware
979 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
980 endef
981
982 define KernelPackage/net-ipw2200/install
983 $(INSTALL_DIR) $(1)/lib/firmware
984 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
985 endef
986
987 define Build/b43-common
988 tar xjf "$(DL_DIR)/$(PKG_B43_FWCUTTER_SOURCE)" -C "$(PKG_BUILD_DIR)"
989 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)" \
990 CFLAGS="-I$(STAGING_DIR_HOST)/include -include endian.h"
991 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
992 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
993 $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
994 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
995 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
996 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
997 endif
998 $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
999 endef
1000
1001 define KernelPackage/b43/install
1002 rm -rf $(1)/lib/firmware/
1003 $(call Build/b43-common)
1004 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
1005 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1006 else
1007 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1008 endif
1009 $(INSTALL_DIR) $(1)/lib/firmware/
1010 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
1011 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1012 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1013 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1014 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1015 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1016 else
1017 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1018 endif
1019 ifneq ($(CONFIG_B43_FW_SQUASH),)
1020 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1021 endif
1022 endef
1023
1024 define KernelPackage/b43legacy/install
1025 $(call Build/b43-common)
1026 $(INSTALL_DIR) $(1)/lib/firmware/
1027
1028 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1029 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1030 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1031 endif
1032 endef
1033
1034 $(eval $(call KernelPackage,ath5k))
1035 $(eval $(call KernelPackage,libertas))
1036 $(eval $(call KernelPackage,cfg80211))
1037 $(eval $(call KernelPackage,mac80211))
1038 $(eval $(call KernelPackage,p54-common))
1039 $(eval $(call KernelPackage,p54-pci))
1040 $(eval $(call KernelPackage,p54-usb))
1041 $(eval $(call KernelPackage,rt2x00-lib))
1042 $(eval $(call KernelPackage,rt2x00-pci))
1043 $(eval $(call KernelPackage,rt2x00-usb))
1044 $(eval $(call KernelPackage,rt2x00-soc))
1045 $(eval $(call KernelPackage,rt2800-lib))
1046 $(eval $(call KernelPackage,rt2400-pci))
1047 $(eval $(call KernelPackage,rt2500-pci))
1048 $(eval $(call KernelPackage,rt2500-usb))
1049 $(eval $(call KernelPackage,rt61-pci))
1050 $(eval $(call KernelPackage,rt73-usb))
1051 $(eval $(call KernelPackage,rt2800-pci))
1052 $(eval $(call KernelPackage,rt2800-usb))
1053 $(eval $(call KernelPackage,rtl8180))
1054 $(eval $(call KernelPackage,rtl8187))
1055 $(eval $(call KernelPackage,zd1211rw))
1056 $(eval $(call KernelPackage,mac80211-hwsim))
1057 $(eval $(call KernelPackage,ath9k))
1058 $(eval $(call KernelPackage,ath))
1059 $(eval $(call KernelPackage,ar9170))
1060 $(eval $(call KernelPackage,b43))
1061 $(eval $(call KernelPackage,b43legacy))
1062 $(eval $(call KernelPackage,net-libipw))
1063 $(eval $(call KernelPackage,net-ipw2100))
1064 $(eval $(call KernelPackage,net-ipw2200))