diff mbox series

[6/6] linux-firmware: RPROVIDE qcs6490 firmware packages by qcm6490 ones

Message ID 20241102-fix-qcm6490-firmware-v1-6-3465b5c9136d@linaro.org
State New
Headers show
Series linux-firmware: fix and improve Qualcomm QCM6490 / QCS6490 firmware | expand

Commit Message

Dmitry Baryshkov Nov. 2, 2024, 12:22 a.m. UTC
Qualcomm QCS6490 is a modemless variant of the QCM6490 platform. These
two platforms share most of the firmware binaries (except the IPA one).
Rather than providing complete packages, include compat symlinks into
qcom-qcm6490 firmware packages and add RPROVIDES to let other layers /
configurations use qcs6490 names to install qcm6490 packages.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
 ...01-qcom-Add-link-for-QCS6490-GPU-firmware.patch | 31 ++++++++++++++++++++++
 .../linux-firmware/linux-firmware_20241017.bb      | 12 ++++++---
 2 files changed, 39 insertions(+), 4 deletions(-)
diff mbox series

Patch

diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware/0001-qcom-Add-link-for-QCS6490-GPU-firmware.patch b/meta/recipes-kernel/linux-firmware/linux-firmware/0001-qcom-Add-link-for-QCS6490-GPU-firmware.patch
new file mode 100644
index 0000000000000000000000000000000000000000..7a07ef97f114101b34115ffc255cd36a1581a877
--- /dev/null
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware/0001-qcom-Add-link-for-QCS6490-GPU-firmware.patch
@@ -0,0 +1,31 @@ 
+From 62fa39d0b4384be8f14d837ea79183ad93d0996c Mon Sep 17 00:00:00 2001
+From: Akhil P Oommen <quic_akhilpo@quicinc.com>
+Date: Fri, 1 Nov 2024 21:52:24 +0530
+Subject: [PATCH] qcom: Add link for QCS6490 GPU firmware
+
+Create a symlink between qcom/qcm6490/a660_zap.mbn and
+qcom/qcs6490/a660_zap.mbn.
+
+Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
+Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
+Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
+Upstream-Status: Submitted [https://lore.kernel.org/linux-firmware/ctvtlkh4t54wdtwcw3jnbyi7xwks534k5ksvjtv6pt2zrr72wn@h5k6vfk7bzqe]
+---
+ WHENCE | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/WHENCE b/WHENCE
+index bdee94fe33fc..b7ef9bdd5b59 100644
+--- a/WHENCE
++++ b/WHENCE
+@@ -6145,6 +6145,7 @@ File: qcom/sm8250/a650_zap.mbn
+ File: qcom/a660_gmu.bin
+ File: qcom/a660_sqe.fw
+ File: qcom/qcm6490/a660_zap.mbn
++Link: qcom/qcs6490/a660_zap.mbn -> ../qcm6490/a660_zap.mbn
+ File: qcom/a702_sqe.fw
+ File: qcom/leia_pfp_470.fw
+ File: qcom/leia_pm4_470.fw
+-- 
+2.39.5
+
diff --git a/meta/recipes-kernel/linux-firmware/linux-firmware_20241017.bb b/meta/recipes-kernel/linux-firmware/linux-firmware_20241017.bb
index 97e89b52c27e144f74f8eac22851a6c0bc7c929b..708c28b6320591bb361c0e08ae47a1a3040a5f6c 100644
--- a/meta/recipes-kernel/linux-firmware/linux-firmware_20241017.bb
+++ b/meta/recipes-kernel/linux-firmware/linux-firmware_20241017.bb
@@ -158,7 +158,7 @@  LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
                     "
 # WHENCE checksum is defined separately to ease overriding it if
 # class-devupstream is selected.
-WHENCE_CHKSUM  = "f82849fb6325a8a14e21a4feacc5ebb0"
+WHENCE_CHKSUM  = "7dde9aa13fc4707189ecd7d35ee94d92"
 
 # These are not common licenses, set NO_GENERIC_LICENSE for them
 # so that the license files will be copied from fetched source
@@ -240,6 +240,7 @@  PE = "1"
 
 SRC_URI = "\
   ${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz \
+  file://0001-qcom-Add-link-for-QCS6490-GPU-firmware.patch \
 "
 
 BBCLASSEXTEND = "devupstream:target"
@@ -1504,9 +1505,9 @@  FILES:${PN}-qcom-qcm2290-adreno = "${nonarch_base_libdir}/firmware/qcom/qcm2290/
 FILES:${PN}-qcom-qcm2290-audio = "${nonarch_base_libdir}/firmware/qcom/qcm2290/adsp*.*"
 FILES:${PN}-qcom-qcm2290-modem = "${nonarch_base_libdir}/firmware/qcom/qcm2290/modem*.*"
 FILES:${PN}-qcom-qcm2290-wifi = "${nonarch_base_libdir}/firmware/qcom/qcm2290/wlanmdsp.mbn* ${nonarch_base_libdir}/firmware/ath10k/WCN3990/hw1.0/qcm2290/*"
-FILES:${PN}-qcom-qcm6490-adreno = "${nonarch_base_libdir}/firmware/qcom/qcm6490/a660_zap.mbn*"
-FILES:${PN}-qcom-qcm6490-audio = "${nonarch_base_libdir}/firmware/qcom/qcm6490/adsp*.* ${nonarch_base_libdir}/firmware/qcom/qcm6490/battmgr.jsn"
-FILES:${PN}-qcom-qcm6490-compute = "${nonarch_base_libdir}/firmware/qcom/qcm6490/cdsp*.*"
+FILES:${PN}-qcom-qcm6490-adreno = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/a660_zap.mbn*"
+FILES:${PN}-qcom-qcm6490-audio = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/adsp*.* ${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/battmgr.jsn"
+FILES:${PN}-qcom-qcm6490-compute = "${nonarch_base_libdir}/firmware/qcom/qc[ms]6490/cdsp*.*"
 FILES:${PN}-qcom-qcm6490-ipa = "${nonarch_base_libdir}/firmware/qcom/qcm6490/ipa_fws.mbn"
 FILES:${PN}-qcom-qrb4210-adreno = "${nonarch_base_libdir}/firmware/qcom/qrb4210/a610_zap.mbn*"
 FILES:${PN}-qcom-qrb4210-audio = "${nonarch_base_libdir}/firmware/qcom/qrb4210/adsp*.*"
@@ -1559,8 +1560,11 @@  RDEPENDS:${PN}-qcom-qcm2290-audio = "${PN}-qcom-license"
 RDEPENDS:${PN}-qcom-qcm2290-modem = "${PN}-qcom-license"
 RDEPENDS:${PN}-qcom-qcm2290-wifi = "${PN}-qcom-license"
 RDEPENDS:${PN}-qcom-qcm6490-adreno = "${PN}-qcom-license"
+RPROVIDES:${PN}-qcom-qcm6490-adreno = "${PN}-qcom-qcs6490-adreno"
 RDEPENDS:${PN}-qcom-qcm6490-audio = "${PN}-qcom-license"
+RPROVIDES:${PN}-qcom-qcm6490-audio = "${PN}-qcom-qcs6490-audio"
 RDEPENDS:${PN}-qcom-qcm6490-compute = "${PN}-qcom-license"
+RPROVIDES:${PN}-qcom-qcm6490-compute = "${PN}-qcom-qcs6490-compute"
 RDEPENDS:${PN}-qcom-qcm6490-ipa = "${PN}-qcom-license"
 RDEPENDS:${PN}-qcom-qrb4210-adreno = "${PN}-qcom-license"
 RDEPENDS:${PN}-qcom-qrb4210-audio = "${PN}-qcom-license"