On Thu, 28 Aug 2014, Florian Fainelli wrote:
> +static void bcm7120_l2_intc_irq_handle(unsigned int irq, struct irq_desc 
> *desc)
> +{
> +     struct bcm7120_l2_intc_data *b = irq_desc_get_handler_data(desc);
> +     struct irq_chip *chip = irq_desc_get_chip(desc);
> +     struct irq_chip_generic *gc = irq_get_domain_generic_chip(b->domain, 0);
> +     u32 status;
> +
> +     chained_irq_enter(chip, desc);
> +
> +     irq_gc_lock(gc);
> +     status = __raw_readl(b->base + IRQSTAT);
> +     irq_gc_unlock(gc);

Why do you need locking around the status read out?

> +     for (irq = 0; irq < num_parent_irqs; irq++) {
> +             ret = bcm7120_l2_intc_init_one(dn, data, irq, map_mask);
> +             if (ret)
> +                     continue;

What's the exact purpose of this "if (ret)" construct?

Thanks,

        tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to