mac80211: update to wireless-testing 2010-04-09, add work-in-progress ar9300 patches
[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-09
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:=4ae40fcb5552cd8d45e0b4368c548363
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 endef
70
71 define KernelPackage/mac80211/config
72 source "$(SOURCE)/Config.in"
73 endef
74
75 define KernelPackage/mac80211/description
76 Generic IEEE 802.11 Networking Stack (mac80211)
77 endef
78
79 # Prism54 drivers
80 P54PCIFW:=2.13.12.0.arm
81 P54USBFW:=2.13.24.0.lm87.arm
82
83 define Download/p54usb
84 FILE:=$(P54USBFW)
85 URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
86 MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
87 endef
88 $(eval $(call Download,p54usb))
89
90 define Download/p54pci
91 FILE:=$(P54PCIFW)
92 URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
93 MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
94 endef
95 $(eval $(call Download,p54pci))
96
97 define KernelPackage/p54/Default
98 $(call KernelPackage/mac80211/Default)
99 TITLE:=Prism54 Drivers
100 endef
101
102 define KernelPackage/p54/description
103 Kernel module for Prism54 chipsets (mac80211)
104 endef
105
106 define KernelPackage/p54-common
107 $(call KernelPackage/p54/Default)
108 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT +kmod-mac80211
109 TITLE+= (COMMON)
110 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.$(LINUX_KMOD_SUFFIX)
111 AUTOLOAD:=$(call AutoLoad,30,p54common)
112 endef
113
114 define KernelPackage/p54-pci
115 $(call KernelPackage/p54/Default)
116 TITLE+= (PCI)
117 DEPENDS+= @PCI_SUPPORT +kmod-p54-common
118 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.$(LINUX_KMOD_SUFFIX)
119 AUTOLOAD:=$(call AutoLoad,31,p54pci)
120 endef
121
122 define KernelPackage/p54-usb
123 $(call KernelPackage/p54/Default)
124 TITLE+= (USB)
125 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
126 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.$(LINUX_KMOD_SUFFIX)
127 AUTOLOAD:=$(call AutoLoad,31,p54usb)
128 endef
129
130 # Ralink rt2x00 drivers
131 RT61FW:=RT61_Firmware_V1.2.zip
132 RT71FW:=RT71W_Firmware_V1.8.zip
133 RT2860FW:=RT2860_Firmware_V11.zip
134 RT2870FW:=RT2870_Firmware_V8.zip
135
136 define Download/rt61
137 FILE:=$(RT61FW)
138 URL:=http://www.ralinktech.com.tw/data/
139 MD5SUM:=d4c690c93b470bc9a681297c2adc6281
140 endef
141 $(eval $(call Download,rt61))
142
143 define Download/rt71w
144 FILE:=$(RT71FW)
145 URL:=http://www.ralinktech.com.tw/data/
146 MD5SUM:=1e7a5dc574e0268574fcda3fd5cf52f7
147 endef
148 $(eval $(call Download,rt71w))
149
150 define Download/rt2860
151 FILE:=$(RT2860FW)
152 URL:=http://www.ralinktech.com.tw/data/drivers
153 MD5SUM:=440a81756a52c53528f16faa41c40124
154 endef
155 $(eval $(call Download,rt2860))
156
157 define Download/rt2870
158 FILE:=$(RT2870FW)
159 URL:=http://www.ralinktech.com.tw/data/drivers
160 MD5SUM:=a7aae1d8cfd68e4d86a73000df0b6584
161 endef
162 $(eval $(call Download,rt2870))
163
164 AR9170FW:=ar9170.fw
165
166 define Download/ar9170
167 FILE:=$(AR9170FW)
168 URL:=http://www.kernel.org/pub/linux/kernel/people/mcgrof/firmware/ar9170
169 MD5SUM:=34feec4ec0eae3bb92c7c1ea2dfb4530
170 endef
171 $(eval $(call Download,ar9170))
172
173 NEED_RT2X00_LIB_CRYPTO:=y
174 NEED_RT2X00_LIB_FIRMWARE:=y
175 NEED_RT2X00_LIB_HT:=y
176 NEED_RT2X00_LIB_LEDS:=y
177
178 define KernelPackage/rt2x00/Default
179 $(call KernelPackage/mac80211/Default)
180 TITLE:=Ralink Drivers for RT2x00 cards
181 endef
182
183 define KernelPackage/rt2x00-lib
184 $(call KernelPackage/rt2x00/Default)
185 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-crc-itu-t
186 TITLE+= (LIB)
187 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.$(LINUX_KMOD_SUFFIX)
188 AUTOLOAD:=$(call AutoLoad,25,rt2x00lib)
189 endef
190
191 define KernelPackage/rt2x00-lib/config
192 source "$(SOURCE)/Config.in.rt2x00"
193 endef
194
195 define KernelPackage/rt2x00-pci
196 $(call KernelPackage/rt2x00/Default)
197 DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
198 TITLE+= (PCI)
199 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.$(LINUX_KMOD_SUFFIX)
200 AUTOLOAD:=$(call AutoLoad,26,rt2x00pci)
201 endef
202
203 define KernelPackage/rt2x00-usb
204 $(call KernelPackage/rt2x00/Default)
205 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
206 TITLE+= (USB)
207 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.$(LINUX_KMOD_SUFFIX)
208 AUTOLOAD:=$(call AutoLoad,26,rt2x00usb)
209 endef
210
211 define KernelPackage/rt2x00-soc
212 $(call KernelPackage/rt2x00/Default)
213 DEPENDS+= @TARGET_ramips +kmod-rt2x00-lib
214 TITLE+= (SoC)
215 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.$(LINUX_KMOD_SUFFIX)
216 AUTOLOAD:=$(call AutoLoad,26,rt2x00soc)
217 endef
218
219 define KernelPackage/rt2800-lib
220 $(call KernelPackage/rt2x00/Default)
221 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +USB_SUPPORT:kmod-rt2x00-usb +TARGET_ramips:kmod-rt2x00-soc
222 TITLE+= (rt2800 LIB)
223 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.$(LINUX_KMOD_SUFFIX)
224 AUTOLOAD:=$(call AutoLoad,27,rt2800lib)
225 endef
226
227 define KernelPackage/rt2400-pci
228 $(call KernelPackage/rt2x00/Default)
229 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
230 TITLE+= (RT2400 PCI)
231 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.$(LINUX_KMOD_SUFFIX)
232 AUTOLOAD:=$(call AutoLoad,27,rt2400pci)
233 endef
234
235 define KernelPackage/rt2500-pci
236 $(call KernelPackage/rt2x00/Default)
237 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
238 TITLE+= (RT2500 PCI)
239 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.$(LINUX_KMOD_SUFFIX)
240 AUTOLOAD:=$(call AutoLoad,27,rt2500pci)
241 endef
242
243 define KernelPackage/rt2500-usb
244 $(call KernelPackage/rt2x00/Default)
245 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
246 TITLE+= (RT2500 USB)
247 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.$(LINUX_KMOD_SUFFIX)
248 AUTOLOAD:=$(call AutoLoad,27,rt2500usb)
249 endef
250
251 define KernelPackage/rt61-pci
252 $(call KernelPackage/rt2x00/Default)
253 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
254 TITLE+= (RT2x61 PCI)
255 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.$(LINUX_KMOD_SUFFIX)
256 AUTOLOAD:=$(call AutoLoad,27,rt61pci)
257 endef
258
259 define KernelPackage/rt73-usb
260 $(call KernelPackage/rt2x00/Default)
261 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
262 TITLE+= (RT73 USB)
263 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.$(LINUX_KMOD_SUFFIX)
264 AUTOLOAD:=$(call AutoLoad,27,rt73usb)
265 endef
266
267 define KernelPackage/rt2800-pci
268 $(call KernelPackage/rt2x00/Default)
269 DEPENDS+= +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-crc-ccitt +TARGET_ramips:kmod-rt2x00-soc
270 TITLE+= (RT2860 PCI)
271 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.$(LINUX_KMOD_SUFFIX)
272 AUTOLOAD:=$(call AutoLoad,28,rt2800pci)
273 endef
274
275 define KernelPackage/rt2800-usb
276 $(call KernelPackage/rt2x00/Default)
277 DEPENDS+= +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-crc-ccitt
278 TITLE+= (RT2870 USB)
279 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.$(LINUX_KMOD_SUFFIX)
280 AUTOLOAD:=$(call AutoLoad,28,rt2800usb)
281 endef
282
283 define KernelPackage/rtl818x/Default
284 $(call KernelPackage/mac80211/Default)
285 TITLE:=Realtek Drivers for RTL818x devices
286 URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
287 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
288 endef
289
290 define KernelPackage/rtl8180
291 $(call KernelPackage/rtl818x/Default)
292 DEPENDS+= @PCI_SUPPORT
293 TITLE+= (RTL8180 PCI)
294 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180.$(LINUX_KMOD_SUFFIX)
295 AUTOLOAD:=$(call AutoLoad,27,rtl8180)
296 endef
297
298 define KernelPackage/rtl8187
299 $(call KernelPackage/rtl818x/Default)
300 DEPENDS+= @USB_SUPPORT
301 TITLE+= (RTL8187 USB)
302 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187.$(LINUX_KMOD_SUFFIX)
303 AUTOLOAD:=$(call AutoLoad,27,rtl8187)
304 endef
305
306 ZD1211FW_NAME:=zd1211-firmware
307 ZD1211FW_VERSION:=1.4
308 define Download/zd1211rw
309 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
310 URL:=@SF/zd1211/
311 MD5SUM:=19f28781d76569af8551c9d11294c870
312 endef
313 $(eval $(call Download,zd1211rw))
314
315 define KernelPackage/zd1211rw
316 $(call KernelPackage/mac80211/Default)
317 TITLE:=Zydas ZD1211 support
318 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
319 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.$(LINUX_KMOD_SUFFIX)
320 AUTOLOAD:=$(call AutoLoad,60,zd1211rw)
321 endef
322
323 define KernelPackage/ath/config
324
325 config ATH_USER_REGD
326 bool "Force Atheros drivers to respect the user's regdomain settings"
327 depends on PACKAGE_kmod-ath
328 help
329 Atheros' idea of regulatory handling is that the EEPROM of the card defines
330 the regulatory limits and the user is only allowed to restrict the settings
331 even further, even if the country allows frequencies or power levels that
332 are forbidden by the EEPROM settings.
333 Select this option if you want the driver to respect the user's decision about
334 regulatory settings.
335
336 config PACKAGE_ATH_DEBUG
337 bool "Atheros wireless debugging"
338 depends on PACKAGE_kmod-ath
339 help
340 Say Y, if you want to debug atheros wireless drivers.
341 Right now only ath9k makes use of this.
342 endef
343
344 define KernelPackage/ath
345 $(call KernelPackage/mac80211/Default)
346 TITLE:=Atheros common driver part
347 DEPENDS+= @PCI_SUPPORT +kmod-mac80211
348 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.$(LINUX_KMOD_SUFFIX)
349 AUTOLOAD:=$(call AutoLoad,26,ath)
350 endef
351
352 define KernelPackage/ath/description
353 This module contains some common parts needed by Atheros Wireless drivers.
354 endef
355
356 define KernelPackage/ath5k
357 $(call KernelPackage/mac80211/Default)
358 TITLE:=Atheros 5xxx wireless cards support
359 URL:=http://linuxwireless.org/en/users/Drivers/ath5k
360 DEPENDS+= +kmod-ath
361 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.$(LINUX_KMOD_SUFFIX)
362 AUTOLOAD:=$(call AutoLoad,27,ath5k)
363 endef
364
365 define KernelPackage/ath5k/description
366 This module adds support for wireless adapters based on
367 Atheros 5xxx chipset.
368 endef
369
370 define KernelPackage/ath9k
371 $(call KernelPackage/mac80211/Default)
372 TITLE:=Atheros 802.11n wireless cards support
373 URL:=http://linuxwireless.org/en/users/Drivers/ath9k
374 DEPENDS+= +kmod-ath
375 FILES:= \
376 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.$(LINUX_KMOD_SUFFIX) \
377 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.$(LINUX_KMOD_SUFFIX) \
378 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.$(LINUX_KMOD_SUFFIX)
379 AUTOLOAD:=$(call AutoLoad,27,ath9k_hw ath9k_common ath9k)
380 endef
381
382 define KernelPackage/ath9k/description
383 This module adds support for wireless adapters based on
384 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
385 endef
386
387 define KernelPackage/ath9k/config
388 source "$(SOURCE)/Config.in.ath9k"
389 endef
390
391 USB8388FW_NAME:=usb8388
392 USB8388FW_VERSION:=5.110.22.p23
393
394 define Download/usb8388
395 URL:=http://dev.laptop.org/pub/firmware/libertas/
396 FILE:=$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin
397 MD5SUM=5e38f55719df3d0c58dd3bd02575a09c
398 endef
399 $(eval $(call Download,usb8388))
400
401 define KernelPackage/libertas
402 $(call KernelPackage/mac80211/Default)
403 DEPENDS+= @USB_SUPPORT +kmod-mac80211 +kmod-usb-core +kmod-lib80211
404 TITLE:=Marvell 88W8015 Wireless Driver
405 FILES:= \
406 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.$(LINUX_KMOD_SUFFIX) \
407 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.$(LINUX_KMOD_SUFFIX)
408 AUTOLOAD:=$(call AutoLoad,27,libertas usb8xxx)
409 endef
410
411
412 define KernelPackage/ar9170
413 $(call KernelPackage/mac80211/Default)
414 TITLE:=Atheros AR9170 802.11n USB support
415 URL:=http://wireless.kernel.org/en/users/Drivers/ar9170
416 DEPENDS+= @USB_SUPPORT @!LINUX_2_6_25 +kmod-ath +kmod-usb-core
417 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ar9170/ar9170usb.$(LINUX_KMOD_SUFFIX)
418 AUTOLOAD:=$(call AutoLoad,27,ar9170usb)
419 endef
420
421 define KernelPackage/ar9170/description
422 This is a driver for the Atheros "otus" 802.11n USB devices.
423 endef
424
425 define KernelPackage/mac80211-hwsim
426 $(call KernelPackage/mac80211/Default)
427 TITLE:=mac80211 HW simulation device
428 DEPENDS+= +kmod-mac80211
429 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.$(LINUX_KMOD_SUFFIX)
430 AUTOLOAD:=$(call AutoLoad,60,mac80211_hwsim)
431 endef
432
433 define KernelPackage/net-libipw
434 $(call KernelPackage/mac80211/Default)
435 TITLE:=libipw for ipw2100 and ipw2200
436 DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211
437 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.$(LINUX_KMOD_SUFFIX)
438 AUTOLOAD:=$(call AutoLoad,49,libipw)
439 endef
440
441 define KernelPackage/net-libipw/description
442 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
443 endef
444
445 IPW2100_NAME:=ipw2100-fw
446 IPW2100_VERSION:=1.3
447
448 define Download/net-ipw2100
449 URL:=http://bughost.org/firmware/
450 FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
451 MD5SUM=46aa75bcda1a00efa841f9707bbbd113
452 endef
453 $(eval $(call Download,net-ipw2100))
454
455 define KernelPackage/net-ipw2100
456 $(call KernelPackage/mac80211/Default)
457 TITLE:=Intel IPW2100 driver
458 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
459 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.$(LINUX_KMOD_SUFFIX)
460 AUTOLOAD:=$(call AutoLoad,50,ipw2100)
461 endef
462
463 define KernelPackage/net-ipw2100/description
464 Kernel support for Intel IPW2100
465 Includes:
466 - ipw2100
467 endef
468
469 IPW2200_NAME:=ipw2200-fw
470 IPW2200_VERSION:=3.1
471
472 define Download/net-ipw2200
473 URL:=http://bughost.org/firmware/
474 FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
475 MD5SUM=eaba788643c7cc7483dd67ace70f6e99
476 endef
477 $(eval $(call Download,net-ipw2200))
478
479 define KernelPackage/net-ipw2200
480 $(call KernelPackage/mac80211/Default)
481 TITLE:=Intel IPW2200 driver
482 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
483 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.$(LINUX_KMOD_SUFFIX)
484 AUTOLOAD:=$(call AutoLoad,50,ipw2200)
485 endef
486
487 define KernelPackage/net-ipw2200/description
488 Kernel support for Intel IPW2200
489 Includes:
490 - ipw2200
491 endef
492
493 #Broadcom firmware
494 ifneq ($(CONFIG_B43_EXPERIMENTAL),)
495 PKG_B43_FWV4_NAME:=broadcom-wl
496 PKG_B43_FWV4_VERSION:=4.178.10.4
497 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl.o
498 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
499 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
500 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
501 else
502 PKG_B43_FWV4_NAME:=broadcom-wl
503 PKG_B43_FWV4_VERSION:=4.150.10.5
504 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
505 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
506 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
507 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
508 endif
509 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
510 PKG_B43_FWV4_NAME:=broadcom-wl
511 PKG_B43_FWV4_VERSION:=5.2
512 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
513 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
514 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
515 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
516 endif
517
518
519 PKG_B43_FWV3_NAME:=wl_apsta
520 PKG_B43_FWV3_VERSION:=3.130.20.0
521 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
522 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
523 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
524
525 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
526 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
527 PKG_B43_FWCUTTER_VERSION:=3e69531aa65b8f664a0ab00dfc3e2eefeb0cb417
528 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
529 PKG_B43_FWCUTTER_PROTO:=git
530 PKG_B43_FWCUTTER_SOURCE_URL:=http://git.bu3sch.de/git/b43-tools.git
531 PKG_B43_FWCUTTER_SUBDIR:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)
532 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/fwcutter/
533 else
534 PKG_B43_FWCUTTER_NAME:=b43-fwcutter
535 PKG_B43_FWCUTTER_VERSION:=012
536 PKG_B43_FWCUTTER_SOURCE:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION).tar.bz2
537 PKG_B43_FWCUTTER_PROTO:=default
538 PKG_B43_FWCUTTER_SOURCE_URL:=http://bu3sch.de/b43/fwcutter/
539 PKG_B43_FWCUTTER_MD5SUM:=69eadf67b459f313a8d6b37aaabef96c
540 PKG_B43_FWCUTTER_SUBDIR:=b43-fwcutter-$(PKG_B43_FWCUTTER_VERSION)
541 PKG_B43_FWCUTTER_OBJECT:=$(PKG_B43_FWCUTTER_NAME)-$(PKG_B43_FWCUTTER_VERSION)/
542 endif
543
544 define Download/b43-common
545 FILE:=$(PKG_B43_FWCUTTER_SOURCE)
546 URL:=$(PKG_B43_FWCUTTER_SOURCE_URL)
547 MD5SUM:=$(PKG_B43_FWCUTTER_MD5SUM)
548 PROTO:=$(PKG_B43_FWCUTTER_PROTO)
549 VERSION:=$(PKG_B43_FWCUTTER_VERSION)
550 SUBDIR:=$(PKG_B43_FWCUTTER_SUBDIR)
551 endef
552 $(eval $(call Download,b43-common))
553
554 define Download/b43
555 FILE:=$(PKG_B43_FWV4_SOURCE)
556 URL:=$(PKG_B43_FWV4_SOURCE_URL)
557 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
558 endef
559 $(eval $(call Download,b43))
560
561 define Download/b43legacy
562 FILE:=$(PKG_B43_FWV3_SOURCE)
563 URL:=$(PKG_B43_FWV3_SOURCE_URL)
564 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
565 endef
566 $(eval $(call Download,b43legacy))
567
568 define KernelPackage/b43-common
569 $(call KernelPackage/mac80211/Default)
570 TITLE:=Generic stuff for Broadcom wireless devices
571 URL:=http://linuxwireless.org/en/users/Drivers/b43
572 KCONFIG:= \
573 CONFIG_HW_RANDOM=y
574 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
575 endef
576
577 define KernelPackage/b43
578 $(call KernelPackage/b43-common)
579 TITLE:=Broadcom 43xx wireless support
580 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.$(LINUX_KMOD_SUFFIX)
581 AUTOLOAD:=$(call AutoLoad,30,b43)
582 endef
583
584 define KernelPackage/b43/config
585 source "$(SOURCE)/Config.in.b43"
586 endef
587
588 define KernelPackage/b43/description
589 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
590 endef
591
592 define KernelPackage/b43legacy
593 $(call KernelPackage/b43-common)
594 TITLE:=Broadcom 43xx-legacy wireless support
595 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.$(LINUX_KMOD_SUFFIX)
596 AUTOLOAD:=$(call AutoLoad,30,b43legacy)
597 endef
598
599 define KernelPackage/b43legacy/config
600 source "$(SOURCE)/Config.in.b43legacy"
601 endef
602
603 define KernelPackage/b43legacy/description
604 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
605 endef
606
607 BUILDFLAGS:= \
608 -I$(PKG_BUILD_DIR)/include \
609 $(foreach opt,$(CONFOPTS),-DCONFIG_$(opt)) \
610 $(if $(CONFIG_PCI),-DCONFIG_B43_PCI_AUTOSELECT -DCONFIG_B43_PCICORE_AUTOSELECT -DCONFIG_SSB_DRIVER_PCICORE_POSSIBLE -DCONFIG_SSB_DRIVER_PCICORE) \
611 $(if $(CONFIG_PCI),-DCONFIG_SSB_PCIHOST_POSSIBLE -DCONFIG_SSB_PCIHOST) \
612 $(if $(CONFIG_PCI),-DCONFIG_SSB_SPROM) \
613 $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS -DCONFIG_AR9170_LEDS) \
614 -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
615 $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),-DCONFIG_MAC80211_DEBUGFS -DCONFIG_ATH9K_DEBUGFS) \
616 $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG) \
617 -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
618 $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1) \
619 $(if $(CONFIG_PACKAGE_ATH9K_USE_MINSTREL),-DATH9K_USE_MINSTREL) \
620 $(if $(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS),-DCONFIG_RT2X00_LIB_DEBUGFS) \
621 $(if $(CONFIG_PACKAGE_RT2X00_DEBUG),-DCONFIG_RT2X00_DEBUG) \
622 $(if $(NEED_RT2X00_LIB_HT),-DCONFIG_RT2X00_LIB_HT) \
623 $(if $(NEED_RT2X00_LIB_CRYPTO),-DCONFIG_RT2X00_LIB_CRYPTO) \
624 $(if $(NEED_RT2X00_LIB_FIRMWARE),-DCONFIG_RT2X00_LIB_FIRMWARE) \
625 $(if $(NEED_RT2X00_LIB_LEDS),-DCONFIG_RT2X00_LIB_LEDS) \
626 $(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),-DCONFIG_RT2X00_LIB_PCI) \
627 $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2X00_LIB_USB) \
628 $(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),-DCONFIG_RT2X00_LIB_SOC) \
629 $(if $(CONFIG_PCI_SUPPORT),-DCONFIG_RT2800PCI_PCI) \
630 $(if $(CONFIG_TARGET_ramips),-DCONFIG_RT2800PCI_SOC) \
631
632 MAKE_OPTS:= \
633 CROSS_COMPILE="$(KERNEL_CROSS)" \
634 ARCH="$(LINUX_KARCH)" \
635 EXTRA_CFLAGS="$(BUILDFLAGS)" \
636 $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
637 CONFIG_MAC80211=$(if $(CONFIG_PACKAGE_kmod-mac80211),m) \
638 CONFIG_MAC80211_RC_PID=y \
639 CONFIG_MAC80211_RC_MINSTREL=y \
640 CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
641 CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
642 CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
643 CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
644 CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
645 CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=$(if $(CONFIG_PCI),y) \
646 CONFIG_SSB_DRIVER_PCICORE=$(if $(CONFIG_PCI),y) \
647 CONFIG_SSB_PCIHOST_POSSIBLE=$(if $(CONFIG_PCI),y) \
648 CONFIG_SSB_PCIHOST=$(if $(CONFIG_PCI),y) \
649 CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
650 CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
651 CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
652 CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
653 CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
654 CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
655 CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
656 CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
657 CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
658 CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
659 CONFIG_ATH9K_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
660 CONFIG_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
661 CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
662 CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
663 CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
664 CONFIG_P54_SPI= \
665 CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
666 CONFIG_RT2X00_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
667 CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
668 CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
669 CONFIG_RT2X00_LIB_SOC=$(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),m) \
670 CONFIG_RT2X00_LIB_DEBUGFS=$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) \
671 CONFIG_RT2X00_LIB_CRYPTO=$(NEED_RT2X00_LIB_CRYPTO) \
672 CONFIG_RT2X00_LIB_FIRMWARE=$(NEED_RT2X00_LIB_FIRMWARE) \
673 CONFIG_RT2X00_LIB_HT=$(NEED_RT2X00_LIB_HT) \
674 CONFIG_RT2X00_LIB_LEDS=$(NEED_RT2X00_LIB_LEDS) \
675 CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
676 CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
677 CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
678 CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
679 CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
680 CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
681 CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
682 CONFIG_RT2800PCI_PCI=$(if $(CONFIG_PCI_SUPPORT),y) \
683 CONFIG_RT2800PCI_SOC=$(if $(CONFIG_TARGET_ramips),y) \
684 CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
685 CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
686 CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
687 CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
688 CONFIG_PCMCIA= \
689 CONFIG_LIBIPW=$(if $(CONFIG_PACKAGE_kmod-net-libipw),m) \
690 CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
691 CONFIG_LIBERTAS_CS= \
692 CONFIG_LIBERTAS_SDIO= \
693 CONFIG_LIBERTAS_THINFIRM= \
694 CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
695 CONFIG_IPW2100=$(if $(CONFIG_PACKAGE_kmod-net-ipw2100),m) \
696 CONFIG_IPW2200=$(if $(CONFIG_PACKAGE_kmod-net-ipw2200),m) \
697 CONFIG_NL80211=y \
698 CONFIG_LIB80211= \
699 CONFIG_LIB80211_CRYPT_WEP= \
700 CONFIG_LIB80211_CRYPT_CCMP= \
701 CONFIG_LIB80211_CRYPT_TKIP= \
702 CONFIG_IWLWIFI= \
703 CONFIG_IWLAGN= \
704 CONFIG_MWL8K= \
705 CONFIG_ATMEL= \
706 CONFIG_PCMCIA_ATMEL= \
707 CONFIG_ADM8211= \
708 CONFIG_USB_NET_RNDIS_HOST= \
709 CONFIG_USB_NET_RNDIS_WLAN= \
710 CONFIG_USB_NET_CDCETHER= \
711 CONFIG_USB_USBNET= \
712 CONFIG_AT76C50X_USB= \
713 CONFIG_WL12XX= \
714 CONFIG_EEPROM_93CX6= \
715 CONFIG_HERMES= \
716 CONFIG_AR9170_USB=$(if $(CONFIG_PACKAGE_kmod-ar9170),m) \
717 CONFIG_AR9170_LEDS=$(CONFIG_LEDS_TRIGGERS) \
718 CONFIG_IWM= \
719 CONFIG_ATH9K_HTC= \
720 MADWIFI= \
721 OLD_IWL= \
722 KLIB_BUILD="$(LINUX_DIR)" \
723 MODPROBE=: \
724 KLIB=$(TARGET_MODULES_DIR) \
725 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER)))
726
727 define Build/Prepare
728 rm -rf $(PKG_BUILD_DIR)
729 mkdir -p $(PKG_BUILD_DIR)
730 $(PKG_UNPACK)
731 $(Build/Patch)
732 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT61FW)
733 unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT71FW)
734 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2860FW)
735 -unzip -jod $(PKG_BUILD_DIR) $(DL_DIR)/$(RT2870FW)
736 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
737 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
738 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
739 rm -rf $(PKG_BUILD_DIR)/include/linux/ssb
740 rm -f $(PKG_BUILD_DIR)/include/net/ieee80211.h
741 rm $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h
742 endef
743
744 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211),)
745 define Build/Compile/kmod
746 rm -rf $(PKG_BUILD_DIR)/modules
747 $(MAKE) -C "$(PKG_BUILD_DIR)" $(MAKE_OPTS) all
748 endef
749 endif
750
751 define Build/Compile
752 $(call Build/Compile/kmod)
753 endef
754
755 define Build/InstallDev
756 mkdir -p \
757 $(1)/usr/include/mac80211 \
758 $(1)/usr/include/mac80211/ath \
759 $(1)/usr/include/net/mac80211
760 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
761 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
762 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
763 endef
764
765 define KernelPackage/libertas/install
766 $(INSTALL_DIR) $(1)/lib/firmware
767 $(INSTALL_DATA) $(DL_DIR)/$(USB8388FW_NAME)-$(USB8388FW_VERSION).bin $(1)/lib/firmware/$(USB8388FW_NAME).bin
768 endef
769
770 define KernelPackage/cfg80211/install
771 $(INSTALL_DIR) $(1)/lib/wifi
772 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
773 endef
774
775 define KernelPackage/p54-pci/install
776 $(INSTALL_DIR) $(1)/lib/firmware
777 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
778 endef
779
780 define KernelPackage/p54-usb/install
781 $(INSTALL_DIR) $(1)/lib/firmware
782 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
783 endef
784
785 define KernelPackage/rt61-pci/install
786 $(INSTALL_DIR) $(1)/lib/firmware
787 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware/
788 endef
789
790 define KernelPackage/rt73-usb/install
791 $(INSTALL_DIR) $(1)/lib/firmware
792 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware/
793 endef
794
795 define KernelPackage/rt2800-pci/install
796 $(INSTALL_DIR) $(1)/lib/firmware
797 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2860.bin $(1)/lib/firmware/
798 endef
799
800 define KernelPackage/rt2800-usb/install
801 $(INSTALL_DIR) $(1)/lib/firmware
802 $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2870.bin $(1)/lib/firmware/
803 endef
804
805 define KernelPackage/zd1211rw/install
806 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
807 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
808 endef
809
810 define KernelPackage/ar9170/install
811 $(INSTALL_DIR) $(1)/lib/firmware
812 $(INSTALL_DATA) $(DL_DIR)/$(AR9170FW) $(1)/lib/firmware/
813 endef
814
815 define KernelPackage/net-ipw2100/install
816 $(INSTALL_DIR) $(1)/lib/firmware
817 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
818 endef
819
820 define KernelPackage/net-ipw2200/install
821 $(INSTALL_DIR) $(1)/lib/firmware
822 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
823 endef
824
825 define Build/b43-common
826 tar xjf "$(DL_DIR)/$(PKG_B43_FWCUTTER_SOURCE)" -C "$(PKG_BUILD_DIR)"
827 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)" \
828 CFLAGS="-I$(STAGING_DIR_HOST)/include -include endian.h"
829 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
830 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
831 $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
832 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
833 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
834 $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
835 endif
836 $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
837 endef
838
839 define KernelPackage/b43/install
840 rm -rf $(1)/lib/firmware/
841 $(call Build/b43-common)
842 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
843 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
844 else
845 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
846 endif
847 $(INSTALL_DIR) $(1)/lib/firmware/
848 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
849 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
850 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
851 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
852 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
853 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
854 else
855 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
856 endif
857 ifneq ($(CONFIG_B43_FW_SQUASH),)
858 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
859 endif
860 endef
861
862 define KernelPackage/b43legacy/install
863 $(call Build/b43-common)
864 $(INSTALL_DIR) $(1)/lib/firmware/
865
866 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
867 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
868 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
869 endif
870 endef
871
872 $(eval $(call KernelPackage,ath5k))
873 $(eval $(call KernelPackage,libertas))
874 $(eval $(call KernelPackage,cfg80211))
875 $(eval $(call KernelPackage,mac80211))
876 $(eval $(call KernelPackage,p54-common))
877 $(eval $(call KernelPackage,p54-pci))
878 $(eval $(call KernelPackage,p54-usb))
879 $(eval $(call KernelPackage,rt2x00-lib))
880 $(eval $(call KernelPackage,rt2x00-pci))
881 $(eval $(call KernelPackage,rt2x00-usb))
882 $(eval $(call KernelPackage,rt2x00-soc))
883 $(eval $(call KernelPackage,rt2800-lib))
884 $(eval $(call KernelPackage,rt2400-pci))
885 $(eval $(call KernelPackage,rt2500-pci))
886 $(eval $(call KernelPackage,rt2500-usb))
887 $(eval $(call KernelPackage,rt61-pci))
888 $(eval $(call KernelPackage,rt73-usb))
889 $(eval $(call KernelPackage,rt2800-pci))
890 $(eval $(call KernelPackage,rt2800-usb))
891 $(eval $(call KernelPackage,rtl8180))
892 $(eval $(call KernelPackage,rtl8187))
893 $(eval $(call KernelPackage,zd1211rw))
894 $(eval $(call KernelPackage,mac80211-hwsim))
895 $(eval $(call KernelPackage,ath9k))
896 $(eval $(call KernelPackage,ath))
897 $(eval $(call KernelPackage,ar9170))
898 $(eval $(call KernelPackage,b43))
899 $(eval $(call KernelPackage,b43legacy))
900 $(eval $(call KernelPackage,net-libipw))
901 $(eval $(call KernelPackage,net-ipw2100))
902 $(eval $(call KernelPackage,net-ipw2200))