Re: [PATCH v1 2/2] of: property: Add device link support for pinctrl-0 through pinctrl-8

From: Saravana Kannan
Date: Wed Jul 22 2020 - 21:08:19 EST


On Wed, Jul 22, 2020 at 2:09 PM Rob Herring <robh+dt@xxxxxxxxxx> wrote:
>
> On Wed, Jul 22, 2020 at 2:13 PM Saravana Kannan <saravanak@xxxxxxxxxx> wrote:
> >
> > Add support for pinctrl-0 through pinctrl-8 explicitly instead of trying
> > to add support for pinctrl-%d properties.
> >
> > Of all the pinctrl-* properties in dts files (20322), only 47% (9531)
> > are pinctrl-%d properties. Of all the pinctrl-%d properties, 99.5%
> > (9486) are made up of pinctrl-[0-2].
> >
> > Trying to parse all pinctrl-* properties and checking for pinctrl-%d is
> > unnecessarily complicated. So, just add support for pinctrl-[0-8] for
> > now. In the unlikely event we ever exceed pinctrl-8, we can come back
> > and improve this.
>
> It wasn't immediately clear from this that pinctrl-8 is the current
> max you found vs. a should be enough for a while.

Hmmm... I tried. Looks like I failed. Open to copy-pasting any commit
text that you think will make it clearer.

> Pinctrl is also a bit special in that we have 100s of child nodes and
> only 1 to a few actual dependencies (the pinctrl node). I assume in
> the end here, it's just the pin controller node that's the dependency
> rather than creating lot's of dependencies?

Correct. In the end, it just links to the one (or few) pin controller
devices. Is there a requirement that all pinctrl-N properties point to
the child state nodes of the same pin-controller node? Or can
pinctrl-0 point to one and pinctrl-1 point to another pin controller
node? If the former, all I'd need to do is parse pinctrl-0.

-Saravana