diff options
author | Stephan Gerhold <stephan@gerhold.net> | 2023-05-17 21:48:42 +0300 |
---|---|---|
committer | Bjorn Andersson <andersson@kernel.org> | 2023-05-25 07:50:47 +0300 |
commit | 355750828c5519c88de6ac0d09202d2a7e5892c5 (patch) | |
tree | 32687e759f1bff08c86f77a4585d78142d81dc7c /arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi | |
parent | 5500f823db38db073d30557af159b77fb1f2bf26 (diff) | |
download | linux-355750828c5519c88de6ac0d09202d2a7e5892c5.tar.xz |
arm64: dts: qcom: msm8916: Fix regulator constraints
The regulator constraints for most MSM8916 devices (except DB410c) were
originally taken from Qualcomm's msm-3.10 vendor device tree (for lack
of better documentation). Unfortunately it turns out that Qualcomm's
voltages are slightly off as well and do not match the voltage
constraints applied by the RPM firmware.
This means that we sometimes request a specific voltage but the RPM
firmware actually applies a much lower or higher voltage. This is
particularly critical for pm8916_l11 which is used as SD card VMMC
regulator: The SD card can choose a voltage from the current range of
1.8 - 2.95V. If it chooses to run at 1.8V we pretend that this is fine
but the RPM firmware will still silently end up configuring 2.95V.
This can be easily reproduced with a multimeter or by checking the
SPMI hardware registers of the regulator.
Fix this by making the voltages match the actual "specified range" in
the PM8916 Device Specification which is enforced by the RPM firmware.
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230510-msm8916-regulators-v1-3-54d4960a05fc@gerhold.net
Diffstat (limited to 'arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi')
-rw-r--r-- | arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi b/arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi index 08ecd901c1af..259c4660bb0f 100644 --- a/arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi +++ b/arch/arm64/boot/dts/qcom/msm8916-ufi.dtsi @@ -132,13 +132,13 @@ vdd_l7-supply = <&pm8916_s4>; s3 { - regulator-min-microvolt = <1200000>; - regulator-max-microvolt = <1300000>; + regulator-min-microvolt = <1250000>; + regulator-max-microvolt = <1350000>; }; s4 { - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <2100000>; + regulator-min-microvolt = <1850000>; + regulator-max-microvolt = <2150000>; }; l1 { @@ -172,7 +172,7 @@ }; l8 { - regulator-min-microvolt = <2850000>; + regulator-min-microvolt = <2900000>; regulator-max-microvolt = <2900000>; }; @@ -182,12 +182,12 @@ }; l10 { - regulator-min-microvolt = <2700000>; + regulator-min-microvolt = <2800000>; regulator-max-microvolt = <2800000>; }; l11 { - regulator-min-microvolt = <1800000>; + regulator-min-microvolt = <2950000>; regulator-max-microvolt = <2950000>; regulator-system-load = <200000>; regulator-allow-set-load; |