]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
arm64: dts: apq8096-db820c: Fix VDD core voltage
authorLoic Poulain <loic.poulain@linaro.org>
Tue, 7 Jan 2020 12:55:55 +0000 (13:55 +0100)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Tue, 7 Jan 2020 23:27:57 +0000 (15:27 -0800)
APQ8096 has its VDD APC (Power for quad Kryo applications
microprocessors) powered by PM8996 PMIC S9, S10, S11 tri-phase
regulators (gang). The bootloader may have configured these
regulators with non sustainable default values, leading to sporadic
hangs under CPU stress tests (cpufreq-bench). Ideally we should enable
voltage scaling along with frequency scaling, but for now just set the
regulator gang value to a sane voltage, capable of supporting highest
frequencies (turbo).

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
Link: https://lore.kernel.org/r/1578401755-26211-1-git-send-email-loic.poulain@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi
arch/arm64/boot/dts/qcom/msm8996.dtsi
arch/arm64/boot/dts/qcom/pm8994.dtsi

index 3f2927a2007aa5671d7ddc0de930551520635666..fff6115f26706f4cf3f4b1dcfad6099a7643d41f 100644 (file)
@@ -647,6 +647,22 @@ &pm8994_mpps {
                "NC";
 };
 
+&pm8994_spmi_regulators {
+       qcom,saw-reg = <&saw3>;
+       s9 {
+               qcom,saw-slave;
+       };
+       s10 {
+               qcom,saw-slave;
+       };
+       s11 {
+               qcom,saw-leader;
+               regulator-always-on;
+               regulator-min-microvolt = <1230000>;
+               regulator-max-microvolt = <1230000>;
+       };
+};
+
 &pmi8994_gpios {
        gpio-line-names =
                "NC",
index 6590904294ed76f20711c63b168503e028bb315f..7ae082ea14ea815b2a9f5b632a536af5dfb92760 100644 (file)
@@ -2137,6 +2137,11 @@ frame@98c0000 {
                        };
                };
 
+               saw3: syscon@9a10000 {
+                       compatible = "syscon";
+                       reg = <0x09a10000 0x1000>;
+               };
+
                intc: interrupt-controller@9bc0000 {
                        compatible = "qcom,msm8996-gic-v3", "arm,gic-v3";
                        #interrupt-cells = <3>;
index 76b5a3e6a2b5090f7b0f5f78b5dcb33fd4320aae..7e4f777746cb723a7af1ed93042b308050abf301 100644 (file)
@@ -85,5 +85,9 @@ pmic@1 {
                reg = <0x1 SPMI_USID>;
                #address-cells = <1>;
                #size-cells = <0>;
+
+               pm8994_spmi_regulators: regulators {
+                       compatible = "qcom,pm8994-regulators";
+               };
        };
 };