The GPU on msm8996 is powered on by several power domains. Add configuration for the GFX CPR and MX domains. Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> --- arch/arm64/boot/dts/qcom/msm8996.dtsi | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi index 905678e7175d..ff4fb30f9075 100644 --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -521,6 +521,10 @@ rpmpd_opp5: opp5 { rpmpd_opp6: opp6 { opp-level = <6>; }; + + rpmpd_opp7: opp7 { + opp-level = <7>; + }; }; }; }; @@ -1228,7 +1232,8 @@ gpu: gpu@b00000 { interconnects = <&bimc MASTER_GRAPHICS_3D &bimc SLAVE_EBI_CH0>; interconnect-names = "gfx-mem"; - power-domains = <&mmcc GPU_GX_GDSC>; + power-domains = <&mmcc GPU_GX_GDSC>, <&rpmpd MSM8996_VDDMX>; + power-domain-names = "gx", "mx"; iommus = <&adreno_smmu 0>; nvmem-cells = <&speedbin_efuse>; @@ -1251,30 +1256,37 @@ gpu_opp_table: opp-table { opp-624000000 { opp-hz = /bits/ 64 <624000000>; opp-supported-hw = <0x09>; + required-opps = <&rpmpd_opp7>; }; opp-560000000 { opp-hz = /bits/ 64 <560000000>; opp-supported-hw = <0x0d>; + required-opps = <&rpmpd_opp7>; }; opp-510000000 { opp-hz = /bits/ 64 <510000000>; opp-supported-hw = <0xff>; + required-opps = <&rpmpd_opp5>; }; opp-401800000 { opp-hz = /bits/ 64 <401800000>; opp-supported-hw = <0xff>; + required-opps = <&rpmpd_opp5>; }; opp-315000000 { opp-hz = /bits/ 64 <315000000>; opp-supported-hw = <0xff>; + required-opps = <&rpmpd_opp4>; }; opp-214000000 { opp-hz = /bits/ 64 <214000000>; opp-supported-hw = <0xff>; + required-opps = <&rpmpd_opp4>; }; opp-133000000 { opp-hz = /bits/ 64 <133000000>; opp-supported-hw = <0xff>; + required-opps = <&rpmpd_opp4>; }; }; -- 2.39.2