diff options
| -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) | |||
| 51 | : "t"); | 51 | : "t"); |
| 52 | } | 52 | } |
| 53 | 53 | ||
| 54 | static void mask_imask_irq(unsigned int irq) | 54 | static void mask_imask_irq(struct irq_data *data) |
| 55 | { | 55 | { |
| 56 | unsigned int irq = data->irq; | ||
| 57 | |||
| 56 | clear_bit(irq, imask_mask); | 58 | clear_bit(irq, imask_mask); |
| 57 | if (interrupt_priority < IMASK_PRIORITY - irq) | 59 | if (interrupt_priority < IMASK_PRIORITY - irq) |
| 58 | interrupt_priority = IMASK_PRIORITY - irq; | 60 | interrupt_priority = IMASK_PRIORITY - irq; |
| 59 | set_interrupt_registers(interrupt_priority); | 61 | set_interrupt_registers(interrupt_priority); |
| 60 | } | 62 | } |
| 61 | 63 | ||
| 62 | static void unmask_imask_irq(unsigned int irq) | 64 | static void unmask_imask_irq(struct irq_data *data) |
| 63 | { | 65 | { |
| 66 | unsigned int irq = data->irq; | ||
| 67 | |||
| 64 | set_bit(irq, imask_mask); | 68 | set_bit(irq, imask_mask); |
| 65 | interrupt_priority = IMASK_PRIORITY - | 69 | interrupt_priority = IMASK_PRIORITY - |
| 66 | find_first_zero_bit(imask_mask, IMASK_PRIORITY); | 70 | find_first_zero_bit(imask_mask, IMASK_PRIORITY); |
| @@ -69,9 +73,9 @@ static void unmask_imask_irq(unsigned int irq) | |||
| 69 | 73 | ||
| 70 | static struct irq_chip imask_irq_chip = { | 74 | static struct irq_chip imask_irq_chip = { |
| 71 | .name = "SR.IMASK", | 75 | .name = "SR.IMASK", |
| 72 | .mask = mask_imask_irq, | 76 | .irq_mask = mask_imask_irq, |
| 73 | .unmask = unmask_imask_irq, | 77 | .irq_unmask = unmask_imask_irq, |
| 74 | .mask_ack = mask_imask_irq, | 78 | .irq_mask_ack = mask_imask_irq, |
| 75 | }; | 79 | }; |
| 76 | 80 | ||
| 77 | void make_imask_irq(unsigned int irq) | 81 | void make_imask_irq(unsigned int irq) |
