powerpc: cpm2_pic: Use IRQCHIP_EOI_IF_HANDLED
The core code provides the same functionality when the IRQCHIP_EOI_IF_HANDLED flag is set for the irq chip. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
@@ -115,14 +115,9 @@ static void cpm2_ack(struct irq_data *d)
|
|||||||
|
|
||||||
static void cpm2_end_irq(struct irq_data *d)
|
static void cpm2_end_irq(struct irq_data *d)
|
||||||
{
|
{
|
||||||
struct irq_desc *desc;
|
|
||||||
int bit, word;
|
int bit, word;
|
||||||
unsigned int irq_nr = virq_to_hw(d->irq);
|
unsigned int irq_nr = virq_to_hw(d->irq);
|
||||||
|
|
||||||
desc = irq_to_desc(irq_nr);
|
|
||||||
if (!(desc->status & (IRQ_DISABLED|IRQ_INPROGRESS))
|
|
||||||
&& desc->action) {
|
|
||||||
|
|
||||||
bit = irq_to_siubit[irq_nr];
|
bit = irq_to_siubit[irq_nr];
|
||||||
word = irq_to_siureg[irq_nr];
|
word = irq_to_siureg[irq_nr];
|
||||||
|
|
||||||
@@ -135,7 +130,6 @@ static void cpm2_end_irq(struct irq_data *d)
|
|||||||
*/
|
*/
|
||||||
mb();
|
mb();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static int cpm2_set_irq_type(struct irq_data *d, unsigned int flow_type)
|
static int cpm2_set_irq_type(struct irq_data *d, unsigned int flow_type)
|
||||||
{
|
{
|
||||||
@@ -202,6 +196,7 @@ static struct irq_chip cpm2_pic = {
|
|||||||
.irq_ack = cpm2_ack,
|
.irq_ack = cpm2_ack,
|
||||||
.irq_eoi = cpm2_end_irq,
|
.irq_eoi = cpm2_end_irq,
|
||||||
.irq_set_type = cpm2_set_irq_type,
|
.irq_set_type = cpm2_set_irq_type,
|
||||||
|
.flags = IRQCHIP_EOI_IF_HANDLED,
|
||||||
};
|
};
|
||||||
|
|
||||||
unsigned int cpm2_get_irq(void)
|
unsigned int cpm2_get_irq(void)
|
||||||
|
Reference in New Issue
Block a user