Re: [PATCH v7 1/3] dt-bindings: pinctrl: Add aspeed,ast2700-soc0-pinctrl

From: Conor Dooley

Date: Fri Apr 17 2026 - 12:08:18 EST


On Fri, Apr 17, 2026 at 02:20:25AM +0000, Billy Tsai wrote:
> > > +    properties:
> > > +      function:
> > > +        enum:
> > > +          - EMMC
> > > +          - JTAGDDR
> > > +          - JTAGM0
> > > +          - JTAGPCIEA
> > > +          - JTAGPCIEB
> > > +          - JTAGPSP
> > > +          - JTAGSSP
> > > +          - JTAGTSP
> > > +          - JTAGUSB3A
> > > +          - JTAGUSB3B
> > > +          - PCIERC0PERST
> > > +          - PCIERC1PERST
> > > +          - TSPRSTN
> > > +          - UFSCLKI
> > > +          - USB2AD0
> > > +          - USB2AD1
> > > +          - USB2AH
> > > +          - USB2AHP
> > > +          - USB2AHPD0
> > > +          - USB2AXH
> > > +          - USB2AXH2B
> > > +          - USB2AXHD1
> > > +          - USB2AXHP
> > > +          - USB2AXHP2B
> > > +          - USB2AXHPD1
> > > +          - USB2BD0
> > > +          - USB2BD1
> > > +          - USB2BH
> > > +          - USB2BHP
> > > +          - USB2BHPD0
> > > +          - USB2BXH
> > > +          - USB2BXH2A
> > > +          - USB2BXHD1
> > > +          - USB2BXHP
> > > +          - USB2BXHP2A
> > > +          - USB2BXHPD1
> > > +          - USB3AXH
> > > +          - USB3AXH2B
> > > +          - USB3AXHD
> > > +          - USB3AXHP
> > > +          - USB3AXHP2B
> > > +          - USB3AXHPD
> > > +          - USB3BXH
> > > +          - USB3BXH2A
> > > +          - USB3BXHD
> > > +          - USB3BXHP
> > > +          - USB3BXHP2A
> > > +          - USB3BXHPD
> > > +          - VB
> > > +          - VGADDC
> > > +
> > > +      groups:
> > > +        enum:
> > > +          - EMMCCDN
> > > +          - EMMCG1
> > > +          - EMMCG4
> > > +          - EMMCG8
> > > +          - EMMCWPN
> > > +          - JTAG0
> > > +          - PCIERC0PERST
> > > +          - PCIERC1PERST
> > > +          - TSPRSTN
> > > +          - UFSCLKI
> > > +          - USB2A
> > > +          - USB2AAP
> > > +          - USB2ABP
> > > +          - USB2ADAP
> > > +          - USB2AH
> > > +          - USB2AHAP
> > > +          - USB2B
> > > +          - USB2BAP
> > > +          - USB2BBP
> > > +          - USB2BDBP
> > > +          - USB2BH
> > > +          - USB2BHBP
> > > +          - USB3A
> > > +          - USB3AAP
> > > +          - USB3ABP
> > > +          - USB3B
> > > +          - USB3BAP
> > > +          - USB3BBP
> > > +          - VB0
> > > +          - VB1
> > > +          - VGADDC
> > > +      pins:
> > > +        enum:
> > > +          - AB13
> > > +          - AB14
> > > +          - AC13
> > > +          - AC14
> > > +          - AD13
> > > +          - AD14
> > > +          - AE13
> > > +          - AE14
> > > +          - AE15
> > > +          - AF13
> > > +          - AF14
> > > +          - AF15
>
> > Why do you have groups and pins?
>
> > Is it valid in your device to have groups and pins in the same node?
>
> The intent is to support both group-based mux selection and
> configuration, as well as per-pin configuration.
>
> In our hardware:
>
> - `function` + `groups` are used for pinmux selection.
> - `pins` is used for per-pin configuration (e.g. drive strength,
> bias settings).
> - `groups` may also be used for group-level configuration.
>
> As a result, both `groups` and `pins` may appear in the same node,
> but they serve different purposes and do not conflict:
>
> - `groups` selects the mux function and may apply configuration to
> the entire group.
> - `pins` allows overriding or specifying configuration for individual
> pins.
>
> In most cases, only one of them is needed, but both are allowed when
> both group-level and per-pin configuration are required.

To be honest, that sounds like your groups are not sufficiently
granular and should be reduced such that you can use them for pin
settings.

Attachment: signature.asc
Description: PGP signature