Skip to content

Commit

Permalink
Merge branch 'master' into qcm6490_rproc
Browse files Browse the repository at this point in the history
  • Loading branch information
adhudase committed Apr 25, 2024
2 parents 1a61ffa + 50629dd commit c4be2df
Show file tree
Hide file tree
Showing 44 changed files with 1,149 additions and 960 deletions.
2 changes: 1 addition & 1 deletion conf/machine/qcom-armv8a.conf
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ KERNEL_DEVICETREE ?= " \
# These DT are not upstreamed (yet) and currenty exist only as a patches against linux-yocto
KERNEL_DEVICETREE:append:pn-linux-yocto = " \
qcom/qcm6490-idp.dtb \
qcom/qcm6490-rb3.dtb \
qcom/qcs6490-rb3gen2.dtb \
"

QCOM_BOOTIMG_PAGE_SIZE[apq8016-sbc] ?= "2048"
Expand Down
22 changes: 22 additions & 0 deletions recipes-bsp/firmware-woa/files/adspr.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "adsp",
"subdomain": "root_pd",
"qmi_instance_id": 74
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0,
"dcomment": "data can be used to configure ACK timeout.Make data_valid 1 as well.Unit is second"
}
]
}
29 changes: 29 additions & 0 deletions recipes-bsp/firmware-woa/files/adspua.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "adsp",
"subdomain": "audio_pd",
"qmi_instance_id": 74
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0,
"dcomment": "data can be used to configure ACK timeout.Make data_valid 1 as well.Unit is second"
},
{
"provider": "avs",
"service": "audio",
"service_data_valid": 0,
"service_data": 0,
"dcomment": "No comment"
}
]
}
22 changes: 22 additions & 0 deletions recipes-bsp/firmware-woa/files/battmgr.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "adsp",
"subdomain": "charger_pd",
"qmi_instance_id": 74
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0,
"dcomment": "data can be used to configure ACK timeout.Make data_valid 1 as well.Unit is second"
}
]
}
22 changes: 22 additions & 0 deletions recipes-bsp/firmware-woa/files/cdspr.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "cdsp",
"subdomain": "root_pd",
"qmi_instance_id": 76
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0,
"dcomment": "data can be used to configure ACK timeout.Make data_valid 1 as well.Unit is second"
}
]
}
21 changes: 21 additions & 0 deletions recipes-bsp/firmware-woa/files/slpir.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "slpi",
"subdomain": "root_pd",
"qmi_instance_id": 90
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0
}
]
}
21 changes: 21 additions & 0 deletions recipes-bsp/firmware-woa/files/slpius.jsn
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"sr_version": {
"major": 1,
"minor": 1,
"patch": 1
},
"sr_domain": {
"soc": "msm",
"domain": "slpi",
"subdomain": "sensor_pd",
"qmi_instance_id": 90
},
"sr_service": [
{
"provider": "tms",
"service": "servreg",
"service_data_valid": 0,
"service_data": 0
}
]
}
40 changes: 40 additions & 0 deletions recipes-bsp/firmware-woa/firmware-qcom-sc8180x_200.0.105.0.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
DESCRIPTION = "Qualcomm Firmware for Compute SC8180X devices"

LICENSE = "CLOSED"

FW_QCOM_NAME = "sc8180x"
WOA_SUBDIR = "8180_CLS"

SRC_URI = "\
${WOA_FW_URL}/qcdx8180.cab;name=dx \
${WOA_FW_URL}/qcipa8180.cab;name=ipa \
${WOA_FW_URL}/qcsubsys_ext_adsp8180.cab;name=adsp \
${WOA_FW_URL}/qcsubsys_ext_cdsp8180.cab;name=cdsp \
${WOA_FW_URL}/qcsubsys_ext_mpss8180.cab;name=mpss \
${WOA_FW_URL}/qcsubsys_ext_scss8180.cab;name=slpi \
file://adspr.jsn \
file://adspua.jsn \
file://battmgr.jsn \
file://cdspr.jsn \
file://slpir.jsn \
file://slpius.jsn \
"

