Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1395107
| From | Maxime Ripard <maxime.ripard@free-electrons.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP |
| Date | 2016-05-05 15:30 +0200 |
| Message-ID | <rvrvQ-MH-13@gated-at.bofh.it> (permalink) |
| References | <rrDce-5CF-13@gated-at.bofh.it> <rufQ6-70k-17@gated-at.bofh.it> <rv2xr-2d3-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
On Wed, May 04, 2016 at 11:44:48AM +0100, Andre Przywara wrote: > Hi Maxime, > > On 02/05/16 07:48, Maxime Ripard wrote: > > Hi, > > > > On Mon, Apr 25, 2016 at 02:04:52AM +0100, Andre Przywara wrote: > >> The Allwinner NMI irqchip driver requires GENERIC_IRQ_CHIP, but > >> we can't select it directly, because there is no specific Kconfig entry > >> for the driver. Compiling this NMI driver with certain arm64 > >> configurations thus fails due to the missing dependency: > >> > >> drivers/built-in.o: In function `sunxi_sc_nmi_set_type': > >> drivers/irqchip/irq-sunxi-nmi.c:114: undefined reference to `irq_setup_alt_chip' > >> drivers/built-in.o: In function `irq_domain_add_linear': > >> include/linux/irqdomain.h:253: undefined reference to `irq_generic_chip_ops' > >> include/linux/irqdomain.h:253: undefined reference to `irq_generic_chip_ops' > >> drivers/built-in.o: In function `sunxi_sc_nmi_irq_init': > >> drivers/irqchip/irq-sunxi-nmi.c:146: undefined reference to `irq_alloc_domain_generic_chips' > >> drivers/irqchip/irq-sunxi-nmi.c:161: undefined reference to `irq_get_domain_generic_chip' > >> drivers/irqchip/irq-sunxi-nmi.c:170: undefined reference to `irq_gc_mask_clr_bit' > >> drivers/irqchip/irq-sunxi-nmi.c:171: undefined reference to `irq_gc_mask_set_bit' > >> drivers/irqchip/irq-sunxi-nmi.c:172: undefined reference to `irq_gc_ack_set_bit' > >> drivers/irqchip/irq-sunxi-nmi.c:170: undefined reference to `irq_gc_mask_clr_bit' > >> > >> Add separate Kconfig options for both Allwinner specific irqchip > >> drivers and select GENERIC_IRQ_CHIP for the NMI driver. > >> The older sun4i IRQ driver only gets selected when support for these > >> specific SoCs is compiled, while the NMI driver is selected for all > >> Allwinner SoCs (copying the current behaviour and covering future SoCs > >> automatically). > >> > >> Reported-by: Suzuki K Poulose <Suzuki.Poulose@arm.com> > >> Signed-off-by: Andre Przywara <andre.przywara@arm.com> > >> --- > >> Hi, > >> > >> this is a new approach to the problem that Suzuki tried to address > >> already. > >> It separates the sun4i IRQ controller driver and the NMI driver as > >> Maxime requested. > >> While there should be no difference for the NMI driver, the sun4i > >> driver now only gets selected for certain SoCs, which is admittedly > >> a bold call for -rc5. If people find this too risky, I can bring the > >> sun4i in line with the NMI driver (selected for all ARCH_SUNXI) for > >> this release and re-create the more selective dependency as a merge > >> window patch, so that it gets more testing. > >> Please let me know. > >> > >> Cheers, > >> Andre. > >> > >> arch/arm/mach-sunxi/Kconfig | 3 ++- > >> drivers/irqchip/Kconfig | 8 ++++++++ > >> drivers/irqchip/Makefile | 4 ++-- > >> 3 files changed, 12 insertions(+), 3 deletions(-) > >> > >> diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig > >> index c124d65..c092bc2 100644 > >> --- a/arch/arm/mach-sunxi/Kconfig > >> +++ b/arch/arm/mach-sunxi/Kconfig > >> @@ -4,7 +4,6 @@ menuconfig ARCH_SUNXI > >> select ARCH_REQUIRE_GPIOLIB > >> select ARCH_HAS_RESET_CONTROLLER > >> select CLKSRC_MMIO > >> - select GENERIC_IRQ_CHIP > >> select PINCTRL > >> select SUN4I_TIMER > >> select RESET_CONTROLLER > >> @@ -14,11 +13,13 @@ if ARCH_SUNXI > >> config MACH_SUN4I > >> bool "Allwinner A10 (sun4i) SoCs support" > >> default ARCH_SUNXI > >> + select SUN4I_IRQCHIP > >> > >> config MACH_SUN5I > >> bool "Allwinner A10s / A13 (sun5i) SoCs support" > >> default ARCH_SUNXI > >> select SUN5I_HSTIMER > >> + select SUN4I_IRQCHIP > >> > >> config MACH_SUN6I > >> bool "Allwinner A31 (sun6i) SoCs support" > >> diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig > >> index 3e12479..94f3f42 100644 > >> --- a/drivers/irqchip/Kconfig > >> +++ b/drivers/irqchip/Kconfig > >> @@ -165,6 +165,14 @@ config ST_IRQCHIP > >> help > >> Enables SysCfg Controlled IRQs on STi based platforms. > >> > >> +config SUN4I_IRQCHIP > >> + bool > >> + > >> +config SUNXI_NMI > >> + bool "Allwinner SoC NMI controller" > >> + default ARCH_SUNXI > >> + select GENERIC_IRQ_CHIP > > > > This one is only used on SUN6I, SUN7I and SUN8I. There's no need to > > enable it for all the SoCs. > > But it is enabled for all SoCs at the moment - and as it is actually a > fix (-rc1 does not compile for certain arm64 configs) I'd really like to > not take chances here. > As mentioned I am happy to send a follow up patch to restrict it further > - given that it gets more testing, but at the moment I'd really like to > just fix the arm64 build without accidentally breaking existing arm(32) > boards. Then at least be consistent and do the same thing for the A10 irq controller too. Maxime -- Maxime Ripard, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-05-02 08:50 +0200
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Andre Przywara <andre.przywara@arm.com> - 2016-05-04 12:50 +0200
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Marc Zyngier <marc.zyngier@arm.com> - 2016-05-04 14:10 +0200
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-05-05 15:30 +0200
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Andre Przywara <andre.przywara@arm.com> - 2016-05-05 16:20 +0200
Re: [PATCH v3] sunxi-irq: Fix Kconfig dependency on GENERIC_IRQ_CHIP Maxime Ripard <maxime.ripard@free-electrons.com> - 2016-05-08 21:20 +0200
csiph-web