lkml.org 
[lkml]   [2014]   [Sep]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] irqchip: add Broadcom BCM7120-style Level 2 interrupt controller
On 09/03/2014 05:18 AM, Thomas Gleixner wrote:
> 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?

I was worried about potential concurrency issues, but I suppose that
this is just extra carefulness that brings nothing.

>
>> + 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?

It's pretty much useless the way it is now, I will rework that.

Thanks for the review!
--
Florian


\
 
 \ /
  Last update: 2014-09-03 19:21    [W:0.077 / U:0.296 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site