mac80211: refresh Intel firmware
[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-07-21
14 PKG_RELEASE:=1
15 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
16 PKG_BACKPORT_VERSION:=
17 PKG_MD5SUM:=ec529acfb9c942daf8116e5cff47c999
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 mt7601u
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-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:=6ebf5d57d9f6d0cf05558baef1af2b90a3fe98ed
112 PKG_LINUX_FIRMWARE_SOURCE:=$(PKG_LINUX_FIRMWARE_NAME)-2015-09-03-$(PKG_LINUX_FIRMWARE_VERSION).tar.xz
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 Only ath9k & ath10k make 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/ath10k/config
624 if PACKAGE_kmod-ath10k
625
626 config ATH10K_API2_FW
627 bool "Firmware optimized for AP operation (v10.1 / API v2)"
628 default n
629 help
630 Use the ath10k firmware from the 10.1 SDK using API v2 optimized
631 for access point operation if the default firmware keeps crashing.
632
633 endif
634 endef
635
636 define KernelPackage/carl9170
637 $(call KernelPackage/mac80211/Default)
638 TITLE:=Driver for Atheros AR9170 USB sticks
639 DEPENDS:=@USB_SUPPORT +kmod-mac80211 +kmod-ath +kmod-usb-core +kmod-input-core +@DRIVER_11N_SUPPORT
640 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ath/carl9170/carl9170.ko
641 AUTOLOAD:=$(call AutoProbe,carl9170)
642 endef
643
644 define KernelPackage/lib80211
645 $(call KernelPackage/mac80211/Default)
646 TITLE:=802.11 Networking stack
647 DEPENDS:=+kmod-cfg80211
648 FILES:= \
649 $(PKG_BUILD_DIR)/net/wireless/lib80211.ko \
650 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_wep.ko \
651 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_ccmp.ko \
652 $(PKG_BUILD_DIR)/net/wireless/lib80211_crypt_tkip.ko
653 AUTOLOAD:=$(call AutoProbe, \
654 lib80211 \
655 lib80211_crypt_wep \
656 lib80211_crypt_ccmp \
657 lib80211_crypt_tkip \
658 )
659 endef
660
661 define KernelPackage/lib80211/description
662 Kernel modules for 802.11 Networking stack
663 Includes:
664 - lib80211
665 - lib80211_crypt_wep
666 - lib80211_crypt_tkip
667 - lib80211_crytp_ccmp
668 endef
669
670 define KernelPackage/libertas-usb
671 $(call KernelPackage/mac80211/Default)
672 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +kmod-usb-core +kmod-lib80211 +@DRIVER_WEXT_SUPPORT
673 TITLE:=Marvell 88W8015 Wireless Driver
674 FILES:= \
675 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
676 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/usb8xxx.ko
677 AUTOLOAD:=$(call AutoProbe,libertas usb8xxx)
678 endef
679
680 define KernelPackage/libertas-sdio
681 $(call KernelPackage/mac80211/Default)
682 DEPENDS+= +kmod-cfg80211 +kmod-lib80211 +kmod-mmc +@DRIVER_WEXT_SUPPORT @!TARGET_uml
683 TITLE:=Marvell 88W8686 Wireless Driver
684 FILES:= \
685 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas.ko \
686 $(PKG_BUILD_DIR)/drivers/net/wireless/libertas/libertas_sdio.ko
687 AUTOLOAD:=$(call AutoProbe,libertas libertas_sdio)
688 endef
689
690 define KernelPackage/mac80211-hwsim
691 $(call KernelPackage/mac80211/Default)
692 TITLE:=mac80211 HW simulation device
693 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT
694 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mac80211_hwsim.ko
695 AUTOLOAD:=$(call AutoProbe,mac80211_hwsim)
696 endef
697
698 PKG_MT7601U_FW_NAME:=DPO_MT7601U_LinuxSTA
699 PKG_MT7601U_FW_VERSION:=3.0.0.4_20130913
700 PKG_MT7601U_FW_MD5SUM:=5f440dccc8bc952745a191994fc34699
701 PKG_MT7601U_FW_SOURCE:=$(PKG_MT7601U_FW_NAME)_$(PKG_MT7601U_FW_VERSION).tar.bz2
702 PKG_MT7601U_FW_SOURCE_URL:=http://www.mediatek.com/AmazonS3/Downloads/linux/
703 define Download/mt7601u-firmware
704 FILE:=$(PKG_MT7601U_FW_SOURCE)
705 URL:=$(PKG_MT7601U_FW_SOURCE_URL)
706 MD5SUM:=$(PKG_MT7601U_FW_MD5SUM)
707 SUBDIR:=$(PKG_MT7601U_FW_NAME)_$(PKG_MT7601U_FW_VERSION)
708 endef
709 $(eval $(call Download,mt7601u-firmware))
710
711 define KernelPackage/mt7601u
712 $(call KernelPackage/mac80211/Default)
713 TITLE:=MT7601U-based USB dongles Wireless Driver
714 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT @USB_SUPPORT +kmod-usb-core
715 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mediatek/mt7601u/mt7601u.ko
716 AUTOLOAD:=$(call AutoProbe,mt7601)
717 endef
718
719 define KernelPackage/net-libipw
720 $(call KernelPackage/mac80211/Default)
721 TITLE:=libipw for ipw2100 and ipw2200
722 DEPENDS:=@PCI_SUPPORT +kmod-crypto-michael-mic +kmod-lib80211 +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT @!BIG_ENDIAN
723 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/libipw.ko
724 AUTOLOAD:=$(call AutoProbe,libipw)
725 endef
726
727 define KernelPackage/net-libipw/description
728 Hardware independent IEEE 802.11 networking stack for ipw2100 and ipw2200.
729 endef
730
731 IPW2100_NAME:=ipw2100-fw
732 IPW2100_VERSION:=1.3
733
734 define Download/net-ipw2100
735 URL:=http://bughost.org/firmware/
736 FILE:=$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
737 MD5SUM=46aa75bcda1a00efa841f9707bbbd113
738 endef
739 $(eval $(call Download,net-ipw2100))
740
741 define KernelPackage/net-ipw2100
742 $(call KernelPackage/mac80211/Default)
743 TITLE:=Intel IPW2100 driver
744 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
745 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2100.ko
746 AUTOLOAD:=$(call AutoProbe,ipw2100)
747 endef
748
749 define KernelPackage/net-ipw2100/description
750 Kernel support for Intel IPW2100
751 Includes:
752 - ipw2100
753 endef
754
755 IPW2200_NAME:=ipw2200-fw
756 IPW2200_VERSION:=3.1
757
758 define Download/net-ipw2200
759 URL:=http://bughost.org/firmware/
760 FILE:=$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
761 MD5SUM=eaba788643c7cc7483dd67ace70f6e99
762 endef
763 $(eval $(call Download,net-ipw2200))
764
765 define KernelPackage/net-ipw2200
766 $(call KernelPackage/mac80211/Default)
767 TITLE:=Intel IPW2200 driver
768 DEPENDS:=@PCI_SUPPORT +kmod-net-libipw
769 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ipw2x00/ipw2200.ko
770 AUTOLOAD:=$(call AutoProbe,ipw2200)
771 endef
772
773 define KernelPackage/net-ipw2200/description
774 Kernel support for Intel IPW2200
775 Includes:
776 - ipw2200
777 endef
778
779
780 define KernelPackage/net-hermes
781 $(call KernelPackage/mac80211/Default)
782 TITLE:=Hermes 802.11b chipset support
783 DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-cfg80211 +@DRIVER_WEXT_SUPPORT
784 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco.ko
785 AUTOLOAD:=$(call AutoProbe,orinoco)
786 endef
787
788 define KernelPackage/net-hermes/description
789 Kernel support for Hermes 802.11b chipsets
790 endef
791
792 define KernelPackage/net-hermes-pci
793 $(call KernelPackage/mac80211/Default)
794 TITLE:=Intersil Prism 2.5 PCI support
795 DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
796 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_pci.ko
797 AUTOLOAD:=$(call AutoProbe,orinoco_pci)
798 endef
799
800 define KernelPackage/net-hermes-pci/description
801 Kernel modules for Intersil Prism 2.5 PCI support
802 endef
803
804 define KernelPackage/net-hermes-plx
805 $(call KernelPackage/mac80211/Default)
806 TITLE:=PLX9052 based PCI adaptor
807 DEPENDS:=@PCI_SUPPORT +kmod-net-hermes
808 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_plx.ko
809 AUTOLOAD:=$(call AutoProbe,orinoco_plx)
810 endef
811
812 define KernelPackage/net-hermes-plx/description
813 Kernel modules for Hermes in PLX9052 based PCI adaptors
814 endef
815
816 define KernelPackage/net-hermes-pcmcia
817 $(call KernelPackage/mac80211/Default)
818 TITLE:=Hermes based PCMCIA adaptors
819 DEPENDS:=@PCMCIA_SUPPORT +kmod-net-hermes @BROKEN
820 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/orinoco/orinoco_cs.ko
821 AUTOLOAD:=$(call AutoProbe,orinoco_cs)
822 endef
823
824 define KernelPackage/net-hermes-pcmcia/description
825 Kernel modules for Hermes based PCMCIA adaptors
826 endef
827
828 define KernelPackage/iwlagn
829 $(call KernelPackage/mac80211/Default)
830 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT +@DRIVER_11N_SUPPORT
831 TITLE:=Intel AGN Wireless support
832 FILES:= \
833 $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/iwlwifi.ko \
834 $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/dvm/iwldvm.ko \
835 $(PKG_BUILD_DIR)/drivers/net/wireless/iwlwifi/mvm/iwlmvm.ko
836 AUTOLOAD:=$(call AutoProbe,iwlwifi iwldvm iwlmvm)
837 MENU:=1
838 endef
839
840 define KernelPackage/iwlagn/description
841 iwlagn kernel module for
842 Intel Wireless WiFi Link 6250AGN Adapter
843 Intel 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN)
844 Intel WiFi Link 1000BGN
845 Intel Wireless WiFi 5150AGN
846 Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
847 Intel 6005 Series Wi-Fi Adapters
848 Intel 6030 Series Wi-Fi Adapters
849 Intel Wireless WiFi Link 6150BGN 2 Adapter
850 Intel 100 Series Wi-Fi Adapters (100BGN and 130BGN)
851 Intel 2000 Series Wi-Fi Adapters
852 Intel 7260 Wi-Fi Adapter
853 Intel 3160 Wi-Fi Adapter
854 Intel 7265 Wi-Fi Adapter
855 Intel 8260 Wi-Fi Adapter
856 Intel 3165 Wi-Fi Adapter
857 endef
858
859 define KernelPackage/iwlagn/config
860 if PACKAGE_kmod-iwlagn
861
862 config IWL100_FW
863 bool "Intel 100 Firmware"
864 default y
865 help
866 Download and install firmware for:
867 Intel Centrino Wireless-N 100
868
869 config IWL1000_FW
870 bool "Intel 1000 Firmware"
871 default y
872 help
873 Download and install firmware for:
874 Intel Centrino Wireless-N 1000
875
876 config IWL105_FW
877 bool "Intel 105 Firmware"
878 default y
879 help
880 Download and install firmware for:
881 Intel Centrino Wireless-N 105
882
883 config IWL135_FW
884 bool "Intel 135 Firmware"
885 default y
886 help
887 Download and install firmware for:
888 Intel Centrino Wireless-N 135
889
890 config IWL2000_FW
891 bool "Intel 2000 Firmware"
892 default y
893 help
894 Download and install firmware for:
895 Intel Centrino Wireless-N 2200
896
897 config IWL2030_FW
898 bool "Intel 2030 Firmware"
899 default y
900 help
901 Download and install firmware for:
902 Intel Centrino Wireless-N 2230
903
904 config IWL3160_FW
905 bool "Intel 3160 Firmware"
906 default y
907 help
908 Download and install firmware for:
909 Intel Wireless WiFi 3160
910
911 config IWL5000_FW
912 bool "Intel 5000 Firmware"
913 default y
914 help
915 Download and install firmware for:
916 Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
917
918 config IWL5150_FW
919 bool "Intel 5150 Firmware"
920 default y
921 help
922 Download and install firmware for:
923 Intel Wireless WiFi 5150AGN
924
925 config IWL6000_FW
926 bool "Intel 6000 Firmware"
927 default y
928 help
929 Download and install firmware for:
930 Intel Centrino Ultimate-N 6300 and Advanced-N 6200
931
932 config IWL6005_FW
933 bool "Intel 6005 Firmware"
934 default y
935 help
936 Download and install firmware for:
937 Intel Centrino Advanced-N 6205
938
939 config IWL6030_FW
940 bool "Intel 6030 Firmware"
941 default y
942 help
943 Download and install firmware for:
944 Intel Centrino Advanced-N 6230, Wireless-N 1030, Wireless-N 130 and Advanced-N 6235
945
946 config IWL6050_FW
947 bool "Intel 6050 Firmware"
948 default y
949 help
950 Download and install firmware for:
951 Intel Centrino Advanced-N + WiMAX 6250 and Wireless-N + WiMAX 6150
952
953 config IWL7260_FW
954 bool "Intel 7260 Firmware"
955 default y
956 help
957 Download and install firmware for:
958 Intel Dual Band Wireless-N 7260 and Intel Dual Band Wireless-AC 7260
959
960 config IWL7265_FW
961 bool "Intel 7265 Firmware"
962 default y
963 help
964 Download and install firmware for:
965 Intel Wireless 7265, 7265D, 3165
966
967 config IWL8000_FW
968 bool "Intel 8000 Series Firmware"
969 default y
970 help
971 Download and install firmware for:
972 Intel Wireless Series 8260, 4165
973
974 endif
975 endef
976
977 define KernelPackage/iwl-legacy
978 $(call KernelPackage/mac80211/Default)
979 DEPENDS:= +kmod-mac80211 @PCI_SUPPORT
980 TITLE:=Intel legacy Wireless support
981 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwlegacy.ko
982 AUTOLOAD:=$(call AutoProbe,iwlegacy)
983 endef
984
985 define KernelPackage/iwl-legacy/description
986 iwl-legacy kernel module for legacy Intel wireless support
987 endef
988
989 define KernelPackage/iwl3945
990 $(call KernelPackage/mac80211/Default)
991 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy
992 TITLE:=Intel iwl3945 Wireless support
993 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl3945.ko
994 AUTOLOAD:=$(call AutoProbe,iwl3945)
995 endef
996
997 define KernelPackage/iwl3945/description
998 iwl3945 kernel module for Intel 3945 support
999 endef
1000
1001 define KernelPackage/iwl4965
1002 $(call KernelPackage/mac80211/Default)
1003 DEPENDS:= +kmod-mac80211 +kmod-iwl-legacy +@DRIVER_11N_SUPPORT
1004 TITLE:=Intel iwl4965 Wireless support
1005 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/iwlegacy/iwl4965.ko
1006 AUTOLOAD:=$(call AutoProbe,iwl4965)
1007 endef
1008
1009 define KernelPackage/iwl4965/description
1010 iwl4965 kernel module for Intel 4965 support
1011 endef
1012
1013
1014 define KernelPackage/mwl8k
1015 $(call KernelPackage/mac80211/Default)
1016 TITLE:=Driver for Marvell TOPDOG 802.11 Wireless cards
1017 URL:=http://wireless.kernel.org/en/users/Drivers/mwl8k
1018 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
1019 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/mwl8k.ko
1020 AUTOLOAD:=$(call AutoProbe,mwl8k)
1021 endef
1022
1023 define KernelPackage/mwl8k/description
1024 Kernel modules for Marvell TOPDOG 802.11 Wireless cards
1025 endef
1026
1027
1028 define KernelPackage/mwifiex-pcie
1029 $(call KernelPackage/mac80211/Default)
1030 TITLE:=Driver for Marvell 802.11n/802.11ac PCIe Wireless cards
1031 URL:=http://wireless.kernel.org/en/users/Drivers/mwifiex
1032 DEPENDS+= @PCI_SUPPORT +kmod-mac80211 +@DRIVER_11N_SUPPORT
1033 FILES:= \
1034 $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex.ko \
1035 $(PKG_BUILD_DIR)/drivers/net/wireless/mwifiex/mwifiex_pcie.ko
1036 AUTOLOAD:=$(call AutoProbe,mwifiex_pcie)
1037 endef
1038
1039 define KernelPackage/mwifiex-pcie/description
1040 Kernel modules for Marvell 802.11n/802.11ac PCIe Wireless cards
1041 endef
1042
1043
1044 define KernelPackage/wlcore
1045 $(call KernelPackage/mac80211/Default)
1046 TITLE:=TI common driver part
1047 DEPENDS+= @TARGET_omap +kmod-mac80211 +@DRIVER_11N_SUPPORT
1048 FILES:= \
1049 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore.ko \
1050 $(PKG_BUILD_DIR)/drivers/net/wireless/ti/wlcore/wlcore_sdio.ko
1051 AUTOLOAD:=$(call AutoProbe,wlcore wlcore_sdio)
1052 endef
1053
1054 define KernelPackage/wlcore/description
1055 This module contains some common parts needed by TI Wireless drivers.
1056 endef
1057
1058 define KernelPackage/wl12xx
1059 $(call KernelPackage/mac80211/Default)
1060 TITLE:=Driver for TI WL12xx
1061 URL:=http://wireless.kernel.org/en/users/Drivers/wl12xx
1062 DEPENDS+= +kmod-wlcore
1063 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl12xx/wl12xx.ko
1064 AUTOLOAD:=$(call AutoProbe,wl12xx)
1065 endef
1066
1067 define KernelPackage/wl12xx/description
1068 Kernel modules for TI WL12xx
1069 endef
1070
1071 define KernelPackage/wl18xx
1072 $(call KernelPackage/mac80211/Default)
1073 TITLE:=Driver for TI WL18xx
1074 URL:=http://wireless.kernel.org/en/users/Drivers/wl18xx
1075 DEPENDS+= +kmod-wlcore
1076 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/ti/wl18xx/wl18xx.ko
1077 AUTOLOAD:=$(call AutoProbe,wl18xx)
1078 endef
1079
1080 define KernelPackage/wl18xx/description
1081 Kernel modules for TI WL18xx
1082 endef
1083
1084
1085 #Broadcom firmware
1086 ifneq ($(CONFIG_B43_FW_6_30),)
1087 PKG_B43_FWV4_NAME:=broadcom-wl
1088 PKG_B43_FWV4_VERSION:=6.30.163.46
1089 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).wl_apsta.o
1090 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1091 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1092 PKG_B43_FWV4_MD5SUM:=6fe97e9368d25342a1ab943d3cf3496d
1093 else
1094 ifneq ($(CONFIG_B43_FW_5_10),)
1095 PKG_B43_FWV4_NAME:=broadcom-wl
1096 PKG_B43_FWV4_VERSION:=5.10.56.27.3
1097 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta/wl_prebuilt.o
1098 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)_mipsel.tar.bz2
1099 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1100 PKG_B43_FWV4_MD5SUM:=3363e3a6b3d9d73c49dea870c7834eac
1101 else
1102 ifneq ($(CONFIG_B43_FW_4_178),)
1103 PKG_B43_FWV4_NAME:=broadcom-wl
1104 PKG_B43_FWV4_VERSION:=4.178.10.4
1105 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
1106 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1107 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1108 PKG_B43_FWV4_MD5SUM:=14477e8cbbb91b11896affac9b219fdb
1109 else
1110 ifneq ($(CONFIG_B43_FW_5_100_138),)
1111 PKG_B43_FWV4_NAME:=broadcom-wl
1112 PKG_B43_FWV4_VERSION:=5.100.138
1113 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/linux/wl_apsta.o
1114 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1115 PKG_B43_FWV4_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1116 PKG_B43_FWV4_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
1117 else
1118 PKG_B43_FWV4_NAME:=broadcom-wl
1119 PKG_B43_FWV4_VERSION:=4.150.10.5
1120 PKG_B43_FWV4_OBJECT:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION)/driver/wl_apsta_mimo.o
1121 PKG_B43_FWV4_SOURCE:=$(PKG_B43_FWV4_NAME)-$(PKG_B43_FWV4_VERSION).tar.bz2
1122 PKG_B43_FWV4_SOURCE_URL:=http://mirror2.openwrt.org/sources/
1123 PKG_B43_FWV4_MD5SUM:=0c6ba9687114c6b598e8019e262d9a60
1124 endif
1125 endif
1126 endif
1127 endif
1128 ifneq ($(CONFIG_B43_OPENFIRMWARE),)
1129 PKG_B43_FWV4_NAME:=broadcom-wl
1130 PKG_B43_FWV4_VERSION:=5.2
1131 PKG_B43_FWV4_OBJECT:=openfwwf-$(PKG_B43_FWV4_VERSION)
1132 PKG_B43_FWV4_SOURCE:=openfwwf-$(PKG_B43_FWV4_VERSION).tar.gz
1133 PKG_B43_FWV4_SOURCE_URL:=http://www.ing.unibs.it/openfwwf/firmware/
1134 PKG_B43_FWV4_MD5SUM:=e045a135453274e439ae183f8498b0fa
1135 endif
1136
1137
1138 PKG_B43_FWV3_NAME:=wl_apsta
1139 PKG_B43_FWV3_VERSION:=3.130.20.0
1140 PKG_B43_FWV3_SOURCE:=$(PKG_B43_FWV3_NAME)-$(PKG_B43_FWV3_VERSION).o
1141 PKG_B43_FWV3_SOURCE_URL:=http://downloads.openwrt.org/sources/
1142 PKG_B43_FWV3_MD5SUM:=e08665c5c5b66beb9c3b2dd54aa80cb3
1143
1144 define Download/b43
1145 FILE:=$(PKG_B43_FWV4_SOURCE)
1146 URL:=$(PKG_B43_FWV4_SOURCE_URL)
1147 MD5SUM:=$(PKG_B43_FWV4_MD5SUM)
1148 endef
1149 $(eval $(call Download,b43))
1150
1151 define Download/b43legacy
1152 FILE:=$(PKG_B43_FWV3_SOURCE)
1153 URL:=$(PKG_B43_FWV3_SOURCE_URL)
1154 MD5SUM:=$(PKG_B43_FWV3_MD5SUM)
1155 endef
1156 $(eval $(call Download,b43legacy))
1157
1158
1159 define KernelPackage/b43
1160 $(call KernelPackage/mac80211/Default)
1161 TITLE:=Broadcom 43xx wireless support
1162 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
1163 KCONFIG:= \
1164 CONFIG_HW_RANDOM=y
1165 # Depend on PCI_SUPPORT to make sure we can select kmod-bcma or kmod-ssb
1166 DEPENDS += \
1167 @PCI_SUPPORT +kmod-mac80211 \
1168 $(if $(CONFIG_PACKAGE_B43_USE_SSB),+kmod-ssb) \
1169 $(if $(CONFIG_PACKAGE_B43_USE_BCMA),+kmod-bcma)
1170 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43/b43.ko
1171 AUTOLOAD:=$(call AutoProbe,b43)
1172 MENU:=1
1173 endef
1174
1175 define KernelPackage/b43/config
1176
1177 config PACKAGE_B43_USE_SSB
1178 select PACKAGE_kmod-ssb
1179 tristate
1180 depends on !TARGET_brcm47xx && !TARGET_brcm63xx
1181 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
1182 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_SSB
1183
1184 config PACKAGE_B43_USE_BCMA
1185 select PACKAGE_kmod-bcma
1186 tristate
1187 depends on !TARGET_brcm47xx && !TARGET_bcm53xx
1188 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA_AND_SSB
1189 default PACKAGE_kmod-b43 if PACKAGE_B43_BUSES_BCMA
1190
1191 if PACKAGE_kmod-b43
1192
1193 choice
1194 prompt "b43 firmware version"
1195 default B43_FW_5_100_138
1196 help
1197 This option allows you to select the version of the b43 firmware.
1198
1199 config B43_FW_4_150
1200 bool "Firmware 410.2160 from driver 4.150.10.5 (old stable)"
1201 help
1202 Old stable firmware for BCM43xx devices.
1203
1204 If unsure, select this.
1205
1206 config B43_FW_4_178
1207 bool "Firmware 478.104 from driver 4.178.10.4"
1208 help
1209 Older firmware for BCM43xx devices.
1210
1211 If unsure, select the "stable" firmware.
1212
1213 config B43_FW_5_10
1214 bool "Firmware 508.1084 from driver 5.10.56.27"
1215 help
1216 Older firmware for BCM43xx devices.
1217
1218 If unsure, select the "stable" firmware.
1219
1220 config B43_FW_5_100_138
1221 bool "Firmware 666.2 from driver 5.100.138 (stable)"
1222 help
1223 The currently default firmware for BCM43xx devices.
1224
1225 This firmware currently gets most of the testing and is needed for some N-PHY devices.
1226
1227 If unsure, select the this firmware.
1228
1229 config B43_FW_6_30
1230 bool "Firmware 784.2 from driver 6.30.163.46 (experimental)"
1231 help
1232 Newer experimental firmware for BCM43xx devices.
1233
1234 This firmware is mostly untested.
1235
1236 If unsure, select the "stable" firmware.
1237
1238 config B43_OPENFIRMWARE
1239 bool "Open FirmWare for WiFi networks"
1240 help
1241 Opensource firmware for BCM43xx devices.
1242
1243 Do _not_ select this, unless you know what you are doing.
1244 The Opensource firmware is not suitable for embedded devices, yet.
1245 It does not support QoS, which is bad for AccessPoints.
1246 It does not support hardware crypto acceleration, which is a showstopper
1247 for embedded devices with low CPU resources.
1248
1249 If unsure, select the "stable" firmware.
1250
1251 endchoice
1252
1253 config B43_FW_SQUASH
1254 bool "Remove unnecessary firmware files"
1255 depends on !B43_OPENFIRMWARE
1256 default y
1257 help
1258 This options allows you to remove unnecessary b43 firmware files
1259 from the final rootfs image. This can reduce the rootfs size by
1260 up to 200k.
1261
1262 If unsure, say Y.
1263
1264 config B43_FW_SQUASH_COREREVS
1265 string "Core revisions to include"
1266 depends on B43_FW_SQUASH
1267 default "5,6,7,8,9,10,11,13,15" if TARGET_brcm47xx_legacy
1268 default "16,28,29,30" if TARGET_brcm47xx_mips74k
1269 default "5,6,7,8,9,10,11,13,15,16,28,29,30"
1270 help
1271 This is a comma seperated list of core revision numbers.
1272
1273 Example (keep files for rev5 only):
1274 5
1275
1276 Example (keep files for rev5 and rev11):
1277 5,11
1278
1279 config B43_FW_SQUASH_PHYTYPES
1280 string "PHY types to include"
1281 depends on B43_FW_SQUASH
1282 default "G,N,LP" if TARGET_brcm47xx_legacy
1283 default "N,HT" if TARGET_brcm47xx_mips74k
1284 default "G,N,LP,HT"
1285 help
1286 This is a comma seperated list of PHY types:
1287 A => A-PHY
1288 AG => Dual A-PHY G-PHY
1289 G => G-PHY
1290 LP => LP-PHY
1291 N => N-PHY
1292 HT => HT-PHY
1293 LCN => LCN-PHY
1294 LCN40 => LCN40-PHY
1295 AC => AC-PHY
1296
1297 Example (keep files for G-PHY only):
1298 G
1299
1300 Example (keep files for G-PHY and N-PHY):
1301 G,N
1302
1303 choice
1304 prompt "Supported buses"
1305 default PACKAGE_B43_BUSES_BCMA_AND_SSB
1306 help
1307 This allows choosing buses that b43 should support.
1308
1309 config PACKAGE_B43_BUSES_BCMA_AND_SSB
1310 depends on !TARGET_brcm47xx_legacy && !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
1311 bool "BCMA and SSB"
1312
1313 config PACKAGE_B43_BUSES_BCMA
1314 depends on !TARGET_brcm47xx_legacy
1315 bool "BCMA only"
1316
1317 config PACKAGE_B43_BUSES_SSB
1318 depends on !TARGET_brcm47xx_mips74k && !TARGET_bcm53xx
1319 bool "SSB only"
1320
1321 endchoice
1322
1323 config PACKAGE_B43_DEBUG
1324 bool "Enable debug output and debugfs for b43"
1325 default n
1326 help
1327 Enable additional debug output and runtime sanity checks for b43
1328 and enables the debugfs interface.
1329
1330 If unsure, say N.
1331
1332 config PACKAGE_B43_PIO
1333 bool "Enable support for PIO transfer mode"
1334 default n
1335 help
1336 Enable support for using PIO instead of DMA. Unless you have DMA
1337 transfer problems you don't need this.
1338
1339 If unsure, say N.
1340
1341 config PACKAGE_B43_PHY_G
1342 bool "Enable support for G-PHYs"
1343 default n if TARGET_brcm47xx_mips74k
1344 default y
1345 help
1346 Enable support for G-PHY. This includes support for the following devices:
1347 PCI: BCM4306, BCM4311, BCM4318
1348 SoC: BCM5352E, BCM4712
1349
1350 If unsure, say Y.
1351
1352 config PACKAGE_B43_PHY_N
1353 bool "Enable support for N-PHYs"
1354 default y
1355 help
1356 Enable support for N-PHY. This includes support for the following devices:
1357 PCI: BCM4321, BCM4322, BCM43222, BCM43224, BCM43225
1358 SoC: BCM4716, BCM4717, BCM4718
1359
1360 Currently only 11g speed is available.
1361
1362 If unsure, say Y.
1363
1364 config PACKAGE_B43_PHY_LP
1365 bool "Enable support for LP-PHYs"
1366 default n if TARGET_brcm47xx_mips74k
1367 default y
1368 help
1369 Enable support for LP-PHY. This includes support for the following devices:
1370 PCI: BCM4312
1371 SoC: BCM5354
1372
1373 If unsure, say Y.
1374
1375 config PACKAGE_B43_PHY_HT
1376 bool "Enable support for HT-PHYs"
1377 default n if TARGET_brcm47xx_legacy
1378 default y
1379 help
1380 Enable support for HT-PHY. This includes support for the following devices:
1381 PCI: BCM4331
1382
1383 Currently only 11g speed is available.
1384
1385 If unsure, say Y.
1386
1387 config PACKAGE_B43_PHY_LCN
1388 bool "Enable support for LCN-PHYs"
1389 depends on BROKEN
1390 default n
1391 help
1392 Currently broken.
1393
1394 If unsure, say N.
1395
1396 endif
1397 endef
1398
1399 define KernelPackage/b43/description
1400 Kernel module for Broadcom 43xx wireless support (mac80211 stack) new
1401 endef
1402
1403 define KernelPackage/b43legacy
1404 $(call KernelPackage/mac80211/Default)
1405 TITLE:=Broadcom 43xx-legacy wireless support
1406 URL:=https://wireless.wiki.kernel.org/en/users/drivers/b43
1407 KCONFIG:= \
1408 CONFIG_HW_RANDOM=y
1409 DEPENDS+= +kmod-mac80211 +!(TARGET_brcm47xx||TARGET_brcm63xx):kmod-ssb
1410 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/b43legacy/b43legacy.ko
1411 AUTOLOAD:=$(call AutoProbe,b43legacy)
1412 MENU:=1
1413 endef
1414
1415 define KernelPackage/b43legacy/config
1416 if PACKAGE_kmod-b43legacy
1417
1418 config B43LEGACY_FW_SQUASH
1419 bool "Remove unnecessary firmware files"
1420 default y
1421 help
1422 This options allows you to remove unnecessary b43legacy firmware files
1423 from the final rootfs image. This can reduce the rootfs size by
1424 up to 50k.
1425
1426 If unsure, say Y.
1427
1428 config B43LEGACY_FW_SQUASH_COREREVS
1429 string "Core revisions to include"
1430 depends on B43LEGACY_FW_SQUASH
1431 default "1,2,3,4"
1432 help
1433 This is a comma seperated list of core revision numbers.
1434
1435 Example (keep files for rev4 only):
1436 4
1437
1438 Example (keep files for rev2 and rev4):
1439 2,4
1440
1441 endif
1442 endef
1443
1444 define KernelPackage/b43legacy/description
1445 Kernel module for Broadcom 43xx-legacy wireless support (mac80211 stack) new
1446 endef
1447
1448
1449 define KernelPackage/brcmutil
1450 $(call KernelPackage/mac80211/Default)
1451 TITLE:=Broadcom IEEE802.11n common driver parts
1452 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1453 DEPENDS+=@PCI_SUPPORT||USB_SUPPORT
1454 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmutil/brcmutil.ko
1455 AUTOLOAD:=$(call AutoProbe,brcmutil)
1456 MENU:=1
1457 endef
1458
1459 define KernelPackage/brcmutil/description
1460 This module contains some common parts needed by Broadcom Wireless drivers brcmsmac and brcmfmac.
1461 endef
1462
1463 define KernelPackage/brcmutil/config
1464 if PACKAGE_kmod-brcmutil
1465
1466 config PACKAGE_BRCM80211_DEBUG
1467 bool "Broadcom wireless driver debugging"
1468 help
1469 Say Y, if you want to debug brcmsmac and brcmfmac wireless driver.
1470
1471 endif
1472 endef
1473
1474 PKG_BRCMSMAC_FW_NAME:=broadcom-wl
1475 PKG_BRCMSMAC_FW_VERSION:=5.100.138
1476 PKG_BRCMSMAC_FW_OBJECT:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION)/linux/wl_apsta.o
1477 PKG_BRCMSMAC_FW_SOURCE:=$(PKG_BRCMSMAC_FW_NAME)-$(PKG_BRCMSMAC_FW_VERSION).tar.bz2
1478 PKG_BRCMSMAC_FW_SOURCE_URL:=http://www.lwfinger.com/b43-firmware/
1479 PKG_BRCMSMAC_FW_MD5SUM:=f4e357b09eaf5d8b1f1920cf3493a555
1480
1481 define Download/brcmsmac
1482 FILE:=$(PKG_BRCMSMAC_FW_SOURCE)
1483 URL:=$(PKG_BRCMSMAC_FW_SOURCE_URL)
1484 MD5SUM:=$(PKG_BRCMSMAC_FW_MD5SUM)
1485 endef
1486 $(eval $(call Download,brcmsmac))
1487
1488 define KernelPackage/brcmsmac
1489 $(call KernelPackage/mac80211/Default)
1490 TITLE:=Broadcom IEEE802.11n PCIe SoftMAC WLAN driver
1491 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1492 DEPENDS+= +kmod-mac80211 +@DRIVER_11N_SUPPORT +!TARGET_brcm47xx:kmod-bcma +kmod-lib-cordic +kmod-lib-crc8 +kmod-brcmutil
1493 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmsmac/brcmsmac.ko
1494 AUTOLOAD:=$(call AutoProbe,brcmsmac)
1495 MENU:=1
1496 endef
1497
1498 define KernelPackage/brcmsmac/description
1499 Kernel module for Broadcom IEEE802.11n PCIe Wireless cards
1500 endef
1501
1502 define KernelPackage/brcmsmac/config
1503 if PACKAGE_kmod-brcmsmac
1504
1505 config BRCMSMAC_USE_FW_FROM_WL
1506 bool "Use firmware extracted from broadcom proprietary driver"
1507 default y
1508 help
1509 Instead of using the official brcmsmac firmware a firmware
1510 version 666.2 extracted from the proprietary Broadcom driver
1511 is used. This is needed to get core rev 17 used in bcm4716
1512 to work.
1513
1514 If unsure, say Y.
1515
1516 endif
1517 endef
1518
1519
1520 define KernelPackage/brcmfmac
1521 $(call KernelPackage/mac80211/Default)
1522 TITLE:=Broadcom IEEE802.11n USB FullMAC WLAN driver
1523 URL:=https://wireless.wiki.kernel.org/en/users/drivers/brcm80211
1524 DEPENDS+= @USB_SUPPORT +kmod-cfg80211 +@DRIVER_11N_SUPPORT +kmod-brcmutil +BRCMFMAC_SDIO:kmod-mmc +BRCMFMAC_USB:kmod-usb-core
1525 FILES:=$(PKG_BUILD_DIR)/drivers/net/wireless/brcm80211/brcmfmac/brcmfmac.ko
1526 AUTOLOAD:=$(call AutoProbe,brcmfmac)
1527 endef
1528
1529 define KernelPackage/brcmfmac/description
1530 Kernel module for Broadcom IEEE802.11n USB Wireless cards
1531 endef
1532
1533 define KernelPackage/brcmfmac/config
1534 if PACKAGE_kmod-brcmfmac
1535
1536 config BRCMFMAC_SDIO
1537 bool "Enable SDIO bus interface support"
1538 default n
1539 help
1540 Enable support for cards attached to an SDIO bus.
1541 Select this option only if you are sure that your
1542 board has a Broadcom wireless chip atacched to
1543 that bus.
1544
1545 config BRCMFMAC_USB
1546 bool "Enable USB bus interface support"
1547 depends on USB_SUPPORT
1548 default y
1549 help
1550 Supported USB connected chipsets:
1551 BCM43235, BCM43236, BCM43238 (all in revision 3 only)
1552 BCM43143, BCM43242, BCM43566, BCM43569
1553
1554 config BRCMFMAC_PCIE
1555 bool "Enable PCIE bus interface support"
1556 depends on PCI_SUPPORT
1557 default y
1558 help
1559 Supported PCIe connected chipsets:
1560 BCM4354, BCM4356, BCM43567, BCM43570, BCM43602
1561
1562 endif
1563 endef
1564
1565 config_package=$(if $(CONFIG_PACKAGE_kmod-$(1)),m)
1566
1567 config-y:= \
1568 WLAN \
1569 NL80211_TESTMODE \
1570 CFG80211_WEXT \
1571 CFG80211_INTERNAL_REGDB \
1572 CFG80211_CERTIFICATION_ONUS \
1573 MAC80211_RC_MINSTREL \
1574 MAC80211_RC_MINSTREL_HT \
1575 MAC80211_RC_MINSTREL_VHT \
1576 MAC80211_RC_DEFAULT_MINSTREL \
1577
1578 config-$(call config_package,cfg80211) += CFG80211
1579
1580 config-$(call config_package,mac80211) += MAC80211
1581 config-$(CONFIG_PACKAGE_MAC80211_MESH) += MAC80211_MESH
1582 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
1583 config-y += \
1584 CFG80211_DEBUGFS \
1585 MAC80211_DEBUGFS \
1586 ATH9K_DEBUGFS \
1587 ATH9K_HTC_DEBUGFS \
1588 ATH10K_DEBUGFS \
1589 CARL9170_DEBUGFS \
1590 ATH5K_DEBUG
1591 endif
1592
1593 config-$(call config_package,lib80211) += LIB80211 LIB80211_CRYPT_WEP LIB80211_CRYPT_CCMP LIB80211_CRYPT_TKIP
1594
1595 config-$(call config_package,ath) += ATH_CARDS ATH_COMMON
1596 config-$(CONFIG_PACKAGE_ATH_DEBUG) += ATH_DEBUG ATH10K_DEBUG
1597 config-$(CONFIG_PACKAGE_ATH_DFS) += ATH9K_DFS_CERTIFIED ATH10K_DFS_CERTIFIED
1598
1599 config-$(call config_package,ath9k) += ATH9K
1600 config-$(call config_package,ath9k-common) += ATH9K_COMMON
1601 config-$(CONFIG_TARGET_ar71xx) += ATH9K_AHB
1602 config-$(CONFIG_PCI) += ATH9K_PCI
1603 config-$(CONFIG_ATH_USER_REGD) += ATH_USER_REGD
1604 config-$(CONFIG_ATH9K_SUPPORT_PCOEM) += ATH9K_PCOEM
1605
1606 config-$(call config_package,ath9k-htc) += ATH9K_HTC
1607 config-$(call config_package,ath10k) += ATH10K ATH10K_PCI
1608
1609 config-$(call config_package,ath5k) += ATH5K
1610 ifdef CONFIG_TARGET_ath25
1611 config-y += ATH5K_AHB
1612 else
1613 config-y += ATH5K_PCI
1614 endif
1615
1616 config-$(call config_package,carl9170) += CARL9170
1617
1618 config-$(call config_package,b43) += B43
1619 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA_AND_SSB) += B43_BUSES_BCMA_AND_SSB
1620 config-$(CONFIG_PACKAGE_B43_BUSES_BCMA) += B43_BUSES_BCMA
1621 config-$(CONFIG_PACKAGE_B43_BUSES_SSB) += B43_BUSES_SSB
1622 config-$(CONFIG_PACKAGE_B43_PHY_G) += B43_PHY_G
1623 config-$(CONFIG_PACKAGE_B43_PHY_N) += B43_PHY_N
1624 config-$(CONFIG_PACKAGE_B43_PHY_LP) += B43_PHY_LP
1625 config-$(CONFIG_PACKAGE_B43_PHY_HT) += B43_PHY_HT
1626 config-$(CONFIG_PACKAGE_B43_PIO) += B43_PIO
1627 config-$(CONFIG_PACKAGE_B43_DEBUG) += B43_DEBUG
1628
1629 config-$(call config_package,b43legacy) += B43LEGACY
1630 config-y += B43LEGACY_DMA_MODE
1631
1632 config-$(call config_package,brcmutil) += BRCMUTIL
1633 config-$(call config_package,brcmsmac) += BRCMSMAC
1634 config-$(call config_package,brcmfmac) += BRCMFMAC
1635 config-$(CONFIG_BRCMFMAC_SDIO) += BRCMFMAC_SDIO
1636 config-$(CONFIG_BRCMFMAC_USB) += BRCMFMAC_USB
1637 config-$(CONFIG_BRCMFMAC_PCIE) += BRCMFMAC_PCIE
1638 config-$(CONFIG_PACKAGE_BRCM80211_DEBUG) += BRCMDBG
1639
1640 config-$(call config_package,mac80211-hwsim) += MAC80211_HWSIM
1641 config-$(call config_package,mt7601u) += MT7601U
1642 config-y += WL_MEDIATEK
1643
1644 config-$(call config_package,rt2x00-lib) += RT2X00 RT2X00_LIB
1645 config-$(call config_package,rt2x00-pci) += RT2X00_LIB_PCI
1646 config-$(call config_package,rt2x00-mmio) += RT2X00_LIB_MMIO
1647 config-$(call config_package,rt2x00-usb) += RT2X00_LIB_USB
1648 config-$(CONFIG_PACKAGE_RT2X00_LIB_DEBUGFS) += RT2X00_LIB_DEBUGFS
1649 config-$(CONFIG_PACKAGE_RT2X00_DEBUG) += RT2X00_DEBUG
1650
1651 config-$(call config_package,rt2400-pci) += RT2400PCI
1652 config-$(call config_package,rt2500-pci) += RT2500PCI
1653 config-$(call config_package,rt2500-usb) += RT2500USB
1654 config-$(call config_package,rt61-pci) += RT61PCI
1655 config-$(call config_package,rt73-usb) += RT73USB
1656
1657 config-$(call config_package,rt2800-lib) += RT2800_LIB
1658
1659 config-$(call config_package,rt2800-soc) += RT2800SOC
1660 config-$(call config_package,rt2800-pci) += RT2800PCI
1661 config-y += RT2800PCI_RT33XX RT2800PCI_RT35XX RT2800PCI_RT53XX RT2800PCI_RT3290
1662
1663 config-$(call config_package,rt2800-usb) += RT2800USB
1664 config-y += RT2800USB_RT33XX RT2800USB_RT35XX RT2800USB_RT3573 RT2800USB_RT53XX RT2800USB_RT55XX RT2800USB_UNKNOWN
1665
1666 config-$(call config_package,iwl-legacy) += IWLEGACY
1667 config-$(call config_package,iwl3945) += IWL3945
1668 config-$(call config_package,iwl4965) += IWL4965
1669 config-$(call config_package,iwlagn) += IWLWIFI IWLDVM IWLMVM
1670
1671 config-$(call config_package,net-libipw) += LIBIPW
1672 config-$(call config_package,net-ipw2100) += IPW2100
1673 config-$(call config_package,net-ipw2200) += IPW2200
1674
1675 config-$(call config_package,p54-common) += P54_COMMON
1676 config-$(call config_package,p54-pci) += P54_PCI
1677 config-$(call config_package,p54-usb) += P54_USB
1678 config-$(call config_package,p54-spi) += P54_SPI
1679
1680 config-$(call config_package,net-hermes) += HERMES
1681 config-$(call config_package,net-hermes-pci) += PCI_HERMES
1682 config-$(call config_package,net-hermes-plx) += PLX_HERMES
1683 config-$(call config_package,net-hermes-pcmcia) += PCMCIA_HERMES
1684 config-y += HERMES_PRISM
1685
1686 config-$(call config_package,adm8211) += ADM8211
1687 config-$(call config_package,libertas-sdio) += LIBERTAS LIBERTAS_SDIO
1688 config-$(call config_package,libertas-usb) += LIBERTAS LIBERTAS_USB
1689 config-$(call config_package,mwl8k) += MWL8K
1690 config-$(call config_package,mwifiex-pcie) += MWIFIEX MWIFIEX_PCIE
1691 config-$(call config_package,rtl8180) += RTL8180
1692 config-$(call config_package,rtl8187) += RTL8187
1693 config-$(call config_package,wlcore) += WLCORE WLCORE_SDIO
1694 config-$(call config_package,wl12xx) += WL12XX
1695 config-$(call config_package,wl18xx) += WL18XX
1696 config-y += WL_TI WILINK_PLATFORM_DATA
1697 config-$(call config_package,zd1211rw) += ZD1211RW
1698
1699 config-$(call config_package,rtlwifi) += RTL_CARDS RTLWIFI
1700 config-$(call config_package,rtlwifi-pci) += RTLWIFI_PCI
1701 config-$(call config_package,rtlwifi-usb) += RTLWIFI_USB
1702 config-$(call config_package,rtl8192c-common) += RTL8192C_COMMON
1703 config-$(call config_package,rtl8192ce) += RTL8192CE
1704 config-$(call config_package,rtl8192se) += RTL8192SE
1705 config-$(call config_package,rtl8192de) += RTL8192DE
1706 config-$(call config_package,rtl8192cu) += RTL8192CU
1707 config-$(CONFIG_PACKAGE_RTLWIFI_DEBUG) += RTLWIFI_DEBUG
1708
1709 config-$(CONFIG_LEDS_TRIGGERS) += MAC80211_LEDS B43_LEDS B43LEGACY_LEDS
1710
1711 MAKE_OPTS:= -C "$(PKG_BUILD_DIR)" \
1712 CROSS_COMPILE="$(KERNEL_CROSS)" \
1713 ARCH="$(LINUX_KARCH)" \
1714 EXTRA_CFLAGS="-I$(PKG_BUILD_DIR)/include" \
1715 KLIB_BUILD="$(LINUX_DIR)" \
1716 MODPROBE=true \
1717 KLIB=$(TARGET_MODULES_DIR) \
1718 KERNEL_SUBLEVEL=$(lastword $(subst ., ,$(KERNEL_PATCHVER))) \
1719 KBUILD_LDFLAGS_MODULE_PREREQ=
1720
1721 ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
1722 MAKE_OPTS += V=1
1723 endif
1724
1725 define ConfigVars
1726 $(subst $(space),,$(foreach opt,$(config-$(1)),CPTCFG_$(opt)=$(1)
1727 ))
1728 endef
1729
1730 define mac80211_config
1731 $(call ConfigVars,m)$(call ConfigVars,y)
1732 endef
1733 $(eval $(call shexport,mac80211_config))
1734
1735 define Build/Prepare
1736 rm -rf $(PKG_BUILD_DIR)
1737 mkdir -p $(PKG_BUILD_DIR)
1738 $(PKG_UNPACK)
1739 $(Build/Patch)
1740 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2100_NAME)-$(IPW2100_VERSION).tgz
1741 $(TAR) -C $(PKG_BUILD_DIR) -xzf $(DL_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION).tgz
1742 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(ZD1211FW_NAME)-$(ZD1211FW_VERSION).tar.bz2
1743 $(TAR) -C $(PKG_BUILD_DIR) -xJf $(DL_DIR)/$(PKG_LINUX_FIRMWARE_SOURCE)
1744 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SOURCE)
1745 $(TAR) -C $(PKG_BUILD_DIR) -xjf $(DL_DIR)/$(PKG_MT7601U_FW_SOURCE)
1746 rm -rf \
1747 $(PKG_BUILD_DIR)/include/linux/ssb \
1748 $(PKG_BUILD_DIR)/include/linux/bcma \
1749 $(PKG_BUILD_DIR)/include/net/bluetooth
1750
1751 rm -f \
1752 $(PKG_BUILD_DIR)/include/linux/cordic.h \
1753 $(PKG_BUILD_DIR)/include/linux/crc8.h \
1754 $(PKG_BUILD_DIR)/include/linux/eeprom_93cx6.h \
1755 $(PKG_BUILD_DIR)/include/linux/wl12xx.h \
1756 $(PKG_BUILD_DIR)/include/linux/spi/libertas_spi.h \
1757 $(PKG_BUILD_DIR)/include/net/ieee80211.h
1758
1759 echo 'compat-wireless-$(PKG_VERSION)-$(PKG_RELEASE)-$(REVISION)' > $(PKG_BUILD_DIR)/compat_version
1760 $(CP) ./files/regdb.txt $(PKG_BUILD_DIR)/net/wireless/db.txt
1761 endef
1762
1763 ifneq ($(CONFIG_PACKAGE_kmod-cfg80211)$(CONFIG_PACKAGE_kmod-lib80211),)
1764 define Build/Compile/kmod
1765 rm -rf $(PKG_BUILD_DIR)/modules
1766 +$(MAKE) $(PKG_JOBS) $(MAKE_OPTS) modules
1767 endef
1768 endif
1769
1770 define Build/Configure
1771 cmp $(PKG_BUILD_DIR)/include/linux/ath9k_platform.h $(LINUX_DIR)/include/linux/ath9k_platform.h
1772 cmp $(PKG_BUILD_DIR)/include/linux/ath5k_platform.h $(LINUX_DIR)/include/linux/ath5k_platform.h
1773 cmp $(PKG_BUILD_DIR)/include/linux/rt2x00_platform.h $(LINUX_DIR)/include/linux/rt2x00_platform.h
1774 endef
1775
1776 define Build/Compile
1777 $(SH_FUNC) var2file "$(call shvar,mac80211_config)" $(PKG_BUILD_DIR)/.config
1778 $(MAKE) $(MAKE_OPTS) allnoconfig
1779 $(call Build/Compile/kmod)
1780 endef
1781
1782 define Build/InstallDev
1783 mkdir -p \
1784 $(1)/usr/include/mac80211 \
1785 $(1)/usr/include/mac80211-backport \
1786 $(1)/usr/include/mac80211/ath \
1787 $(1)/usr/include/net/mac80211
1788 $(CP) $(PKG_BUILD_DIR)/net/mac80211/*.h $(PKG_BUILD_DIR)/include/* $(1)/usr/include/mac80211/
1789 $(CP) $(PKG_BUILD_DIR)/backport-include/* $(1)/usr/include/mac80211-backport/
1790 $(CP) $(PKG_BUILD_DIR)/net/mac80211/rate.h $(1)/usr/include/net/mac80211/
1791 $(CP) $(PKG_BUILD_DIR)/drivers/net/wireless/ath/*.h $(1)/usr/include/mac80211/ath/
1792 rm -f $(1)/usr/include/mac80211-backport/linux/module.h
1793 endef
1794
1795 define KernelPackage/libertas-usb/install
1796 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1797 $(INSTALL_DATA) \
1798 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8388_v9.bin \
1799 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/usb8682.bin \
1800 $(1)/lib/firmware/libertas/
1801 endef
1802
1803 define KernelPackage/libertas-sdio/install
1804 $(INSTALL_DIR) $(1)/lib/firmware/libertas
1805 $(INSTALL_DATA) \
1806 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385_helper.bin \
1807 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8385.bin \
1808 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9_helper.bin \
1809 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8686_v9.bin \
1810 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688_helper.bin \
1811 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/libertas/sd8688.bin \
1812 $(1)/lib/firmware/libertas
1813 endef
1814
1815 define KernelPackage/cfg80211/install
1816 $(INSTALL_DIR) $(1)/lib/wifi $(1)/lib/netifd/wireless
1817 $(INSTALL_DATA) ./files/lib/wifi/mac80211.sh $(1)/lib/wifi
1818 $(INSTALL_BIN) ./files/lib/netifd/wireless/mac80211.sh $(1)/lib/netifd/wireless
1819 endef
1820
1821 define KernelPackage/p54-pci/install
1822 $(INSTALL_DIR) $(1)/lib/firmware
1823 $(INSTALL_DATA) $(DL_DIR)/$(P54PCIFW) $(1)/lib/firmware/isl3886pci
1824 endef
1825
1826 define KernelPackage/p54-usb/install
1827 $(INSTALL_DIR) $(1)/lib/firmware
1828 $(INSTALL_DATA) $(DL_DIR)/$(P54USBFW) $(1)/lib/firmware/isl3887usb
1829 endef
1830
1831 define KernelPackage/p54-spi/install
1832 $(INSTALL_DIR) $(1)/lib/firmware
1833 $(INSTALL_DATA) $(DL_DIR)/$(P54SPIFW) $(1)/lib/firmware/3826.arm
1834 endef
1835
1836 define KernelPackage/rt61-pci/install
1837 $(INSTALL_DIR) $(1)/lib/firmware
1838 $(INSTALL_DATA) \
1839 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561.bin \
1840 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2561s.bin \
1841 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2661.bin \
1842 $(1)/lib/firmware/
1843 endef
1844
1845 define KernelPackage/rt73-usb/install
1846 $(INSTALL_DIR) $(1)/lib/firmware
1847 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt73.bin $(1)/lib/firmware/
1848 endef
1849
1850 define KernelPackage/rt2800-pci/install
1851 $(INSTALL_DIR) $(1)/lib/firmware
1852 $(INSTALL_DATA) \
1853 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2860.bin \
1854 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt3290.bin \
1855 $(1)/lib/firmware
1856 endef
1857
1858 define KernelPackage/rt2800-usb/install
1859 $(INSTALL_DIR) $(1)/lib/firmware
1860 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/rt2870.bin $(1)/lib/firmware/
1861 endef
1862
1863 define KernelPackage/wl12xx/install
1864 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1865 $(INSTALL_DATA) \
1866 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-mr.bin \
1867 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-plt.bin \
1868 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl127x-fw-5-sr.bin \
1869 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl1271-nvs.bin \
1870 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-mr.bin \
1871 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-plt.bin \
1872 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-fw-5-sr.bin \
1873 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl128x-nvs.bin \
1874 $(1)/lib/firmware/ti-connectivity
1875 endef
1876
1877 define KernelPackage/wl18xx/install
1878 $(INSTALL_DIR) $(1)/lib/firmware/ti-connectivity
1879 $(INSTALL_DATA) \
1880 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-conf.bin \
1881 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/ti-connectivity/wl18xx-fw-3.bin \
1882 $(1)/lib/firmware/ti-connectivity
1883 endef
1884
1885 define KernelPackage/zd1211rw/install
1886 $(INSTALL_DIR) $(1)/lib/firmware/zd1211
1887 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(ZD1211FW_NAME)/zd1211* $(1)/lib/firmware/zd1211
1888 endef
1889
1890 define KernelPackage/carl9170/install
1891 $(INSTALL_DIR) $(1)/lib/firmware
1892 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/carl9170-1.fw $(1)/lib/firmware
1893 endef
1894
1895 define KernelPackage/ath9k-htc/install
1896 $(INSTALL_DIR) $(1)/lib/firmware
1897 $(INSTALL_DATA) \
1898 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_9271.fw \
1899 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/htc_7010.fw \
1900 $(1)/lib/firmware/
1901 endef
1902
1903 define KernelPackage/ath10k/install
1904 $(INSTALL_DIR) $(1)/lib/firmware/ath10k/QCA988X/hw2.0
1905 $(INSTALL_DATA) \
1906 $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/ath10k/QCA988X/hw2.0/board.bin \
1907 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/
1908 ifeq ($(CONFIG_ATH10K_API2_FW),y)
1909 $(INSTALL_DATA) \
1910 $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.1/firmware-2.bin_10.1.467.2-1 \
1911 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin
1912 else
1913 $(INSTALL_DATA) \
1914 $(PKG_BUILD_DIR)/$(PKG_ATH10K_LINUX_FIRMWARE_SUBDIR)/10.2.4/untested/firmware-5.bin_10.2.4.70-2 \
1915 $(1)/lib/firmware/ath10k/QCA988X/hw2.0/firmware-5.bin
1916 endif
1917 endef
1918
1919 define KernelPackage/mt7601u/install
1920 $(INSTALL_DIR) $(1)/lib/firmware
1921 $(INSTALL_DATA) \
1922 $(PKG_BUILD_DIR)/$(PKG_MT7601U_FW_NAME)_$(PKG_MT7601U_FW_VERSION)/mcu/bin/MT7601.bin \
1923 $(1)/lib/firmware/mt7601u.bin
1924 endef
1925
1926 define KernelPackage/mwl8k/install
1927 $(INSTALL_DIR) $(1)/lib/firmware/mwl8k
1928 $(INSTALL_DATA) \
1929 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366_ap-3.fw \
1930 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8366.fw \
1931 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8366.fw \
1932 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/fmimage_8687.fw \
1933 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mwl8k/helper_8687.fw \
1934 $(1)/lib/firmware/mwl8k/
1935 endef
1936
1937 define KernelPackage/mwifiex-pcie/install
1938 $(INSTALL_DIR) $(1)/lib/firmware/mrvl
1939 $(INSTALL_DATA) \
1940 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/mrvl/pcie8897_uapsta.bin \
1941 $(1)/lib/firmware/mrvl/
1942 endef
1943
1944 define KernelPackage/net-ipw2100/install
1945 $(INSTALL_DIR) $(1)/lib/firmware
1946 $(INSTALL_DATA) $(PKG_BUILD_DIR)/ipw2100-$(IPW2100_VERSION)*.fw $(1)/lib/firmware
1947 endef
1948
1949 define KernelPackage/net-ipw2200/install
1950 $(INSTALL_DIR) $(1)/lib/firmware
1951 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(IPW2200_NAME)-$(IPW2200_VERSION)/ipw2200*.fw $(1)/lib/firmware
1952 endef
1953
1954 define KernelPackage/iwlagn/install
1955 $(INSTALL_DIR) $(1)/lib/firmware
1956 ifneq ($(CONFIG_IWL100_FW),)
1957 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-100-5.ucode $(1)/lib/firmware
1958 endif
1959 ifneq ($(CONFIG_IWL1000_FW),)
1960 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-1000-5.ucode $(1)/lib/firmware
1961 endif
1962 ifneq ($(CONFIG_IWL105_FW),)
1963 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-105-6.ucode $(1)/lib/firmware
1964 endif
1965 ifneq ($(CONFIG_IWL135_FW),)
1966 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-135-6.ucode $(1)/lib/firmware
1967 endif
1968 ifneq ($(CONFIG_IWL2000_FW),)
1969 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2000-6.ucode $(1)/lib/firmware
1970 endif
1971 ifneq ($(CONFIG_IWL2030_FW),)
1972 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-2030-6.ucode $(1)/lib/firmware
1973 endif
1974 ifneq ($(CONFIG_IWL3160_FW),)
1975 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3160-13.ucode $(1)/lib/firmware
1976 endif
1977 ifneq ($(CONFIG_IWL5000_FW),)
1978 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5000-5.ucode $(1)/lib/firmware
1979 endif
1980 ifneq ($(CONFIG_IWL5150_FW),)
1981 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-5150-2.ucode $(1)/lib/firmware
1982 endif
1983 ifneq ($(CONFIG_IWL6000_FW),)
1984 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000-4.ucode $(1)/lib/firmware
1985 endif
1986 ifneq ($(CONFIG_IWL6005_FW),)
1987 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2a-6.ucode $(1)/lib/firmware
1988 endif
1989 ifneq ($(CONFIG_IWL6030_FW),)
1990 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6000g2b-6.ucode $(1)/lib/firmware
1991 endif
1992 ifneq ($(CONFIG_IWL6050_FW),)
1993 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-6050-5.ucode $(1)/lib/firmware
1994 endif
1995 ifneq ($(CONFIG_IWL7260_FW),)
1996 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7260-13.ucode $(1)/lib/firmware
1997 endif
1998 ifneq ($(CONFIG_IWL7265_FW),)
1999 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7265-13.ucode $(1)/lib/firmware
2000 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-7265D-13.ucode $(1)/lib/firmware
2001 endif
2002 ifneq ($(CONFIG_IWL8000_FW),)
2003 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-8000C-13.ucode $(1)/lib/firmware
2004 endif
2005 endef
2006
2007 define KernelPackage/iwl3945/install
2008 $(INSTALL_DIR) $(1)/lib/firmware
2009 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-3945-2.ucode $(1)/lib/firmware
2010 endef
2011
2012 define KernelPackage/iwl4965/install
2013 $(INSTALL_DIR) $(1)/lib/firmware
2014 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/iwlwifi-4965-2.ucode $(1)/lib/firmware
2015 endef
2016
2017 define KernelPackage/b43/install
2018 rm -rf $(1)/lib/firmware/
2019 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
2020 tar xzf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
2021 else
2022 tar xjf "$(DL_DIR)/$(PKG_B43_FWV4_SOURCE)" -C "$(PKG_BUILD_DIR)"
2023 endif
2024 $(INSTALL_DIR) $(1)/lib/firmware/
2025 ifeq ($(CONFIG_B43_OPENFIRMWARE),y)
2026 $(MAKE) -C "$(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/"
2027 $(INSTALL_DIR) $(1)/lib/firmware/b43-open/
2028 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/ucode5.fw $(1)/lib/firmware/b43-open/ucode5.fw
2029 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0bsinitvals5.fw $(1)/lib/firmware/b43-open/b0g0bsinitvals5.fw
2030 $(INSTALL_DATA) $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)/b0g0initvals5.fw $(1)/lib/firmware/b43-open/b0g0initvals5.fw
2031 else
2032 b43-fwcutter -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_B43_FWV4_OBJECT)
2033 endif
2034 ifneq ($(CONFIG_B43_FW_SQUASH),)
2035 b43-fwsquash.py "$(CONFIG_B43_FW_SQUASH_PHYTYPES)" "$(CONFIG_B43_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43"
2036 endif
2037 endef
2038
2039 define KernelPackage/b43legacy/install
2040 $(INSTALL_DIR) $(1)/lib/firmware/
2041 b43-fwcutter --unsupported -w $(1)/lib/firmware/ $(DL_DIR)/$(PKG_B43_FWV3_SOURCE)
2042 ifneq ($(CONFIG_B43LEGACY_FW_SQUASH),)
2043 b43-fwsquash.py "G" "$(CONFIG_B43LEGACY_FW_SQUASH_COREREVS)" "$(1)/lib/firmware/b43legacy"
2044 endif
2045 endef
2046
2047 define KernelPackage/brcmsmac/install
2048 $(INSTALL_DIR) $(1)/lib/firmware/brcm
2049 ifeq ($(CONFIG_BRCMSMAC_USE_FW_FROM_WL),y)
2050 tar xjf "$(DL_DIR)/$(PKG_BRCMSMAC_FW_SOURCE)" -C "$(PKG_BUILD_DIR)"
2051 b43-fwcutter --brcmsmac -w $(1)/lib/firmware/ $(PKG_BUILD_DIR)/$(PKG_BRCMSMAC_FW_OBJECT)
2052 else
2053 $(INSTALL_DATA) \
2054 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx-0.fw \
2055 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/bcm43xx_hdr-0.fw \
2056 $(1)/lib/firmware/brcm/
2057 endif
2058 endef
2059
2060 define KernelPackage/brcmfmac/install
2061 $(INSTALL_DIR) $(1)/lib/firmware/brcm
2062 ifneq ($(CONFIG_BRCMFMAC_USB),)
2063 $(INSTALL_DATA) \
2064 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43236b.bin \
2065 $(1)/lib/firmware/brcm/
2066 $(INSTALL_DATA) \
2067 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43143.bin \
2068 $(1)/lib/firmware/brcm/
2069 endif
2070 ifneq ($(CONFIG_BRCMFMAC_PCIE),)
2071 $(INSTALL_DATA) \
2072 $(PKG_BUILD_DIR)/$(PKG_LINUX_FIRMWARE_SUBDIR)/brcm/brcmfmac43602-pcie.ap.bin \
2073 $(1)/lib/firmware/brcm/brcmfmac43602-pcie.bin
2074 endif
2075 endef
2076
2077 $(eval $(call KernelPackage,adm8211))
2078 $(eval $(call KernelPackage,ath5k))
2079 $(eval $(call KernelPackage,lib80211))
2080 $(eval $(call KernelPackage,libertas-usb))
2081 $(eval $(call KernelPackage,libertas-sdio))
2082 $(eval $(call KernelPackage,cfg80211))
2083 $(eval $(call KernelPackage,mac80211))
2084 $(eval $(call KernelPackage,p54-common))
2085 $(eval $(call KernelPackage,p54-pci))
2086 $(eval $(call KernelPackage,p54-usb))
2087 $(eval $(call KernelPackage,p54-spi))
2088 $(eval $(call KernelPackage,rt2x00-lib))
2089 $(eval $(call KernelPackage,rt2x00-mmio))
2090 $(eval $(call KernelPackage,rt2x00-pci))
2091 $(eval $(call KernelPackage,rt2x00-usb))
2092 $(eval $(call KernelPackage,rt2800-lib))
2093 $(eval $(call KernelPackage,rt2400-pci))
2094 $(eval $(call KernelPackage,rt2500-pci))
2095 $(eval $(call KernelPackage,rt2500-usb))
2096 $(eval $(call KernelPackage,rt61-pci))
2097 $(eval $(call KernelPackage,rt73-usb))
2098 $(eval $(call KernelPackage,rt2800-mmio))
2099 $(eval $(call KernelPackage,rt2800-soc))
2100 $(eval $(call KernelPackage,rt2800-pci))
2101 $(eval $(call KernelPackage,rt2800-usb))
2102 $(eval $(call KernelPackage,rtl8180))
2103 $(eval $(call KernelPackage,rtl8187))
2104 $(eval $(call KernelPackage,rtlwifi))
2105 $(eval $(call KernelPackage,rtlwifi-pci))
2106 $(eval $(call KernelPackage,rtlwifi-usb))
2107 $(eval $(call KernelPackage,rtl8192c-common))
2108 $(eval $(call KernelPackage,rtl8192ce))
2109 $(eval $(call KernelPackage,rtl8192se))
2110 $(eval $(call KernelPackage,rtl8192de))
2111 $(eval $(call KernelPackage,rtl8192cu))
2112 $(eval $(call KernelPackage,zd1211rw))
2113 $(eval $(call KernelPackage,mac80211-hwsim))
2114 $(eval $(call KernelPackage,mt7601u))
2115 $(eval $(call KernelPackage,ath9k-common))
2116 $(eval $(call KernelPackage,ath9k))
2117 $(eval $(call KernelPackage,ath9k-htc))
2118 $(eval $(call KernelPackage,ath10k))
2119 $(eval $(call KernelPackage,ath))
2120 $(eval $(call KernelPackage,carl9170))
2121 $(eval $(call KernelPackage,b43))
2122 $(eval $(call KernelPackage,b43legacy))
2123 $(eval $(call KernelPackage,brcmutil))
2124 $(eval $(call KernelPackage,brcmsmac))
2125 $(eval $(call KernelPackage,brcmfmac))
2126 $(eval $(call KernelPackage,net-libipw))
2127 $(eval $(call KernelPackage,net-ipw2100))
2128 $(eval $(call KernelPackage,net-ipw2200))
2129 $(eval $(call KernelPackage,iwlagn))
2130 $(eval $(call KernelPackage,iwl-legacy))
2131 $(eval $(call KernelPackage,iwl4965))
2132 $(eval $(call KernelPackage,iwl3945))
2133 $(eval $(call KernelPackage,mwl8k))
2134 $(eval $(call KernelPackage,mwifiex-pcie))
2135 $(eval $(call KernelPackage,net-hermes))
2136 $(eval $(call KernelPackage,net-hermes-pci))
2137 $(eval $(call KernelPackage,net-hermes-plx))
2138 $(eval $(call KernelPackage,net-hermes-pcmcia))
2139 $(eval $(call KernelPackage,wlcore))
2140 $(eval $(call KernelPackage,wl12xx))
2141 $(eval $(call KernelPackage,wl18xx))