[PATCH 3/3] arm64: dts: qcom: sc8280xp: Enable GPU related nodes

From: Bjorn Andersson
Date: Tue Feb 07 2023 - 22:41:28 EST


From: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>

Add memory reservation for the zap-shader and enable the Adreno SMMU,
GPU clock controller, GMU and the GPU nodes for the SC8280XP CRD and the
Lenovo ThinkPad X13s.

Signed-off-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Signed-off-by: Bjorn Andersson <quic_bjorande@xxxxxxxxxxx>
---
arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 26 +++++++++++++++++++
.../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 26 +++++++++++++++++++
2 files changed, 52 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
index 35b63c3962f0..1d1ad43040ac 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts
@@ -203,6 +203,11 @@ vreg_wwan: regulator-wwan {
};

reserved-memory {
+ gpu_mem: gpu-mem@8bf00000 {
+ reg = <0 0x8bf00000 0 0x2000>;
+ no-map;
+ };
+
linux,cma {
compatible = "shared-dma-pool";
size = <0x0 0x8000000>;
@@ -252,6 +257,10 @@ usb1_sbu_mux: endpoint {
};
};

+&adreno_smmu {
+ status = "okay";
+};
+
&apps_rsc {
pmc8280-1-rpmh-regulators {
compatible = "qcom,pm8350-rpmh-regulators";
@@ -369,6 +378,23 @@ &dispcc0 {
status = "okay";
};

+&gmu {
+ status = "okay";
+};
+
+&gpu {
+ status = "okay";
+
+ zap-shader {
+ memory-region = <&gpu_mem>;
+ firmware-name = "qcom/sc8280xp/qcdxkmsuc8280.mbn";
+ };
+};
+
+&gpucc {
+ status = "okay";
+};
+
&mdss0 {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
index 4ef15edd6c0f..7967e951a8ee 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
+++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts
@@ -256,6 +256,11 @@ vreg_wwan: regulator-wwan {
};

reserved-memory {
+ gpu_mem: gpu-mem@8bf00000 {
+ reg = <0 0x8bf00000 0 0x2000>;
+ no-map;
+ };
+
linux,cma {
compatible = "shared-dma-pool";
size = <0x0 0x8000000>;
@@ -351,6 +356,10 @@ usb1_sbu_mux: endpoint {
};
};

+&adreno_smmu {
+ status = "okay";
+};
+
&apps_rsc {
pmc8280-1-rpmh-regulators {
compatible = "qcom,pm8350-rpmh-regulators";
@@ -484,6 +493,23 @@ &dispcc0 {
status = "okay";
};

+&gmu {
+ status = "okay";
+};
+
+&gpu {
+ status = "okay";
+
+ zap-shader {
+ memory-region = <&gpu_mem>;
+ firmware-name = "qcom/sc8280xp/LENOVO/21BX/qcdxkmsuc8280.mbn";
+ };
+};
+
+&gpucc {
+ status = "okay";
+};
+
&mdss0 {
status = "okay";
};
--
2.39.1