* [PATCH v4 0/3] Support for Adreno 623 GPU
@ 2025-05-09 7:21 Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings Akhil P Oommen
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Akhil P Oommen @ 2025-05-09 7:21 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang, Akhil P Oommen
This series adds support for A623 GPU found in QCS8300 chipsets. This
GPU IP is very similar to A621 GPU, except for the UBWC configuration
and the GMU firmware.
Both DT patches are for Bjorn and the dt-bindings update for Rob Clark
to pick up.
---
Changes in v4:
- Correct the commit text for the new patch#1 added in v3 and drop the
incorrect R-b tag
- Link to v3: https://lore.kernel.org/r/20250508-a623-gpu-support-v3-0-3cb31799d44e@quicinc.com
Changes in v3:
- Rebased on top of v6.15-rc5
- Dropped drm-msm patches since they are merged in v6.15
- Correct GMU opp table in dt (Konrad)
- Remove smmu_clk from gmu clock list (Konrad)
- Update dt-bindings yaml with a new patch#1
- Link to v2: https://lore.kernel.org/r/20250228-a623-gpu-support-v2-0-aea654ecc1d3@quicinc.com
Changes in v2:
- Fix hwcg config (Konrad)
- Split gpucc reg list patch (Rob)
- Rebase on msm-next tip
- Link to v1: https://lore.kernel.org/r/20250213-a623-gpu-support-v1-0-993c65c39fd2@quicinc.com
---
Jie Zhang (3):
dt-bindings: display/msm/gmu: Update Adreno 623 bindings
arm64: dts: qcom: qcs8300: Add gpu and gmu nodes
arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU
.../devicetree/bindings/display/msm/gmu.yaml | 34 ++++++++
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 8 ++
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 91 ++++++++++++++++++++++
3 files changed, 133 insertions(+)
---
base-commit: bc720facc421d0ff6d568323035d1a4d5d35ce84
change-id: 20250213-a623-gpu-support-f6698603fb85
prerequisite-message-id: <20250310-b4-branch-gfx-smmu-v6-2-15c60b8abd99@quicinc.com>
prerequisite-patch-id: f8fd1a2020c940e595e58a8bd3c55d00d3d87271
prerequisite-patch-id: 6a64b525e8ef33377b3cd885554b421fe8e6a192
Best regards,
--
Akhil P Oommen <quic_akhilpo@quicinc.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings
2025-05-09 7:21 [PATCH v4 0/3] Support for Adreno 623 GPU Akhil P Oommen
@ 2025-05-09 7:21 ` Akhil P Oommen
2025-05-12 10:55 ` Krzysztof Kozlowski
2025-05-09 7:21 ` [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 3/3] arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU Akhil P Oommen
2 siblings, 1 reply; 7+ messages in thread
From: Akhil P Oommen @ 2025-05-09 7:21 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang, Akhil P Oommen
From: Jie Zhang <quic_jiezh@quicinc.com>
Update Adreno 623's dt-binding to remove smmu_clk which is not required
for this GMU.
Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
---
.../devicetree/bindings/display/msm/gmu.yaml | 34 ++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/msm/gmu.yaml b/Documentation/devicetree/bindings/display/msm/gmu.yaml
index 4392aa7a4ffe2492d69a21e067be1f42e00016d8..afc1879357440c137cadeb2d9a74ae8459570a25 100644
--- a/Documentation/devicetree/bindings/display/msm/gmu.yaml
+++ b/Documentation/devicetree/bindings/display/msm/gmu.yaml
@@ -124,6 +124,40 @@ allOf:
contains:
enum:
- qcom,adreno-gmu-623.0
+ then:
+ properties:
+ reg:
+ items:
+ - description: Core GMU registers
+ - description: Resource controller registers
+ - description: GMU PDC registers
+ reg-names:
+ items:
+ - const: gmu
+ - const: rscc
+ - const: gmu_pdc
+ clocks:
+ items:
+ - description: GMU clock
+ - description: GPU CX clock
+ - description: GPU AXI clock
+ - description: GPU MEMNOC clock
+ - description: GPU AHB clock
+ - description: GPU HUB CX clock
+ clock-names:
+ items:
+ - const: gmu
+ - const: cxo
+ - const: axi
+ - const: memnoc
+ - const: ahb
+ - const: hub
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
- qcom,adreno-gmu-635.0
- qcom,adreno-gmu-660.1
- qcom,adreno-gmu-663.0
--
2.48.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes
2025-05-09 7:21 [PATCH v4 0/3] Support for Adreno 623 GPU Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings Akhil P Oommen
@ 2025-05-09 7:21 ` Akhil P Oommen
2025-05-12 20:48 ` Konrad Dybcio
2025-05-09 7:21 ` [PATCH v4 3/3] arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU Akhil P Oommen
2 siblings, 1 reply; 7+ messages in thread
From: Akhil P Oommen @ 2025-05-09 7:21 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang, Akhil P Oommen
From: Jie Zhang <quic_jiezh@quicinc.com>
Add gpu and gmu nodes for qcs8300 chipset.
Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
---
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 91 +++++++++++++++++++++++++++++++++++
1 file changed, 91 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
index 40771b062e8d7010dd93d7cc7b3db73cfa16bfdb..1dbccb9a0c75366aa6986b6adb4feb6164ee8845 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
@@ -2660,6 +2660,97 @@ serdes0: phy@8909000 {
status = "disabled";
};
+ gpu: gpu@3d00000 {
+ compatible = "qcom,adreno-623.0", "qcom,adreno";
+ reg = <0x0 0x03d00000 0x0 0x40000>,
+ <0x0 0x03d9e000 0x0 0x1000>,
+ <0x0 0x03d61000 0x0 0x800>;
+ reg-names = "kgsl_3d0_reg_memory",
+ "cx_mem",
+ "cx_dbgc";
+ interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
+ iommus = <&adreno_smmu 0 0xc00>,
+ <&adreno_smmu 1 0xc00>;
+ operating-points-v2 = <&gpu_opp_table>;
+ qcom,gmu = <&gmu>;
+ interconnects = <&gem_noc MASTER_GFX3D QCOM_ICC_TAG_ALWAYS
+ &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
+ interconnect-names = "gfx-mem";
+ #cooling-cells = <2>;
+
+ status = "disabled";
+
+ gpu_zap_shader: zap-shader {
+ memory-region = <&gpu_microcode_mem>;
+ };
+
+ gpu_opp_table: opp-table {
+ compatible = "operating-points-v2";
+
+ opp-877000000 {
+ opp-hz = /bits/ 64 <877000000>;
+ opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+ opp-peak-kBps = <12484375>;
+ };
+
+ opp-780000000 {
+ opp-hz = /bits/ 64 <780000000>;
+ opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
+ opp-peak-kBps = <10687500>;
+ };
+
+ opp-599000000 {
+ opp-hz = /bits/ 64 <599000000>;
+ opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
+ opp-peak-kBps = <8171875>;
+ };
+
+ opp-479000000 {
+ opp-hz = /bits/ 64 <479000000>;
+ opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+ opp-peak-kBps = <5285156>;
+ };
+ };
+ };
+
+ gmu: gmu@3d6a000 {
+ compatible = "qcom,adreno-gmu-623.0", "qcom,adreno-gmu";
+ reg = <0x0 0x03d6a000 0x0 0x34000>,
+ <0x0 0x03de0000 0x0 0x10000>,
+ <0x0 0x0b290000 0x0 0x10000>;
+ reg-names = "gmu", "rscc", "gmu_pdc";
+ interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "hfi", "gmu";
+ clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
+ <&gpucc GPU_CC_CXO_CLK>,
+ <&gcc GCC_DDRSS_GPU_AXI_CLK>,
+ <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
+ <&gpucc GPU_CC_AHB_CLK>,
+ <&gpucc GPU_CC_HUB_CX_INT_CLK>;
+ clock-names = "gmu",
+ "cxo",
+ "axi",
+ "memnoc",
+ "ahb",
+ "hub";
+ power-domains = <&gpucc GPU_CC_CX_GDSC>,
+ <&gpucc GPU_CC_GX_GDSC>;
+ power-domain-names = "cx",
+ "gx";
+ iommus = <&adreno_smmu 5 0xc00>;
+ operating-points-v2 = <&gmu_opp_table>;
+
+ gmu_opp_table: opp-table {
+ compatible = "operating-points-v2";
+
+ opp-500000000 {
+ opp-hz = /bits/ 64 <500000000>;
+ opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
+ };
+ };
+ };
+
gpucc: clock-controller@3d90000 {
compatible = "qcom,qcs8300-gpucc";
reg = <0x0 0x03d90000 0x0 0xa000>;
--
2.48.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v4 3/3] arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU
2025-05-09 7:21 [PATCH v4 0/3] Support for Adreno 623 GPU Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes Akhil P Oommen
@ 2025-05-09 7:21 ` Akhil P Oommen
2 siblings, 0 replies; 7+ messages in thread
From: Akhil P Oommen @ 2025-05-09 7:21 UTC (permalink / raw)
To: Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang, Akhil P Oommen
From: Jie Zhang <quic_jiezh@quicinc.com>
Enable GPU for qcs8300-ride platform and provide path for zap
shader.
Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
index b5c9f89b34356bbf8387643e8702a2a5f50b332f..5f6c6a1f59655bee62ca9ab09c4ee60c1b826a66 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
@@ -285,6 +285,14 @@ queue3 {
};
};
+&gpu {
+ status = "okay";
+};
+
+&gpu_zap_shader {
+ firmware-name = "qcom/qcs8300/a623_zap.mbn";
+};
+
&qupv3_id_0 {
status = "okay";
};
--
2.48.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings
2025-05-09 7:21 ` [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings Akhil P Oommen
@ 2025-05-12 10:55 ` Krzysztof Kozlowski
0 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2025-05-12 10:55 UTC (permalink / raw)
To: Akhil P Oommen
Cc: Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov, linux-arm-msm, dri-devel, freedreno,
linux-kernel, devicetree, Jie Zhang
On Fri, May 09, 2025 at 12:51:39PM GMT, Akhil P Oommen wrote:
> From: Jie Zhang <quic_jiezh@quicinc.com>
>
> Update Adreno 623's dt-binding to remove smmu_clk which is not required
> for this GMU.
>
> Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
> Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
> ---
> .../devicetree/bindings/display/msm/gmu.yaml | 34 ++++++++++++++++++++++
> 1 file changed, 34 insertions(+)
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes
2025-05-09 7:21 ` [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes Akhil P Oommen
@ 2025-05-12 20:48 ` Konrad Dybcio
2025-05-13 15:31 ` Akhil P Oommen
0 siblings, 1 reply; 7+ messages in thread
From: Konrad Dybcio @ 2025-05-12 20:48 UTC (permalink / raw)
To: Akhil P Oommen, Rob Clark, Sean Paul, Konrad Dybcio,
Abhinav Kumar, Marijn Suijten, David Airlie, Simona Vetter,
Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang
On 5/9/25 9:21 AM, Akhil P Oommen wrote:
> From: Jie Zhang <quic_jiezh@quicinc.com>
>
> Add gpu and gmu nodes for qcs8300 chipset.
>
> Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
> Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 91 +++++++++++++++++++++++++++++++++++
> 1 file changed, 91 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> index 40771b062e8d7010dd93d7cc7b3db73cfa16bfdb..1dbccb9a0c75366aa6986b6adb4feb6164ee8845 100644
> --- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> +++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
> @@ -2660,6 +2660,97 @@ serdes0: phy@8909000 {
> status = "disabled";
> };
>
> + gpu: gpu@3d00000 {
> + compatible = "qcom,adreno-623.0", "qcom,adreno";
> + reg = <0x0 0x03d00000 0x0 0x40000>,
I haven't noticed it up until now.. this should be moved up in the file
to sort the nodes by unit address (the serdes node above is 0x089.., gpu
is 0x03d..)
Otherwise, please check if there are freq fuses on this platform, if not,
feel free to add:
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes
2025-05-12 20:48 ` Konrad Dybcio
@ 2025-05-13 15:31 ` Akhil P Oommen
0 siblings, 0 replies; 7+ messages in thread
From: Akhil P Oommen @ 2025-05-13 15:31 UTC (permalink / raw)
To: Konrad Dybcio, Rob Clark, Sean Paul, Konrad Dybcio, Abhinav Kumar,
Marijn Suijten, David Airlie, Simona Vetter, Maarten Lankhorst,
Maxime Ripard, Thomas Zimmermann, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Dmitry Baryshkov
Cc: linux-arm-msm, dri-devel, freedreno, linux-kernel, devicetree,
Jie Zhang
On 5/13/2025 2:18 AM, Konrad Dybcio wrote:
> On 5/9/25 9:21 AM, Akhil P Oommen wrote:
>> From: Jie Zhang <quic_jiezh@quicinc.com>
>>
>> Add gpu and gmu nodes for qcs8300 chipset.
>>
>> Signed-off-by: Jie Zhang <quic_jiezh@quicinc.com>
>> Signed-off-by: Akhil P Oommen <quic_akhilpo@quicinc.com>
>> ---
>
>
>> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 91 +++++++++++++++++++++++++++++++++++
>> 1 file changed, 91 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> index 40771b062e8d7010dd93d7cc7b3db73cfa16bfdb..1dbccb9a0c75366aa6986b6adb4feb6164ee8845 100644
>> --- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
>> @@ -2660,6 +2660,97 @@ serdes0: phy@8909000 {
>> status = "disabled";
>> };
>>
>> + gpu: gpu@3d00000 {
>> + compatible = "qcom,adreno-623.0", "qcom,adreno";
>> + reg = <0x0 0x03d00000 0x0 0x40000>,
>
> I haven't noticed it up until now.. this should be moved up in the file
> to sort the nodes by unit address (the serdes node above is 0x089.., gpu
> is 0x03d..)
Looks like GPUCC block got misplaced too. Will fix.
>
> Otherwise, please check if there are freq fuses on this platform, if not,
> feel free to add:
>
> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Thanks. We have the SKU related data available. We will add those too in
the next revision.
-Akhil
>
> Konrad
>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-05-13 15:32 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-09 7:21 [PATCH v4 0/3] Support for Adreno 623 GPU Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 1/3] dt-bindings: display/msm/gmu: Update Adreno 623 bindings Akhil P Oommen
2025-05-12 10:55 ` Krzysztof Kozlowski
2025-05-09 7:21 ` [PATCH v4 2/3] arm64: dts: qcom: qcs8300: Add gpu and gmu nodes Akhil P Oommen
2025-05-12 20:48 ` Konrad Dybcio
2025-05-13 15:31 ` Akhil P Oommen
2025-05-09 7:21 ` [PATCH v4 3/3] arm64: dts: qcom: qcs8300-ride: Enable Adreno 623 GPU Akhil P Oommen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).