arm64: dts: qcom: msm8916: Add RPM power domains
authorStephan Gerhold <stephan@gerhold.net>
Wed, 16 Sep 2020 10:41:29 +0000 (12:41 +0200)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Mon, 26 Oct 2020 15:16:31 +0000 (10:16 -0500)
MSM8916 has two RPM power domains: VDDCX and VDDMX.
So far we have been managing them by voting for raw voltages through
the regulator subsystem, but it's better to manage them with corners
as actual power domains.

Add the device tree node for rpmpd so we can manage them as real
power domains instead of using the regulators.

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Link: https://lore.kernel.org/r/20200916104135.25085-5-stephan@gerhold.net
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
arch/arm64/boot/dts/qcom/msm8916.dtsi

index aaa21899f1a636e895d3d1f853de80f4cf65f5d1..117804f94c35dc109f1330c22621f0b85e47a718 100644 (file)
                                        compatible = "qcom,rpmcc-msm8916";
                                        #clock-cells = <1>;
                                };
+
+                               rpmpd: power-controller {
+                                       compatible = "qcom,msm8916-rpmpd";
+                                       #power-domain-cells = <1>;
+                                       operating-points-v2 = <&rpmpd_opp_table>;
+
+                                       rpmpd_opp_table: opp-table {
+                                               compatible = "operating-points-v2";
+
+                                               rpmpd_opp_ret: opp1 {
+                                                       opp-level = <1>;
+                                               };
+                                               rpmpd_opp_svs_krait: opp2 {
+                                                       opp-level = <2>;
+                                               };
+                                               rpmpd_opp_svs_soc: opp3 {
+                                                       opp-level = <3>;
+                                               };
+                                               rpmpd_opp_nom: opp4 {
+                                                       opp-level = <4>;
+                                               };
+                                               rpmpd_opp_turbo: opp5 {
+                                                       opp-level = <5>;
+                                               };
+                                               rpmpd_opp_super_turbo: opp6 {
+                                                       opp-level = <6>;
+                                               };
+                                       };
+                               };
                        };
                };
        };