Re: [PATCH v4 6/9] pinctrl: Add IRQ support to STM32 gpios

From: Linus Walleij
Date: Wed Sep 07 2016 - 17:06:29 EST


On Tue, Sep 6, 2016 at 6:45 PM, Alexandre TORGUE
<alexandre.torgue@xxxxxx> wrote:

> This patch adds IRQ support to STM32 gpios.
>
> The EXTI controller has 16 lines dedicated to GPIOs.
> EXTI line n can be connected to only line n of one of the GPIO ports, for
> example EXTI0 can be connected to either PA0, or PB0, or PC0...
> This port selection is done by specifying the port number into System
> Config registers.
>
> Signed-off-by: Maxime Coquelin <mcoquelin.stm32@xxxxxxxxx>
> Signed-off-by: Alexandre TORGUE <alexandre.torgue@xxxxxx>

> +++ b/drivers/pinctrl/stm32/Kconfig
> @@ -6,6 +6,8 @@ config PINCTRL_STM32
> select PINMUX
> select GENERIC_PINCONF
> select GPIOLIB
> + select GPIOLIB_IRQCHIP

But you're not really using GPIOLIB_IRQCHIP. You have a different,
super-complex irqchip in use.

So just don't select this.

> + bank->gpio_chip.irqdomain = irq_domain_create_hierarchy(pctl->domain,
> + 0, STM32_GPIO_IRQ_LINE, bank->fwnode,
> + &stm32_gpio_domain_ops, bank);

Don't use that irqdomain pointer inside the gpio_chip.

Instead declare the irqdomain pointer inside struct stm32_gpio_bank
or something like that.

Yours,
Linus Walleij