summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux-firmware
diff options
context:
space:
mode:
authorTudor Florea <tudor.florea@enea.com>2015-10-09 22:59:03 +0200
committerTudor Florea <tudor.florea@enea.com>2015-10-09 22:59:03 +0200
commit972dcfcdbfe75dcfeb777150c136576cf1a71e99 (patch)
tree97a61cd7e293d7ae9d56ef7ed0f81253365bb026 /meta/recipes-kernel/linux-firmware
downloadpoky-972dcfcdbfe75dcfeb777150c136576cf1a71e99.tar.gz
initial commit for Enea Linux 5.0 arm
Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta/recipes-kernel/linux-firmware')
-rw-r--r--meta/recipes-kernel/linux-firmware/linux-firmware_git.bb230
1 files changed, 230 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
new file mode 100644
index 0000000000..a107f804fa
--- /dev/null
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb
@@ -0,0 +1,230 @@
1SUMMARY = "Firmware files for use with Linux kernel"
2SECTION = "kernel"
3# Notes:
4# This is kind of a mess. Each bit of firmware has their own license. Some free
5# some not. Leaving this as Proprietary for now, but this recipe should be probably
6# be rethought out a bit more around how it deals with licenses.
7
8LICENSE = "Proprietary"
9
10LIC_FILES_CHKSUM = "file://LICENSE.radeon;md5=07b0c31777bd686d8e1609c6940b5e74\
11 file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \
12 file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \
13 file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \
14 file://LICENCE.qla2xxx;md5=f5ce8529ec5c17cb7f911d2721d90e91 \
15 file://LICENCE.iwlwifi_firmware;md5=8b938534f77ffd453690eb34ed84ae8b \
16 file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \
17 file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \
18 file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \
19 file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \
20 file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \
21 file://LICENCE.ti-connectivity;md5=186e7a43cf6c274283ad81272ca218ea \
22 file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \
23 file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \
24 file://LICENCE.Marvell;md5=9ddea1734a4baf3c78d845151f42a37a \
25 "
26
27SRCREV = "dec41bce44e0dff6a2c3358a958fadf22bf58858"
28PE = "1"
29PV = "0.0+git${SRCPV}"
30
31SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"
32
33S = "${WORKDIR}/git"
34
35inherit allarch update-alternatives
36
37do_compile() {
38 :
39}
40
41do_install() {
42 install -d ${D}/lib/firmware/
43 cp -r * ${D}/lib/firmware/
44
45 # Avoid Makefile to be deplyed
46 rm ${D}/lib/firmware/Makefile
47
48 # Remove unbuild firmware which needs cmake and bash
49 rm ${D}/lib/firmware/carl9170fw -rf
50
51 # Remove pointless bash script
52 rm ${D}/lib/firmware/configure
53
54 # Libertas sd8686
55 ln -sf libertas/sd8686_v9.bin ${D}/lib/firmware/sd8686.bin
56 ln -sf libertas/sd8686_v9_helper.bin ${D}/lib/firmware/sd8686_helper.bin
57
58 # fixup wl12xx location, after 2.6.37 the kernel searches a different location for it
59 ( cd ${D}/lib/firmware ; ln -sf ti-connectivity/* . )
60}
61
62
63PACKAGES =+ "${PN}-ralink \
64 ${PN}-radeon \
65 ${PN}-marvell-license ${PN}-sd8686 ${PN}-sd8787 ${PN}-sd8797 \
66 ${PN}-wl12xx ${PN}-wl18xx ${PN}-vt6656 \
67 ${PN}-rtl-license ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su \
68 ${PN}-broadcom-license ${PN}-bcm4329 ${PN}-bcm4330 ${PN}-bcm4334 \
69 ${PN}-atheros-license ${PN}-ar9170 ${PN}-ar3k ${PN}-ath6k ${PN}-ath9k \
70 ${PN}-iwlwifi-license ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2b-6 ${PN}-iwlwifi-7260-7 \
71 ${PN}-iwlwifi-6000g2a-6 ${PN}-iwlwifi-135-6"
72
73
74FILES_${PN}-atheros-license = "/lib/firmware/LICENCE.atheros_firmware"
75
76LICENSE_${PN}-9170 = "Firmware-atheros_firmware"
77FILES_${PN}-ar9170 = " \
78 /lib/firmware/ar9170*.fw \
79"
80RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license"
81
82LICENSE_${PN}-ar3k = "Firmware-atheros_firmware"
83FILES_${PN}-ar3k = " \
84 /lib/firmware/ar3k \
85"
86RDEPENDS_${PN}-ath6k += "${PN}-atheros-license"
87
88LICENSE_${PN}-ath6k = "Firmware-atheros_firmware"
89FILES_${PN}-ath6k = " \
90 /lib/firmware/ath6k \
91"
92RDEPENDS_${PN}-ath6k += "${PN}-atheros-license"
93
94LICENSE_${PN}-ath9k = "Firmware-atheros_firmware"
95FILES_${PN}-ath9k = " \
96 /lib/firmware/ar9271.fw \
97 /lib/firmware/ar7010*.fw \
98 /lib/firmware/htc_9271.fw \
99 /lib/firmware/htc_7010.fw \
100"
101RDEPENDS_${PN}-ath9k += "${PN}-atheros-license"
102
103LICENSE_${PN}-ralink = "Firmware-ralink"
104FILES_${PN}-ralink = " \
105 /lib/firmware/rt*.bin \
106 /lib/firmware/LICENCE.ralink-firmware.txt \
107"
108
109LICENSE_${PN}-radeon = "Firmware-radeon"
110FILES_${PN}-radeon = " \
111 /lib/firmware/radeon \
112 /lib/firmware/LICENCE.radeon \
113"
114
115FILES_${PN}-marvell-license = "/lib/firmware/LICENCE.Marvell"
116
117LICENSE_${PN}-sd8686 = "Firmware-Marvell"
118FILES_${PN}-sd8686 = " \
119 /lib/firmware/libertas/sd8686_v9* \
120 /lib/firmware/sd8686* \
121"
122RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license"
123
124LICENSE_${PN}-sd8787 = "Firmware-Marvell"
125FILES_${PN}-sd8787 = " \
126 /lib/firmware/mrvl/sd8787_uapsta.bin \
127"
128RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license"
129
130LICENSE_${PN}-sd8797 = "Firmware-Marvell"
131FILES_${PN}-sd8797 = " \
132 /lib/firmware/mrvl/sd8797_uapsta.bin \
133"
134RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license"
135
136FILES_${PN}-rtl-license = " \
137 /lib/firmware/LICENCE.rtlwifi_firmware.txt \
138"
139
140LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi"
141FILES_${PN}-rtl8192cu = " \
142 /lib/firmware/rtlwifi/rtl8192cufw.bin \
143"
144RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license"
145
146LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi"
147FILES_${PN}-rtl8192ce = " \
148 /lib/firmware/rtlwifi/rtl8192cfw.bin \
149"
150RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license"
151
152
153LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi"
154FILES_${PN}-rtl8192su = " \
155 /lib/firmware/rtlwifi/rtl8712u.bin \
156"
157
158LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity"
159FILES_${PN}-wl12xx = " \
160 /lib/firmware/wl12* \
161 /lib/firmware/TI* \
162 /lib/firmware/ti-connectivity \
163"
164
165LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity"
166FILES_${PN}-wl18xx = " \
167 /lib/firmware/wl18* \
168 /lib/firmware/TI* \
169 /lib/firmware/ti-connectivity \
170"
171
172LICENSE_${PN}-vt6656 = "Firmware-via_vt6656"
173FILES_${PN}-vt6656 = " \
174 /lib/firmware/vntwusb.fw \
175"
176
177# WARNING: The ALTERNATIVE_* variables are not using ${PN} because of
178# a bug in bitbake; when this is fixed and bitbake learns how to proper
179# pass variable flags with expansion we can rework this patch.
180
181ALTERNATIVE_LINK_NAME[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac-sdio.bin"
182
183FILES_${PN}-broadcom-license = " \
184 /lib/firmware/LICENCE.broadcom_bcm43xx \
185"
186
187LICENSE_${PN}-bcm4329 = "Firmware-bcm4329"
188FILES_${PN}-bcm4329 = " \
189 /lib/firmware/brcm/brcmfmac4329-sdio.bin \
190"
191RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license"
192ALTERNATIVE_linux-firmware-bcm4329 = "brcmfmac-sdio.bin"
193ALTERNATIVE_TARGET_linux-firmware-bcm4329[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4329-sdio.bin"
194
195LICENSE_${PN}-bcm4330 = "Firmware-bcm4330"
196FILES_${PN}-bcm4330 = " \
197 /lib/firmware/brcm/brcmfmac4330-sdio.bin \
198"
199RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license"
200ALTERNATIVE_linux-firmware-bcm4330 = "brcmfmac-sdio.bin"
201ALTERNATIVE_TARGET_linux-firmware-bcm4330[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4330-sdio.bin"
202
203LICENSE_${PN}-bcm4334 = "Firmware-bcm4334"
204FILES_${PN}-bcm4334 = " \
205 /lib/firmware/brcm/brcmfmac4334-sdio.bin \
206"
207RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license"
208ALTERNATIVE_linux-firmware-bcm4334 = "brcmfmac-sdio.bin"
209ALTERNATIVE_TARGET_linux-firmware-bcm4334[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4334-sdio.bin"
210
211RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license"
212RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license"
213RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license"
214RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license"
215RDEPENDS_${PN}-iwlwifi-7260-7 = "${PN}-iwlwifi-license"
216
217FILES_${PN}-iwlwifi-license = "/lib/firmware/LICENCE.iwlwifi_firmware"
218FILES_${PN}-iwlwifi-6000g2a-5 = "/lib/firmware/iwlwifi-6000g2a-5.ucode"
219FILES_${PN}-iwlwifi-6000g2a-6 = "/lib/firmware/iwlwifi-6000g2a-6.ucode"
220FILES_${PN}-iwlwifi-6000g2b-6 = "/lib/firmware/iwlwifi-6000g2b-6.ucode"
221FILES_${PN}-iwlwifi-135-6 = "/lib/firmware/iwlwifi-135-6.ucode"
222FILES_${PN}-iwlwifi-7260-7 = "/lib/firmware/iwlwifi-7260-7.ucode"
223
224FILES_${PN} += "/lib/firmware/*"
225
226# Make linux-firmware depend on all of the split-out packages.
227python populate_packages_prepend () {
228 firmware_pkgs = oe.utils.packages_filter_out_system(d)
229 d.appendVar('RDEPENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs))
230}