[PATCHv2 02/10] ARM: vic: MULTI_IRQ_HANDLER handler

Linus Walleij linus.walleij at linaro.org
Thu Sep 29 02:55:08 EDT 2011


On Wed, Sep 28, 2011 at 10:39 PM, Grant Likely
<grant.likely at secretlab.ca> wrote:

> Why isn't it simply written this way:
>
>        stat = readl_relaxed(vic->base + VIC_IRQ_STATUS);
>        while (stat) {
>                irq = fls(stat) - 1;
>                handle_IRQ(irq_domain_to_irq(&vic->domain, irq), regs);
>                stat &= ~(1 << irq);
>        }

That is indeed closer to the assembly loop most platforms have
implemented.

Jamie can you test this approach? And also use ffs() insteadof
fls()...

Thanks,
Linus Walleij



More information about the linux-arm-kernel mailing list