[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220829164952.2672848-1-dianders@chromium.org>
Date: Mon, 29 Aug 2022 09:49:46 -0700
From: Douglas Anderson <dianders@...omium.org>
To: Bjorn Andersson <bjorn.andersson@...aro.org>
Cc: Johan Hovold <johan@...nel.org>,
Andrew Halaney <ahalaney@...hat.com>,
Mark Brown <broonie@...nel.org>,
Douglas Anderson <dianders@...omium.org>,
Andy Gross <agross@...nel.org>,
AngeloGioacchino Del Regno
<angelogioacchino.delregno@...ainline.org>,
Bhupesh Sharma <bhupesh.sharma@...aro.org>,
Johan Hovold <johan+linaro@...nel.org>,
Konrad Dybcio <konrad.dybcio@...ainline.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Rob Herring <robh+dt@...nel.org>,
Vinod Koul <vkoul@...nel.org>, devicetree@...r.kernel.org,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [PATCH v2 0/6] arm64: dts: qcom: Fix broken regulator spec on RPMH boards
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.
v2 of this series adds tags and also rebases atop Johan's series [2]
as requested [3]. This ends up turning the series into a 6-part series
instead of a 7-part one.
It should also be noted that as of the v2 posting that the related
regulator fixes have all landed in the regulator tree.
[1] https://lore.kernel.org/r/20220824142229.RFT.v2.2.I6f77860e5cd98bf5c67208fa9edda4a08847c304@changeid
[2] https://lore.kernel.org/r/20220803121942.30236-1-johan+linaro@kernel.org/
[3] https://lore.kernel.org/r/YwhwIX+Ib8epUYWS@hovoldconsulting.com/
Changes in v2:
- Added note about removing regulator-allow-set-load from vreg_s4a_1p8
- Rebased atop ("...: sa8295p-adp: disallow regulator mode switches")
- Rebased atop ("...: sc8280xp-crd: disallow regulator mode switches")
Douglas Anderson (6):
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
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
arch/arm64/boot/dts/qcom/sa8155p-adp.dts | 13 ++++++++++++-
arch/arm64/boot/dts/qcom/sa8295p-adp.dts | 12 ++++++++++++
arch/arm64/boot/dts/qcom/sc8280xp-crd.dts | 6 ++++++
.../boot/dts/qcom/sm8150-sony-xperia-kumano.dtsi | 6 ++++++
.../arm64/boot/dts/qcom/sm8250-sony-xperia-edo.dtsi | 6 ++++++
arch/arm64/boot/dts/qcom/sm8350-hdk.dts | 12 ++++++++++++
6 files changed, 54 insertions(+), 1 deletion(-)
--
2.37.2.672.g94769d06f0-goog
Powered by blists - more mailing lists