SRC_URI[dx.sha256sum] = "c5295509720898758e9a61f1f5f64a013cb6c7706e82d1598232cdca5754d115"
SRC_URI[ipa.sha256sum] = "e083779b7ee99edfd0fc4a54fb562c355476cf359f29cc729052158f97c3769d"
SRC_URI[adsp.sha256sum] = "0679e45ae07b4b19db97ac06b12fce64cba4dfe65102d1f615564ca90387e8dd"
SRC_URI[cdsp.sha256sum] = "eb6b1ff4d02736cd2b2ecaaf4136c164d712fcec7d8ad232434be1c67b703ffc"
SRC_URI[mpss.sha256sum] = "7c7ed01e9c8cff1c7d1546a2b6f14c23d9224afd0de9a6f52c33ad04bfe053a8"
SRC_URI[slpi.sha256sum] = "4dc4be421f46ffa3ee8b9141faac4214e7d19e60dc7c63734ef2bdba08cca73d"

SPLIT_FIRMWARE_PACKAGES = "\
linux-firmware-qcom-${FW_QCOM_NAME}-adreno \
linux-firmware-qcom-${FW_QCOM_NAME}-audio \
linux-firmware-qcom-${FW_QCOM_NAME}-compute \
linux-firmware-qcom-${FW_QCOM_NAME}-ipa \
linux-firmware-qcom-${FW_QCOM_NAME}-modem \
linux-firmware-qcom-${FW_QCOM_NAME}-sensors \
linux-firmware-qcom-${FW_QCOM_NAME}-venus \
"

require firmware-woa.inc
19 changes: 19 additions & 0 deletions recipes-bsp/firmware-woa/firmware-woa.inc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
DEPENDS += "cabextract-native"
require recipes-bsp/firmware/firmware-qcom.inc

WOA_FW_URL = "https://github.com/WOA-Project/Qualcomm-Reference-Drivers/raw/master/${WOA_SUBDIR}/${PV}"

