[PATCH 5/8] irqchip: Conexant CX92755 interrupts controller driver

Arnd Bergmann arnd at arndb.de
Tue Dec 23 13:02:18 PST 2014


On Tuesday 23 December 2014 09:58:42 Baruch Siach wrote:
> +static void __exception_irq_entry digicolor_handle_irq(struct pt_regs *regs)
> +{
> +       u32 status, hwirq;
> +
> +       do {
> +               status = readl(digicolor_irq_base + IC_INT0STATUS_LO);
> +               if (status) {
> +                       hwirq = ffs(status) - 1;
> +               } else {
> +                       status = readl(digicolor_irq_base + IC_INT0STATUS_XLO);
> +                       if (status)
> +                               hwirq = ffs(status) - 1 + 32;
> +                       else
> +                               return;
> +               }
> +
> +               handle_domain_irq(digicolor_irq_domain, hwirq, regs);
> +       } while (1);
> +}
> 

Have you tried using the generic_irqchip code for this? The hardware
seems simple enough.

	Arnd



More information about the linux-arm-kernel mailing list