[PATCH v2] arm64: dts: qcom: msm8998: enable adreno_smmu by default
15 qcom platform DTSI files define an adreno_smmu node. msm8998 is the only one with adreno_smmu disabled by default. There's no reason why this SMMU should be disabled by default, it doesn't need any further configuration. Bring msm8998 in line with the 14 other platforms. This fixes GPU init failing with ENODEV: msm_dpu c901000.display-controller: failed to load adreno gpu msm_dpu c901000.display-controller: failed to bind 500.gpu (ops a3xx_ops): -19 Fixes: 87cd46d68aeac8 ("Configure Adreno GPU and related IOMMU") Signed-off-by: Marc Gonzalez Reviewed-by: Bryan O'Donoghue --- New in v2: rewrote commit message with input from Martin, Bryan, Luca Supersedes: <1ba7031f-c97c-41f1-8cbc-d99f1e848...@freebox.fr> Maintainers, feel free to drop the Fixes tag. Failure log: [2.756363] [drm:adreno_bind] Found GPU: 5.4.0.1 [2.767183] [drm:a5xx_gpu_init] [2.767422] [drm:adreno_gpu_init] fast_rate=71097, slow_rate=2700 [3.003869] [drm:msm_gpu_init] ebi1_clk: fffe [3.004002] adreno 500.gpu: supply vdd not found, using dummy regulator [3.008463] [drm:msm_gpu_init] gpu_reg: 819e4000 [3.015105] adreno 500.gpu: supply vddcx not found, using dummy regulator [3.020702] [drm:msm_gpu_init] gpu_cx: 819e4180 [3.028173] [drm:adreno_iommu_create_address_space] [3.054552] [drm:msm_gpu_init] gpu->aspace=ffed [3.058112] [drm:a5xx_destroy] 5.4.0.1 [3.065922] [drm:msm_gpu_cleanup] 5.4.0.1 [3.074237] msm_dpu c901000.display-controller: failed to load adreno gpu [3.082412] msm_dpu c901000.display-controller: failed to bind 500.gpu (ops a3xx_ops): -19 [3.088342] msm_dpu c901000.display-controller: [drm:drm_managed_release] drmres release begin ... [3.197694] [drm:drm_managed_release] drmres release end [3.204009] msm_dpu c901000.display-controller: adev bind failed: -19 --- arch/arm64/boot/dts/qcom/msm8998.dtsi | 1 - 1 file changed, 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi b/arch/arm64/boot/dts/qcom/msm8998.dtsi index 3d3b1f61c0690..edf379c28e1e1 100644 --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi @@ -1580,7 +1580,6 @@ adreno_smmu: iommu@504 { * SoC VDDMX RPM Power Domain in the Adreno driver. */ power-domains = < GPU_GX_GDSC>; - status = "disabled"; }; gpucc: clock-controller@5065000 { -- 2.34.1
Re: [PATCH v2] arm64: dts: qcom: msm8998: enable adreno_smmu by default
On Wed, 15 May 2024 16:27:44 +0200, Marc Gonzalez wrote: > 15 qcom platform DTSI files define an adreno_smmu node. > msm8998 is the only one with adreno_smmu disabled by default. > > There's no reason why this SMMU should be disabled by default, > it doesn't need any further configuration. > > Bring msm8998 in line with the 14 other platforms. > > [...] Applied, thanks! [1/1] arm64: dts: qcom: msm8998: enable adreno_smmu by default commit: 98a0c4f2278b4d6c1c7722735c20b2247de6293f Best regards, -- Bjorn Andersson
Re: [PATCH v2] arm64: dts: qcom: msm8998: enable adreno_smmu by default
On 5/15/2024 8:27 AM, Marc Gonzalez wrote: 15 qcom platform DTSI files define an adreno_smmu node. msm8998 is the only one with adreno_smmu disabled by default. There's no reason why this SMMU should be disabled by default, it doesn't need any further configuration. Bring msm8998 in line with the 14 other platforms. This fixes GPU init failing with ENODEV: msm_dpu c901000.display-controller: failed to load adreno gpu msm_dpu c901000.display-controller: failed to bind 500.gpu (ops a3xx_ops): -19 Fixes: 87cd46d68aeac8 ("Configure Adreno GPU and related IOMMU") Signed-off-by: Marc Gonzalez Reviewed-by: Bryan O'Donoghue Reviewed-by: Jeffrey Hugo
Re: [PATCH v2] arm64: dts: qcom: msm8998: enable adreno_smmu by default
On 2024-05-15 16:27:44, Marc Gonzalez wrote: > 15 qcom platform DTSI files define an adreno_smmu node. > msm8998 is the only one with adreno_smmu disabled by default. > > There's no reason why this SMMU should be disabled by default, > it doesn't need any further configuration. > > Bring msm8998 in line with the 14 other platforms. > > This fixes GPU init failing with ENODEV: Nit: I'd specialize this to: "This saves every MSM8998 board DTS from having to enable adreno_smmu when enabling the Adreno GPU node, which leads to the following unclear probe failure when forgotten about:" But no need to send a v3 for that. > msm_dpu c901000.display-controller: failed to load adreno gpu > msm_dpu c901000.display-controller: failed to bind 500.gpu (ops > a3xx_ops): -19 And as a more general discussion, which is not really relevant to have your commit message, we could have a separate patch adding an error message detailing **where** this -19 came from. In this case create_address_space(). > Fixes: 87cd46d68aeac8 ("Configure Adreno GPU and related IOMMU") > Signed-off-by: Marc Gonzalez > Reviewed-by: Bryan O'Donoghue Reviewed-by: Marijn Suijten > --- > New in v2: rewrote commit message with input from Martin, Bryan, Luca Thanks! > Supersedes: <1ba7031f-c97c-41f1-8cbc-d99f1e848...@freebox.fr> > > Maintainers, feel free to drop the Fixes tag. For context, I don't think the original patch was necessarily wrong in disabling this node, as any node using it (adreno_gpu) is also disabled by default. It is however less consistent with other DTSI, which don't require every board DTS to re-enable adreno_smmu. - Marijn > Failure log: > [2.756363] [drm:adreno_bind] Found GPU: 5.4.0.1 > [2.767183] [drm:a5xx_gpu_init] > [2.767422] [drm:adreno_gpu_init] fast_rate=71097, slow_rate=2700 > [3.003869] [drm:msm_gpu_init] ebi1_clk: fffe > [3.004002] adreno 500.gpu: supply vdd not found, using dummy regulator > [3.008463] [drm:msm_gpu_init] gpu_reg: 819e4000 > [3.015105] adreno 500.gpu: supply vddcx not found, using dummy > regulator > [3.020702] [drm:msm_gpu_init] gpu_cx: 819e4180 > [3.028173] [drm:adreno_iommu_create_address_space] > [3.054552] [drm:msm_gpu_init] gpu->aspace=ffed > [3.058112] [drm:a5xx_destroy] 5.4.0.1 > [3.065922] [drm:msm_gpu_cleanup] 5.4.0.1 > [3.074237] msm_dpu c901000.display-controller: failed to load adreno gpu > [3.082412] msm_dpu c901000.display-controller: failed to bind 500.gpu > (ops a3xx_ops): -19 > [3.088342] msm_dpu c901000.display-controller: [drm:drm_managed_release] > drmres release begin > ... > [3.197694] [drm:drm_managed_release] drmres release end > [3.204009] msm_dpu c901000.display-controller: adev bind failed: -19 > --- > arch/arm64/boot/dts/qcom/msm8998.dtsi | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/arch/arm64/boot/dts/qcom/msm8998.dtsi > b/arch/arm64/boot/dts/qcom/msm8998.dtsi > index 3d3b1f61c0690..edf379c28e1e1 100644 > --- a/arch/arm64/boot/dts/qcom/msm8998.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8998.dtsi > @@ -1580,7 +1580,6 @@ adreno_smmu: iommu@504 { >* SoC VDDMX RPM Power Domain in the Adreno driver. >*/ > power-domains = < GPU_GX_GDSC>; > - status = "disabled"; > }; > > gpucc: clock-controller@5065000 { > -- > 2.34.1 >