Message ID | 20230616145036.3910153-1-arnd@kernel.org |
---|---|
State | New |
Headers | show |
Series | gpio: synq: remove unused zynq_gpio_irq_reqres/zynq_gpio_irq_relres | expand |
On Fri, Jun 16, 2023 at 4:50 PM Arnd Bergmann <arnd@kernel.org> wrote: > From: Arnd Bergmann <arnd@arndb.de> > > The driver now uses the generic request/release callbacks, so the custom > ones are no longer called. When building with -Woverride-init, gcc produces > a warning about the duplicate entries: > > In file included from drivers/gpio/gpio-zynq.c:10: > include/linux/gpio/driver.h:621:43: error: initialized field overwritten [-Werror=override-init] > 621 | .irq_request_resources = gpiochip_irq_reqres, \ > | ^~~~~~~~~~~~~~~~~~~ > drivers/gpio/gpio-zynq.c:611:9: note: in expansion of macro 'GPIOCHIP_IRQ_RESOURCE_HELPERS' > 611 | GPIOCHIP_IRQ_RESOURCE_HELPERS, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/linux/gpio/driver.h:621:43: note: (near initialization for 'zynq_gpio_level_irqchip.irq_request_resources') > 621 | .irq_request_resources = gpiochip_irq_reqres, \ > | ^~~~~~~~~~~~~~~~~~~ > drivers/gpio/gpio-zynq.c:625:9: note: in expansion of macro 'GPIOCHIP_IRQ_RESOURCE_HELPERS' > 625 | GPIOCHIP_IRQ_RESOURCE_HELPERS, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/linux/gpio/driver.h:622:43: error: initialized field overwritten [-Werror=override-init] > 622 | .irq_release_resources = gpiochip_irq_relres > | ^~~~~~~~~~~~~~~~~~~ > > Removing the old ones has no effect on the driver but avoids the warnings. > > Fixes: f569143935378 ("gpio: zynq: fix zynqmp_gpio not an immutable chip warning") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Right. Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Yours, Linus Walleij
On Fri, Jun 16, 2023 at 4:50 PM Arnd Bergmann <arnd@kernel.org> wrote: > > From: Arnd Bergmann <arnd@arndb.de> > > The driver now uses the generic request/release callbacks, so the custom > ones are no longer called. When building with -Woverride-init, gcc produces > a warning about the duplicate entries: > > In file included from drivers/gpio/gpio-zynq.c:10: > include/linux/gpio/driver.h:621:43: error: initialized field overwritten [-Werror=override-init] > 621 | .irq_request_resources = gpiochip_irq_reqres, \ > | ^~~~~~~~~~~~~~~~~~~ > drivers/gpio/gpio-zynq.c:611:9: note: in expansion of macro 'GPIOCHIP_IRQ_RESOURCE_HELPERS' > 611 | GPIOCHIP_IRQ_RESOURCE_HELPERS, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/linux/gpio/driver.h:621:43: note: (near initialization for 'zynq_gpio_level_irqchip.irq_request_resources') > 621 | .irq_request_resources = gpiochip_irq_reqres, \ > | ^~~~~~~~~~~~~~~~~~~ > drivers/gpio/gpio-zynq.c:625:9: note: in expansion of macro 'GPIOCHIP_IRQ_RESOURCE_HELPERS' > 625 | GPIOCHIP_IRQ_RESOURCE_HELPERS, > | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > include/linux/gpio/driver.h:622:43: error: initialized field overwritten [-Werror=override-init] > 622 | .irq_release_resources = gpiochip_irq_relres > | ^~~~~~~~~~~~~~~~~~~ > > Removing the old ones has no effect on the driver but avoids the warnings. > > Fixes: f569143935378 ("gpio: zynq: fix zynqmp_gpio not an immutable chip warning") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/gpio/gpio-zynq.c | 24 ------------------------ > 1 file changed, 24 deletions(-) > > diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c > index c334e46033bae..0a7264aabe488 100644 > --- a/drivers/gpio/gpio-zynq.c > +++ b/drivers/gpio/gpio-zynq.c > @@ -575,26 +575,6 @@ static int zynq_gpio_set_wake(struct irq_data *data, unsigned int on) > return 0; > } > > -static int zynq_gpio_irq_reqres(struct irq_data *d) > -{ > - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); > - int ret; > - > - ret = pm_runtime_resume_and_get(chip->parent); > - if (ret < 0) > - return ret; > - > - return gpiochip_reqres_irq(chip, d->hwirq); > -} > - > -static void zynq_gpio_irq_relres(struct irq_data *d) > -{ > - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); > - > - gpiochip_relres_irq(chip, d->hwirq); > - pm_runtime_put(chip->parent); > -} > - > /* irq chip descriptor */ > static const struct irq_chip zynq_gpio_level_irqchip = { > .name = DRIVER_NAME, > @@ -604,8 +584,6 @@ static const struct irq_chip zynq_gpio_level_irqchip = { > .irq_unmask = zynq_gpio_irq_unmask, > .irq_set_type = zynq_gpio_set_irq_type, > .irq_set_wake = zynq_gpio_set_wake, > - .irq_request_resources = zynq_gpio_irq_reqres, > - .irq_release_resources = zynq_gpio_irq_relres, > .flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | > IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, > GPIOCHIP_IRQ_RESOURCE_HELPERS, > @@ -619,8 +597,6 @@ static const struct irq_chip zynq_gpio_edge_irqchip = { > .irq_unmask = zynq_gpio_irq_unmask, > .irq_set_type = zynq_gpio_set_irq_type, > .irq_set_wake = zynq_gpio_set_wake, > - .irq_request_resources = zynq_gpio_irq_reqres, > - .irq_release_resources = zynq_gpio_irq_relres, > .flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, > GPIOCHIP_IRQ_RESOURCE_HELPERS, > }; > -- > 2.39.2 > Applied, thanks! Bart
diff --git a/drivers/gpio/gpio-zynq.c b/drivers/gpio/gpio-zynq.c index c334e46033bae..0a7264aabe488 100644 --- a/drivers/gpio/gpio-zynq.c +++ b/drivers/gpio/gpio-zynq.c @@ -575,26 +575,6 @@ static int zynq_gpio_set_wake(struct irq_data *data, unsigned int on) return 0; } -static int zynq_gpio_irq_reqres(struct irq_data *d) -{ - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); - int ret; - - ret = pm_runtime_resume_and_get(chip->parent); - if (ret < 0) - return ret; - - return gpiochip_reqres_irq(chip, d->hwirq); -} - -static void zynq_gpio_irq_relres(struct irq_data *d) -{ - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); - - gpiochip_relres_irq(chip, d->hwirq); - pm_runtime_put(chip->parent); -} - /* irq chip descriptor */ static const struct irq_chip zynq_gpio_level_irqchip = { .name = DRIVER_NAME, @@ -604,8 +584,6 @@ static const struct irq_chip zynq_gpio_level_irqchip = { .irq_unmask = zynq_gpio_irq_unmask, .irq_set_type = zynq_gpio_set_irq_type, .irq_set_wake = zynq_gpio_set_wake, - .irq_request_resources = zynq_gpio_irq_reqres, - .irq_release_resources = zynq_gpio_irq_relres, .flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, GPIOCHIP_IRQ_RESOURCE_HELPERS, @@ -619,8 +597,6 @@ static const struct irq_chip zynq_gpio_edge_irqchip = { .irq_unmask = zynq_gpio_irq_unmask, .irq_set_type = zynq_gpio_set_irq_type, .irq_set_wake = zynq_gpio_set_wake, - .irq_request_resources = zynq_gpio_irq_reqres, - .irq_release_resources = zynq_gpio_irq_relres, .flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, GPIOCHIP_IRQ_RESOURCE_HELPERS, };