Re: [PATCH v3 11/11] dt-bindings: gpio: Add bindings for Cadence I3C gpio expander

Boris Brezillon
2018-03-26T11:21:50Z

Hi Geert,

On Mon, 26 Mar 2018 12:17:26 +0200
Geert Uytterhoeven <geert@linux-m68k.org> wrote:

> Hi Boris,
>
> On Fri, Mar 23, 2018 at 12:00 PM, Boris Brezillon
> <boris.brezillon@bootlin.com> wrote:
> > Document the Cadence I3C gpio expander bindings.
> >
> > Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
>
> Thanks for your patch!
>
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/gpio/gpio-cdns-i3c.txt
> > @@ -0,0 +1,38 @@
> > +* Cadence I3C GPIO expander
> > +
> > +The Cadence I3C GPIO expander provides 8 GPIOs controllable over I3C.
> > +This GPIOs can be configured in output or input mode and if they are in input
> > +mode they can generate IBIs (In Band Interrupts).
> > +
> > +Required properties for GPIO node:
> > +- reg : 3 cells encoding the I3C static address (none in our case) and the I3C
> > + Provisional ID. See Documentation/devicetree/bindings/i3c/i3c.txt for
> > + more details.
> > + Should be <0x0 0x392 0x0>.
>
> No compatible value?

See my other reply.

>
> > +- gpio-controller : Marks the device node as a gpio controller.
> > +- #gpio-cells : Should be two. The first cell is the pin number and
> > + the second cell is used to specify the gpio polarity:
> > + 0 = active high
> > + 1 = active low
> > +- interrupt-controller: Marks the device node as an interrupt controller.
> > +- #interrupt-cells : Should be 2. The first cell is the GPIO number.
> > + The second cell bits[3:0] is used to specify trigger type and level flags:
> > + 1 = low-to-high edge triggered.
> > + 2 = high-to-low edge triggered.
> > + 3 = triggered on both edges.
> > + 4 = active high level-sensitive.
> > + 8 = active low level-sensitive.
> > +
> > +Example:
> > +
> > + i3c-master@xxx {
> > + ...
> > + i3c_gpio_expander: gpio@0,1c9,0 {
>
> gpio@0,392,0?

Actually, if I follow the DT bindings, it should be gpio@0,39200000000

Thanks,

Boris

--
Boris Brezillon, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering