7f698f039c22d74afee7c0e441b203ec5bee7436
[openwrt/openwrt.git] / package / kernel / mac80211 / Makefile
1 #
2 # Copyright (C) 2007-2015 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=mac80211
12
13 PKG_VERSION:=2015-06-22
14 PKG_RELEASE:=1
15 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
16 PKG_BACKPORT_VERSION:=
17 PKG_MD5SUM:=352b2b46d36a72aadc96161a3cefdb1c
18
19 PKG_SOURCE:=compat-wireless-$(PKG_VERSION)$(PKG_BACKPORT_VERSION).tar.bz2
20 PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/compat-wireless-$(PKG_VERSION)
21 PKG_BUILD_PARALLEL:=1
22
23 PKG_MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
24
25 PKG_DRIVERS = \
26 adm8211 ath5k libertas-usb libertas-sdio p54-common p54-pci p54-usb p54-spi \
27 rt2x00-lib rt2x00-pci rt2x00-usb rt2800-lib rt2400-pci rt2500-pci \
28 rt2500-usb rt61-pci rt73-usb rt2800-mmio rt2800-pci rt2800-usb rt2800-soc \
29 rtl8180 rtl8187 zd1211rw mac80211-hwsim carl9170 b43 b43legacy \
30 ath9k-common ath9k ath9k-htc ath10k ath net-libipw net-ipw2100 net-ipw2200 \
31 mwl8k mwifiex-pcie net-hermes net-hermes-pci net-hermes-plx net-hermes-pcmcia \
32 iwl-legacy iwl3945 iwl4965 iwlagn wlcore wl12xx wl18xx lib80211 \
33 rtlwifi rtlwifi-pci rtlwifi-usb rtl8192c-common rtl8192ce rtl8192se \
34 rtl8192de rtl8192cu
35
36 PKG_CONFIG_DEPENDS:= \
37 CONFIG_PACKAGE_kmod-mac80211 \
38 $(patsubst %,CONFIG_PACKAGE_kmod-%,$(PKG_DRIVERS)) \
39 CONFIG_PACKAGE_MAC80211_DEBUGFS \
40 CONFIG_PACKAGE_MAC80211_MESH \
41 CONFIG_PACKAGE_ATH_DEBUG \
42 CONFIG_PACKAGE_ATH_DFS \
43 CONFIG_PACKAGE_B43_DEBUG \
44 CONFIG_PACKAGE_B43_PIO \
45 CONFIG_PACKAGE_B43_PHY_G \
46 CONFIG_PACKAGE_B43_PHY_N \
47 CONFIG_PACKAGE_B43_PHY_LP \
48 CONFIG_PACKAGE_B43_PHY_HT \
49 CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB \
50 CONFIG_PACKAGE_B43_BUSES_BCMA \
51 CONFIG_PACKAGE_B43_BUSES_SSB \
52 CONFIG_PACKAGE_RTLWIFI_DEBUG \
53 CONFIG_ATH_USER_REGD \
54
55 include $(INCLUDE_DIR)/package.mk
56
57 WMENU:=Wireless Drivers
58
59 define KernelPackage/mac80211/Default
60 SUBMENU:=$(WMENU)
61 URL:=https://wireless.wiki.kernel.org/
62 MAINTAINER:=Felix Fietkau <nbd@openwrt.org>
63 endef
64
65 define KernelPackage/cfg80211
66 $(call KernelPackage/mac80211/Default)
67 TITLE:=cfg80211 - wireless configuration API
68 DEPENDS+= +iw
69 FILES:= \
70 $(PKG_BUILD_DIR)/compat/compat.ko \
71 $(PKG_BUILD_DIR)/net/wireless/cfg80211.ko
72 endef
73
74 define KernelPackage/cfg80211/description
75 cfg80211 is the Linux wireless LAN (802.11) configuration API.
76 endef
77
78 define KernelPackage/mac80211
79 $(call KernelPackage/mac80211/Default)
80 TITLE:=Linux 802.11 Wireless Networking Stack
81 DEPENDS+= +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-cfg80211 +hostapd-common
82 KCONFIG:=\
83 CONFIG_AVERAGE=y
84 FILES:= $(PKG_BUILD_DIR)/net/mac80211/mac80211.ko
85 MENU:=1
86 endef
87
88 define KernelPackage/mac80211/config
89 if PACKAGE_kmod-mac80211
90
91 config PACKAGE_MAC80211_DEBUGFS
92 bool "Export mac80211 internals in DebugFS"
93 select KERNEL_DEBUG_FS
94 default y
95 help
96 Select this to see extensive information about
97 the internal state of mac80211 in debugfs.
98
99 config PACKAGE_MAC80211_MESH
100 bool "Enable 802.11s mesh support"
101 default y
102
103 endif
104 endef
105
106 define KernelPackage/mac80211/description
107 Generic IEEE 802.11 Networking Stack (mac80211)
108 endef
109
110 PKG_LINUX_FIRMWARE_NAME:=linux-firmware
111 PKG_LINUX_FIRMWARE_VERSION:=f404336ba808cbd57547196e13367079a23b822c
112 PKG_LINUX_FIRMWARE_SOURCE:=$(PKG_LINUX_FIRMWARE_NAME)-2015-03-20-$(PKG_LINUX_FIRMWARE_VERSION).tar.bz2
113 PKG_LINUX_FIRMWARE_PROTO:=git
114 PKG_LINUX_FIRMWARE_SOURCE_URL:=https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
115 PKG_LINUX_FIRMWARE_SUBDIR:=$(PKG_LINUX_FIRMWARE_NAME)-$(PKG_LINUX_FIRMWARE_VERSION)
116 #PKG_LINUX_FIRMWARE_MIRROR_MD5SUM:=e219333f01835c6e556875a9e0deb3f9
117
118 define Download/linux-firmware
119 FILE:=$(PKG_LINUX_FIRMWARE_SOURCE)
120 URL:=$(PKG_LINUX_FIRMWARE_SOURCE_URL)
121 MD5SUM:=$(PKG_LINUX_FIRMWARE_MD5SUM)
122 PROTO:=$(PKG_LINUX_FIRMWARE_PROTO)
123 VERSION:=$(PKG_LINUX_FIRMWARE_VERSION)
124 SUBDIR:=$(PKG_LINUX_FIRMWARE_SUBDIR)
125 MIRROR_MD5SUM:=$(PKG_LINUX_FIRMWARE_MIRROR_MD5SUM)
126 endef
127 $(eval $(call Download,linux-firmware))
128
129 PKG_ATH10K_LINUX_FIRMWARE_NAME:=ath10k-firmware
130 PKG_ATH10K_LINUX_FIRMWARE_VERSION:=b46f3e01a6c1f9150fb4612ef53611d714565842
131 PKG_ATH10K_LINUX_FIRMWARE_SOURCE:=$(PKG_ATH10K_LINUX_FIRMWARE_NAME)-$(PKG_ATH10K_LINUX_FIRMWARE_VERSION).tar.bz2
132 PKG_ATH10K_LINUX_FIRMWARE_PROTO:=git
133 PKG_ATH10K_LINUX_FIRMWARE_SOURCE_URL:=https://github.com/kvalo/ath10k-firmware.git
134 PKG_ATH10K_LINUX_FIRMWARE_SUBDIR:=$(PKG_ATH10K_LINUX_FIRMWARE_NAME)-$(PKG_ATH10K_LINUX_FIRMWARE_VERSION)
135 #PKG_ATH10K_LINUX_FIRMWARE_MIRROR_MD5SUM:=?
136
137 define Download/ath10k-firmware
138 FILE:=$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
139 URL:=$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE_URL)
140 PROTO:=$(PKG_ATH10K_LINUX_FIRMWARE_PROTO)
141 VERSION:=$(PKG_ATH10K_LINUX_FIRMWARE_VERSION)
142 SUBDIR:=$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)
143 #MIRROR_MD5SUM:=$(PKG_ATH10K_LINUX_FIRMWARE_MIRROR_MD5SUM)
144 endef
145 $(eval $(call Download,ath10k-firmware))
146
147 # Prism54 drivers
148 P54PCIFW:=2.13.12.0.arm
149 P54USBFW:=2.13.24.0.lm87.arm
150 P54SPIFW:=2.13.0.0.a.13.14.arm
151
152 define Download/p54usb
153 FILE:=$(P54USBFW)
154 URL:=http://daemonizer.de/prism54/prism54-fw/fw-usb
155 MD5SUM:=8e8ab005a4f8f0123bcdc51bc25b47f6
156 endef
157 $(eval $(call Download,p54usb))
158
159 define Download/p54pci
160 FILE:=$(P54PCIFW)
161 URL:=http://daemonizer.de/prism54/prism54-fw/fw-softmac
162 MD5SUM:=ff7536af2092b1c4b21315bd103ef4c4
163 endef
164 $(eval $(call Download,p54pci))
165
166 define Download/p54spi
167 FILE:=$(P54SPIFW)
168 URL:=http://daemonizer.de/prism54/prism54-fw/stlc4560
169 MD5SUM:=42661f8ecbadd88012807493f596081d
170 endef
171 $(eval $(call Download,p54spi))
172
173 define KernelPackage/p54/Default
174 $(call KernelPackage/mac80211/Default)
175 TITLE:=Prism54 Drivers
176 endef
177
178 define KernelPackage/p54/description
179 Kernel module for Prism54 chipsets (mac80211)
180 endef
181
182 define KernelPackage/p54-common
183 $(call KernelPackage/p54/Default)
184 DEPENDS+= @PCI_SUPPORT||@USB_SUPPORT||@TARGET_omap24xx +kmod-mac80211 +kmod-lib-crc-ccitt
185 TITLE+= (COMMON)
186 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54common.ko
187 endef
188
189 define KernelPackage/p54-pci
190 $(call KernelPackage/p54/Default)
191 TITLE+= (PCI)
192 DEPENDS+= @PCI_SUPPORT +kmod-p54-common
193 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54pci.ko
194 AUTOLOAD:=$(call AutoProbe,p54pci)
195 endef
196
197 define KernelPackage/p54-usb
198 $(call KernelPackage/p54/Default)
199 TITLE+= (USB)
200 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-p54-common
201 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54usb.ko
202 AUTOLOAD:=$(call AutoProbe,p54usb)
203 endef
204
205 define KernelPackage/p54-spi
206 $(call KernelPackage/p54/Default)
207 TITLE+= (SPI)
208 DEPENDS+= @TARGET_omap24xx +kmod-p54-common
209 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/p54/p54spi.ko
210 AUTOLOAD:=$(call AutoProbe,p54spi)
211 endef
212
213 define KernelPackage/rt2x00/Default
214 $(call KernelPackage/mac80211/Default)
215 TITLE:=Ralink Drivers for RT2x00 cards
216 endef
217
218 define KernelPackage/rt2x00-lib
219 $(call KernelPackage/rt2x00/Default)
220 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-mac80211 +kmod-lib-crc-itu-t
221 TITLE+= (LIB)
222 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00lib.ko
223 MENU:=1
224 endef
225
226 define KernelPackage/rt2x00-lib/config
227 if PACKAGE_kmod-rt2x00-lib
228
229 config PACKAGE_RT2X00_LIB_DEBUGFS
230 bool "Enable rt2x00 debugfs support"
231 depends on PACKAGE_MAC80211_DEBUGFS
232 help
233 Enable creation of debugfs files for the rt2x00 drivers.
234 These debugfs files support both reading and writing of the
235 most important register types of the rt2x00 hardware.
236
237 config PACKAGE_RT2X00_DEBUG
238 bool "Enable rt2x00 debug output"
239 help
240 Enable debugging output for all rt2x00 modules
241
242 endif
243 endef
244
245 define KernelPackage/rt2x00-mmio
246 $(call KernelPackage/rt2x00/Default)
247 DEPENDS+= @(PCI_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-eeprom-93cx6
248 HIDDEN:=1
249 TITLE+= (MMIO)
250 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00mmio.ko
251 endef
252
253 define KernelPackage/rt2x00-pci
254 $(call KernelPackage/rt2x00/Default)
255 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-mmio +kmod-rt2x00-lib
256 HIDDEN:=1
257 TITLE+= (PCI)
258 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00pci.ko
259 AUTOLOAD:=$(call AutoProbe,rt2x00pci)
260 endef
261
262 define KernelPackage/rt2x00-usb
263 $(call KernelPackage/rt2x00/Default)
264 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-lib +kmod-usb-core
265 HIDDEN:=1
266 TITLE+= (USB)
267 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00usb.ko
268 AUTOLOAD:=$(call AutoProbe,rt2x00usb)
269 endef
270
271 define KernelPackage/rt2800-lib
272 $(call KernelPackage/rt2x00/Default)
273 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT||TARGET_ramips) +kmod-rt2x00-lib +kmod-lib-crc-ccitt +@DRIVER_11N_SUPPORT
274 HIDDEN:=1
275 TITLE+= (rt2800 LIB)
276 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800lib.ko
277 endef
278
279 define KernelPackage/rt2400-pci
280 $(call KernelPackage/rt2x00/Default)
281 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
282 TITLE+= (RT2400 PCI)
283 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2400pci.ko
284 AUTOLOAD:=$(call AutoProbe,rt2400pci)
285 endef
286
287 define KernelPackage/rt2500-pci
288 $(call KernelPackage/rt2x00/Default)
289 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
290 TITLE+= (RT2500 PCI)
291 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500pci.ko
292 AUTOLOAD:=$(call AutoProbe,rt2500pci)
293 endef
294
295 define KernelPackage/rt2500-usb
296 $(call KernelPackage/rt2x00/Default)
297 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
298 TITLE+= (RT2500 USB)
299 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2500usb.ko
300 AUTOLOAD:=$(call AutoProbe,rt2500usb)
301 endef
302
303 define KernelPackage/rt61-pci
304 $(call KernelPackage/rt2x00/Default)
305 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci
306 TITLE+= (RT2x61 PCI)
307 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt61pci.ko
308 AUTOLOAD:=$(call AutoProbe,rt61pci)
309 endef
310
311 define KernelPackage/rt73-usb
312 $(call KernelPackage/rt2x00/Default)
313 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb
314 TITLE+= (RT73 USB)
315 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt73usb.ko
316 AUTOLOAD:=$(call AutoProbe,rt73usb)
317 endef
318
319 define KernelPackage/rt2800-mmio
320 $(call KernelPackage/rt2x00/Default)
321 TITLE += (RT28xx/RT3xxx MMIO)
322 DEPENDS += +kmod-rt2800-lib +kmod-rt2x00-mmio
323 HIDDEN:=1
324 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800mmio.ko
325 endef
326
327 define KernelPackage/rt2800-soc
328 $(call KernelPackage/rt2x00/Default)
329 DEPENDS += @(TARGET_ramips_rt288x||TARGET_ramips_rt305x||TARGET_ramips_rt3883||TARGET_ramips_mt7620) +kmod-rt2800-mmio +kmod-rt2800-lib
330 TITLE += (RT28xx/RT3xxx SoC)
331 FILES := \
332 $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2x00soc.ko \
333 $(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800soc.ko
334 AUTOLOAD:=$(call AutoProbe,rt2800soc)
335 endef
336
337 define KernelPackage/rt2800-pci
338 $(call KernelPackage/rt2x00/Default)
339 DEPENDS+= @PCI_SUPPORT +kmod-rt2x00-pci +kmod-rt2800-lib +kmod-rt2800-mmio
340 TITLE+= (RT2860 PCI)
341 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800pci.ko
342 AUTOLOAD:=$(call AutoProbe,rt2800pci)
343 endef
344
345 define KernelPackage/rt2800-usb
346 $(call KernelPackage/rt2x00/Default)
347 DEPENDS+= @USB_SUPPORT +kmod-rt2x00-usb +kmod-rt2800-lib +kmod-lib-crc-ccitt
348 TITLE+= (RT2870 USB)
349 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rt2x00/rt2800usb.ko
350 AUTOLOAD:=$(call AutoProbe,rt2800usb)
351 endef
352
353 define KernelPackage/rtl818x/Default
354 $(call KernelPackage/mac80211/Default)
355 TITLE:=Realtek Drivers for RTL818x devices
356 URL:=http://wireless.kernel.org/en/users/Drivers/rtl8187
357 DEPENDS+= +kmod-eeprom-93cx6 +kmod-mac80211
358 endef
359
360 define KernelPackage/rtl8180
361 $(call KernelPackage/rtl818x/Default)
362 DEPENDS+= @PCI_SUPPORT
363 TITLE+= (RTL8180 PCI)
364 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8180/rtl818x_pci.ko
365 AUTOLOAD:=$(call AutoProbe,rtl818x_pci)
366 endef
367
368 define KernelPackage/rtl8187
369 $(call KernelPackage/rtl818x/Default)
370 DEPENDS+= @USB_SUPPORT +kmod-usb-core
371 TITLE+= (RTL8187 USB)
372 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko
373 AUTOLOAD:=$(call AutoProbe,rtl8187)
374 endef
375
376 define KernelPackage/rtlwifi/config
377 config PACKAGE_RTLWIFI_DEBUG
378 bool "Realtek wireless debugging"
379 depends on PACKAGE_kmod-rtlwifi
380 help
381 Say Y, if you want to debug realtek wireless drivers.
382
383 endef
384
385 define KernelPackage/rtlwifi
386 $(call KernelPackage/mac80211/Default)
387 TITLE:=Realtek common driver part
388 DEPENDS+= @(PCI_SUPPORT||USB_SUPPORT) +kmod-mac80211 +@DRIVER_11N_SUPPORT
389 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtlwifi.ko
390 HIDDEN:=1
391 endef
392
393 define KernelPackage/rtlwifi-pci
394 $(call KernelPackage/mac80211/Default)
395 TITLE:=Realtek common driver part (PCI support)
396 DEPENDS+= @PCI_SUPPORT +kmod-rtlwifi
397 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl_pci.ko
398 AUTOLOAD:=$(call AutoProbe,rtl_pci)
399 HIDDEN:=1
400 endef
401
402 define KernelPackage/rtlwifi-usb
403 $(call KernelPackage/mac80211/Default)
404 TITLE:=Realtek common driver part (USB support)
405 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-rtlwifi
406 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl_usb.ko
407 AUTOLOAD:=$(call AutoProbe,rtl_usb)
408 HIDDEN:=1
409 endef
410
411 define KernelPackage/rtl8192c-common
412 $(call KernelPackage/mac80211/Default)
413 TITLE:=Realtek RTL8192CE/RTL8192CU common support module
414 DEPENDS+= +kmod-rtlwifi
415 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko
416 HIDDEN:=1
417 endef
418
419 define KernelPackage/rtl8192ce
420 $(call KernelPackage/mac80211/Default)
421 TITLE:=Realtek RTL8192CE/RTL8188CE support
422 DEPENDS+= +kmod-rtlwifi-pci +kmod-rtl8192c-common
423 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko
424 AUTOLOAD:=$(call AutoProbe,rtl8192ce)
425 endef
426
427 define KernelPackage/rtl8192ce/install
428 $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
429 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfw.bin $(1)/lib/firmware/rtlwifi
430 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfwU.bin $(1)/lib/firmware/rtlwifi
431 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cfwU_B.bin $(1)/lib/firmware/rtlwifi
432 endef
433
434 define KernelPackage/rtl8192se
435 $(call KernelPackage/mac80211/Default)
436 TITLE:=Realtek RTL8192SE/RTL8191SE support
437 DEPENDS+= +kmod-rtlwifi-pci
438 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko
439 AUTOLOAD:=$(call AutoProbe,rtl8192se)
440 endef
441
442 define KernelPackage/rtl8192se/install
443 $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
444 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192sefw.bin $(1)/lib/firmware/rtlwifi
445 endef
446
447 define KernelPackage/rtl8192de
448 $(call KernelPackage/mac80211/Default)
449 TITLE:=Realtek RTL8192DE/RTL8188DE support
450 DEPENDS+= +kmod-rtlwifi-pci
451 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192de/rtl8192de.ko
452 AUTOLOAD:=$(call AutoProbe,rtl8192de)
453 endef
454
455 define KernelPackage/rtl8192de/install
456 $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
457 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192defw.bin $(1)/lib/firmware/rtlwifi
458 endef
459
460 define KernelPackage/rtl8192cu
461 $(call KernelPackage/mac80211/Default)
462 TITLE:=Realtek RTL8192CU/RTL8188CU support
463 DEPENDS+= +kmod-rtlwifi-usb +kmod-rtl8192c-common
464 FILES:= $(PKG_BUILD_DIR)/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko
465 AUTOLOAD:=$(call AutoProbe,rtl8192cu)
466 endef
467
468 define KernelPackage/rtl8192cu/install
469 $(INSTALL_DIR) $(1)/lib/firmware/rtlwifi
470 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw.bin $(1)/lib/firmware/rtlwifi
471 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_A.bin $(1)/lib/firmware/rtlwifi
472 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_B.bin $(1)/lib/firmware/rtlwifi
473 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rtlwifi/rtl8192cufw_TMSC.bin $(1)/lib/firmware/rtlwifi
474 endef
475
476 ZD1211FW_NAME:=zd1211-firmware
477 ZD1211FW_VERSION:=1.4
478 define Download/zd1211rw
479 FILE:=$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
480 URL:=@SF/zd1211/
481 MD5SUM:=19f28781d76569af8551c9d11294c870
482 endef
483 $(eval $(call Download,zd1211rw))
484
485 define KernelPackage/zd1211rw
486 $(call KernelPackage/mac80211/Default)
487 TITLE:=Zydas ZD1211 support
488 DEPENDS+= @USB_SUPPORT +kmod-usb-core +kmod-mac80211
489 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/zd1211rw/zd1211rw.ko
490 AUTOLOAD:=$(call AutoProbe,zd1211rw)
491 endef
492
493 define KernelPackage/adm8211
494 $(call KernelPackage/mac80211/Default)
495 TITLE:=ADMTek 8211 support
496 DEPENDS+=@PCI_SUPPORT +kmod-mac80211 +kmod-eeprom-93cx6
497 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/adm8211.ko
498 AUTOLOAD:=$(call AutoProbe,adm8211)
499 endef
500
501 define KernelPackage/ath/config
502 if PACKAGE_kmod-ath
503 config ATH_USER_REGD
504 bool "Force Atheros drivers to respect the user's regdomain settings"
505 help
506 Atheros' idea of regulatory handling is that the EEPROM of the card defines
507 the regulatory limits and the user is only allowed to restrict the settings
508 even further, even if the country allows frequencies or power levels that
509 are forbidden by the EEPROM settings.
510
511 Select this option if you want the driver to respect the user's decision about
512 regulatory settings.
513
514 config PACKAGE_ATH_DEBUG
515 bool "Atheros wireless debugging"
516 help
517 Say Y, if you want to debug atheros wireless drivers.
518 Right now only ath9k makes use of this.
519
520 config PACKAGE_ATH_DFS
521 bool "Enable DFS support"
522 default y
523 help
524 Dynamic frequency selection (DFS) is required for most of the 5 GHz band
525 channels in Europe, US, and Japan.
526
527 Select this option if you want to use such channels.
528
529 endif
530 endef
531
532 define KernelPackage/ath
533 $(call KernelPackage/mac80211/Default)
534 TITLE:=Atheros common driver part
535 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx||TARGET_ath25 +kmod-mac80211
536 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath.ko
537 MENU:=1
538 endef
539
540 define KernelPackage/ath/description
541 This module contains some common parts needed by Atheros Wireless drivers.
542 endef
543
544 define KernelPackage/ath5k
545 $(call KernelPackage/mac80211/Default)
546 TITLE:=Atheros 5xxx wireless cards support
547 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath5k
548 DEPENDS+= @PCI_SUPPORT||@TARGET_ath25 +kmod-ath
549 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath5k/ath5k.ko
550 AUTOLOAD:=$(call AutoProbe,ath5k)
551 endef
552
553 define KernelPackage/ath5k/description
554 This module adds support for wireless adapters based on
555 Atheros 5xxx chipset.
556 endef
557
558 define KernelPackage/ath9k-common
559 $(call KernelPackage/mac80211/Default)
560 TITLE:=Atheros 802.11n wireless devices (common code for ath9k and ath9k_htc)
561 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
562 DEPENDS+= @PCI_SUPPORT||USB_SUPPORT||TARGET_ar71xx +kmod-ath +@DRIVER_11N_SUPPORT +@KERNEL_RELAY
563 FILES:= \
564 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_common.ko \
565 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_hw.ko
566 endef
567
568 define KernelPackage/ath9k
569 $(call KernelPackage/mac80211/Default)
570 TITLE:=Atheros 802.11n PCI wireless cards support
571 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
572 DEPENDS+= @PCI_SUPPORT||TARGET_ar71xx +kmod-ath9k-common
573 FILES:= \
574 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k.ko
575 AUTOLOAD:=$(call AutoProbe,ath9k)
576 endef
577
578 define KernelPackage/ath9k/description
579 This module adds support for wireless adapters based on
580 Atheros IEEE 802.11n AR5008 and AR9001 family of chipsets.
581 endef
582
583 define KernelPackage/ath9k/config
584
585 config ATH9K_SUPPORT_PCOEM
586 bool "Support chips used in PC OEM cards"
587 depends on PACKAGE_kmod-ath9k
588
589 endef
590
591 define KernelPackage/ath9k-htc
592 $(call KernelPackage/mac80211/Default)
593 TITLE:=Atheros 802.11n USB device support
594 URL:=https://wireless.wiki.kernel.org/en/users/drivers/ath9k
595 DEPENDS+= @USB_SUPPORT +kmod-ath9k-common +kmod-usb-core
596 FILES:= \
597 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath9k/ath9k_htc.ko
598 AUTOLOAD:=$(call AutoProbe,ath9k_htc)
599 endef
600
601 define KernelPackage/ath9k-htc/description
602 This module adds support for wireless adapters based on
603 Atheros USB AR9271 and AR7010 family of chipsets.
604 endef
605
606 define KernelPackage/ath10k
607 $(call KernelPackage/mac80211/Default)
608 TITLE:=Atheros 802.11ac wireless cards support
609 URL:=https://wireless.wiki.kernel.org/en/users/Drivers/ath10k
610 DEPENDS+= @PCI_SUPPORT +kmod-ath +@DRIVER_11N_SUPPORT
611 FILES:= \
612 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_core.ko \
613 $(PKG_BUILD_DIR)/drivers/net/wireless/ath/ath10k/ath10k_pci.ko
614 AUTOLOAD:=$(call AutoLoad,55,ath10k_core ath10k_pci)
615 endef
616
617 define KernelPackage/ath10k/description
618 This module adds support for wireless adapters based on
619 Atheros IEEE 802.11ac family of chipsets. For now only
620 PCI is supported.
621 endef
622
623 define KernelPackage/carl9170
624 $(call KernelPackage/mac80211/Default)
625 TITLE:=Driver for Atheros AR9170 USB sticks
626 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT
627 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
628 AUTOLOAD:=$(call AutoProbe,carl9170)
629 endef
630
631 define KernelPackage/lib80211
632 $(call KernelPackage/mac80211/Default)
633 TITLE:=802.11 Networking stack
634 DEPENDS:=+kmod-cfg80211
635 FILES:= \
636 $(PKG_BUILD_DIR)/net/wireless/lib80211.ko \
637 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_wep.ko \
638 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_ccmp.ko \
639 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_tkip.ko
640 AUTOLOAD:=$(call AutoProbe, \
641 lib80211 \
642 lib80211_crypt_wep \
643 lib80211_crypt_ccmp \
644 lib80211_crypt_tkip \
645 )
646 endef
647
648 define KernelPackage/lib80211/description
649 Kernel modules for 802.11 Networking stack
650 Includes:
651 - lib80211
652 - lib80211_crypt_wep
653 - lib80211_crypt_tkip
654 - lib80211_crytp_ccmp
655 endef
656
657 define KernelPackage/libertas-usb
658 $(call KernelPackage/mac80211/Default)
659 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
660 TITLE:=Marvell 88W8015 Wireless Driver
661 FILES:= \
662 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
663 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.ko
664 AUTOLOAD:=$(call AutoProbe,libertas usb8xxx)
665 endef
666
667 define KernelPackage/libertas-sdio
668 $(call KernelPackage/mac80211/Default)
669 DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +kmod-mmc +@DRIVER_WEXT_SUPPORT @!TARGET_uml
670 TITLE:=Marvell 88W8686 Wireless Driver
671 FILES:= \
672 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
673 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas_sdio.ko
674 AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
675 endef
676
677 define KernelPackage/mac80211-hwsim
678 $(call KernelPackage/mac80211/Default)
679 TITLE:=mac80211 HW simulation device
680 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT
681 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
682 AUTOLOAD:=$(call AutoProbe,mac80211_hwsim)
683 endef
684
685 define KernelPackage/net-libipw
686 $(call KernelPackage/mac80211/Default)
687 TITLE:=libipw for ipw2100 and ipw2200
688 DEPENDS:=@PCI_SUPPORT +kmod-crypto-core +kmod-crypto-arc4 +kmod-crypto-aes +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
689 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.ko
690 AUTOLOAD:=$(call AutoProbe,libipw)
691 endef
692
693 define KernelPackage/net-libipw/description
694 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
695 endef
696
697 IPW2100_NAME:=ipw2100-fw
698 IPW2100_VERSION:=1.3
699
700 define Download/net-ipw2100
701 URL:=http://bughost.org/firmware/
702 FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
703 MD5SUM=46aa75bcda1a00efa841f9707bbbd113
704 endef
705 $(eval $(call Download,net-ipw2100))
706
707 define KernelPackage/net-ipw2100
708 $(call KernelPackage/mac80211/Default)
709 TITLE:=Intel IPW2100 driver
710 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
711 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.ko
712 AUTOLOAD:=$(call AutoProbe,ipw2100)
713 endef
714
715 define KernelPackage/net-ipw2100/description
716 Kernel support for Intel IPW2100
717 Includes:
718 - ipw2100
719 endef
720
721 IPW2200_NAME:=ipw2200-fw
722 IPW2200_VERSION:=3.1
723
724 define Download/net-ipw2200
725 URL:=http://bughost.org/firmware/
726 FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
727 MD5SUM=eaba788643c7cc7483dd67ace70f6e99
728 endef
729 $(eval $(call Download,net-ipw2200))
730
731 define KernelPackage/net-ipw2200
732 $(call KernelPackage/mac80211/Default)
733 TITLE:=Intel IPW2200 driver
734 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
735 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.ko
736 AUTOLOAD:=$(call AutoProbe,ipw2200)
737 endef
738
739 define KernelPackage/net-ipw2200/description
740 Kernel support for Intel IPW2200
741 Includes:
742 - ipw2200
743 endef
744
745
746 define KernelPackage/net-hermes
747 $(call KernelPackage/mac80211/Default)
748 TITLE:=Hermes 802.11b chipset support
749 DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
750 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco.ko
751 AUTOLOAD:=$(call AutoProbe,orinoco)
752 endef
753
754 define KernelPackage/net-hermes/description
755 Kernel support for Hermes 802.11b chipsets
756 endef
757
758 define KernelPackage/net-hermes-pci
759 $(call KernelPackage/mac80211/Default)
760 TITLE:=Intersil Prism 2.5 PCI support
761 DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
762 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_pci.ko
763 AUTOLOAD:=$(call AutoProbe,orinoco_pci)
764 endef
765
766 define KernelPackage/net-hermes-pci/description
767 Kernel modules for Intersil Prism 2.5 PCI support
768 endef
769
770 define KernelPackage/net-hermes-plx
771 $(call KernelPackage/mac80211/Default)
772 TITLE:=PLX9052 based PCI adaptor
773 DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
774 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_plx.ko
775 AUTOLOAD:=$(call AutoProbe,orinoco_plx)
776 endef
777
778 define KernelPackage/net-hermes-plx/description
779 Kernel modules for Hermes in PLX9052 based PCI adaptors
780 endef
781
782 define KernelPackage/net-hermes-pcmcia
783 $(call KernelPackage/mac80211/Default)
784 TITLE:=Hermes based PCMCIA adaptors
785 DEPENDS:=@PCMCIA_SUPPORT +kmod-net-hermes @BROKEN
786 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_cs.ko
787 AUTOLOAD:=$(call AutoProbe,orinoco_cs)
788 endef
789
790 define KernelPackage/net-hermes-pcmcia/description
791 Kernel modules for Hermes based PCMCIA adaptors
792 endef
793
794 define KernelPackage/iwlagn
795 $(call KernelPackage/mac80211/Default)
796 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT +@DRIVER_11N_SUPPORT
797 TITLE:=Intel AGN Wireless support
798 FILES:= \
799 $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlwifi.ko \
800 $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/dvm/iwldvm.ko
801 AUTOLOAD:=$(call AutoProbe,iwlwifi iwldvm)
802 MENU:=1
803 endef
804
805 define KernelPackage/iwlagn/description
806 iwlagn kernel module for Intel 5000/5150/1000/6000/6050/6005/6030/100 support
807 endef
808
809 define KernelPackage/iwlagn/config
810 if PACKAGE_kmod-iwlagn
811
812 config IWL5000_FW
813 bool "Intel 5000 Firmware"
814 default y
815 help
816 Download and install firmware for:
817 Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
818
819 config IWL5150_FW
820 bool "Intel 5150 Firmware"
821 default y
822 help
823 Download and install firmware for:
824 Intel Wireless WiFi 5150AGN
825
826 config IWL1000_FW
827 bool "Intel 1000 Firmware"
828 default y
829 help
830 Download and install firmware for:
831 Intel Centrino Wireless-N 1000
832
833 config IWL6000_FW
834 bool "Intel 6000 Firmware"
835 default y
836 help
837 Download and install firmware for:
838 Intel Centrino Ultimate-N 6300 and Advanced-N 6200
839
840 config IWL6050_FW
841 bool "Intel 6050 Firmware"
842 default y
843 help
844 Download and install firmware for:
845 Intel Centrino Advanced-N + WiMAX 6250 and Wireless-N + WiMAX 6150
846
847 config IWL6005_FW
848 bool "Intel 6005 Firmware"
849 default y
850 help
851 Download and install firmware for:
852 Intel Centrino Advanced-N 6205
853
854 config IWL6030_FW
855 bool "Intel 6030 Firmware"
856 default y
857 help
858 Download and install firmware for:
859 Intel Centrino Advanced-N 6230, Wireless-N 1030, Wireless-N 130 and Advanced-N 6235
860
861 config IWL7260_FW
862 bool "Intel 7260 Firmware"
863 default y
864 help
865 Download and install firmware for:
866 Intel Dual Band Wireless-N 7260 and Intel Dual Band Wireless-AC 7260
867
868 config IWL7265_FW
869 bool "Intel 7265 Firmware"
870 default y
871 help
872 Download and install firmware for:
873 Intel Wireless 7265
874
875 config IWL100_FW
876 bool "Intel 100 Firmware"
877 default y
878 help
879 Download and install firmware for:
880 Intel Centrino Wireless-N 100
881
882 config IWL2000_FW
883 bool "Intel 2000 Firmware"
884 default y
885 help
886 Download and install firmware for:
887 Intel Centrino Wireless-N 2200
888
889 config IWL2030_FW
890 bool "Intel 2030 Firmware"
891 default y
892 help
893 Download and install firmware for:
894 Intel Centrino Wireless-N 2230
895
896 config IWL105_FW
897 bool "Intel 105 Firmware"
898 default y
899 help
900 Download and install firmware for:
901 Intel Centrino Wireless-N 105
902
903 config IWL135_FW
904 bool "Intel 135 Firmware"
905 default y
906 help
907 Download and install firmware for:
908 Intel Centrino Wireless-N 135
909
910 config IWL3160_FW
911 bool "Intel 3160 Firmware"
912 default y
913 help
914 Download and install firmware for:
915 Intel Wireless 3160
916 endif
917 endef
918
919 define KernelPackage/iwl-legacy
920 $(call KernelPackage/mac80211/Default)
921 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
922 TITLE:=Intel legacy Wireless support
923 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwlegacy.ko
924 AUTOLOAD:=$(call AutoProbe,iwlegacy)
925 endef
926
927 define KernelPackage/iwl-legacy/description
928 iwl-legacy kernel module for legacy Intel wireless support
929 endef
930
931 define KernelPackage/iwl3945
932 $(call KernelPackage/mac80211/Default)
933 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
934 TITLE:=Intel iwl3945 Wireless support
935 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.ko
936 AUTOLOAD:=$(call AutoProbe,iwl3945)
937 endef
938
939 define KernelPackage/iwl3945/description
940 iwl3945 kernel module for Intel 3945 support
941 endef
942
943 define KernelPackage/iwl4965
944 $(call KernelPackage/mac80211/Default)
945 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT
946 TITLE:=Intel iwl4965 Wireless support
947 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.ko
948 AUTOLOAD:=$(call AutoProbe,iwl4965)
949 endef
950
951 define KernelPackage/iwl4965/description
952 iwl4965 kernel module for Intel 4965 support
953 endef
954
955
956 define KernelPackage/mwl8k
957 $(call KernelPackage/mac80211/Default)
958 TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
959 URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
960 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
961 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
962 AUTOLOAD:=$(call AutoProbe,mwl8k)
963 endef
964
965 define KernelPackage/mwl8k/description
966 Kernel modules for Marvell TOPDOG 802.11 Wireless cards
967 endef
968
969
970 define KernelPackage/mwifiex-pcie
971 $(call KernelPackage/mac80211/Default)
972 TITLE:=Driver for Marvell 802.11n/802.11ac PCIe Wireless cards
973 URL:=http://wireless.kernel.org/en/users/Drivers/mwifiex
974 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
975 FILES:= \
976 $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex.ko \
977 $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex_pcie.ko
978 AUTOLOAD:=$(call AutoProbe,mwifiex_pcie)
979 endef
980
981 define KernelPackage/mwifiex-pcie/description
982 Kernel modules for Marvell 802.11n/802.11ac PCIe Wireless cards
983 endef
984
985
986 define KernelPackage/wlcore
987 $(call KernelPackage/mac80211/Default)
988 TITLE:=TI common driver part
989 DEPENDS+= @TARGET_omap +kmod-mac80211 +@DRIVER_11N_SUPPORT
990 FILES:= \
991 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
992 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
993 AUTOLOAD:=$(call AutoProbe,wlcore wlcore_sdio)
994 endef
995
996 define KernelPackage/wlcore/description
997 This module contains some common parts needed by TI Wireless drivers.
998 endef
999
1000 define KernelPackage/wl12xx
1001 $(call KernelPackage/mac80211/Default)
1002 TITLE:=Driver for TI WL12xx
1003 URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
1004 DEPENDS+= +kmod-wlcore
1005 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko
1006 AUTOLOAD:=$(call AutoProbe,wl12xx)
1007 endef
1008
1009 define KernelPackage/wl12xx/description
1010 Kernel modules for TI WL12xx
1011 endef
1012
1013 define KernelPackage/wl18xx
1014 $(call KernelPackage/mac80211/Default)
1015 TITLE:=Driver for TI WL18xx
1016 URL:=http://wireless.kernel.org/en/users/Drivers/wl18xx
1017 DEPENDS+= +kmod-wlcore
1018 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko
1019 AUTOLOAD:=$(call AutoProbe,wl18xx)
1020 endef
1021
1022 define KernelPackage/wl18xx/description
1023 Kernel modules for TI WL18xx
1024 endef
1025
1026
1027 #Broadcom firmware
1028 ifneq ($(CONFIG_B43_FW_6_30),)
1029 PKG_B43_FWV4_NAME:=broadcom-wl
1030 PKG_B43_FWV4_VERSION:=6.30.163.46
1031 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).wl_apsta.o
1032 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1033 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1034 PKG_B43_FWV4_MD5SUM:=6fe97e9368d25342a1ab943d3cf3496d
1035 else
1036 ifneq ($(CONFIG_B43_FW_5_10),)
1037 PKG_B43_FWV4_NAME:=broadcom-wl
1038 PKG_B43_FWV4_VERSION:=5.10.56.27.3
1039 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
1040 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
1041 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1042 PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
1043 else
1044 ifneq ($(CONFIG_B43_FW_4_178),)
1045 PKG_B43_FWV4_NAME:=broadcom-wl
1046 PKG_B43_FWV4_VERSION:=4.178.10.4
1047 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
1048 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1049 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1050 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
1051 else
1052 ifneq ($(CONFIG_B43_FW_5_100_138),)
1053 PKG_B43_FWV4_NAME:=broadcom-wl
1054 PKG_B43_FWV4_VERSION:=5.100.138
1055 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
1056 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1057 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1058 PKG_B43_FWV4_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
1059 else
1060 PKG_B43_FWV4_NAME:=broadcom-wl
1061 PKG_B43_FWV4_VERSION:=4.150.10.5
1062 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
1063 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1064 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1065 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
1066 endif
1067 endif
1068 endif
1069 endif
1070 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
1071 PKG_B43_FWV4_NAME:=broadcom-wl
1072 PKG_B43_FWV4_VERSION:=5.2
1073 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
1074 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
1075 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
1076 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
1077 endif
1078
1079
1080 PKG_B43_FWV3_NAME:=wl_apsta
1081 PKG_B43_FWV3_VERSION:=3.130.20.0
1082 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
1083 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
1084 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
1085
1086 define Download/b43
1087 FILE:=$(PKG_B43_FWV4_SOURCE)
1088 URL:=$(PKG_B43_FWV4_SOURCE_URL)
1089 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
1090 endef
1091 $(eval $(call Download,b43))
1092
1093 define Download/b43legacy
1094 FILE:=$(PKG_B43_FWV3_SOURCE)
1095 URL:=$(PKG_B43_FWV3_SOURCE_URL)
1096 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
1097 endef
1098 $(eval $(call Download,b43legacy))
1099
1100
1101 define KernelPackage/b43
1102 $(call KernelPackage/mac80211/Default)
1103 TITLE:=Broadcom 43xx wireless support
1104 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
1105 KCONFIG:= \
1106 CONFIG_HW_RANDOM=y
1107 # Depend on PCI_SUPPORT to make sure we can select kmod-bcma or kmod-ssb
1108 DEPENDS += \
1109 @PCI_SUPPORT +kmod-mac80211 \
1110 $(if $(CONFIG_PACKAGE_B43_USE_SSB),+kmod-ssb) \
1111 $(if $(CONFIG_PACKAGE_B43_USE_BCMA),+kmod-bcma)
1112 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
1113 AUTOLOAD:=$(call AutoProbe,b43)
1114 MENU:=1
1115 endef
1116
1117 define KernelPackage/b43/config
1118
1119 config PACKAGE_B43_USE_SSB
1120 select PACKAGE_kmod-ssb
1121 tristate
1122 depends on !TARGET_brcm47xx && !TARGET_brcm63xx
1123 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
1124 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_SSB
1125
1126 config PACKAGE_B43_USE_BCMA
1127 select PACKAGE_kmod-bcma
1128 tristate
1129 depends on !TARGET_brcm47xx && !TARGET_bcm53xx
1130 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
1131 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA
1132
1133 if PACKAGE_kmod-b43
1134
1135 choice
1136 prompt "b43 firmware version"
1137 default B43_FW_5_100_138
1138 help
1139 This option allows you to select the version of the b43 firmware.
1140
1141 config B43_FW_4_150
1142 bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
1143 help
1144 Old stable firmware for BCM43xx devices.
1145
1146 If unsure, select this.
1147
1148 config B43_FW_4_178
1149 bool "Firmware 478.104 from driver 4.178.10.4"
1150 help
1151 Older firmware for BCM43xx devices.
1152
1153 If unsure, select the "stable" firmware.
1154
1155 config B43_FW_5_10
1156 bool "Firmware 508.1084 from driver 5.10.56.27"
1157 help
1158 Older firmware for BCM43xx devices.
1159
1160 If unsure, select the "stable" firmware.
1161
1162 config B43_FW_5_100_138
1163 bool "Firmware 666.2 from driver 5.100.138 (stable)"
1164 help
1165 The currently default firmware for BCM43xx devices.
1166
1167 This firmware currently gets most of the testing and is needed for some N-PHY devices.
1168
1169 If unsure, select the this firmware.
1170
1171 config B43_FW_6_30
1172 bool "Firmware 784.2 from driver 6.30.163.46 (experimental)"
1173 help
1174 Newer experimental firmware for BCM43xx devices.
1175
1176 This firmware is mostly untested.
1177
1178 If unsure, select the "stable" firmware.
1179
1180 config B43_OPENFIRMWARE
1181 bool "Open FirmWare for WiFi networks"
1182 help
1183 Opensource firmware for BCM43xx devices.
1184
1185 Do _not_ select this, unless you know what you are doing.
1186 The Opensource firmware is not suitable for embedded devices, yet.
1187 It does not support QoS, which is bad for AccessPoints.
1188 It does not support hardware crypto acceleration, which is a showstopper
1189 for embedded devices with low CPU resources.
1190
1191 If unsure, select the "stable" firmware.
1192
1193 endchoice
1194
1195 config B43_FW_SQUASH
1196 bool "Remove unnecessary firmware files"
1197 depends on !B43_OPENFIRMWARE
1198 default y
1199 help
1200 This options allows you to remove unnecessary b43 firmware files
1201 from the final rootfs image. This can reduce the rootfs size by
1202 up to 200k.
1203
1204 If unsure, say Y.
1205
1206 config B43_FW_SQUASH_COREREVS
1207 string "Core revisions to include"
1208 depends on B43_FW_SQUASH
1209 default "5,6,7,8,9,10,11,13,15" if TARGET_brcm47xx_legacy
1210 default "16,28,29,30" if TARGET_brcm47xx_mips74k
1211 default "5,6,7,8,9,10,11,13,15,16,28,29,30"
1212 help
1213 This is a comma seperated list of core revision numbers.
1214
1215 Example (keep files for rev5 only):
1216 5
1217
1218 Example (keep files for rev5 and rev11):
1219 5,11
1220
1221 config B43_FW_SQUASH_PHYTYPES
1222 string "PHY types to include"
1223 depends on B43_FW_SQUASH
1224 default "G,N,LP" if TARGET_brcm47xx_legacy
1225 default "N,HT" if TARGET_brcm47xx_mips74k
1226 default "G,N,LP,HT"
1227 help
1228 This is a comma seperated list of PHY types:
1229 A => A-PHY
1230 AG => Dual A-PHY G-PHY
1231 G => G-PHY
1232 LP => LP-PHY
1233 N => N-PHY
1234 HT => HT-PHY
1235 LCN => LCN-PHY
1236 LCN40 => LCN40-PHY
1237 AC => AC-PHY
1238
1239 Example (keep files for G-PHY only):
1240 G
1241
1242 Example (keep files for G-PHY and N-PHY):
1243 G,N
1244
1245 choice
1246 prompt "Supported buses"
1247 default PACKAGE_B43_BUSES_BCMA_AND_SSB
1248 help
1249 This allows choosing buses that b43 should support.
1250
1251 config PACKAGE_B43_BUSES_BCMA_AND_SSB
1252 depends on !TARGET_brcm47xx_legacy && !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
1253 bool "BCMA and SSB"
1254
1255 config PACKAGE_B43_BUSES_BCMA
1256 depends on !TARGET_brcm47xx_legacy
1257 bool "BCMA only"
1258
1259 config PACKAGE_B43_BUSES_SSB
1260 depends on !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
1261 bool "SSB only"
1262
1263 endchoice
1264
1265 config PACKAGE_B43_DEBUG
1266 bool "Enable debug output and debugfs for b43"
1267 default n
1268 help
1269 Enable additional debug output and runtime sanity checks for b43
1270 and enables the debugfs interface.
1271
1272 If unsure, say N.
1273
1274 config PACKAGE_B43_PIO
1275 bool "Enable support for PIO transfer mode"
1276 default n
1277 help
1278 Enable support for using PIO instead of DMA. Unless you have DMA
1279 transfer problems you don't need this.
1280
1281 If unsure, say N.
1282
1283 config PACKAGE_B43_PHY_G
1284 bool "Enable support for G-PHYs"
1285 default n if TARGET_brcm47xx_mips74k
1286 default y
1287 help
1288 Enable support for G-PHY. This includes support for the following devices:
1289 PCI: BCM4306, BCM4311, BCM4318
1290 SoC: BCM5352E, BCM4712
1291
1292 If unsure, say Y.
1293
1294 config PACKAGE_B43_PHY_N
1295 bool "Enable support for N-PHYs"
1296 default y
1297 help
1298 Enable support for N-PHY. This includes support for the following devices:
1299 PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
1300 SoC: BCM4716, BCM4717, BCM4718
1301
1302 Currently only 11g speed is available.
1303
1304 If unsure, say Y.
1305
1306 config PACKAGE_B43_PHY_LP
1307 bool "Enable support for LP-PHYs"
1308 default n if TARGET_brcm47xx_mips74k
1309 default y
1310 help
1311 Enable support for LP-PHY. This includes support for the following devices:
1312 PCI: BCM4312
1313 SoC: BCM5354
1314
1315 If unsure, say Y.
1316
1317 config PACKAGE_B43_PHY_HT
1318 bool "Enable support for HT-PHYs"
1319 default n if TARGET_brcm47xx_legacy
1320 default y
1321 help
1322 Enable support for HT-PHY. This includes support for the following devices:
1323 PCI: BCM4331
1324
1325 Currently only 11g speed is available.
1326
1327 If unsure, say Y.
1328
1329 config PACKAGE_B43_PHY_LCN
1330 bool "Enable support for LCN-PHYs"
1331 depends on BROKEN
1332 default n
1333 help
1334 Currently broken.
1335
1336 If unsure, say N.
1337
1338 endif
1339 endef
1340
1341 define KernelPackage/b43/description
1342 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
1343 endef
1344
1345 define KernelPackage/b43legacy
1346 $(call KernelPackage/mac80211/Default)
1347 TITLE:=Broadcom 43xx-legacy wireless support
1348 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
1349 KCONFIG:= \
1350 CONFIG_HW_RANDOM=y
1351 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
1352 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
1353 AUTOLOAD:=$(call AutoProbe,b43legacy)
1354 MENU:=1
1355 endef
1356
1357 define KernelPackage/b43legacy/config
1358 if PACKAGE_kmod-b43legacy
1359
1360 config B43LEGACY_FW_SQUASH
1361 bool "Remove unnecessary firmware files"
1362 default y
1363 help
1364 This options allows you to remove unnecessary b43legacy firmware files
1365 from the final rootfs image. This can reduce the rootfs size by
1366 up to 50k.
1367
1368 If unsure, say Y.
1369
1370 config B43LEGACY_FW_SQUASH_COREREVS
1371 string "Core revisions to include"
1372 depends on B43LEGACY_FW_SQUASH
1373 default "1,2,3,4"
1374 help
1375 This is a comma seperated list of core revision numbers.
1376
1377 Example (keep files for rev4 only):
1378 4
1379
1380 Example (keep files for rev2 and rev4):
1381 2,4
1382
1383 endif
1384 endef
1385
1386 define KernelPackage/b43legacy/description
1387 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
1388 endef
1389
1390
1391 define KernelPackage/brcmutil
1392 $(call KernelPackage/mac80211/Default)
1393 TITLE:=Broadcom IEEE802.11n common driver parts
1394 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1395 DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
1396 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
1397 AUTOLOAD:=$(call AutoProbe,brcmutil)
1398 MENU:=1
1399 endef
1400
1401 define KernelPackage/brcmutil/description
1402 This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
1403 endef
1404
1405 define KernelPackage/brcmutil/config
1406 if PACKAGE_kmod-brcmutil
1407
1408 config PACKAGE_BRCM80211_DEBUG
1409 bool "Broadcom wireless driver debugging"
1410 help
1411 Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
1412
1413 endif
1414 endef
1415
1416 PKG_BRCMSMAC_FW_NAME:=broadcom-wl
1417 PKG_BRCMSMAC_FW_VERSION:=5.100.138
1418 PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
1419 PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
1420 PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1421 PKG_BRCMSMAC_FW_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
1422
1423 define Download/brcmsmac
1424 FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
1425 URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
1426 MD5SUM:=$(PKG_BRCMSMAC_FW_MD5SUM)
1427 endef
1428 $(eval $(call Download,brcmsmac))
1429
1430 define KernelPackage/brcmsmac
1431 $(call KernelPackage/mac80211/Default)
1432 TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
1433 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1434 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil
1435 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
1436 AUTOLOAD:=$(call AutoProbe,brcmsmac)
1437 MENU:=1
1438 endef
1439
1440 define KernelPackage/brcmsmac/description
1441 Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
1442 endef
1443
1444 define KernelPackage/brcmsmac/config
1445 if PACKAGE_kmod-brcmsmac
1446
1447 config BRCMSMAC_USE_FW_FROM_WL
1448 bool "Use firmware extracted from broadcom proprietary driver"
1449 default y
1450 help
1451 Instead of using the official brcmsmac firmware a firmware
1452 version 666.2 extracted from the proprietary Broadcom driver
1453 is used. This is needed to get core rev 17 used in bcm4716
1454 to work.
1455
1456 If unsure, say Y.
1457
1458 endif
1459 endef
1460
1461
1462 define KernelPackage/brcmfmac
1463 $(call KernelPackage/mac80211/Default)
1464 TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
1465 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1466 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +@DRIVER_11N_SUPPORT +kmod-brcmutil +BRCMFMAC_SDIO:kmod-mmc +BRCMFMAC_USB:kmod-usb-core
1467 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
1468 AUTOLOAD:=$(call AutoProbe,brcmfmac)
1469 endef
1470
1471 define KernelPackage/brcmfmac/description
1472 Kernel module for Broadcom IEEE802.11n USB Wireless cards
1473 endef
1474
1475 define KernelPackage/brcmfmac/config
1476 if PACKAGE_kmod-brcmfmac
1477
1478 config BRCMFMAC_SDIO
1479 bool "Enable SDIO bus interface support"
1480 default n
1481 help
1482 Enable support for cards attached to an SDIO bus.
1483 Select this option only if you are sure that your
1484 board has a Broadcom wireless chip atacched to
1485 that bus.
1486
1487 config BRCMFMAC_USB
1488 bool "Enable USB bus interface support"
1489 depends on USB_SUPPORT
1490 default y
1491 help
1492 Supported USB connected chipsets:
1493 BCM43235, BCM43236, BCM43238 (all in revision 3 only)
1494 BCM43143, BCM43242, BCM43566, BCM43569
1495
1496 config BRCMFMAC_PCIE
1497 bool "Enable PCIE bus interface support"
1498 depends on PCI_SUPPORT
1499 default y
1500 help
1501 Supported PCIe connected chipsets:
1502 BCM4354, BCM4356, BCM43567, BCM43570, BCM43602
1503
1504 endif
1505 endef
1506
1507 config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
1508
1509 config-y:= \
1510 WLAN \
1511 NL80211_TESTMODE \
1512 CFG80211_WEXT \
1513 CFG80211_INTERNAL_REGDB \
1514 CFG80211_CERTIFICATION_ONUS \
1515 MAC80211_RC_MINSTREL \
1516 MAC80211_RC_MINSTREL_HT \
1517 MAC80211_RC_MINSTREL_VHT \
1518 MAC80211_RC_DEFAULT_MINSTREL \
1519
1520 config-$(call config_package,cfg80211) += CFG80211
1521
1522 config-$(call config_package,mac80211) += MAC80211
1523 config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
1524 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
1525 config-y += \
1526 CFG80211_DEBUGFS \
1527 MAC80211_DEBUGFS \
1528 ATH9K_DEBUGFS \
1529 ATH9K_HTC_DEBUGFS \
1530 ATH10K_DEBUGFS \
1531 CARL9170_DEBUGFS \
1532 ATH5K_DEBUG
1533 endif
1534
1535 config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
1536
1537 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
1538 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG
1539 config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
1540
1541 config-$(call config_package,ath9k) += ATH9K
1542 config-$(call config_package,ath9k-common) += ATH9K_COMMON
1543 config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
1544 config-$(CONFIG_PCI) += ATH9K_PCI
1545 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
1546 config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
1547
1548 config-$(call config_package,ath9k-htc) += ATH9K_HTC
1549 config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
1550
1551 config-$(call config_package,ath5k) += ATH5K
1552 ifdef CONFIG_TARGET_ath25
1553 config-y += ATH5K_AHB
1554 else
1555 config-y += ATH5K_PCI
1556 endif
1557
1558 config-$(call config_package,carl9170) += CARL9170
1559
1560 config-$(call config_package,b43) += B43
1561 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB) += B43_BUSES_BCMA_AND_SSB
1562 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA) += B43_BUSES_BCMA
1563 config-$(CONFIG_PACKAGE_B43_BUSES_SSB) += B43_BUSES_SSB
1564 config-$(CONFIG_PACKAGE_B43_PHY_G) += B43_PHY_G
1565 config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
1566 config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
1567 config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
1568 config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
1569 config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
1570
1571 config-$(call config_package,b43legacy) += B43LEGACY
1572 config-y += B43LEGACY_DMA_MODE
1573
1574 config-$(call config_package,brcmutil) += BRCMUTIL
1575 config-$(call config_package,brcmsmac) += BRCMSMAC
1576 config-$(call config_package,brcmfmac) += BRCMFMAC
1577 config-$(CONFIG_BRCMFMAC_SDIO) += BRCMFMAC_SDIO
1578 config-$(CONFIG_BRCMFMAC_USB) += BRCMFMAC_USB
1579 config-$(CONFIG_BRCMFMAC_PCIE) += BRCMFMAC_PCIE
1580 config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
1581
1582 config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
1583
1584 config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
1585 config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI
1586 config-$(call config_package,rt2x00-mmio) += RT2X00_LIB_MMIO
1587 config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
1588 config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
1589 config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
1590
1591 config-$(call config_package,rt2400-pci) += RT2400PCI
1592 config-$(call config_package,rt2500-pci) += RT2500PCI
1593 config-$(call config_package,rt2500-usb) += RT2500USB
1594 config-$(call config_package,rt61-pci) += RT61PCI
1595 config-$(call config_package,rt73-usb) += RT73USB
1596
1597 config-$(call config_package,rt2800-lib) += RT2800_LIB
1598
1599 config-$(call config_package,rt2800-soc) += RT2800SOC
1600 config-$(call config_package,rt2800-pci) += RT2800PCI
1601 config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
1602
1603 config-$(call config_package,rt2800-usb) += RT2800USB
1604 config-y += RT2800USB_RT33XX RT2800USB_RT35XX RT2800USB_RT3573 RT2800USB_RT53XX RT2800USB_RT55XX
1605
1606 config-$(call config_package,iwl-legacy) += IWLEGACY
1607 config-$(call config_package,iwl3945) += IWL3945
1608 config-$(call config_package,iwl4965) += IWL4965
1609 config-$(call config_package,iwlagn) += IWLWIFI IWLDVM
1610
1611 config-$(call config_package,net-libipw) += LIBIPW
1612 config-$(call config_package,net-ipw2100) += IPW2100
1613 config-$(call config_package,net-ipw2200) += IPW2200
1614
1615 config-$(call config_package,p54-common) += P54_COMMON
1616 config-$(call config_package,p54-pci) += P54_PCI
1617 config-$(call config_package,p54-usb) += P54_USB
1618 config-$(call config_package,p54-spi) += P54_SPI
1619
1620 config-$(call config_package,net-hermes) += HERMES
1621 config-$(call config_package,net-hermes-pci) += PCI_HERMES
1622 config-$(call config_package,net-hermes-plx) += PLX_HERMES
1623 config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
1624 config-y += HERMES_PRISM
1625
1626 config-$(call config_package,adm8211) += ADM8211
1627 config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
1628 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
1629 config-$(call config_package,mwl8k) += MWL8K
1630 config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
1631 config-$(call config_package,rtl8180) += RTL8180
1632 config-$(call config_package,rtl8187) += RTL8187
1633 config-$(call config_package,wlcore) += WLCORE WLCORE_SDIO
1634 config-$(call config_package,wl12xx) += WL12XX
1635 config-$(call config_package,wl18xx) += WL18XX
1636 config-y += WL_TI WILINK_PLATFORM_DATA
1637 config-$(call config_package,zd1211rw) += ZD1211RW
1638
1639 config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
1640 config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
1641 config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
1642 config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
1643 config-$(call config_package,rtl8192ce) += RTL8192CE
1644 config-$(call config_package,rtl8192se) += RTL8192SE
1645 config-$(call config_package,rtl8192de) += RTL8192DE
1646 config-$(call config_package,rtl8192cu) += RTL8192CU
1647 config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
1648
1649 config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
1650
1651 MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
1652 CROSS_COMPILE="$(KERNEL_CROSS)" \
1653 ARCH="$(LINUX_KARCH)" \
1654 EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
1655 KLIB_BUILD="$(LINUX_DIR)" \
1656 MODPROBE=true \
1657 KLIB=$(TARGET_MODULES_DIR) \
1658 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1659 KBUILD_LDFLAGS_MODULE_PREREQ=
1660
1661 ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
1662 MAKE_OPTS += V=1
1663 endif
1664
1665 define ConfigVars
1666 $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
1667 ))
1668 endef
1669
1670 define mac80211_config
1671 $(call ConfigVars,m)$(call ConfigVars,y)
1672 endef
1673 $(eval $(call shexport,mac80211_config))
1674
1675 define Build/Prepare
1676 rm -rf $(PKG_BUILD_DIR)
1677 mkdir -p $(PKG_BUILD_DIR)
1678 $(PKG_UNPACK)
1679 $(Build/Patch)
1680 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1681 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1682 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1683 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
1684 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
1685 rm -rf \
1686 $(PKG_BUILD_DIR)/include/linux/ssb \
1687 $(PKG_BUILD_DIR)/include/linux/bcma \
1688 $(PKG_BUILD_DIR)/include/net/bluetooth
1689
1690 rm -f \
1691 $(PKG_BUILD_DIR)/include/linux/cordic.h \
1692 $(PKG_BUILD_DIR)/include/linux/crc8.h \
1693 $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
1694 $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
1695 $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
1696 $(PKG_BUILD_DIR)/include/net/ieee80211.h
1697
1698 echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
1699 $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
1700 endef
1701
1702 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
1703 define Build/Compile/kmod
1704 rm -rf $(PKG_BUILD_DIR)/modules
1705 +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
1706 endef
1707 endif
1708
1709 define Build/Configure
1710 cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
1711 cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
1712 cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
1713 endef
1714
1715 define Build/Compile
1716 $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
1717 $(MAKE) $(MAKE_OPTS) allnoconfig
1718 $(call Build/Compile/kmod)
1719 endef
1720
1721 define Build/InstallDev
1722 mkdir -p \
1723 $(1)/usr/include/mac80211 \
1724 $(1)/usr/include/mac80211-backport \
1725 $(1)/usr/include/mac80211/ath \
1726 $(1)/usr/include/net/mac80211
1727 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1728 $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
1729 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1730 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1731 rm -f $(1)/usr/include/mac80211-backport/linux/module.h
1732 endef
1733
1734 define KernelPackage/libertas-usb/install
1735 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1736 $(INSTALL_DATA) \
1737 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
1738 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
1739 $(1)/lib/firmware/libertas/
1740 endef
1741
1742 define KernelPackage/libertas-sdio/install
1743 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1744 $(INSTALL_DATA) \
1745 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
1746 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
1747 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
1748 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
1749 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
1750 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
1751 $(1)/lib/firmware/libertas
1752 endef
1753
1754 define KernelPackage/cfg80211/install
1755 $(INSTALL_DIR) $(1)/lib/wifi $(1)/lib/netifd/wireless
1756 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1757 $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
1758 endef
1759
1760 define KernelPackage/p54-pci/install
1761 $(INSTALL_DIR) $(1)/lib/firmware
1762 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
1763 endef
1764
1765 define KernelPackage/p54-usb/install
1766 $(INSTALL_DIR) $(1)/lib/firmware
1767 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
1768 endef
1769
1770 define KernelPackage/p54-spi/install
1771 $(INSTALL_DIR) $(1)/lib/firmware
1772 $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
1773 endef
1774
1775 define KernelPackage/rt61-pci/install
1776 $(INSTALL_DIR) $(1)/lib/firmware
1777 $(INSTALL_DATA) \
1778 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
1779 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
1780 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
1781 $(1)/lib/firmware/
1782 endef
1783
1784 define KernelPackage/rt73-usb/install
1785 $(INSTALL_DIR) $(1)/lib/firmware
1786 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
1787 endef
1788
1789 define KernelPackage/rt2800-pci/install
1790 $(INSTALL_DIR) $(1)/lib/firmware
1791 $(INSTALL_DATA) \
1792 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
1793 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
1794 $(1)/lib/firmware
1795 endef
1796
1797 define KernelPackage/rt2800-usb/install
1798 $(INSTALL_DIR) $(1)/lib/firmware
1799 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
1800 endef
1801
1802 define KernelPackage/wl12xx/install
1803 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1804 $(INSTALL_DATA) \
1805 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
1806 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
1807 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
1808 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
1809 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-mr.bin \
1810 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-plt.bin \
1811 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-sr.bin \
1812 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-nvs.bin \
1813 $(1)/lib/firmware/ti-connectivity
1814 endef
1815
1816 define KernelPackage/wl18xx/install
1817 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1818 $(INSTALL_DATA) \
1819 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-conf.bin \
1820 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-fw-3.bin \
1821 $(1)/lib/firmware/ti-connectivity
1822 endef
1823
1824 define KernelPackage/zd1211rw/install
1825 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1826 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1827 endef
1828
1829 define KernelPackage/carl9170/install
1830 $(INSTALL_DIR) $(1)/lib/firmware
1831 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/carl9170-1.fw $(1)/lib/firmware
1832 endef
1833
1834 define KernelPackage/ath9k-htc/install
1835 $(INSTALL_DIR) $(1)/lib/firmware
1836 $(INSTALL_DATA) \
1837 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
1838 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
1839 $(1)/lib/firmware/
1840 endef
1841
1842 define KernelPackage/ath10k/install
1843 $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
1844 $(INSTALL_DATA) \
1845 $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
1846 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
1847 $(INSTALL_DATA) \
1848 $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/untested/firmware-5.bin_10.2.4.70-2 \
1849 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
1850 endef
1851
1852 define KernelPackage/mwl8k/install
1853 $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
1854 $(INSTALL_DATA) \
1855 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
1856 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
1857 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
1858 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
1859 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
1860 $(1)/lib/firmware/mwl8k/
1861 endef
1862
1863 define KernelPackage/mwifiex-pcie/install
1864 $(INSTALL_DIR) $(1)/lib/firmware/mrvl
1865 $(INSTALL_DATA) \
1866 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mrvl/pcie8897_uapsta.bin \
1867 $(1)/lib/firmware/mrvl/
1868 endef
1869
1870 define KernelPackage/net-ipw2100/install
1871 $(INSTALL_DIR) $(1)/lib/firmware
1872 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1873 endef
1874
1875 define KernelPackage/net-ipw2200/install
1876 $(INSTALL_DIR) $(1)/lib/firmware
1877 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1878 endef
1879
1880 define KernelPackage/iwlagn/install
1881 $(INSTALL_DIR) $(1)/lib/firmware
1882 ifneq ($(CONFIG_IWL5000_FW),)
1883 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
1884 endif
1885 ifneq ($(CONFIG_IWL5150_FW),)
1886 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
1887 endif
1888 ifneq ($(CONFIG_IWL1000_FW),)
1889 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
1890 endif
1891 ifneq ($(CONFIG_IWL6000_FW),)
1892 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
1893 endif
1894 ifneq ($(CONFIG_IWL6050_FW),)
1895 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
1896 endif
1897 ifneq ($(CONFIG_IWL6005_FW),)
1898 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
1899 endif
1900 ifneq ($(CONFIG_IWL6030_FW),)
1901 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
1902 endif
1903 ifneq ($(CONFIG_IWL7260_FW),)
1904 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7260-9.ucode $(1)/lib/firmware
1905 endif
1906 ifneq ($(CONFIG_IWL7265_FW),)
1907 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7265-9.ucode $(1)/lib/firmware
1908 endif
1909 ifneq ($(CONFIG_IWL100_FW),)
1910 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
1911 endif
1912 ifneq ($(CONFIG_IWL2000_FW),)
1913 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
1914 endif
1915 ifneq ($(CONFIG_IWL2030_FW),)
1916 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
1917 endif
1918 ifneq ($(CONFIG_IWL105_FW),)
1919 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
1920 endif
1921 ifneq ($(CONFIG_IWL135_FW),)
1922 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
1923 endif
1924 ifneq ($(CONFIG_IWL3160_FW),)
1925 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3160-9.ucode $(1)/lib/firmware
1926 endif
1927 endef
1928
1929 define KernelPackage/iwl3945/install
1930 $(INSTALL_DIR) $(1)/lib/firmware
1931 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
1932 endef
1933
1934 define KernelPackage/iwl4965/install
1935 $(INSTALL_DIR) $(1)/lib/firmware
1936 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
1937 endef
1938
1939 define KernelPackage/b43/install
1940 rm -rf $(1)/lib/firmware/
1941 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1942 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1943 else
1944 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
1945 endif
1946 $(INSTALL_DIR) $(1)/lib/firmware/
1947 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
1948 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
1949 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
1950 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
1951 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
1952 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
1953 else
1954 b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
1955 endif
1956 ifneq ($(CONFIG_B43_FW_SQUASH),)
1957 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
1958 endif
1959 endef
1960
1961 define KernelPackage/b43legacy/install
1962 $(INSTALL_DIR) $(1)/lib/firmware/
1963 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
1964 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
1965 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
1966 endif
1967 endef
1968
1969 define KernelPackage/brcmsmac/install
1970 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1971 ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
1972 tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
1973 b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
1974 else
1975 $(INSTALL_DATA) \
1976 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
1977 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
1978 $(1)/lib/firmware/brcm/
1979 endif
1980 endef
1981
1982 define KernelPackage/brcmfmac/install
1983 $(INSTALL_DIR) $(1)/lib/firmware/brcm
1984 ifneq ($(CONFIG_BRCMFMAC_USB),)
1985 $(INSTALL_DATA) \
1986 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
1987 $(1)/lib/firmware/brcm/
1988 $(INSTALL_DATA) \
1989 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43143.bin \
1990 $(1)/lib/firmware/brcm/
1991 endif
1992 ifneq ($(CONFIG_BRCMFMAC_PCIE),)
1993 $(INSTALL_DATA) \
1994 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43602-pcie.ap.bin \
1995 $(1)/lib/firmware/brcm/brcmfmac43602-pcie.bin
1996 endif
1997 endef
1998
1999 $(eval $(call KernelPackage,adm8211))
2000 $(eval $(call KernelPackage,ath5k))
2001 $(eval $(call KernelPackage,lib80211))
2002 $(eval $(call KernelPackage,libertas-usb))
2003 $(eval $(call KernelPackage,libertas-sdio))
2004 $(eval $(call KernelPackage,cfg80211))
2005 $(eval $(call KernelPackage,mac80211))
2006 $(eval $(call KernelPackage,p54-common))
2007 $(eval $(call KernelPackage,p54-pci))
2008 $(eval $(call KernelPackage,p54-usb))
2009 $(eval $(call KernelPackage,p54-spi))
2010 $(eval $(call KernelPackage,rt2x00-lib))
2011 $(eval $(call KernelPackage,rt2x00-mmio))
2012 $(eval $(call KernelPackage,rt2x00-pci))
2013 $(eval $(call KernelPackage,rt2x00-usb))
2014 $(eval $(call KernelPackage,rt2800-lib))
2015 $(eval $(call KernelPackage,rt2400-pci))
2016 $(eval $(call KernelPackage,rt2500-pci))
2017 $(eval $(call KernelPackage,rt2500-usb))
2018 $(eval $(call KernelPackage,rt61-pci))
2019 $(eval $(call KernelPackage,rt73-usb))
2020 $(eval $(call KernelPackage,rt2800-mmio))
2021 $(eval $(call KernelPackage,rt2800-soc))
2022 $(eval $(call KernelPackage,rt2800-pci))
2023 $(eval $(call KernelPackage,rt2800-usb))
2024 $(eval $(call KernelPackage,rtl8180))
2025 $(eval $(call KernelPackage,rtl8187))
2026 $(eval $(call KernelPackage,rtlwifi))
2027 $(eval $(call KernelPackage,rtlwifi-pci))
2028 $(eval $(call KernelPackage,rtlwifi-usb))
2029 $(eval $(call KernelPackage,rtl8192c-common))
2030 $(eval $(call KernelPackage,rtl8192ce))
2031 $(eval $(call KernelPackage,rtl8192se))
2032 $(eval $(call KernelPackage,rtl8192de))
2033 $(eval $(call KernelPackage,rtl8192cu))
2034 $(eval $(call KernelPackage,zd1211rw))
2035 $(eval $(call KernelPackage,mac80211-hwsim))
2036 $(eval $(call KernelPackage,ath9k-common))
2037 $(eval $(call KernelPackage,ath9k))
2038 $(eval $(call KernelPackage,ath9k-htc))
2039 $(eval $(call KernelPackage,ath10k))
2040 $(eval $(call KernelPackage,ath))
2041 $(eval $(call KernelPackage,carl9170))
2042 $(eval $(call KernelPackage,b43))
2043 $(eval $(call KernelPackage,b43legacy))
2044 $(eval $(call KernelPackage,brcmutil))
2045 $(eval $(call KernelPackage,brcmsmac))
2046 $(eval $(call KernelPackage,brcmfmac))
2047 $(eval $(call KernelPackage,net-libipw))
2048 $(eval $(call KernelPackage,net-ipw2100))
2049 $(eval $(call KernelPackage,net-ipw2200))
2050 $(eval $(call KernelPackage,iwlagn))
2051 $(eval $(call KernelPackage,iwl-legacy))
2052 $(eval $(call KernelPackage,iwl4965))
2053 $(eval $(call KernelPackage,iwl3945))
2054 $(eval $(call KernelPackage,mwl8k))
2055 $(eval $(call KernelPackage,mwifiex-pcie))
2056 $(eval $(call KernelPackage,net-hermes))
2057 $(eval $(call KernelPackage,net-hermes-pci))
2058 $(eval $(call KernelPackage,net-hermes-plx))
2059 $(eval $(call KernelPackage,net-hermes-pcmcia))
2060 $(eval $(call KernelPackage,wlcore))
2061 $(eval $(call KernelPackage,wl12xx))
2062 $(eval $(call KernelPackage,wl18xx))