Re: [RFC v1 2/4] pinctrl: add polarfire soc mssio pinctrl driver

From: Conor Dooley
Date: Mon Nov 24 2025 - 19:24:28 EST


On Tue, Nov 25, 2025 at 01:10:26AM +0100, Linus Walleij wrote:
> On Fri, Nov 21, 2025 at 12:21 PM Conor Dooley <conor@xxxxxxxxxx> wrote:
>
> > ngl, I forget if there's a shorthand for the bias part, so I just want
> > to know if is this an accurate summary of what's exclusive?
> >
> > diff --git a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml b/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
> > index cbfcf215e571..6865472ac124 100644
> > --- a/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
> > +++ b/Documentation/devicetree/bindings/pinctrl/pincfg-node.yaml
> > @@ -153,4 +153,66 @@ properties:
> > pin. Typically indicates how many double-inverters are
> > used to delay the signal.
> >
> > +allOf:
> > + - if:
> > + required:
> > + - output-disable
> > + then:
> > + properties:
> > + output-enable: false
> > + output-impedance-ohms: false
>
> Looks right.
>
> > + - if:
> > + required:
> > + - output-low
> > + then:
> > + properties:
> > + output-high: false
>
> Looks right.
>
> > + - if:
> > + required:
> > + - low-power-enable
> > + then:
> > + properties:
> > + low-power-disable: false
>
> Looks right.
>
> > + - if:
> > + required:
> > + - input-schmitt-disable
> > + then:
> > + properties:
> > + input-schmitt-enable: false
> > + input-schmitt-microvolt: false
>
> Looks right.
>
> > + - if:
> > + required:
> > + - drive-open-source
> > + then:
> > + properties:
> > + drive-open-drain: false
>
> drive-push-pull is mutually exclusive
> with each of these as well.
>
> > + - if:
> > + anyOf:
> > + - required:
> > + - bias-disable
> > + - required:
> > + - bias-high-impedance
> > + - required:
> > + - bias-hold
> > + - required:
> > + - bias-up
> > + - required:
> > + - bias-down
> > + - required:
> > + - bias-pull-pin-default
> > + then:
> > + oneOf:
> > + - required:
> > + - bias-disable
> > + - required:
> > + - bias-high-impedance
> > + - required:
> > + - bias-hold
> > + - required:
> > + - bias-up
> > + - required:
> > + - bias-down
> > + - required:
> > + - bias-pull-pin-default
>
> These is a bunch of "pull" infixes missing from the
> above.

lol, that's silly to miss.

> After looking at it for a while I concluded this
> is right as well, if just the right names are added.
> I would add a comment like
>
> # We can only ever allow exactly one of these,
> # they are all mutually exclusive.
>
> Additionally:
>
> drive-strength and drive-strength-microamp are mutually
> exclusive.

Oh right yea, didn't notice that one.

> input-enable and input-disable are mutually exclusive.

And this one I meant to do and forgot.

> low-power-enable and low-power-disable are mutually
> exclusive.

This I did do.

> input-schmitt need to be added as deprecated.

I figured the best way to deprecate it was not add it at all to the
binding? Deprecated properties don't warn, undocumented ones do.

> Can you cook a patch? Maybe test it on the existing
> device trees first to see that it doesn't wreac havoc.

Yeah, I'll send it along with whatever the code equivalent ends up
being. I tested against riscv, which is a tiny sample. I'll probably do
it on the arms before submitting and see.

Attachment: signature.asc
Description: PGP signature