Commit 3ba65467 authored by Thomas Gleixner's avatar Thomas Gleixner Committed by David Howells

MN10300: Convert ipi irq_chip to new functions

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
parent b023ba59
...@@ -113,15 +113,17 @@ static void init_ipi(void); ...@@ -113,15 +113,17 @@ static void init_ipi(void);
*/ */
static void mn10300_ipi_disable(unsigned int irq); static void mn10300_ipi_disable(unsigned int irq);
static void mn10300_ipi_enable(unsigned int irq); static void mn10300_ipi_enable(unsigned int irq);
static void mn10300_ipi_ack(unsigned int irq); static void mn10300_ipi_chip_disable(struct irq_data *d);
static void mn10300_ipi_nop(unsigned int irq); static void mn10300_ipi_chip_enable(struct irq_data *d);
static void mn10300_ipi_ack(struct irq_data *d);
static void mn10300_ipi_nop(struct irq_data *d);
static struct irq_chip mn10300_ipi_type = { static struct irq_chip mn10300_ipi_type = {
.name = "cpu_ipi", .name = "cpu_ipi",
.disable = mn10300_ipi_disable, .irq_disable = mn10300_ipi_chip_disable,
.enable = mn10300_ipi_enable, .irq_enable = mn10300_ipi_chip_enable,
.ack = mn10300_ipi_ack, .irq_ack = mn10300_ipi_ack,
.eoi = mn10300_ipi_nop .irq_eoi = mn10300_ipi_nop
}; };
static irqreturn_t smp_reschedule_interrupt(int irq, void *dev_id); static irqreturn_t smp_reschedule_interrupt(int irq, void *dev_id);
...@@ -236,6 +238,11 @@ static void mn10300_ipi_enable(unsigned int irq) ...@@ -236,6 +238,11 @@ static void mn10300_ipi_enable(unsigned int irq)
arch_local_irq_restore(flags); arch_local_irq_restore(flags);
} }
static void mn10300_ipi_chip_enable(struct irq_data *d)
{
mn10300_ipi_enable(d->irq);
}
/** /**
* mn10300_ipi_disable - Disable an IPI * mn10300_ipi_disable - Disable an IPI
* @irq: The IPI to be disabled. * @irq: The IPI to be disabled.
...@@ -254,6 +261,12 @@ static void mn10300_ipi_disable(unsigned int irq) ...@@ -254,6 +261,12 @@ static void mn10300_ipi_disable(unsigned int irq)
arch_local_irq_restore(flags); arch_local_irq_restore(flags);
} }
static void mn10300_ipi_chip_disable(struct irq_data *d)
{
mn10300_ipi_disable(d->irq);
}
/** /**
* mn10300_ipi_ack - Acknowledge an IPI interrupt in the PIC * mn10300_ipi_ack - Acknowledge an IPI interrupt in the PIC
* @irq: The IPI to be acknowledged. * @irq: The IPI to be acknowledged.
...@@ -261,8 +274,9 @@ static void mn10300_ipi_disable(unsigned int irq) ...@@ -261,8 +274,9 @@ static void mn10300_ipi_disable(unsigned int irq)
* Clear the interrupt detection flag for the IPI on the appropriate interrupt * Clear the interrupt detection flag for the IPI on the appropriate interrupt
* channel in the PIC. * channel in the PIC.
*/ */
static void mn10300_ipi_ack(unsigned int irq) static void mn10300_ipi_ack(struct irq_data *d)
{ {
unsigned int irq = d->irq;
unsigned long flags; unsigned long flags;
u16 tmp; u16 tmp;
...@@ -276,7 +290,7 @@ static void mn10300_ipi_ack(unsigned int irq) ...@@ -276,7 +290,7 @@ static void mn10300_ipi_ack(unsigned int irq)
* mn10300_ipi_nop - Dummy IPI action * mn10300_ipi_nop - Dummy IPI action
* @irq: The IPI to be acted upon. * @irq: The IPI to be acted upon.
*/ */
static void mn10300_ipi_nop(unsigned int irq) static void mn10300_ipi_nop(struct irq_data *d)
{ {
} }
......
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