Re: [PATCH] ARM: dts: turris-omnia: Add mcu node

Marek Behún
2022-09-03T02:39:59Z

On Fri, 2 Sep 2022 00:45:58 +0200
Andrew Lunn <andrew@lunn.ch> wrote:

> On Wed, Aug 31, 2022 at 04:28:09PM +0200, Pali Rohár wrote:
> > PING?
> >
> > On Friday 19 August 2022 15:11:52 Pali Rohár wrote:
> > > At i2c address 0x2a is MCU command interface which provides access to GPIOs
> > > connected to Turris Omnia MCU. So define mcu node in Turris Omnia DTS file.
> > >
> > > Signed-off-by: Pali Rohár <pali@kernel.org>
> > >
> > > ---
> > > Same change was already sent to U-Boot project together with driver. As
> > > Turris Omnia DTS file is shared between Linux kernel U-Boot, I'm sending
> > > this change also in Linux. There is a plan to write also Linux driver for
> > > Turris Omnia MCU, like there is already in U-Boot.
> > >
> > > https://source.denx.de/u-boot/u-boot/-/commit/832738974806e6264a3d0ac2aaa92d0f662fd128
> > > https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/gpio/turris_omnia_mcu.c
> > > ---
> > > arch/arm/boot/dts/armada-385-turris-omnia.dts | 8 +++++++-
> > > 1 file changed, 7 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > index f4878df39753..f655e9229d68 100644
> > > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts
> > > @@ -184,7 +184,13 @@
> > > #size-cells = <0>;
> > > reg = <0>;
> > >
> > > - /* STM32F0 command interface at address 0x2a */
> > > + /* MCU command i2c API */
> > > + mcu: mcu@2a {
> > > + compatible = "cznic,turris-omnia-mcu";
> > > + reg = <0x2a>;
> > > + gpio-controller;
> > > + #gpio-cells = <3>;
> > > + };
>
> Please document the binding, preferably in yaml.
>
> I'm also not sure what the DT people will say about the node name mcu.
> I don't see any examples of that in the binding documentation. They
> might request you rename it to gpio-controller, unless it does more
> than GPIO? And if it does do more than GPIO we are then into mfd
> territory, and the binding then becomes much more interesting. Then we
> start the questions, are you defining a ABI now, before there is even
> a driver for it?

Most probably mfd territory. It is at least a gpio-controller,
reset-controller and watchdog.

Marek