lkml.org 
[lkml]   [2014]   [Jun]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[patch 11/13] irqchip: spear_shirq: Remove the parent irq "ack"/unmask
"ack" is actually a mask in the parent irq. The demultiplexer and the
handlers run with interrupts disabled. No point in masking and
unmasking the parent.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
drivers/irqchip/spear-shirq.c | 6 ------
1 file changed, 6 deletions(-)

Index: linux/drivers/irqchip/spear-shirq.c
===================================================================
--- linux.orig/drivers/irqchip/spear-shirq.c
+++ linux/drivers/irqchip/spear-shirq.c
@@ -222,12 +222,8 @@ static struct irq_chip shirq_chip = {
static void shirq_handler(unsigned irq, struct irq_desc *desc)
{
struct spear_shirq *shirq = irq_get_handler_data(irq);
- struct irq_data *idata = irq_desc_get_irq_data(desc);
- struct irq_chip *chip = irq_data_get_irq_chip(idata);
u32 pend;

- chip->irq_ack(idata);
-
pend = readl(shirq->base + shirq->regs.status_reg) & shirq->mask;
pend >>= shirq->offset;

@@ -237,8 +233,6 @@ static void shirq_handler(unsigned irq,
pend &= ~(0x1 << irq);
generic_handle_irq(shirq->virq_base + irq);
}
-
- chip->irq_unmask(idata);
}

static void __init spear_shirq_register(struct spear_shirq *shirq,



\
 
 \ /
  Last update: 2014-06-20 00:01    [W:0.353 / U:0.216 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site