summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Ferland <marc.ferland@sonatest.com>2025-01-20 10:46:04 -0500
committerRoss Burton <ross.burton@arm.com>2025-01-23 12:14:29 +0000
commit86b2a17985af6a95d512da62ab7595c1999e6c21 (patch)
treeb661729c8788dc4681cb6324c96acd26e4f5eff8
parent82cc1808a35276e2cecb8a74f3e38b5711e76c48 (diff)
downloadpoky-86b2a17985af6a95d512da62ab7595c1999e6c21.tar.gz
linux-firmware: split ath11k firmwares in separate packages
This patch introduces the following packages for ath11k based chips: - linux-firmware-ath11k-ipq5018 - linux-firmware-ath11k-ipq6018 - linux-firmware-ath11k-ipq8074 - linux-firmware-ath11k-qca2066 - linux-firmware-ath11k-qca6390 - linux-firmware-ath11k-qcn9074 - linux-firmware-ath11k-wcn6750 - linux-firmware-ath11k-wcn6855 - linux-firmware-ath11k-misc: catches all firmwares that are not already included in the other -ath11k- packages (currently empty). linux-firmware-ath11k is now a meta package that depends on all of the split-out ath11k packages. (From OE-Core rev: 635f0cc49f91b79b1cee40e2825514d7ce474d32) Signed-off-by: Marc Ferland <marc.ferland@sonatest.com> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
-rw-r--r--meta/recipes-kernel/linux-firmware/linux-firmware_20250109.bb52
1 files changed, 48 insertions, 4 deletions
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20250109.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20250109.bb
index da253219c0..8211bd1eb1 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_20250109.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20250109.bb
@@ -357,7 +357,17 @@ PACKAGES =+ "${PN}-amphion-vpu-license ${PN}-amphion-vpu \
357 ${PN}-ath10k-qca99x0 \ 357 ${PN}-ath10k-qca99x0 \
358 ${PN}-ath10k-wcn3990 \ 358 ${PN}-ath10k-wcn3990 \
359 ${PN}-ath10k-misc \ 359 ${PN}-ath10k-misc \
360 ${PN}-ath11k ${PN}-ath12k ${PN}-qca \ 360 ${PN}-ath11k \
361 ${PN}-ath11k-ipq5018 \
362 ${PN}-ath11k-ipq6018 \
363 ${PN}-ath11k-ipq8074 \
364 ${PN}-ath11k-qca2066 \
365 ${PN}-ath11k-qca6390 \
366 ${PN}-ath11k-qcn9074 \
367 ${PN}-ath11k-wcn6750 \
368 ${PN}-ath11k-wcn6855 \
369 ${PN}-ath11k-misc \
370 ${PN}-ath12k ${PN}-qca \
361 \ 371 \
362 ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ 372 ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \
363 \ 373 \
@@ -529,6 +539,16 @@ LICENSE:${PN}-ath10k-qca99x0 = "Firmware-qualcommAthos_ath10k"
529LICENSE:${PN}-ath10k-wcn3990 = "Firmware-qualcommAthos_ath10k" 539LICENSE:${PN}-ath10k-wcn3990 = "Firmware-qualcommAthos_ath10k"
530LICENSE:${PN}-ath10k-misc = "Firmware-qualcommAthos_ath10k" 540LICENSE:${PN}-ath10k-misc = "Firmware-qualcommAthos_ath10k"
531LICENSE:${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" 541LICENSE:${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k"
542LICENSE:${PN}-ath11k = "Firmware-qualcommAthos_ath10k"
543LICENSE:${PN}-ath11k-ipq5018 = "Firmware-qualcommAthos_ath10k"
544LICENSE:${PN}-ath11k-ipq6018 = "Firmware-qualcommAthos_ath10k"
545LICENSE:${PN}-ath11k-ipq8074 = "Firmware-qualcommAthos_ath10k"
546LICENSE:${PN}-ath11k-qca2066 = "Firmware-qualcommAthos_ath10k"
547LICENSE:${PN}-ath11k-qca6390 = "Firmware-qualcommAthos_ath10k"
548LICENSE:${PN}-ath11k-qcn9074 = "Firmware-qualcommAthos_ath10k"
549LICENSE:${PN}-ath11k-wcn6750 = "Firmware-qualcommAthos_ath10k"
550LICENSE:${PN}-ath11k-wcn6855 = "Firmware-qualcommAthos_ath10k"
551LICENSE:${PN}-ath11k-misc = "Firmware-qualcommAthos_ath10k"
532LICENSE:${PN}-qca = "Firmware-qualcommAthos_ath10k" 552LICENSE:${PN}-qca = "Firmware-qualcommAthos_ath10k"
533 553
534FILES:${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" 554FILES:${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k"
@@ -553,9 +573,20 @@ ALLOW_EMPTY:${PN}-ath10k = "1"
553# firmwares that are not already included in other -ath10k- packages. 573# firmwares that are not already included in other -ath10k- packages.
554ALLOW_EMPTY:${PN}-ath10k-misc = "1" 574ALLOW_EMPTY:${PN}-ath10k-misc = "1"
555 575
556FILES:${PN}-ath11k = " \ 576FILES:${PN}-ath11k-ipq5018 = "${nonarch_base_libdir}/firmware/ath11k/IPQ5018"
557 ${nonarch_base_libdir}/firmware/ath11k \ 577FILES:${PN}-ath11k-ipq6018 = "${nonarch_base_libdir}/firmware/ath11k/IPQ6018"
558" 578FILES:${PN}-ath11k-ipq8074 = "${nonarch_base_libdir}/firmware/ath11k/IPQ8074"
579FILES:${PN}-ath11k-qca2066 = "${nonarch_base_libdir}/firmware/ath11k/QCA2066"
580FILES:${PN}-ath11k-qca6390 = "${nonarch_base_libdir}/firmware/ath11k/QCA6390"
581FILES:${PN}-ath11k-qcn9074 = "${nonarch_base_libdir}/firmware/ath11k/QCN9074"
582FILES:${PN}-ath11k-wcn6750 = "${nonarch_base_libdir}/firmware/ath11k/WCN6750"
583FILES:${PN}-ath11k-wcn6855 = "${nonarch_base_libdir}/firmware/ath11k/WCN6855"
584FILES:${PN}-ath11k-misc = "${nonarch_base_libdir}/firmware/ath11k/*"
585# -ath11k is a virtual package that depends upon all ath11k packages.
586ALLOW_EMPTY:${PN}-ath11k = "1"
587# -ath11k-misc is a catch all package that includes all the ath11k
588# firmwares that are not already included in other -ath11k- packages.
589ALLOW_EMPTY:${PN}-ath11k-misc = "1"
559 590
560FILES:${PN}-ath12k = " \ 591FILES:${PN}-ath12k = " \
561 ${nonarch_base_libdir}/firmware/ath12k \ 592 ${nonarch_base_libdir}/firmware/ath12k \
@@ -578,6 +609,15 @@ RDEPENDS:${PN}-ath10k-qca99x0 += "${PN}-ath10k-license"
578RDEPENDS:${PN}-ath10k-wcn3990 += "${PN}-ath10k-license" 609RDEPENDS:${PN}-ath10k-wcn3990 += "${PN}-ath10k-license"
579RDEPENDS:${PN}-ath10k-misc += "${PN}-ath10k-license" 610RDEPENDS:${PN}-ath10k-misc += "${PN}-ath10k-license"
580RDEPENDS:${PN}-ath11k += "${PN}-ath10k-license" 611RDEPENDS:${PN}-ath11k += "${PN}-ath10k-license"
612RDEPENDS:${PN}-ath11k-ipq5018 += "${PN}-ath10k-license"
613RDEPENDS:${PN}-ath11k-ipq6018 += "${PN}-ath10k-license"
614RDEPENDS:${PN}-ath11k-ipq8074 += "${PN}-ath10k-license"
615RDEPENDS:${PN}-ath11k-qca2066 += "${PN}-ath10k-license"
616RDEPENDS:${PN}-ath11k-qca6390 += "${PN}-ath10k-license"
617RDEPENDS:${PN}-ath11k-qcn9074 += "${PN}-ath10k-license"
618RDEPENDS:${PN}-ath11k-wcn6750 += "${PN}-ath10k-license"
619RDEPENDS:${PN}-ath11k-wcn6855 += "${PN}-ath10k-license"
620RDEPENDS:${PN}-ath11k-misc += "${PN}-ath10k-license"
581RDEPENDS:${PN}-ath12k += "${PN}-ath10k-license" 621RDEPENDS:${PN}-ath12k += "${PN}-ath10k-license"
582RDEPENDS:${PN}-qca += "${PN}-ath10k-license" 622RDEPENDS:${PN}-qca += "${PN}-ath10k-license"
583 623
@@ -1734,6 +1774,7 @@ RDEPENDS:${PN} += "${PN}-whence-license"
1734# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. 1774# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages.
1735# Make linux-firmware-ibt depend on all of the split-out ibt packages. 1775# Make linux-firmware-ibt depend on all of the split-out ibt packages.
1736# Make linux-firmware-ath10k depend on all of the split-out ath10k packages. 1776# Make linux-firmware-ath10k depend on all of the split-out ath10k packages.
1777# Make linux-firmware-ath11k depend on all of the split-out ath11k packages.
1737python populate_packages:prepend () { 1778python populate_packages:prepend () {
1738 firmware_pkgs = oe.utils.packages_filter_out_system(d) 1779 firmware_pkgs = oe.utils.packages_filter_out_system(d)
1739 d.appendVar('RRECOMMENDS:linux-firmware', ' ' + ' '.join(firmware_pkgs)) 1780 d.appendVar('RRECOMMENDS:linux-firmware', ' ' + ' '.join(firmware_pkgs))
@@ -1746,6 +1787,9 @@ python populate_packages:prepend () {
1746 1787
1747 ath10k_pkgs = filter(lambda x: x.find('-ath10k-') != -1, firmware_pkgs) 1788 ath10k_pkgs = filter(lambda x: x.find('-ath10k-') != -1, firmware_pkgs)
1748 d.appendVar('RRECOMMENDS:linux-firmware-ath10k', ' ' + ' '.join(ath10k_pkgs)) 1789 d.appendVar('RRECOMMENDS:linux-firmware-ath10k', ' ' + ' '.join(ath10k_pkgs))
1790
1791 ath11k_pkgs = filter(lambda x: x.find('-ath11k-') != -1, firmware_pkgs)
1792 d.appendVar('RRECOMMENDS:linux-firmware-ath11k', ' ' + ' '.join(ath11k_pkgs))
1749} 1793}
1750 1794
1751# Firmware files are generally not ran on the CPU, so they can be 1795# Firmware files are generally not ran on the CPU, so they can be