source: trunk/package/mac80211/Makefile @ 21077

Last change on this file since 21077 was 21077, checked in by hauke, 6 years ago

mac80211: add mwl8k driver

This closes #7209

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