Message ID | 1577785957-31291-1-git-send-email-loic.poulain@linaro.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | arm64: dts: apq8096-db820c: Fix VDD core voltage | expand |
On Tue 31 Dec 01:52 PST 2019, 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-becnh). 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). > I wasn't able to boot my db820c with the previous attempts to do opp based voltage scaling, but this seems to work (booted twice successfully). > Signed-off-by: Loic Poulain <loic.poulain@linaro.org> > --- > arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 24 ++++++++++++++++++++++++ > 1 file changed, 24 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > index dba3488..8cde693 100644 > --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi > @@ -493,6 +493,11 @@ > core-vcc-supply = <&pm8994_s4>; > }; > }; > + > + saw3: syscon@9A10000 { This node should live in msm8996.dtsi. > + compatible = "syscon"; > + reg = <0x9A10000 0x1000>; Please pad address to 8 digits, make 'A' lowercase and sort it among the other nodes by address. > + }; > }; > > > @@ -681,6 +686,25 @@ > }; > }; > }; > + > + pmic@1 { > + spm-regulators { This node represents the SPMI regulators, although the ganging relates to the SPM. Please define an "empty": pm8994_spmi_regulators: regulators { compatible = "qcom,pm8994-regulators"; }; In pm8994.dtsi, then add the rest here by extending &pm8994_spmi_regulators in db820c.dtsi (sorted by label name) Regards, Bjorn > + compatible = "qcom,pm8994-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>; > + }; > + }; > + }; > }; > > &sound { > -- > 2.7.4 >
diff --git a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi index dba3488..8cde693 100644 --- a/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi +++ b/arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi @@ -493,6 +493,11 @@ core-vcc-supply = <&pm8994_s4>; }; }; + + saw3: syscon@9A10000 { + compatible = "syscon"; + reg = <0x9A10000 0x1000>; + }; }; @@ -681,6 +686,25 @@ }; }; }; + + pmic@1 { + spm-regulators { + compatible = "qcom,pm8994-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>; + }; + }; + }; }; &sound {
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-becnh). 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> --- arch/arm64/boot/dts/qcom/apq8096-db820c.dtsi | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+)