arm64: dts: qcom: msm8939-pm8916: Mark always-on regulators
authorStephan Gerhold <stephan@gerhold.net>
Wed, 14 Jun 2023 07:16:06 +0000 (09:16 +0200)
committerBjorn Andersson <andersson@kernel.org>
Wed, 14 Jun 2023 15:03:32 +0000 (08:03 -0700)
commitecbfba694b5baf2b854689c63ef011e905810c59
tree23cce10367c01770db85172b1f250f0a30837728
parent5cdab9a8c70c4d979909dd1bb6d1f3eacd9fa270
arm64: dts: qcom: msm8939-pm8916: Mark always-on regulators

Some of the regulators must be always-on to ensure correct operation of
the system, e.g. PM8916 L2 for the LPDDR RAM, L5 for most digital I/O
and L7 for the CPU PLL (strictly speaking the CPU PLL might only need
an active-only vote but this is not supported for regulators in
mainline currently).

The RPM firmware seems to enforce that internally, these supplies stay
on even if we vote for them to power off (and there is no other
processor running). This means it's pointless to keep sending
enable/disable requests because they will just be ignored.
Also, drivers are much more likely to get a wrong impression of the
regulator status, because regulator_is_enabled() will return false when
there are no users, even though the regulator is always on.

Describe this properly by marking the regulators as always-on.

The same changes was already made for MSM8916 in commit 8bbd35771f90
("arm64: dts: qcom: msm8916-pm8916: Mark always-on regulators").

Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230530-msm8939-regulators-v1-8-a3c3ac833567@gerhold.net
arch/arm64/boot/dts/qcom/msm8939-pm8916.dtsi