Re: [PATCH] arm64: dts: qcom: sc8280xp-pmics: fix pon compatible and registers

Johan Hovold
2023-04-03T13:03:48Z

On Mon, Apr 03, 2023 at 02:33:01PM +0200, Krzysztof Kozlowski wrote:
> On 03/04/2023 12:54, Johan Hovold wrote:
> > On Mon, Apr 03, 2023 at 11:18:07AM +0200, Krzysztof Kozlowski wrote:
> >> On 27/03/2023 14:29, Johan Hovold wrote:
> >>> The pmk8280 PMIC PON peripheral is gen3 and uses two sets of registers;
> >>> hlos and pbs.
> >>>
> >>> This specifically fixes the following error message during boot when the
> >>> pbs registers are not defined:
> >>>
> >>> PON_PBS address missing, can't read HW debounce time
> >>>
> >>> Note that this also enables the spurious interrupt workaround introduced
> >>> by commit 0b65118e6ba3 ("Input: pm8941-pwrkey - add software key press
> >>> debouncing support") (which may or may not be needed).
> >>>
> >>> Fixes: ccd3517faf18 ("arm64: dts: qcom: sc8280xp: Add reference device")
> >>> Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
> >>> ---
> >>> arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi | 5 +++--
> >>> 1 file changed, 3 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi
> >>> index c35e7f6bd657..a0ba535bb6c9 100644
> >>> --- a/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi
> >>> +++ b/arch/arm64/boot/dts/qcom/sc8280xp-pmics.dtsi
> >>> @@ -59,8 +59,9 @@ pmk8280: pmic@0 {
> >>> #size-cells = <0>;
> >>>
> >>> pmk8280_pon: pon@1300 {
> >>> - compatible = "qcom,pm8998-pon";
> >>> - reg = <0x1300>;
> >>> + compatible = "qcom,pmk8350-pon";
> >>
> >> Same comment as Dmitry's. There is no compatible "qcom,pmk8350-pon"
> >> ccd3517faf18, therefore indicated backport (through AUTOSEL) will lead
> >> to invalid stable kernel.
> >>
> >> You must drop the Fixes tag, because this cannot be backported.
> >
> > That's bullshit. Do you see a stable tag? Is 5.19-stable still active?
>
> Why do you refer to activeness of v5.19? This will go also to v6.0 and v6.1.

6.0 stable is also EOL, and 6.1 has "qcom,pmk8350-pon".

> > The problem is that the driver was updated before the binding was so the
> > above mentioned probe error has been there since this file was merged.
>
> I grepped and that commit did not have such compatible. Are you saying
> that the kernel which was released with this commit already had that
> compatible in driver (through different merge/tree)?

The pwrkey started printing an error when the PON register was not
defined in 5.18 so the problem was already there when support for
sc8280xp was merged. Hence the Fixes tag.

0b65118e6ba3 ("Input: pm8941-pwrkey - add software key press debouncing support")

> > AUTOSEL is crazy and people apparently just ignore it instead of NAKing
> > when it is suggesting backporting devicetree cleanups (which to be fair
> > should generally not have Fixes tags in the first place).
>
> Sorry, no clue what do you want to say here... if you are unhappy with
> AUTOSEL, I am not the one to receive such feedback. Anyway, regardless
> of AUTOSEL, my concern was that the release containing that commit was
> not ready to work with that compatible. Isn't this the case here?

You were the one who brought up AUTOSEL, but it's shortcomings should
not be relevant here and that was my point.

No one is suggesting to backport this patch, but if someone were then
they need to do just that and *port* it to 5.19 or whatever imaginary
stable tree you care about which do not have "qcom,pmk8350-pon" (as I
mentioned below).

> > If 5.19-stable was still active and someone suggested backporting this
>
> Whether v5.19 is active or not, it does not matter. Why would it matter?
> This will go longterm v6.1 as well!

That would be perfectly fine as, again, 6.1 has "qcom,pmk8350-pon".

> > one, they would have to change the compatible string to match the
> > inconsistent 5.19 kernel. Note that that would need to happen regardless
> > of whether this patch has a Fixes tag or not.
>
> Any manual backporting of something which is not a fix for older kernel
> is already risky business and whoever is doing it, he is responsible for
> the outcome.

Exactly, and the same applies to fixes and arguable scripted backports
as well.

Johan