Add required-opps to ensure reasonable power domain levels are voted for (currently we've been piggybacking off of miracles and MDP votes), add missing frequencies and add newlines between each subnode. Fixes: 61b83be9117c ("arm64: dts: qcom: msm8916: Add gpu support") Signed-off-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> --- arch/arm64/boot/dts/qcom/msm8916.dtsi | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi index 639b158b4fbe..13bd0c647c1d 100644 --- a/arch/arm64/boot/dts/qcom/msm8916.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi @@ -1287,18 +1287,31 @@ gpu@1c00000 { <&gcc GCC_BIMC_GFX_CLK>, <&gcc GCC_BIMC_GPU_CLK>, <&gcc GFX3D_CLK_SRC>; - power-domains = <&gcc OXILI_GDSC>; + power-domains = <&rpmpd MSM8916_VDDCX>; operating-points-v2 = <&gpu_opp_table>; iommus = <&gpu_iommu 1>, <&gpu_iommu 2>; gpu_opp_table: opp-table { compatible = "operating-points-v2"; + opp-27000000 { + opp-hz = /bits/ 64 <27000000>; + required-opps = <&rpmpd_opp_svs_krait>; + }; + + opp-200000000 { + opp-hz = /bits/ 64 <200000000>; + required-opps = <&rpmpd_opp_svs_soc>; + }; + + opp-310000000 { + opp-hz = /bits/ 64 <310000000>; + required-opps = <&rpmpd_opp_nom>; + }; + opp-400000000 { opp-hz = /bits/ 64 <400000000>; - }; - opp-19200000 { - opp-hz = /bits/ 64 <19200000>; + required-opps = <&rpmpd_opp_super_turbo>; }; }; }; @@ -1368,6 +1381,7 @@ gpu_iommu: iommu@1f08000 { clocks = <&gcc GCC_SMMU_CFG_CLK>, <&gcc GCC_GFX_TCU_CLK>; clock-names = "iface", "bus"; + power-domains = <&gcc OXILI_GDSC>; qcom,iommu-secure-id = <18>; /* GFX3D_USER */ -- 2.40.0