Root/package/mac80211/Makefile

Source at commit e775c43 created 13 years 9 months ago.
By nbd, [backfire] backport mac80211 updates from trunk
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-06-10
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:=4074469689f7a5a0d2e038f2b5dad0bb
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_apsta.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
581ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
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:=013
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:=3547ec6c474ac1bc2c4a5bb765b791a4
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_STABLE
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) \
777    $(if $(CONFIG_LEDS_TRIGGERS), -DCONFIG_MAC80211_LEDS -DCONFIG_LEDS_TRIGGERS -DCONFIG_B43_LEDS -DCONFIG_B43LEGACY_LEDS -DCONFIG_AR9170_LEDS) \
778    -DCONFIG_B43_HWRNG -DCONFIG_B43LEGACY_HWRNG \
779    $(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),-DCONFIG_MAC80211_DEBUGFS -DCONFIG_ATH9K_DEBUGFS) \
780    $(if $(CONFIG_PACKAGE_ATH_DEBUG),-DCONFIG_ATH_DEBUG -DCONFIG_ATH9K_PKTLOG) \
781    -D__CONFIG_MAC80211_RC_DEFAULT=minstrel \
782    -DCONFIG_MAC80211_RC_MINSTREL_HT \
783    $(if $(CONFIG_ATH_USER_REGD),-DATH_USER_REGD=1) \
784    $(if $(CONFIG_PACKAGE_ATH9K_USE_MINSTREL),-DATH9K_USE_MINSTREL) \
785    $(if $(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS),-DCONFIG_RT2X00_LIB_DEBUGFS) \
786    $(if $(CONFIG_PACKAGE_RT2X00_DEBUG),-DCONFIG_RT2X00_DEBUG) \
787    $(if $(NEED_RT2X00_LIB_HT),-DCONFIG_RT2X00_LIB_HT) \
788    $(if $(NEED_RT2X00_LIB_CRYPTO),-DCONFIG_RT2X00_LIB_CRYPTO) \
789    $(if $(NEED_RT2X00_LIB_FIRMWARE),-DCONFIG_RT2X00_LIB_FIRMWARE) \
790    $(if $(NEED_RT2X00_LIB_LEDS),-DCONFIG_RT2X00_LIB_LEDS) \
791    $(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),-DCONFIG_RT2X00_LIB_PCI) \
792    $(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),-DCONFIG_RT2X00_LIB_USB) \
793    $(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),-DCONFIG_RT2X00_LIB_SOC) \
794    $(if $(CONFIG_PCI_SUPPORT),-DCONFIG_RT2800PCI_PCI) \
795    $(if $(CONFIG_TARGET_ramips),-DCONFIG_RT2800PCI_SOC) \
796
797MAKE_OPTS:= \
798    CROSS_COMPILE="$(KERNEL_CROSS)" \
799    ARCH="$(LINUX_KARCH)" \
800    EXTRA_CFLAGS="$(BUILDFLAGS)" \
801    $(foreach opt,$(CONFOPTS),CONFIG_$(opt)=m) \
802    CONFIG_MAC80211=$(if $(CONFIG_PACKAGE_kmod-mac80211),m) \
803    CONFIG_MAC80211_RC_MINSTREL=y \
804    CONFIG_MAC80211_LEDS=$(CONFIG_LEDS_TRIGGERS) \
805    CONFIG_MAC80211_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
806    CONFIG_B43_PCMCIA=n CONFIG_B43_PIO=n \
807    CONFIG_B43_PCI_AUTOSELECT=$(if $(CONFIG_PCI),y) \
808    CONFIG_B43_PCICORE_AUTOSELECT=$(if $(CONFIG_PCI),y) \
809    CONFIG_B43LEGACY_LEDS=$(CONFIG_LEDS_TRIGGERS) \
810    CONFIG_B43_LEDS=$(CONFIG_LEDS_TRIGGERS) \
811    CONFIG_B43_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
812    CONFIG_B43LEGACY_HWRNG=$(if $(CONFIG_HW_RANDOM),y) \
813    CONFIG_B43=$(if $(CONFIG_PACKAGE_kmod-b43),m) \
814    CONFIG_B43LEGACY=$(if $(CONFIG_PACKAGE_kmod-b43legacy),m) \
815    CONFIG_ATH_COMMON=$(if $(CONFIG_PACKAGE_kmod-ath),m) \
816    CONFIG_ATH_DEBUG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
817    CONFIG_ATH9K_PKTLOG=$(if $(CONFIG_PACKAGE_ATH_DEBUG),y) \
818    CONFIG_ATH5K=$(if $(CONFIG_PACKAGE_kmod-ath5k),m) \
819    CONFIG_ATH9K=$(if $(CONFIG_PACKAGE_kmod-ath9k),m) \
820    CONFIG_ATH9K_DEBUGFS=$(if $(CONFIG_PACKAGE_MAC80211_DEBUGFS),y) \
821    CONFIG_ZD1211RW=$(if $(CONFIG_PACKAGE_kmod-zd1211rw),m) \
822    CONFIG_P54_COMMON=$(if $(CONFIG_PACKAGE_kmod-p54-common),m) \
823    CONFIG_P54_PCI=$(if $(CONFIG_PACKAGE_kmod-p54-pci),m) \
824    CONFIG_P54_USB=$(if $(CONFIG_PACKAGE_kmod-p54-usb),m) \
825    CONFIG_P54_SPI= \
826    CONFIG_RT2X00=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
827    CONFIG_RT2X00_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-lib),m) \
828    CONFIG_RT2X00_LIB_PCI=$(if $(CONFIG_PACKAGE_kmod-rt2x00-pci),m) \
829    CONFIG_RT2X00_LIB_USB=$(if $(CONFIG_PACKAGE_kmod-rt2x00-usb),m) \
830    CONFIG_RT2X00_LIB_SOC=$(if $(CONFIG_PACKAGE_kmod-rt2x00-soc),m) \
831    CONFIG_RT2X00_LIB_DEBUGFS=$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) \
832    CONFIG_RT2X00_LIB_CRYPTO=$(NEED_RT2X00_LIB_CRYPTO) \
833    CONFIG_RT2X00_LIB_FIRMWARE=$(NEED_RT2X00_LIB_FIRMWARE) \
834    CONFIG_RT2X00_LIB_HT=$(NEED_RT2X00_LIB_HT) \
835    CONFIG_RT2X00_LIB_LEDS=$(NEED_RT2X00_LIB_LEDS) \
836    CONFIG_RT2400PCI=$(if $(CONFIG_PACKAGE_kmod-rt2400-pci),m) \
837    CONFIG_RT2500PCI=$(if $(CONFIG_PACKAGE_kmod-rt2500-pci),m) \
838    CONFIG_RT2500USB=$(if $(CONFIG_PACKAGE_kmod-rt2500-usb),m) \
839    CONFIG_RT61PCI=$(if $(CONFIG_PACKAGE_kmod-rt61-pci),m) \
840    CONFIG_RT73USB=$(if $(CONFIG_PACKAGE_kmod-rt73-usb),m) \
841    CONFIG_RT2800_LIB=$(if $(CONFIG_PACKAGE_kmod-rt2800-lib),m) \
842    CONFIG_RT2800PCI=$(if $(CONFIG_PACKAGE_kmod-rt2800-pci),m) \
843    CONFIG_RT2800PCI_PCI=$(if $(CONFIG_PCI_SUPPORT),y) \
844    CONFIG_RT2800PCI_SOC=$(if $(CONFIG_TARGET_ramips),y) \
845    CONFIG_RT2800USB=$(if $(CONFIG_PACKAGE_kmod-rt2800-usb),m) \
846    CONFIG_RTL8180=$(if $(CONFIG_PACKAGE_kmod-rtl8180),m) \
847    CONFIG_RTL8187=$(if $(CONFIG_PACKAGE_kmod-rtl8187),m) \
848    CONFIG_MAC80211_HWSIM=$(if $(CONFIG_PACKAGE_kmod-mac80211-hwsim),m) \
849    CONFIG_PCMCIA= \
850    CONFIG_LIBIPW=$(if $(CONFIG_PACKAGE_kmod-net-libipw),m) \
851    CONFIG_LIBERTAS=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
852    CONFIG_LIBERTAS_CS= \
853    CONFIG_LIBERTAS_SDIO= \
854    CONFIG_LIBERTAS_THINFIRM= \
855    CONFIG_LIBERTAS_USB=$(if $(CONFIG_PACKAGE_kmod-libertas),m) \
856    CONFIG_IPW2100=$(if $(CONFIG_PACKAGE_kmod-net-ipw2100),m) \
857    CONFIG_IPW2200=$(if $(CONFIG_PACKAGE_kmod-net-ipw2200),m) \
858    CONFIG_NL80211=y \
859    CONFIG_LIB80211= \
860    CONFIG_LIB80211_CRYPT_WEP= \
861    CONFIG_LIB80211_CRYPT_CCMP= \
862    CONFIG_LIB80211_CRYPT_TKIP= \
863    CONFIG_IWLWIFI= \
864    CONFIG_IWLAGN= \
865    CONFIG_MWL8K=$(if $(CONFIG_PACKAGE_kmod-mwl8k),m) \
866    CONFIG_ATMEL= \
867    CONFIG_PCMCIA_ATMEL= \
868    CONFIG_ADM8211= \
869    CONFIG_USB_NET_RNDIS_HOST= \
870    CONFIG_USB_NET_RNDIS_WLAN= \
871    CONFIG_USB_NET_CDCETHER= \
872    CONFIG_USB_USBNET= \
873    CONFIG_AT76C50X_USB= \
874    CONFIG_WL12XX= \
875    CONFIG_EEPROM_93CX6= \
876    CONFIG_HERMES= \
877    CONFIG_AR9170_USB=$(if $(CONFIG_PACKAGE_kmod-ar9170),m) \
878    CONFIG_AR9170_LEDS=$(CONFIG_LEDS_TRIGGERS) \
879    CONFIG_IWM= \
880    CONFIG_ATH9K_HTC= \
881    CONFIG_MAC80211_RC_MINSTREL_HT=y \
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
889define 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
904endef
905
906ifneq ($(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
911endif
912
913define Build/Compile
914    $(call Build/Compile/kmod)
915endef
916
917define 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/
925endef
926
927define 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
930endef
931
932define KernelPackage/cfg80211/install
933    $(INSTALL_DIR) $(1)/lib/wifi
934    $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
935endef
936
937define KernelPackage/p54-pci/install
938    $(INSTALL_DIR) $(1)/lib/firmware
939    $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
940endef
941
942define KernelPackage/p54-usb/install
943    $(INSTALL_DIR) $(1)/lib/firmware
944    $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
945endef
946
947define KernelPackage/rt61-pci/install
948    $(INSTALL_DIR) $(1)/lib/firmware
949    $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2?61*.bin $(1)/lib/firmware/
950endef
951
952define KernelPackage/rt73-usb/install
953    $(INSTALL_DIR) $(1)/lib/firmware
954    $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt73.bin $(1)/lib/firmware/
955endef
956
957define KernelPackage/rt2800-pci/install
958    $(INSTALL_DIR) $(1)/lib/firmware
959    $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2860.bin $(1)/lib/firmware/
960endef
961
962define KernelPackage/rt2800-usb/install
963    $(INSTALL_DIR) $(1)/lib/firmware
964    $(INSTALL_DATA) $(PKG_BUILD_DIR)/rt2870.bin $(1)/lib/firmware/
965endef
966
967define KernelPackage/zd1211rw/install
968    $(INSTALL_DIR) $(1)/lib/firmware/zd1211
969    $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
970endef
971
972define KernelPackage/ar9170/install
973    $(INSTALL_DIR) $(1)/lib/firmware
974    $(INSTALL_DATA) $(DL_DIR)/$(AR9170FW) $(1)/lib/firmware/
975endef
976
977define KernelPackage/net-ipw2100/install
978    $(INSTALL_DIR) $(1)/lib/firmware
979    $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
980endef
981
982define 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
985endef
986
987define 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        QUIET_SPARSE=:
992    $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_OBJECT)/b43-fwcutter $(STAGING_DIR_HOST)/bin/
993ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
994    $(INSTALL_DIR) $(STAGING_DIR_HOST)/bin/
995    $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/"
996    $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm $(STAGING_DIR_HOST)/bin/
997    $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(PKG_B43_FWCUTTER_SUBDIR)/assembler/b43-asm.bin $(STAGING_DIR_HOST)/bin/
998endif
999    $(INSTALL_BIN) ./files/host_bin/b43-fwsquash.py $(STAGING_DIR_HOST)/bin/
1000endef
1001
1002define KernelPackage/b43/install
1003    rm -rf $(1)/lib/firmware/
1004    $(call Build/b43-common)
1005ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1006    tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1007else
1008    tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1009endif
1010    $(INSTALL_DIR) $(1)/lib/firmware/
1011ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1012    $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1013    $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1014    $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1015    $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1016    $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1017else
1018    b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1019endif
1020ifneq ($(CONFIG_B43_FW_SQUASH),)
1021    b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1022endif
1023endef
1024
1025define KernelPackage/b43legacy/install
1026    $(call Build/b43-common)
1027    $(INSTALL_DIR) $(1)/lib/firmware/
1028
1029    b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1030ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1031    b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1032endif
1033endef
1034
1035$(eval $(call KernelPackage,ath5k))
1036$(eval $(call KernelPackage,libertas))
1037$(eval $(call KernelPackage,cfg80211))
1038$(eval $(call KernelPackage,mac80211))
1039$(eval $(call KernelPackage,p54-common))
1040$(eval $(call KernelPackage,p54-pci))
1041$(eval $(call KernelPackage,p54-usb))
1042$(eval $(call KernelPackage,rt2x00-lib))
1043$(eval $(call KernelPackage,rt2x00-pci))
1044$(eval $(call KernelPackage,rt2x00-usb))
1045$(eval $(call KernelPackage,rt2x00-soc))
1046$(eval $(call KernelPackage,rt2800-lib))
1047$(eval $(call KernelPackage,rt2400-pci))
1048$(eval $(call KernelPackage,rt2500-pci))
1049$(eval $(call KernelPackage,rt2500-usb))
1050$(eval $(call KernelPackage,rt61-pci))
1051$(eval $(call KernelPackage,rt73-usb))
1052$(eval $(call KernelPackage,rt2800-pci))
1053$(eval $(call KernelPackage,rt2800-usb))
1054$(eval $(call KernelPackage,rtl8180))
1055$(eval $(call KernelPackage,rtl8187))
1056$(eval $(call KernelPackage,zd1211rw))
1057$(eval $(call KernelPackage,mac80211-hwsim))
1058$(eval $(call KernelPackage,ath9k))
1059$(eval $(call KernelPackage,ath))
1060$(eval $(call KernelPackage,ar9170))
1061$(eval $(call KernelPackage,b43))
1062$(eval $(call KernelPackage,b43legacy))
1063$(eval $(call KernelPackage,net-libipw))
1064$(eval $(call KernelPackage,net-ipw2100))
1065$(eval $(call KernelPackage,net-ipw2200))
1066$(eval $(call KernelPackage,mwl8k))
1067

Archive Download this file



interactive