Re: [PATCH v2 2/2] gpio: mmio: add brcm,bcm6345 support

From: Linus Walleij
Date: Thu Aug 11 2016 - 07:51:37 EST


On Wed, Aug 3, 2016 at 2:05 PM, Ãlvaro FernÃndez Rojas
<noltari@xxxxxxxxx> wrote:

> From: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx>
>
> This patch adds support for the GPIO found in Broadcom's bcm63xx-gpio
> chips.
> This GPIO controller is used in the following Broadcom SoCs: BCM6338, BCM6345.
> It can be used in newer SoCs, without the capability of pin multiplexing.
>
> Signed-off-by: Christian Lamparter <chunkeey@xxxxxxxxxxxxxx>
> Signed-off-by: Ãlvaro FernÃndez Rojas <noltari@xxxxxxxxx>
> ---
> v2: fix build

Aha now I understand why the binding looks like it does.

Sorry for being too stupid to understand it was using the
generic GPIO MMIO bindings :(

I see that it is tempting to use MMIO for this. But surely,
with all the registers you left out, this controller can do a bunch of
other stuff with the registers you're not using right now.

I think the right solution is to use GPIO_GENERIC but create
a unque GPIO driver for this hardware. It's just not that simple,
if you look at the register map, can this hardware also do open
drain? Interrupts? Biasing? etc. Then it needs its own driver,
it can use the generic GPIO library but still needs its own driver.

Yours,
Linus Walleij