On Tue 07 Jan 04:55 PST 2020, Loic Poulain wrote: > 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@xxxxxxxxxx> Thanks for the update Loic, this looks good, so I've picked it up for 5.6 Regards, Bjorn > --- > v2: Move pm8994_spmi_regulators node to pm8994 dtsi > Move syscon to msm8996 dtsi > lower case for addresses > > arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 16 ++++++++++++++++ > arch/arm64/boot/dts/qcom/msm8996.dtsi | 5 +++++ > arch/arm64/boot/dts/qcom/pm8994.dtsi | 4 ++++ > 3 files changed, 25 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > index dba3488..89c7b19 100644 > --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > @@ -669,6 +669,22 @@ > }; > }; > > +&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>; > + }; > +}; > + > &spmi_bus { > pmic@0 { > pon@800 { > diff --git a/arch/arm64/boot/dts/qcom/msm8996.dtsi b/arch/arm64/boot/dts/qcom/msm8996.dtsi > index 4ca2e7b..715f26e 100644 > --- a/arch/arm64/boot/dts/qcom/msm8996.dtsi > +++ b/arch/arm64/boot/dts/qcom/msm8996.dtsi > @@ -611,6 +611,11 @@ > reg = <0x7a0000 0x18000>; > }; > > + saw3: syscon@9a10000 { > + compatible = "syscon"; > + reg = <0x09a10000 0x1000>; > + }; > + > intc: interrupt-controller@9bc0000 { > compatible = "qcom,msm8996-gic-v3", "arm,gic-v3"; > #interrupt-cells = <3>; > diff --git a/arch/arm64/boot/dts/qcom/pm8994.dtsi b/arch/arm64/boot/dts/qcom/pm8994.dtsi > index 76b5a3e..7e4f777 100644 > --- a/arch/arm64/boot/dts/qcom/pm8994.dtsi > +++ b/arch/arm64/boot/dts/qcom/pm8994.dtsi > @@ -85,5 +85,9 @@ > reg = <0x1 SPMI_USID>; > #address-cells = <1>; > #size-cells = <0>; > + > + pm8994_spmi_regulators: regulators { > + compatible = "qcom,pm8994-regulators"; > + }; > }; > }; > -- > 2.7.4 >