On Thu, 30 Oct 2014, Thomas Gleixner wrote: > On Thu, 30 Oct 2014, Arnd Bergmann wrote: > > On Thursday 30 October 2014 09:43:02 Thomas Gleixner wrote: > > > > diff --git a/include/linux/irq.h b/include/linux/irq.h > > > > index 03f48d9..8049e93 100644 > > > > --- a/include/linux/irq.h > > > > +++ b/include/linux/irq.h > > > > @@ -639,13 +639,6 @@ void arch_teardown_hwirq(unsigned int irq); > > > > void irq_init_desc(unsigned int irq); > > > > #endif > > > > > > > > -#ifndef irq_reg_writel > > > > -# define irq_reg_writel(val, addr) writel(val, addr) > > > > -#endif > > > > -#ifndef irq_reg_readl > > > > -# define irq_reg_readl(addr) readl(addr) > > > > -#endif > > > > - > > > > > > Brilliant patch that. > > > > > > # git grep -l irq_reg_readl drivers/irqchip/ > > > drivers/irqchip/irq-atmel-aic.c > > > drivers/irqchip/irq-atmel-aic5.c > > > drivers/irqchip/irq-sunxi-nmi.c > > > drivers/irqchip/irq-tb10x.c > > > > Patch 1/15 changes these all. I think it's still broken because patch 2/15 > > is wrong, but it's not /that/ obviously broken. > > Oops. Missed that. But looking at: drivers/irqchip/irq-sunxi-nmi.c It's using the generic chip. So while the generic chip uses the accessor function, the driver implementation which implements extra functionality will use something hardcoded. While it does not break the current setup, it's wrong nevertheless. Thanks, tglx