Re: [PATCH 0/7] arm64: dts: qcom: Fix broken regulator spec on RPMH boards

From: Johan Hovold
Date: Fri Aug 26 2022 - 03:02:58 EST


On Thu, Aug 25, 2022 at 09:41:58AM -0700, Douglas Anderson wrote:
> Prior to commit efb0cb50c427 ("regulator: qcom-rpmh: Implement
> get_optimum_mode(), not set_load()") several boards were able to
> change their regulator mode even though they had nothing listed in
> "regulator-allowed-modes". After that commit (and fixes [1]) we'll be
> stuck at the initial mode. Discussion of this (again, see [1]) has
> resulted in the decision that the old dts files were wrong and should
> be fixed to fully restore old functionality.
>
> This series attempts to fix everyone. I've kept each board in a
> separate patch to make stable / backports work easier.
>
> Affected boards were found with:
> rpmh_users=$(git grep -l -i rpmh -- arch/arm*/boot/dts/qcom)
> set_modes=$(grep -l regulator-allow-set-load ${rpmh_users})
> but_no_allowed_modes=$(grep -l -v regulator-allowed-modes ${set_modes})
>
> Fix was applied with:
> for f in ${but_no_allowed_modes}; do
> sed -i~ -e \
> 's/^\(\s*\)regulator-allow-set-load;/\1regulator-allow-set-load;\n\1regulator-allowed-modes =\n\1 <RPMH_REGULATOR_MODE_LPM\n\1 RPMH_REGULATOR_MODE_HPM>;/'\
> $f
> done
>
> Then results were manually inspected. In one board I removed a
> "regulator-allow-set-load" from a fixed regulator since that was
> clearly wrong.
>
> [1] https://lore.kernel.org/r/20220824142229.RFT.v2.2.I6f77860e5cd98bf5c67208fa9edda4a08847c304@changeid
>
>
> Douglas Anderson (7):
> arm64: dts: qcom: sa8155p-adp: Specify which LDO modes are allowed

> arm64: dts: qcom: sa8295p-adp: Specify which LDO modes are allowed
> arm64: dts: qcom: sc8280xp-crd: Specify which LDO modes are allowed

These two should be rebased on

https://lore.kernel.org/all/20220803121942.30236-1-johan+linaro@xxxxxxxxxx/

which disallows mode-switching for all but the UFS regulators (this
series addresses the DP PHY LPM regression we've discussed elsewhere).

> arm64: dts: qcom: sc8280xp-thinkpad-x13s: Specify which LDO modes are
> allowed

And this one should not be needed at all with the above series applied.

> arm64: dts: qcom: sm8150-xperia-kumano: Specify which LDO modes are
> allowed
> arm64: dts: qcom: sm8250-xperia-edo: Specify which LDO modes are
> allowed
> arm64: dts: qcom: sm8350-hdk: Specify which LDO modes are allowed

Johan