Re: [PATCH] gpiolib: warning on gpiochip->to_irq defined
From: Bartosz Golaszewski <hidden>
Date: 2021-01-04 14:16:01
Also in:
lkml
On Mon, Dec 28, 2020 at 4:02 PM Nikita Shubin [off-list ref] wrote:
quoted hunk ↗ jump to hunk
gpiochip->to_irq method is redefined in gpiochip_add_irqchip. A lot of gpiod driver's still define ->to_irq method, let's give a gentle warning that they can no longer rely on it, so they can remove it on ocassion. Fixes: e0d8972898139 ("gpio: Implement tighter IRQ chip integration") Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me> --- drivers/gpio/gpiolib.c | 3 +++ 1 file changed, 3 insertions(+)diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 5ce0c14c637b..44538d1a771a 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c@@ -1489,6 +1489,9 @@ static int gpiochip_add_irqchip(struct gpio_chip *gc, type = IRQ_TYPE_NONE; } + if (gc->to_irq) + chip_err(gc, "to_irq is redefined in %s and you shouldn't rely on it\n", __func__); + gc->to_irq = gpiochip_to_irq; gc->irq.default_type = type; gc->irq.lock_key = lock_key; --2.29.2
I know Linus suggested using chip_err() here but since this doesn't cause the function to fail, I'd say this should be chip_warn(). Unless Linus has any objections, please change it. Bartosz