1 ################################################################################
5 ################################################################################
7 LINUX_FIRMWARE_VERSION
= f66291398181d24856fd2d19454d246199abd5ea
8 LINUX_FIRMWARE_SITE
= http
://git.kernel.org
/pub
/scm
/linux
/kernel
/git
/firmware
/linux-firmware.git
9 LINUX_FIRMWARE_SITE_METHOD
= git
12 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_INTEL_SST_DSP
),y
)
13 LINUX_FIRMWARE_FILES
+= intel
/fw_sst_0f28.bin-48kHz_i2s_master
14 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.fw_sst_0f28
18 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT61
),y
)
19 LINUX_FIRMWARE_FILES
+= rt2561.bin rt2561s.bin rt2661.bin
20 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ralink-firmware.txt
24 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73
),y
)
25 LINUX_FIRMWARE_FILES
+= rt73.bin
26 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ralink-firmware.txt
30 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX
),y
)
31 # rt3090.bin is a symlink to rt2860.bin
32 # rt3070.bin is a symlink to rt2870.bin
33 LINUX_FIRMWARE_FILES
+= rt2860.bin rt2870.bin rt3070.bin rt3071.bin rt3090.bin
34 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ralink-firmware.txt
38 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX
),y
)
39 LINUX_FIRMWARE_FILES
+= \
40 rtlwifi
/rtl8192cfw.bin rtlwifi
/rtl8192cfwU.bin \
41 rtlwifi
/rtl8192cfwU_B.bin rtlwifi
/rtl8192cufw.bin \
42 rtlwifi
/rtl8192defw.bin rtlwifi
/rtl8192sefw.bin \
43 rtlwifi
/rtl8188efw.bin rtlwifi
/rtl8192cufw_A.bin \
44 rtlwifi
/rtl8192cufw_B.bin rtlwifi
/rtl8192cufw_TMSC.bin
45 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.rtlwifi_firmware.txt
49 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX
),y
)
50 LINUX_FIRMWARE_FILES
+= rtlwifi
/rtl8712u.bin rtlwifi
/rtl8723fw.bin \
51 rtlwifi
/rtl8723fw_B.bin rtlwifi
/rtl8723befw.bin
52 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.rtlwifi_firmware.txt
56 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_RTL_88XX
),y
)
57 LINUX_FIRMWARE_FILES
+= rtlwifi
/rtl8821aefw.bin \
58 rtlwifi
/rtl8821aefw_wowlan.bin
59 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.rtlwifi_firmware.txt
63 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_7010
),y
)
64 LINUX_FIRMWARE_FILES
+= ar7010.fw ar7010_1_1.fw htc_7010.fw
65 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.atheros_firmware
69 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9170
),y
)
70 LINUX_FIRMWARE_FILES
+= ar9170-1.fw ar9170-2.fw
71 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.atheros_firmware
75 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_ATHEROS_9271
),y
)
76 LINUX_FIRMWARE_FILES
+= ar9271.fw htc_9271.fw
77 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.atheros_firmware
81 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_LIBERTAS_SD8686_V8
),y
)
82 LINUX_FIRMWARE_FILES
+= libertas
/sd8686_v8.bin libertas
/sd8686_v8_helper.bin
83 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.Marvell
87 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_LIBERTAS_SD8686_V9
),y
)
88 LINUX_FIRMWARE_FILES
+= libertas
/sd8686_v9.bin libertas
/sd8686_v9_helper.bin
89 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.Marvell
93 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_LIBERTAS_SD8688
),y
)
94 LINUX_FIRMWARE_FILES
+= libertas
/sd8688.bin libertas
/sd8688_helper.bin
95 # The two files above are but symlinks to those two ones:
96 LINUX_FIRMWARE_FILES
+= mrvl
/sd8688.bin mrvl
/sd8688_helper.bin
97 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.Marvell
101 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_MWIFIEX_SD8787
),y
)
102 LINUX_FIRMWARE_FILES
+= mrvl
/sd8787_uapsta.bin
103 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.Marvell
107 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL127X
),y
)
108 # wl1271-nvs.bin is a symlink to wl127x-nvs.bin
109 LINUX_FIRMWARE_FILES
+= \
110 ti-connectivity
/wl1271-fw-2.bin \
111 ti-connectivity
/wl1271-fw-ap.bin \
112 ti-connectivity
/wl1271-fw.bin \
113 ti-connectivity
/wl1271-nvs.bin \
114 ti-connectivity
/wl127x-fw-3.bin \
115 ti-connectivity
/wl127x-fw-plt-3.bin \
116 ti-connectivity
/wl127x-nvs.bin \
117 ti-connectivity
/wl127x-fw-4-mr.bin \
118 ti-connectivity
/wl127x-fw-4-plt.bin \
119 ti-connectivity
/wl127x-fw-4-sr.bin \
120 ti-connectivity
/wl127x-fw-5-mr.bin \
121 ti-connectivity
/wl127x-fw-5-plt.bin \
122 ti-connectivity
/wl127x-fw-5-sr.bin \
123 ti-connectivity
/TIInit_7.2
.31.bts
124 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ti-connectivity
128 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL128X
),y
)
129 LINUX_FIRMWARE_FILES
+= \
130 ti-connectivity
/wl128x-fw-3.bin \
131 ti-connectivity
/wl128x-fw-ap.bin \
132 ti-connectivity
/wl128x-fw-plt-3.bin \
133 ti-connectivity
/wl128x-fw.bin \
134 ti-connectivity
/wl1271-nvs.bin \
135 ti-connectivity
/wl128x-nvs.bin \
136 ti-connectivity
/wl12xx-nvs.bin \
137 ti-connectivity
/wl128x-fw-4-mr.bin \
138 ti-connectivity
/wl128x-fw-4-plt.bin \
139 ti-connectivity
/wl128x-fw-4-sr.bin \
140 ti-connectivity
/wl128x-fw-5-mr.bin \
141 ti-connectivity
/wl128x-fw-5-plt.bin \
142 ti-connectivity
/wl128x-fw-5-sr.bin \
143 ti-connectivity
/TIInit_7.2
.31.bts
144 # wl12xx-nvs.bin (above) is a symlink to:
145 LINUX_FIRMWARE_FILES
+= ti-connectivity
/wl127x-nvs.bin
146 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ti-connectivity
150 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_TI_WL18XX
),y
)
151 LINUX_FIRMWARE_FILES
+= \
152 ti-connectivity
/wl18xx-fw.bin \
153 ti-connectivity
/wl18xx-conf.bin \
154 ti-connectivity
/wl18xx-fw-2.bin \
155 ti-connectivity
/wl18xx-fw-3.bin \
156 ti-connectivity
/wl18xx-fw-4.bin \
157 ti-connectivity
/TIInit_7.2
.31.bts
158 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.ti-connectivity
161 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_3160
),y
)
162 LINUX_FIRMWARE_FILES
+= iwlwifi-3160-
$(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_REV
).ucode
163 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.iwlwifi_firmware
166 # iwlwifi 5000. Multiple files are available (iwlwifi-5000-1.ucode,
167 # iwlwifi-5000-2.ucode, iwlwifi-5000-5.ucode), corresponding to
168 # different versions of the firmware API. For now, we only install the
170 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_5000
),y
)
171 LINUX_FIRMWARE_FILES
+= iwlwifi-5000-5.ucode
172 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.iwlwifi_firmware
175 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7260
),y
)
176 LINUX_FIRMWARE_FILES
+= iwlwifi-7260-
$(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_REV
).ucode
177 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.iwlwifi_firmware
180 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_7265
),y
)
181 LINUX_FIRMWARE_FILES
+= iwlwifi-7265-
$(BR2_PACKAGE_LINUX_FIRMWARE_IWLWIFI_REV
).ucode
182 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.iwlwifi_firmware
185 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BNX2X
),y
)
186 LINUX_FIRMWARE_FILES
+= \
187 bnx2x
/bnx2x-e1-7.10
.51.0.fw \
188 bnx2x
/bnx2x-e1h-7.10
.51.0.fw \
189 bnx2x
/bnx2x-e2-7.10
.51.0.fw
190 # No license file; the license is in the file WHENCE
191 # which is installed unconditionally
194 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_CXGB4
),y
)
195 # cxgb4/t4fw.bin is a symlink to cxgb4/t4fw-1.11.27.0.bin
196 LINUX_FIRMWARE_FILES
+= cxgb4
/t4fw-1.11
.27.0.bin cxgb4
/t4fw.bin
197 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.chelsio_firmware
200 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_XC5000
),y
)
201 LINUX_FIRMWARE_FILES
+= dvb-fe-xc5000-1.6
.114.fw
202 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.xc5000
205 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_AS102
),y
)
206 LINUX_FIRMWARE_FILES
+= as102_data1_st.hex as102_data2_st.hex
207 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.Abilis
210 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_DIB0700
),y
)
211 LINUX_FIRMWARE_FILES
+= dvb-usb-dib0700-1.20.fw
212 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENSE.dib0700
215 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_ITETECH_IT9135
),y
)
216 LINUX_FIRMWARE_FILES
+= dvb-usb-it9135-01.fw dvb-usb-it9135-02.fw
217 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.it913x
220 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_H5_DRXK
),y
)
221 LINUX_FIRMWARE_FILES
+= dvb-usb-terratec-h5-drxk.fw
222 # No license file; the license is in the file WHENCE
223 # which is installed unconditionally
227 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XX
),y
)
228 LINUX_FIRMWARE_FILES
+= brcm
/bcm43xx-0.fw brcm
/bcm43xx_hdr-0.fw \
229 brcm
/bcm4329-fullmac-4.bin brcm
/brcmfmac4329-sdio.bin \
230 brcm
/brcmfmac4330-sdio.bin brcm
/brcmfmac4334-sdio.bin \
231 brcm
/brcmfmac4335-sdio.bin
232 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.broadcom_bcm43xx
236 ifeq ($(BR2_PACKAGE_LINUX_FIRMWARE_BRCM_BCM43XXX
),y
)
237 LINUX_FIRMWARE_FILES
+= brcm
/brcmfmac43236b.bin brcm
/brcmfmac43241b0-sdio.bin \
238 brcm
/brcmfmac43241b4-sdio.bin brcm
/brcmfmac43362-sdio.bin
239 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= LICENCE.broadcom_bcm43xx
242 ifneq ($(LINUX_FIRMWARE_FILES
),)
244 # Most firmware files are under a proprietary license, so no need to
245 # repeat it for every selections above. Those firmwares that have more
246 # lax licensing terms may still add them on a per-case basis.
247 LINUX_FIRMWARE_LICENSE
+= Proprietary
249 # This file contains some licensing information about all the firmware
250 # files found in the linux-firmware package, so we always add it, even
251 # for firmwares that have their own licensing terms.
252 LINUX_FIRMWARE_ALL_LICENSE_FILES
+= WHENCE
254 # Some license files may be listed more than once, so we have to remove
256 LINUX_FIRMWARE_LICENSE_FILES
= $(sort $(LINUX_FIRMWARE_ALL_LICENSE_FILES
))
258 define LINUX_FIRMWARE_INSTALL_TARGET_CMDS
259 mkdir
-p
$(TARGET_DIR
)/lib
/firmware
260 $(TAR
) c
-C
$(@D
) $(sort $(LINUX_FIRMWARE_FILES
)) | \
261 $(TAR
) x
-C
$(TARGET_DIR
)/lib
/firmware
266 $(eval
$(generic-package
))