Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

gpio: synq: remove unused zynq_gpio_irq_reqres/zynq_gpio_irq_relres

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>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>

authored by

Arnd Bergmann and committed by
Bartosz Golaszewski
c07ce33a 0ea22c46

-24
-24
drivers/gpio/gpio-zynq.c
··· 575 575 return 0; 576 576 } 577 577 578 - static int zynq_gpio_irq_reqres(struct irq_data *d) 579 - { 580 - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); 581 - int ret; 582 - 583 - ret = pm_runtime_resume_and_get(chip->parent); 584 - if (ret < 0) 585 - return ret; 586 - 587 - return gpiochip_reqres_irq(chip, d->hwirq); 588 - } 589 - 590 - static void zynq_gpio_irq_relres(struct irq_data *d) 591 - { 592 - struct gpio_chip *chip = irq_data_get_irq_chip_data(d); 593 - 594 - gpiochip_relres_irq(chip, d->hwirq); 595 - pm_runtime_put(chip->parent); 596 - } 597 - 598 578 /* irq chip descriptor */ 599 579 static const struct irq_chip zynq_gpio_level_irqchip = { 600 580 .name = DRIVER_NAME, ··· 584 604 .irq_unmask = zynq_gpio_irq_unmask, 585 605 .irq_set_type = zynq_gpio_set_irq_type, 586 606 .irq_set_wake = zynq_gpio_set_wake, 587 - .irq_request_resources = zynq_gpio_irq_reqres, 588 - .irq_release_resources = zynq_gpio_irq_relres, 589 607 .flags = IRQCHIP_EOI_THREADED | IRQCHIP_EOI_IF_HANDLED | 590 608 IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, 591 609 GPIOCHIP_IRQ_RESOURCE_HELPERS, ··· 597 619 .irq_unmask = zynq_gpio_irq_unmask, 598 620 .irq_set_type = zynq_gpio_set_irq_type, 599 621 .irq_set_wake = zynq_gpio_set_wake, 600 - .irq_request_resources = zynq_gpio_irq_reqres, 601 - .irq_release_resources = zynq_gpio_irq_relres, 602 622 .flags = IRQCHIP_MASK_ON_SUSPEND | IRQCHIP_IMMUTABLE, 603 623 GPIOCHIP_IRQ_RESOURCE_HELPERS, 604 624 };