44#
55# ###############################################################################
66
7- LINUX_FIRMWARE_VERSION = f66291398181d24856fd2d19454d246199abd5ea
7+ LINUX_FIRMWARE_VERSION = 3161bfa479d5e9ed4f46b57df9bcecbbc4f8eb3c
88LINUX_FIRMWARE_SITE = http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
99LINUX_FIRMWARE_SITE_METHOD = git
1010
@@ -14,6 +14,11 @@ LINUX_FIRMWARE_FILES += intel/fw_sst_0f28.bin-48kHz_i2s_master
1414LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.fw_sst_0f28
1515endif
1616
17+ ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RADEON ) ,y)
18+ LINUX_FIRMWARE_DIRS += radeon
19+ LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENSE.radeon
20+ endif
21+
1722# rt2501/rt61
1823ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61 ) ,y)
1924LINUX_FIRMWARE_FILES += rt2561.bin rt2561s.bin rt2661.bin
@@ -40,7 +45,8 @@ LINUX_FIRMWARE_FILES += \
4045 rtlwifi/rtl8192cfw.bin rtlwifi/rtl8192cfwU.bin \
4146 rtlwifi/rtl8192cfwU_B.bin rtlwifi/rtl8192cufw.bin \
4247 rtlwifi/rtl8192defw.bin rtlwifi/rtl8192sefw.bin \
43- rtlwifi/rtl8188efw.bin rtlwifi/rtl8192cufw_A.bin \
48+ rtlwifi/rtl8188efw.bin rtlwifi/rtl8188eufw.bin \
49+ rtlwifi/rtl8192cufw_A.bin \
4450 rtlwifi/rtl8192cufw_B.bin rtlwifi/rtl8192cufw_TMSC.bin
4551LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.rtlwifi_firmware.txt
4652endif
@@ -146,6 +152,7 @@ endif
146152
147153# wl128x
148154ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X ) ,y)
155+ # wl1271-nvs.bin and wl12xx-nvs.bin are symlinks to wl127x-nvs.bin
149156LINUX_FIRMWARE_FILES += \
150157 ti-connectivity/wl128x-fw-3.bin \
151158 ti-connectivity/wl128x-fw-ap.bin \
@@ -154,26 +161,27 @@ LINUX_FIRMWARE_FILES += \
154161 ti-connectivity/wl1271-nvs.bin \
155162 ti-connectivity/wl128x-nvs.bin \
156163 ti-connectivity/wl12xx-nvs.bin \
164+ ti-connectivity/wl127x-nvs.bin \
157165 ti-connectivity/wl128x-fw-4-mr.bin \
158166 ti-connectivity/wl128x-fw-4-plt.bin \
159167 ti-connectivity/wl128x-fw-4-sr.bin \
160168 ti-connectivity/wl128x-fw-5-mr.bin \
161169 ti-connectivity/wl128x-fw-5-plt.bin \
162170 ti-connectivity/wl128x-fw-5-sr.bin \
163171 ti-connectivity/TIInit_7.2.31.bts
164- # wl12xx-nvs.bin (above) is a symlink to:
165- LINUX_FIRMWARE_FILES += ti-connectivity/wl127x-nvs.bin
166172LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.ti-connectivity
167173endif
168174
169175# wl18xx
170176ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX ) ,y)
177+ # wl1271-nvs.bin is a symlink to wl127x-nvs.bin
171178LINUX_FIRMWARE_FILES += \
172179 ti-connectivity/wl18xx-fw.bin \
173- ti-connectivity/wl18xx-conf.bin \
174180 ti-connectivity/wl18xx-fw-2.bin \
175181 ti-connectivity/wl18xx-fw-3.bin \
176182 ti-connectivity/wl18xx-fw-4.bin \
183+ ti-connectivity/wl1271-nvs.bin \
184+ ti-connectivity/wl127x-nvs.bin \
177185 ti-connectivity/TIInit_7.2.31.bts
178186LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.ti-connectivity
179187endif
@@ -192,6 +200,11 @@ LINUX_FIRMWARE_FILES += iwlwifi-5000-5.ucode
192200LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.iwlwifi_firmware
193201endif
194202
203+ ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_6000G2A ) ,y)
204+ LINUX_FIRMWARE_FILES += iwlwifi-6000g2a-6.ucode
205+ LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.iwlwifi_firmware
206+ endif
207+
195208ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7260 ) ,y)
196209LINUX_FIRMWARE_FILES += iwlwifi-7260-$(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_REV ) .ucode
197210LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.iwlwifi_firmware
@@ -287,12 +300,30 @@ endif
287300# brcm43xxx
288301ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX ) ,y)
289302LINUX_FIRMWARE_FILES += \
303+ brcm/brcmfmac43143.bin brcm/brcmfmac43143-sdio.bin \
290304 brcm/brcmfmac43236b.bin brcm/brcmfmac43241b0-sdio.bin \
291305 brcm/brcmfmac43241b4-sdio.bin brcm/brcmfmac43362-sdio.bin
292306LINUX_FIRMWARE_ALL_LICENSE_FILES += LICENCE.broadcom_bcm43xx
293307endif
294308
295309ifneq ($(LINUX_FIRMWARE_FILES ) ,)
310+ define LINUX_FIRMWARE_INSTALL_FILES
311+ $(TAR ) c -C $(@D ) $(sort $(LINUX_FIRMWARE_FILES ) ) | \
312+ $(TAR ) x -C $(TARGET_DIR ) /lib/firmware
313+ endef
314+ endif
315+
316+ ifneq ($(LINUX_FIRMWARE_DIRS ) ,)
317+ # We need to rm-rf the destination directory to avoid copying
318+ # into it in itself, should we re-install the package.
319+ define LINUX_FIRMWARE_INSTALL_DIRS
320+ $(foreach d,$(LINUX_FIRMWARE_DIRS ) , \
321+ rm -rf $(TARGET_DIR ) /lib/firmware/$(d ) ; \
322+ cp -a $(@D ) /$(d ) $(TARGET_DIR ) /lib/firmware/$(d )$(sep ) )
323+ endef
324+ endif
325+
326+ ifneq ($(LINUX_FIRMWARE_FILES )$(LINUX_FIRMWARE_DIRS ) ,)
296327
297328# Most firmware files are under a proprietary license, so no need to
298329# repeat it for every selections above. Those firmwares that have more
@@ -308,12 +339,12 @@ LINUX_FIRMWARE_ALL_LICENSE_FILES += WHENCE
308339# duplicates
309340LINUX_FIRMWARE_LICENSE_FILES = $(sort $(LINUX_FIRMWARE_ALL_LICENSE_FILES ) )
310341
342+ endif
343+
311344define LINUX_FIRMWARE_INSTALL_TARGET_CMDS
312345 mkdir -p $(TARGET_DIR ) /lib/firmware
313- $(TAR ) c -C $( @D ) $( sort $( LINUX_FIRMWARE_FILES ) ) | \
314- $( TAR ) x -C $( TARGET_DIR ) /lib/firmware
346+ $(LINUX_FIRMWARE_INSTALL_FILES )
347+ $( LINUX_FIRMWARE_INSTALL_DIRS )
315348endef
316349
317- endif
318-
319350$(eval $(generic-package))
0 commit comments