do_compile:append() {
for file in ${WORKDIR}/*cab ; do
cabextract $file || exit 1
done
}

do_install:append() {
install -d ${D}${FW_QCOM_PATH}

install -m 0644 ${B}/*.mbn ${D}${FW_QCOM_PATH}
ls ${B}/*.elf && install -m 0644 ${B}/*.elf ${D}${FW_QCOM_PATH}

install -m 0644 ${WORKDIR}/*.jsn ${D}${FW_QCOM_PATH}
}
1 change: 1 addition & 0 deletions recipes-bsp/firmware/firmware-qcom-sm8150-hdk.bb
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,4 @@ do_install:append() {

FILES:linux-firmware-qcom-adreno-a640 += "${FW_QCOM_BASE_PATH}/a640_gmu.bin"
RDEPENDS:linux-firmware-qcom-adreno-a640 += "linux-firmware-qcom-adreno-a630"
RDEPENDS:linux-firmware-qcom-adreno-a640:remove = "${PN}"
14 changes: 7 additions & 7 deletions recipes-bsp/firmware/firmware-qcom.inc
Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,20 @@ RRECOMMENDS:${PN} += "${@ ' '.join(filter(lambda p: not p.endswith('-split'), d.

# Default settings for several split packages
FILES:${PN}-dspso += "${FW_QCOM_BASE_PATH}/*/*dspso.bin"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-adreno = "${FW_QCOM_PATH}/*_zap.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-audio = "${FW_QCOM_PATH}/adsp.mbn ${FW_QCOM_PATH}/adsp*.jsn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-adreno = "${FW_QCOM_PATH}/*_zap.mbn ${FW_QCOM_PATH}/qcdxkmsuc*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-audio = "${FW_QCOM_PATH}/adsp.mbn ${FW_QCOM_PATH}/adsp*.jsn ${FW_QCOM_PATH}/battmgr*.jsn ${FW_QCOM_PATH}/qcadsp*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-audio-split = "${FW_QCOM_PATH}/adsp.mdt ${FW_QCOM_PATH}/adsp.b*"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-compute = "${FW_QCOM_PATH}/cdsp.mbn ${FW_QCOM_PATH}/cdsp*.jsn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-compute = "${FW_QCOM_PATH}/cdsp.mbn ${FW_QCOM_PATH}/cdsp*.jsn ${FW_QCOM_PATH}/qccdsp*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-compute-split = "${FW_QCOM_PATH}/cdsp.mdt ${FW_QCOM_PATH}/cdsp.b*"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-dsps = "${FW_QCOM_PATH}/dsps.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-gss = "${FW_QCOM_PATH}/gss.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-ipa = "${FW_QCOM_PATH}/ipa_fws.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-modem = "${FW_QCOM_PATH}/mba.mbn ${FW_QCOM_PATH}/modem.mbn ${FW_QCOM_PATH}/modem*.jsn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-ipa = "${FW_QCOM_PATH}/ipa_fws.mbn ${FW_QCOM_PATH}/ipa_fws.elf"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-modem = "${FW_QCOM_PATH}/mba.mbn ${FW_QCOM_PATH}/modem.mbn ${FW_QCOM_PATH}/modem*.jsn ${FW_QCOM_PATH}/qcmpss*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-modem-split = "${FW_QCOM_PATH}/modem.mdt ${FW_QCOM_PATH}/modem.b*"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-q6 = "${FW_QCOM_PATH}/q6.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-sensors = "${FW_QCOM_PATH}/slpi.mbn ${FW_QCOM_PATH}/slpi*.jsn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-sensors = "${FW_QCOM_PATH}/slpi.mbn ${FW_QCOM_PATH}/slpi*.jsn ${FW_QCOM_PATH}/qcslpi*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-sensors-split = "${FW_QCOM_PATH}/slpi.mdt ${FW_QCOM_PATH}/slpi.b*"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-venus = "${FW_QCOM_PATH}/venus.mbn ${FW_QCOM_PATH}/vidc*"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-venus = "${FW_QCOM_PATH}/venus.mbn ${FW_QCOM_PATH}/vidc* ${FW_QCOM_PATH}/qcvss*.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-wifi = "${FW_QCOM_PATH}/wcnss.mbn ${FW_QCOM_PATH}/wlanmdsp.mbn"
FILES:linux-firmware-qcom-${FW_QCOM_NAME}-wifi-split = "${FW_QCOM_PATH}/wcnss.mdt ${FW_QCOM_PATH}/wcnss.b*"

Expand Down
17 changes: 17 additions & 0 deletions recipes-bsp/images/initramfs-firmware-sc8180x-image.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
DESCRIPTION = "Tiny ramdisk image with SC8180X devices firmware files"

PACKAGE_INSTALL += " \
packagegroup-firmware-sc8180x \
"

BAD_RECOMMENDATIONS = " \
linux-firmware-qca \
linux-firmware-ath10k \
linux-firmware-qcom-sc8180x-compute \
linux-firmware-qcom-sc8180x-ipa \
linux-firmware-qcom-sc8180x-modem \
linux-firmware-qcom-sc8180x-sensors \
linux-firmware-qcom-sc8180x-venus \
"

require initramfs-firmware-image.inc
16 changes: 16 additions & 0 deletions recipes-bsp/packagegroups/packagegroup-firmware-sc8180x.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
SUMMARY = "Firmware packages for the SC8180X devices"

inherit packagegroup

RRECOMMENDS:${PN} += " \
${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'linux-firmware-qcom-adreno-a640 linux-firmware-qcom-sc8180x-adreno', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'linux-firmware-qca', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'wifi', 'linux-firmware-ath10k', '', d)} \
firmware-qcom-sc8180x \
linux-firmware-qcom-sc8180x-audio \
linux-firmware-qcom-sc8180x-compute \
linux-firmware-qcom-sc8180x-ipa \
linux-firmware-qcom-sc8180x-modem \
linux-firmware-qcom-sc8180x-sensors \
linux-firmware-qcom-sc8180x-venus \
"
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,6 @@ CONFIG_ATL1C=m

CONFIG_CAN=m
CONFIG_CAN_MCP251XFD=m

CONFIG_BACKLIGHT_PWM=m
CONFIG_DRM_PANEL_NOVATEK_NT36672E=m
2 changes: 0 additions & 2 deletions recipes-kernel/linux/linux-yocto/bsp/qcom-armv8a/qcom.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -226,5 +226,3 @@ CONFIG_CORESIGHT_CPU_DEBUG=m
CONFIG_CORESIGHT_CTI=m
CONFIG_CORESIGHT_TPDM=m
CONFIG_CORESIGHT_TPDA=m

CONFIG_ARM64_VA_BITS_48=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
From 033eb03a2ab2057f3f79a20be485f5c58af20816 Mon Sep 17 00:00:00 2001
From: Taniya Das <quic_tdas@quicinc.com>
Date: Mon, 18 Mar 2024 11:05:54 +0530
Subject: [PATCH 1/3] FROMLIST: arm64: dts: qcom: qcm6490-idp: Update protected
clocks list

Certain clocks are not accessible on QCM6490-IDP board,
thus mark them as protected. Update the lpassaudio node to
support the new compatible.

Signed-off-by: Taniya Das <quic_tdas@quicinc.com>
Upstream-Status: Submitted [https://lore.kernel.org/r/20240318053555.20405-8-quic_tdas@quicinc.com]
---
arch/arm64/boot/dts/qcom/qcm6490-idp.dts | 28 +++++++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
index 2a5631b0fa40..3baea71e0248 100644
--- a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
+++ b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: BSD-3-Clause
/*
- * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
+ * Copyright (c) 2023-2024 Qualcomm Innovation Center, Inc. All rights reserved.
*/

/dts-v1/;
@@ -412,6 +412,32 @@ vreg_bob_3p296: bob {
};
};

