Re: [PATCH V2 03/15] genirq: Generic chip: Move irq_reg_{readl,writel} accessors into generic-chip.c

From: Thomas Gleixner
Date: Thu Oct 30 2014 - 07:50:24 EST


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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/