source: branches/backfire/package/mac80211/Makefile @ 25966

Last change on this file since 25966 was 25966, checked in by nbd, 6 years ago

mac80211: sync with trunk (as of r25965)

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