* [PATCH v5 0/2] Add support for GPU SMMU on QCS8300
@ 2025-02-11 4:45 Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 1/2] dt-bindings: arm-smmu: Document QCS8300 GPU SMMU Pratyush Brahma
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Pratyush Brahma @ 2025-02-11 4:45 UTC (permalink / raw)
To: Will Deacon, Robin Murphy, Joerg Roedel, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm,
Pratyush Brahma, Krzysztof Kozlowski
Enable GPU SMMU function on QCS8300 platform. GPU SMMU is required
for address translation in GPU device.
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
---
Changes since v4:
- Corrected the clocks list to be inline with clock-names
- Removed stray whitespaces
- Added r-by tag from Krzysztof on the bindings patch
- Link to v4: https://lore.kernel.org/r/20250203-b4-branch-gfx-smmu-v4-0-eaa7aa762f48@quicinc.com
Changes since v3:
- Modified the order of clock voting and properties as suggested by Konrad
- Removed dependency on clocks in commit text as change is merged in
linux-next before current base commit
Link to v3:
https://lore.kernel.org/all/20241227105818.28516-1-quic_pbrahma@quicinc.com/
Changes since v2:
Corrected typo in cover letter to include QCS8300
Link to
v2:https://lore.kernel.org/all/20241227104651.4531-1-quic_pbrahma@quicinc.com/
Changes since v1:
Updated bindings for gpu smmu for qcs8300 as per Dmitry's comment
Link to v1:
https://lore.kernel.org/all/20241224100521.7616-1-quic_pbrahma@quicinc.com/
To: Will Deacon <will@kernel.org>
To: Robin Murphy <robin.murphy@arm.com>
To: Joerg Roedel <joro@8bytes.org>
To: Rob Herring <robh@kernel.org>
To: Krzysztof Kozlowski <krzk+dt@kernel.org>
To: Conor Dooley <conor+dt@kernel.org>
To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konradybcio@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org
Cc: iommu@lists.linux.dev
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-msm@vger.kernel.org
---
Pratyush Brahma (2):
dt-bindings: arm-smmu: Document QCS8300 GPU SMMU
arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
.../devicetree/bindings/iommu/arm,smmu.yaml | 3 +-
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 ++++++++++++++++++++++
2 files changed, 41 insertions(+), 1 deletion(-)
---
base-commit: a13f6e0f405ed0d3bcfd37c692c7d7fa3c052154
change-id: 20250131-b4-branch-gfx-smmu-b03261963064
Best regards,
--
Pratyush Brahma <quic_pbrahma@quicinc.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v5 1/2] dt-bindings: arm-smmu: Document QCS8300 GPU SMMU
2025-02-11 4:45 [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Pratyush Brahma
@ 2025-02-11 4:45 ` Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu Pratyush Brahma
2025-02-11 13:28 ` [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Rob Herring (Arm)
2 siblings, 0 replies; 7+ messages in thread
From: Pratyush Brahma @ 2025-02-11 4:45 UTC (permalink / raw)
To: Will Deacon, Robin Murphy, Joerg Roedel, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm,
Pratyush Brahma, Krzysztof Kozlowski
Add the compatible for Qualcomm QCS8300 GPU SMMU. Add the compatible
in the list of clocks required by the GPU SMMU and remove it from the
list of disallowed clocks.
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
---
Documentation/devicetree/bindings/iommu/arm,smmu.yaml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
index 032fdc27127bffd689ffc23630c9978c4460b336..7b9d5507d6ccd6b845a57eeae59fe80ba75cc652 100644
--- a/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
+++ b/Documentation/devicetree/bindings/iommu/arm,smmu.yaml
@@ -90,6 +90,7 @@ properties:
- enum:
- qcom,qcm2290-smmu-500
- qcom,qcs615-smmu-500
+ - qcom,qcs8300-smmu-500
- qcom,sa8255p-smmu-500
- qcom,sa8775p-smmu-500
- qcom,sar2130p-smmu-500
@@ -397,6 +398,7 @@ allOf:
compatible:
contains:
enum:
+ - qcom,qcs8300-smmu-500
- qcom,sa8775p-smmu-500
- qcom,sc7280-smmu-500
- qcom,sc8280xp-smmu-500
@@ -581,7 +583,6 @@ allOf:
- cavium,smmu-v2
- marvell,ap806-smmu-500
- nvidia,smmu-500
- - qcom,qcs8300-smmu-500
- qcom,qdu1000-smmu-500
- qcom,sa8255p-smmu-500
- qcom,sc7180-smmu-500
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
2025-02-11 4:45 [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 1/2] dt-bindings: arm-smmu: Document QCS8300 GPU SMMU Pratyush Brahma
@ 2025-02-11 4:45 ` Pratyush Brahma
2025-02-11 15:15 ` Krzysztof Kozlowski
2025-02-11 13:28 ` [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Rob Herring (Arm)
2 siblings, 1 reply; 7+ messages in thread
From: Pratyush Brahma @ 2025-02-11 4:45 UTC (permalink / raw)
To: Will Deacon, Robin Murphy, Joerg Roedel, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson, Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm,
Pratyush Brahma
Add the device node for gfx smmu that is required for gpu
specific address translations.
Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
---
arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 +++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300.dtsi b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
index 4a057f7c0d9fae0ebd1b3cf3468746b382bc886b..f1c90db7b0e689035fbbaaa551611be34adf9ab6 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs8300.dtsi
@@ -2674,6 +2674,45 @@ gpucc: clock-controller@3d90000 {
#power-domain-cells = <1>;
};
+ adreno_smmu: iommu@3da0000 {
+ compatible = "qcom,qcs8300-smmu-500", "qcom,adreno-smmu",
+ "qcom,smmu-500", "arm,mmu-500";
+ reg = <0x0 0x3da0000 0x0 0x20000>;
+ #iommu-cells = <2>;
+ #global-interrupts = <2>;
+
+ interrupts = <GIC_SPI 672 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>;
+
+ clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
+ <&gpucc GPU_CC_HUB_CX_INT_CLK>,
+ <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>,
+ <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
+ <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>,
+ <&gpucc GPU_CC_AHB_CLK>,
+ <&gpucc GPU_CC_HUB_AON_CLK>;
+
+ clock-names = "gpu_cc_cx_gmu_clk",
+ "gpu_cc_hub_cx_int_clk",
+ "gpu_cc_hlos1_vote_gpu_smmu_clk",
+ "gcc_gpu_memnoc_gfx_clk",
+ "gcc_gpu_snoc_dvm_gfx_clk",
+ "gpu_cc_ahb_clk",
+ "gpu_cc_hub_aon_clk";
+ power-domains = <&gpucc GPU_CC_CX_GDSC>;
+ dma-coherent;
+ };
+
pmu@9091000 {
compatible = "qcom,qcs8300-llcc-bwmon", "qcom,sc7280-llcc-bwmon";
reg = <0x0 0x9091000 0x0 0x1000>;
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v5 0/2] Add support for GPU SMMU on QCS8300
2025-02-11 4:45 [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 1/2] dt-bindings: arm-smmu: Document QCS8300 GPU SMMU Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu Pratyush Brahma
@ 2025-02-11 13:28 ` Rob Herring (Arm)
2 siblings, 0 replies; 7+ messages in thread
From: Rob Herring (Arm) @ 2025-02-11 13:28 UTC (permalink / raw)
To: Pratyush Brahma
Cc: linux-kernel, Robin Murphy, Konrad Dybcio, iommu, Conor Dooley,
Bjorn Andersson, linux-arm-kernel, Krzysztof Kozlowski,
Will Deacon, Joerg Roedel, devicetree, linux-arm-msm,
Krzysztof Kozlowski
On Tue, 11 Feb 2025 10:15:52 +0530, Pratyush Brahma wrote:
> Enable GPU SMMU function on QCS8300 platform. GPU SMMU is required
> for address translation in GPU device.
>
> Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
> ---
> Changes since v4:
> - Corrected the clocks list to be inline with clock-names
> - Removed stray whitespaces
> - Added r-by tag from Krzysztof on the bindings patch
> - Link to v4: https://lore.kernel.org/r/20250203-b4-branch-gfx-smmu-v4-0-eaa7aa762f48@quicinc.com
>
> Changes since v3:
> - Modified the order of clock voting and properties as suggested by Konrad
> - Removed dependency on clocks in commit text as change is merged in
> linux-next before current base commit
>
> Link to v3:
> https://lore.kernel.org/all/20241227105818.28516-1-quic_pbrahma@quicinc.com/
>
> Changes since v2:
> Corrected typo in cover letter to include QCS8300
> Link to
> v2:https://lore.kernel.org/all/20241227104651.4531-1-quic_pbrahma@quicinc.com/
>
> Changes since v1:
> Updated bindings for gpu smmu for qcs8300 as per Dmitry's comment
> Link to v1:
> https://lore.kernel.org/all/20241224100521.7616-1-quic_pbrahma@quicinc.com/
>
> To: Will Deacon <will@kernel.org>
> To: Robin Murphy <robin.murphy@arm.com>
> To: Joerg Roedel <joro@8bytes.org>
> To: Rob Herring <robh@kernel.org>
> To: Krzysztof Kozlowski <krzk+dt@kernel.org>
> To: Conor Dooley <conor+dt@kernel.org>
> To: Bjorn Andersson <andersson@kernel.org>
> To: Konrad Dybcio <konradybcio@kernel.org>
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: iommu@lists.linux.dev
> Cc: devicetree@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Cc: linux-arm-msm@vger.kernel.org
>
> ---
> Pratyush Brahma (2):
> dt-bindings: arm-smmu: Document QCS8300 GPU SMMU
> arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
>
> .../devicetree/bindings/iommu/arm,smmu.yaml | 3 +-
> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 ++++++++++++++++++++++
> 2 files changed, 41 insertions(+), 1 deletion(-)
> ---
> base-commit: a13f6e0f405ed0d3bcfd37c692c7d7fa3c052154
> change-id: 20250131-b4-branch-gfx-smmu-b03261963064
>
> Best regards,
> --
> Pratyush Brahma <quic_pbrahma@quicinc.com>
>
>
>
My bot found new DTB warnings on the .dts files added or changed in this
series.
Some warnings may be from an existing SoC .dtsi. Or perhaps the warnings
are fixed by another series. Ultimately, it is up to the platform
maintainer whether these warnings are acceptable or not. No need to reply
unless the platform maintainer has comments.
If you already ran DT checks and didn't see these error(s), then
make sure dt-schema is up to date:
pip3 install dtschema --upgrade
New warnings running 'make CHECK_DTBS=y for arch/arm64/boot/dts/qcom/' for 20250211-b4-branch-gfx-smmu-v5-0-ff0bcb6a3c51@quicinc.com:
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:0: 'gcc_gpu_memnoc_gfx_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:1: 'gcc_gpu_snoc_dvm_gfx_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:2: 'gpu_cc_ahb_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:3: 'gpu_cc_hlos1_vote_gpu_smmu_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:4: 'gpu_cc_cx_gmu_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
arch/arm64/boot/dts/qcom/qcs8300-ride.dtb: iommu@3da0000: clock-names:5: 'gpu_cc_hub_cx_int_clk' was expected
from schema $id: http://devicetree.org/schemas/iommu/arm,smmu.yaml#
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
2025-02-11 4:45 ` [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu Pratyush Brahma
@ 2025-02-11 15:15 ` Krzysztof Kozlowski
[not found] ` <138b1c42-9580-41f4-9079-87740568b79c@quicinc.com>
0 siblings, 1 reply; 7+ messages in thread
From: Krzysztof Kozlowski @ 2025-02-11 15:15 UTC (permalink / raw)
To: Pratyush Brahma, Will Deacon, Robin Murphy, Joerg Roedel,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm
On 11/02/2025 05:45, Pratyush Brahma wrote:
> Add the device node for gfx smmu that is required for gpu
> specific address translations.
>
> Signed-off-by: Pratyush Brahma <quic_pbrahma@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 +++++++++++++++++++++++++++++++++++
> 1 file changed, 39 insertions(+)
As pointed out by Rob, this wasn't ever tested. One more example of work
where you have the binding in the same patch but refuse to use it.
NAK
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
[not found] ` <138b1c42-9580-41f4-9079-87740568b79c@quicinc.com>
@ 2025-02-12 5:19 ` Pratyush Brahma
2025-02-12 5:37 ` Krzysztof Kozlowski
0 siblings, 1 reply; 7+ messages in thread
From: Pratyush Brahma @ 2025-02-12 5:19 UTC (permalink / raw)
To: Krzysztof Kozlowski, Will Deacon, Robin Murphy, Joerg Roedel,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm
On 2/12/2025 10:09 AM, Pratyush Brahma wrote:
>
>
> On 2/11/2025 8:45 PM, Krzysztof Kozlowski wrote:
>> On 11/02/2025 05:45, Pratyush Brahma wrote:
>>> Add the device node for gfx smmu that is required for gpu
>>> specific address translations.
>>>
>>> Signed-off-by: Pratyush Brahma<quic_pbrahma@quicinc.com>
>>> ---
>>> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 +++++++++++++++++++++++++++++++++++
>>> 1 file changed, 39 insertions(+)
>> As pointed out by Rob, this wasn't ever tested. One more example of work
>> where you have the binding in the same patch but refuse to use it.
No, I had tested these patches against the dt_bindings_check and didn't
see these errors.
It seems I need to upgrade my dtschema as Rob pointed out, reorder the
clocks and resend.
However, I guess I need to update the clock list in the bindings file as
per the order suggested
by Konrad in version 3.
>> NAK
>>
>> Best regards,
>> Krzysztof
> --
> Thanks and Regards
> Pratyush Brahma
--
Thanks and Regards
Pratyush Brahma
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu
2025-02-12 5:19 ` Pratyush Brahma
@ 2025-02-12 5:37 ` Krzysztof Kozlowski
0 siblings, 0 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2025-02-12 5:37 UTC (permalink / raw)
To: Pratyush Brahma, Will Deacon, Robin Murphy, Joerg Roedel,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Bjorn Andersson,
Konrad Dybcio
Cc: linux-arm-kernel, iommu, devicetree, linux-kernel, linux-arm-msm
On 12/02/2025 06:19, Pratyush Brahma wrote:
>
> On 2/12/2025 10:09 AM, Pratyush Brahma wrote:
>>
>>
>> On 2/11/2025 8:45 PM, Krzysztof Kozlowski wrote:
>>> On 11/02/2025 05:45, Pratyush Brahma wrote:
>>>> Add the device node for gfx smmu that is required for gpu
>>>> specific address translations.
>>>>
>>>> Signed-off-by: Pratyush Brahma<quic_pbrahma@quicinc.com>
>>>> ---
>>>> arch/arm64/boot/dts/qcom/qcs8300.dtsi | 39 +++++++++++++++++++++++++++++++++++
>>>> 1 file changed, 39 insertions(+)
>>> As pointed out by Rob, this wasn't ever tested. One more example of work
>>> where you have the binding in the same patch but refuse to use it.
> No, I had tested these patches against the dt_bindings_check and didn't
> see these errors.
> It seems I need to upgrade my dtschema as Rob pointed out, reorder the
> clocks and resend.
The reported errors are not relevant at all to upgraded or not upgraded
dtschema. This just wasn't tested.
>
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-02-12 5:37 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-11 4:45 [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 1/2] dt-bindings: arm-smmu: Document QCS8300 GPU SMMU Pratyush Brahma
2025-02-11 4:45 ` [PATCH v5 2/2] arm64: dts: qcom: qcs8300: Add device node for gfx_smmu Pratyush Brahma
2025-02-11 15:15 ` Krzysztof Kozlowski
[not found] ` <138b1c42-9580-41f4-9079-87740568b79c@quicinc.com>
2025-02-12 5:19 ` Pratyush Brahma
2025-02-12 5:37 ` Krzysztof Kozlowski
2025-02-11 13:28 ` [PATCH v5 0/2] Add support for GPU SMMU on QCS8300 Rob Herring (Arm)
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).