diff options
Diffstat (limited to 'import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb')
-rw-r--r-- | import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb | 89 |
1 files changed, 81 insertions, 8 deletions
diff --git a/import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb b/import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb index a4e64d549..8e68ae823 100644 --- a/import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb +++ b/import-layers/yocto-poky/meta/recipes-kernel/linux-firmware/linux-firmware_git.bb @@ -55,13 +55,14 @@ LICENSE = "\ & Firmware-xc4000 \ & Firmware-xc5000 \ & Firmware-xc5000c \ + & WHENCE \ " LIC_FILES_CHKSUM = "\ file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ - file://LICENSE.amdgpu;md5=a8592c24c2672062e03c7392fc7fe3bc \ + file://LICENSE.amdgpu;md5=3fe8a3430700a518990c3b3d75297209 \ file://LICENSE.amd-ucode;md5=3a0de451253cc1edbf30a3c621effee3 \ file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ @@ -97,7 +98,7 @@ LIC_FILES_CHKSUM = "\ file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ file://LICENSE.QualcommAtheros_ath10k;md5=b5fe244fb2b532311de1472a3bc06da5 \ file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ - file://LICENSE.radeon;md5=6c7f97c6c62bdd9596d0238bb205118c \ + file://LICENSE.radeon;md5=69612f4f7b141a97659cb1d609a1bde2 \ file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ @@ -111,6 +112,7 @@ LIC_FILES_CHKSUM = "\ file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ + file://WHENCE;md5=f514a0c53c5d73c2fe98d5861103f0c6 \ " # These are not common licenses, set NO_GENERIC_LICENSE for them @@ -168,13 +170,20 @@ NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" +NO_GENERIC_LICENSE[WHENCE] = "WHENCE" -SRCREV = "5f8ca0c1db6106a2d6d7e85eee778917ff03c3de" +SRCREV = "42ad5367dd38371b2a1bb263b6efa85f9b92fc93" PE = "1" PV = "0.0+git${SRCPV}" SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git" +# Some devices need a specific version, not the latest +SRC_URI += "https://git.kernel.org/cgit/linux/kernel/git/iwlwifi/linux-firmware.git/plain/iwlwifi-8000C-19.ucode;name=iwlwifi-19" + +SRC_URI[iwlwifi-19.md5sum] = "132fbaee36beec5e98714f0bd66f7a1d" +SRC_URI[iwlwifi-19.sha256sum] = "2034470df64d323b827c4f2d4d0d55be2846b7360179b5574aa28ff77b6c9471" + S = "${WORKDIR}/git" inherit allarch update-alternatives @@ -204,6 +213,9 @@ do_install() { # fixup wl12xx location, after 2.6.37 the kernel searches a different location for it ( cd ${D}/lib/firmware ; ln -sf ti-connectivity/* . ) + + # Copy the iwlwifi ucode + cp ${WORKDIR}/iwlwifi-8000C-19.ucode ${D}/lib/firmware/ } @@ -213,11 +225,12 @@ PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ ${PN}-ti-connectivity-license ${PN}-wl12xx ${PN}-wl18xx \ ${PN}-vt6656-license ${PN}-vt6656 \ ${PN}-rtl-license ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su \ - ${PN}-broadcom-license ${PN}-bcm4329 ${PN}-bcm4330 ${PN}-bcm4334 ${PN}-bcm43340 ${PN}-bcm4339 ${PN}-bcm4354 \ - ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ + ${PN}-broadcom-license ${PN}-bcm4329 ${PN}-bcm4330 ${PN}-bcm4334 ${PN}-bcm43340 ${PN}-bcm4339 ${PN}-bcm43430 ${PN}-bcm4354 \ + ${PN}-atheros-license ${PN}-ar9170 ${PN}-carl9170 ${PN}-ath6k ${PN}-ath9k \ ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k \ \ - ${PN}-iwlwifi-license ${PN}-iwlwifi-135-6 \ + ${PN}-iwlwifi-license ${PN}-iwlwifi \ + ${PN}-iwlwifi-135-6 \ ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ @@ -225,8 +238,11 @@ PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ ${PN}-iwlwifi-7260 \ ${PN}-iwlwifi-7265 \ ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ + ${PN}-iwlwifi-misc \ ${PN}-i915-license ${PN}-i915 \ ${PN}-adsp-sst-license ${PN}-adsp-sst \ + ${PN}-bnx2-mips \ + ${PN}-whence-license \ ${PN}-license \ " @@ -234,11 +250,15 @@ PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" +LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" FILES_${PN}-atheros-license = "/lib/firmware/LICENCE.atheros_firmware" FILES_${PN}-ar9170 = " \ /lib/firmware/ar9170*.fw \ " +FILES_${PN}-carl9170 = " \ + /lib/firmware/carl9170*.fw \ +" FILES_${PN}-ath6k = " \ /lib/firmware/ath6k \ " @@ -250,12 +270,15 @@ FILES_${PN}-ath9k = " \ " RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" +RDEPENDS_${PN}-carl9170 += "${PN}-atheros-license" RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" # For QualCommAthos LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" +LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" +LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" FILES_${PN}-ar3k-license = "/lib/firmware/LICENSE.QualcommAtheros_ar3k" FILES_${PN}-ar3k = " \ @@ -272,6 +295,7 @@ RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" # For ralink LICENSE_${PN}-ralink = "Firmware-ralink-firmware" +LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" FILES_${PN}-ralink-license = "/lib/firmware/LICENCE.ralink-firmware.txt" FILES_${PN}-ralink = " \ @@ -282,6 +306,7 @@ RDEPENDS_${PN}-ralink += "${PN}-ralink-license" # For radeon LICENSE_${PN}-radeon = "Firmware-radeon" +LICENSE_${PN}-radeon-license = "Firmware-radeon" FILES_${PN}-radeon-license = "/lib/firmware/LICENSE.radeon" FILES_${PN}-radeon = " \ @@ -295,6 +320,7 @@ LICENSE_${PN}-sd8686 = "Firmware-Marvell" LICENSE_${PN}-sd8688 = "Firmware-Marvell" LICENSE_${PN}-sd8787 = "Firmware-Marvell" LICENSE_${PN}-sd8797 = "Firmware-Marvell" +LICENSE_${PN}-marvell-license = "Firmware-Marvell" FILES_${PN}-marvell-license = "/lib/firmware/LICENCE.Marvell" FILES_${PN}-sd8686 = " \ @@ -321,6 +347,7 @@ RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" FILES_${PN}-rtl-license = " \ /lib/firmware/LICENCE.rtlwifi_firmware.txt \ @@ -342,6 +369,7 @@ RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" # For ti-connectivity LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" +LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" FILES_${PN}-ti-connectivity-license = "/lib/firmware/LICENCE.ti-connectivity" FILES_${PN}-wl12xx = " \ @@ -360,6 +388,7 @@ RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license" # For vt6656 LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" +LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" FILES_${PN}-vt6656-license = "/lib/firmware/LICENCE.via_vt6656" FILES_${PN}-vt6656 = " \ @@ -379,7 +408,9 @@ LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" LICENSE_${PN}-bcm43340 = "Firmware-broadcom_bcm43xx" LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" +LICENSE_${PN}-bcm43430 = "Firmware-broadcom_bcm43xx" LICENSE_${PN}-bcm4354 = "Firmware-broadcom_bcm43xx" +LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" FILES_${PN}-broadcom-license = " \ /lib/firmware/LICENCE.broadcom_bcm43xx \ @@ -399,6 +430,9 @@ FILES_${PN}-bcm43340 = " \ FILES_${PN}-bcm4339 = " \ /lib/firmware/brcm/brcmfmac4339-sdio.bin \ " +FILES_${PN}-bcm43430 = " \ + /lib/firmware/brcm/brcmfmac43430-sdio.bin \ +" FILES_${PN}-bcm4354 = " \ /lib/firmware/brcm/brcmfmac4354-sdio.bin \ " @@ -417,15 +451,33 @@ ALTERNATIVE_linux-firmware-bcm4330 = "brcmfmac-sdio.bin" ALTERNATIVE_TARGET_linux-firmware-bcm4330[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4330-sdio.bin" ALTERNATIVE_linux-firmware-bcm4339 = "brcmfmac-sdio.bin" ALTERNATIVE_TARGET_linux-firmware-bcm4339[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac4339-sdio.bin" +ALTERNATIVE_PRIORITY_linux-firmware-bcm4339[brcmfmac-sdio.bin] = "20" +ALTERNATIVE_linux-firmware-bcm43430 = "brcmfmac-sdio.bin" +ALTERNATIVE_TARGET_linux-firmware-bcm43430[brcmfmac-sdio.bin] = "/lib/firmware/brcm/brcmfmac43430-sdio.bin" RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" RDEPENDS_${PN}-bcm43340 += "${PN}-broadcom-license" RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" +RDEPENDS_${PN}-bcm43430 += "${PN}-broadcom-license" RDEPENDS_${PN}-bcm4354 += "${PN}-broadcom-license" +# For Broadcom bnx2-mips +# +# which is a separate case to the other Broadcom firmwares since its +# license is contained in the shared WHENCE file. + +LICENSE_${PN}-bnx2-mips = "WHENCE" +LICENSE_${PN}-whence-license = "WHENCE" + +FILES_${PN}-bnx2-mips = "/lib/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" +FILES_${PN}-whence-license = "/lib/firmware/WHENCE" + +RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" + # For iwlwifi +LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" @@ -433,7 +485,7 @@ LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" @@ -442,6 +494,8 @@ LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" FILES_${PN}-iwlwifi-license = "/lib/firmware/LICENCE.iwlwifi_firmware" @@ -461,6 +515,7 @@ FILES_${PN}-iwlwifi-7265 = "/lib/firmware/iwlwifi-7265-*.ucode" FILES_${PN}-iwlwifi-7265d = "/lib/firmware/iwlwifi-7265D-*.ucode" FILES_${PN}-iwlwifi-8000c = "/lib/firmware/iwlwifi-8000C-*.ucode" FILES_${PN}-iwlwifi-8265 = "/lib/firmware/iwlwifi-8265-*.ucode" +FILES_${PN}-iwlwifi-misc = "/lib/firmware/iwlwifi-*.ucode" RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" @@ -469,7 +524,7 @@ RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" @@ -478,6 +533,15 @@ RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" + +# -iwlwifi-misc is a "catch all" package that includes all the iwlwifi +# firmwares that are not already included in other -iwlwifi- packages. +# -iwlwifi is a virtual package that depends upon all iwlwifi packages. +# These are distinct in order to allow the -misc firmwares to be installed +# without pulling in every other iwlwifi package. +ALLOW_EMPTY_${PN}-iwlwifi = "1" +ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" # Handle package updating for the newly merged iwlwifi groupings RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" @@ -489,12 +553,14 @@ RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}- RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" LICENSE_${PN}-i915 = "Firmware-i915" +LICENSE_${PN}-i915-license = "Firmware-i915" FILES_${PN}-i915-license = "/lib/firmware/LICENSE.i915" FILES_${PN}-i915 = "/lib/firmware/i915" RDEPENDS_${PN}-i915 = "${PN}-i915-license" FILES_${PN}-adsp-sst-license = "/lib/firmware/LICENCE.adsp_sst" LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" +LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" FILES_${PN}-adsp-sst = "/lib/firmware/intel/dsp_fw*" RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" @@ -534,6 +600,7 @@ LICENSE_${PN} = "\ & Firmware-r8a779x_usb3 \ & Firmware-radeon \ & Firmware-ralink_a_mediatek_company_firmware \ + & Firmware-ralink-firmware \ & Firmware-siano \ & Firmware-tda7706-firmware \ & Firmware-ti-connectivity \ @@ -543,14 +610,20 @@ LICENSE_${PN} = "\ & Firmware-xc4000 \ & Firmware-xc5000 \ & Firmware-xc5000c \ + & WHENCE \ " FILES_${PN}-license += "/lib/firmware/LICEN*" FILES_${PN} += "/lib/firmware/*" RDEPENDS_${PN} += "${PN}-license" +RDEPENDS_${PN} += "${PN}-whence-license" # Make linux-firmware depend on all of the split-out packages. +# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. python populate_packages_prepend () { firmware_pkgs = oe.utils.packages_filter_out_system(d) d.appendVar('RDEPENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) + + iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) + d.appendVar('RDEPENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) } |