diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 07:54:50 +0200 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 07:54:50 +0200 |
commit | 949bf16648ff657839893f88ce296a3c4d89cd1a (patch) | |
tree | 5b56a4ffb5eb110f39277c2d9db39993bc15a452 /arch | |
parent | sh: mach-microdev: irq_data conversion. (diff) | |
download | linux-949bf16648ff657839893f88ce296a3c4d89cd1a.tar.xz linux-949bf16648ff657839893f88ce296a3c4d89cd1a.zip |
sh: imask IRQs irq_data conversion.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sh/kernel/cpu/irq/imask.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/arch/sh/kernel/cpu/irq/imask.c b/arch/sh/kernel/cpu/irq/imask.c index a351ed84eec5..32c825c9488e 100644 --- a/arch/sh/kernel/cpu/irq/imask.c +++ b/arch/sh/kernel/cpu/irq/imask.c @@ -51,16 +51,20 @@ static inline void set_interrupt_registers(int ip) : "t"); } -static void mask_imask_irq(unsigned int irq) +static void mask_imask_irq(struct irq_data *data) { + unsigned int irq = data->irq; + clear_bit(irq, imask_mask); if (interrupt_priority < IMASK_PRIORITY - irq) interrupt_priority = IMASK_PRIORITY - irq; set_interrupt_registers(interrupt_priority); } -static void unmask_imask_irq(unsigned int irq) +static void unmask_imask_irq(struct irq_data *data) { + unsigned int irq = data->irq; + set_bit(irq, imask_mask); interrupt_priority = IMASK_PRIORITY - find_first_zero_bit(imask_mask, IMASK_PRIORITY); @@ -69,9 +73,9 @@ static void unmask_imask_irq(unsigned int irq) static struct irq_chip imask_irq_chip = { .name = "SR.IMASK", - .mask = mask_imask_irq, - .unmask = unmask_imask_irq, - .mask_ack = mask_imask_irq, + .irq_mask = mask_imask_irq, + .irq_unmask = unmask_imask_irq, + .irq_mask_ack = mask_imask_irq, }; void make_imask_irq(unsigned int irq) |