+&gcc {
+ protected-clocks = <GCC_AGGRE_NOC_PCIE_1_AXI_CLK> ,<GCC_PCIE_1_AUX_CLK>,
+ <GCC_PCIE_1_AUX_CLK_SRC>, <GCC_PCIE_1_CFG_AHB_CLK>,
+ <GCC_PCIE_1_MSTR_AXI_CLK>, <GCC_PCIE_1_PHY_RCHNG_CLK_SRC>,
+ <GCC_PCIE_1_PIPE_CLK>, <GCC_PCIE_1_PIPE_CLK_SRC>,
+ <GCC_PCIE_1_SLV_AXI_CLK>, <GCC_PCIE_1_SLV_Q2A_AXI_CLK>,
+ <GCC_QSPI_CNOC_PERIPH_AHB_CLK>, <GCC_QSPI_CORE_CLK>,
+ <GCC_QSPI_CORE_CLK_SRC>,<GCC_USB30_SEC_MASTER_CLK>,
+ <GCC_USB30_SEC_MASTER_CLK_SRC>, <GCC_USB30_SEC_MOCK_UTMI_CLK>,
+ <GCC_USB30_SEC_MOCK_UTMI_CLK_SRC>,
+ <GCC_USB30_SEC_MOCK_UTMI_POSTDIV_CLK_SRC>, <GCC_USB30_SEC_SLEEP_CLK>,
+ <GCC_USB3_SEC_PHY_AUX_CLK>, <GCC_USB3_SEC_PHY_AUX_CLK_SRC>,
+ <GCC_USB3_SEC_PHY_COM_AUX_CLK>, <GCC_USB3_SEC_PHY_PIPE_CLK>,
+ <GCC_USB3_SEC_PHY_PIPE_CLK_SRC>, <GCC_CFG_NOC_LPASS_CLK>,
+ <GCC_MSS_GPLL0_MAIN_DIV_CLK_SRC>, <GCC_MSS_CFG_AHB_CLK>,
+ <GCC_MSS_OFFLINE_AXI_CLK>, <GCC_MSS_SNOC_AXI_CLK>,
+ <GCC_MSS_Q6_MEMNOC_AXI_CLK>, <GCC_MSS_Q6SS_BOOT_CLK_SRC>,
+ <GCC_SEC_CTRL_CLK_SRC>, <GCC_WPSS_AHB_CLK>,
+ <GCC_WPSS_AHB_BDG_MST_CLK>, <GCC_WPSS_RSCP_CLK>;
+};
+
+&lpass_audiocc {
+ compatible = "qcom,qcm6490-lpassaudiocc";
+ /delete-property/ power-domains;
+};
+
&qupv3_id_0 {
status = "okay";
};
--
2.25.1

This file was deleted.

0 comments on commit c4be2df

Please sign in to comment.