Re: [PATCH 2/5] dt-bindings: gpio: gpio-thunderx: Describe pin-cfg option

From: Piyush Malgujar
Date: Fri Jun 03 2022 - 05:06:36 EST


Hi Linus,

Thanks for reviewing.

On Mon, May 02, 2022 at 12:15:34AM +0200, Linus Walleij wrote:
> On Wed, Apr 27, 2022 at 4:47 PM Piyush Malgujar <pmalgujar@xxxxxxxxxxx> wrote:
>
> > Add support for pin-cfg to configure GPIO Pins
> >
> > Signed-off-by: Piyush Malgujar <pmalgujar@xxxxxxxxxxx>
> > ---
> > Documentation/devicetree/bindings/gpio/gpio-thunderx.txt | 4 ++++
>
> Would be nice to rewrite this binding in YAML
>

Sure, will take care in V2.

> > - First cell is the GPIO pin number relative to the controller.
> > - Second cell is triggering flags as defined in interrupts.txt.
> > +- pin-cfg: Configuration of pin's function, filters, XOR and output mode.
> > + - First cell is the GPIO pin number
> > + - Second cell is a value written to GPIO_BIT_CFG register at driver probe.
>
> Just poking magic hex values into some random register as
> part of a binding is not a good idea.
>
> This looks like trying to reinvent the pin config subsystem.
>
> GPIO is using the standard pin configurations in the second cell of
> the handle, use them in this driver as well and add new ones if we
> need.
>
> You find the existing flags here:
> include/dt-bindings/gpio/gpio.h
>
> If you need something more sophisticated than a simple flag, I think
> you need to implement proper pin config.
>
> Yours,
> Linus Walleij

The purpose of this pin-cfg entry is different than the standard GPIO pin config usage.
It is to write a value to GPIO_BIT_CFG register which is used to configure fields like
pin function, selecting which signal is reported to GPIO output or which signal GPIO
input need to connect, filters, XOR and output mode.
We will define new entry specific to thunderx GPIO usage, instead of pin-cfg.

Thanks,
Piyush