From 5a2906a894b8fbb2d098a1d8f021ff46a82898fb Mon Sep 17 00:00:00 2001 From: Paul Mundt Date: Wed, 27 Oct 2010 14:54:50 +0900 Subject: [PATCH] --- yaml --- r: 219581 b: refs/heads/master c: 949bf16648ff657839893f88ce296a3c4d89cd1a h: refs/heads/master i: 219579: a13c8ec5d48cfbe7b14940adb11b5c8872c8e358 v: v3 --- [refs] | 2 +- trunk/arch/sh/kernel/cpu/irq/imask.c | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index b2ef41084810..619f4e5cecd6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d6138832ed8d86c5b8da63f40e8c6fffeeaf4129 +refs/heads/master: 949bf16648ff657839893f88ce296a3c4d89cd1a diff --git a/trunk/arch/sh/kernel/cpu/irq/imask.c b/trunk/arch/sh/kernel/cpu/irq/imask.c index a351ed84eec5..32c825c9488e 100644 --- a/trunk/arch/sh/kernel/cpu/irq/imask.c +++ b/trunk/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)