[PATCH] gpio: lpc18xx: fix GPIO controller driver build as a module

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The problem is reported for allmodconfig build setup:

  ERROR: "irq_chip_retrigger_hierarchy" [drivers/gpio/gpio-lpc18xx.ko] undefined!
  make[2]: *** [scripts/Makefile.modpost:92: __modpost] Error 1
  make[1]: *** [Makefile:1271: modules] Error 2

My testing in runtime shows that it is sufficient to remove .irq_retrigger
callback, which is assigned to unexported irq_chip_retrigger_hierarchy()
function, I did't observe any regressions, and thus apparently it is a
better fix rather than exporting the function defined in kernel/irq/chip.c
(see commit 52b2a05fa7c8 ("genirq: Export IRQ functions for module use"))
or sticking the GPIO controller driver build to built-in option only.

Reported-by: kbuild test robot <lkp@xxxxxxxxx>
Fixes: 5ddabfe8d3de ("gpio: lpc18xx: add GPIO pin interrupt controller support")
Signed-off-by: Vladimir Zapolskiy <vz@xxxxxxxxx>
---

Linus,

the initial change appears to be not so perfect :)

The fixup is done on top of your devel branch, but I'm not sure if you
rebase the branch, and if so, then please feel free to squash this
fixup into commit 5ddabfe8d3de, otherwise it should be okay to apply
the patch on top.

Evidently I was too over-cautious when added the .irq_retrigger callback.

Vladimir

 drivers/gpio/gpio-lpc18xx.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/gpio/gpio-lpc18xx.c b/drivers/gpio/gpio-lpc18xx.c
index 040fb59d06f7..d441dbaed7a3 100644
--- a/drivers/gpio/gpio-lpc18xx.c
+++ b/drivers/gpio/gpio-lpc18xx.c
@@ -11,7 +11,6 @@
 #include <linux/gpio/driver.h>
 #include <linux/io.h>
 #include <linux/irqdomain.h>
-#include <linux/irqchip.h>
 #include <linux/module.h>
 #include <linux/of.h>
 #include <linux/of_address.h>
@@ -158,7 +157,6 @@ static struct irq_chip lpc18xx_gpio_pin_ic = {
 	.irq_unmask	= lpc18xx_gpio_pin_ic_unmask,
 	.irq_eoi	= lpc18xx_gpio_pin_ic_eoi,
 	.irq_set_type	= lpc18xx_gpio_pin_ic_set_type,
-	.irq_retrigger	= irq_chip_retrigger_hierarchy,
 	.flags		= IRQCHIP_SET_TYPE_MASKED,
 };
 
-- 
2.19.0




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux