Commit 387218b6 authored by Greg Gallagher's avatar Greg Gallagher Committed by Jan Kiszka
Browse files

irqchip: brcmstb-l2: enable interrupt pipelining

Fix up Broadcom's Generic Set Top Box (Level 2) interrupt controller
driver in order to channel interrupts through the interrupt pipeline.
parent 3bf6ebcf
......@@ -123,7 +123,7 @@ static void brcmstb_l2_intc_suspend(struct irq_data *d)
struct brcmstb_l2_intc_data *b = gc->private;
unsigned long flags;
irq_gc_lock_irqsave(gc, flags);
flags = irq_gc_lock(gc);
/* Save the current mask */
b->saved_mask = irq_reg_readl(gc, ct->regs.mask);
......@@ -132,7 +132,7 @@ static void brcmstb_l2_intc_suspend(struct irq_data *d)
irq_reg_writel(gc, ~gc->wake_active, ct->regs.disable);
irq_reg_writel(gc, gc->wake_active, ct->regs.enable);
}
irq_gc_unlock_irqrestore(gc, flags);
irq_gc_unlock(gc, flags);
}
static void brcmstb_l2_intc_resume(struct irq_data *d)
......@@ -142,7 +142,7 @@ static void brcmstb_l2_intc_resume(struct irq_data *d)
struct brcmstb_l2_intc_data *b = gc->private;
unsigned long flags;
irq_gc_lock_irqsave(gc, flags);
flags = irq_gc_lock(gc);
if (ct->chip.irq_ack) {
/* Clear unmasked non-wakeup interrupts */
irq_reg_writel(gc, ~b->saved_mask & ~gc->wake_active,
......@@ -152,7 +152,7 @@ static void brcmstb_l2_intc_resume(struct irq_data *d)
/* Restore the saved mask */
irq_reg_writel(gc, b->saved_mask, ct->regs.disable);
irq_reg_writel(gc, ~b->saved_mask, ct->regs.enable);
irq_gc_unlock_irqrestore(gc, flags);
irq_gc_unlock(gc, flags);
}
static int __init brcmstb_l2_intc_of_init(struct device_node *np,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment