diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 02:18:15 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 02:18:15 -0400 |
commit | 19add7e11656dc0ae8d0187e1ed02deb3b077815 (patch) | |
tree | 1ddd9176b4e3be22e4c442858a8fc9b3e327cbc7 /arch/sh/cchips/hd6446x | |
parent | 79c981283ba344f7f51b6aa82e1b8e71bad123b4 (diff) |
sh: hd64461: irq_data conversion.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/cchips/hd6446x')
-rw-r--r-- | arch/sh/cchips/hd6446x/hd64461.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/arch/sh/cchips/hd6446x/hd64461.c b/arch/sh/cchips/hd6446x/hd64461.c index bcb31ae84a51..177a10b25cad 100644 --- a/arch/sh/cchips/hd6446x/hd64461.c +++ b/arch/sh/cchips/hd6446x/hd64461.c | |||
@@ -17,8 +17,9 @@ | |||
17 | /* This belongs in cpu specific */ | 17 | /* This belongs in cpu specific */ |
18 | #define INTC_ICR1 0xA4140010UL | 18 | #define INTC_ICR1 0xA4140010UL |
19 | 19 | ||
20 | static void hd64461_mask_irq(unsigned int irq) | 20 | static void hd64461_mask_irq(struct irq_data *data) |
21 | { | 21 | { |
22 | unsigned int irq = data->irq; | ||
22 | unsigned short nimr; | 23 | unsigned short nimr; |
23 | unsigned short mask = 1 << (irq - HD64461_IRQBASE); | 24 | unsigned short mask = 1 << (irq - HD64461_IRQBASE); |
24 | 25 | ||
@@ -27,8 +28,9 @@ static void hd64461_mask_irq(unsigned int irq) | |||
27 | __raw_writew(nimr, HD64461_NIMR); | 28 | __raw_writew(nimr, HD64461_NIMR); |
28 | } | 29 | } |
29 | 30 | ||
30 | static void hd64461_unmask_irq(unsigned int irq) | 31 | static void hd64461_unmask_irq(struct irq_data *data) |
31 | { | 32 | { |
33 | unsigned int irq = data->irq; | ||
32 | unsigned short nimr; | 34 | unsigned short nimr; |
33 | unsigned short mask = 1 << (irq - HD64461_IRQBASE); | 35 | unsigned short mask = 1 << (irq - HD64461_IRQBASE); |
34 | 36 | ||
@@ -37,20 +39,21 @@ static void hd64461_unmask_irq(unsigned int irq) | |||
37 | __raw_writew(nimr, HD64461_NIMR); | 39 | __raw_writew(nimr, HD64461_NIMR); |
38 | } | 40 | } |
39 | 41 | ||
40 | static void hd64461_mask_and_ack_irq(unsigned int irq) | 42 | static void hd64461_mask_and_ack_irq(struct irq_data *data) |
41 | { | 43 | { |
42 | hd64461_mask_irq(irq); | 44 | hd64461_mask_irq(data); |
45 | |||
43 | #ifdef CONFIG_HD64461_ENABLER | 46 | #ifdef CONFIG_HD64461_ENABLER |
44 | if (irq == HD64461_IRQBASE + 13) | 47 | if (data->irq == HD64461_IRQBASE + 13) |
45 | __raw_writeb(0x00, HD64461_PCC1CSCR); | 48 | __raw_writeb(0x00, HD64461_PCC1CSCR); |
46 | #endif | 49 | #endif |
47 | } | 50 | } |
48 | 51 | ||
49 | static struct irq_chip hd64461_irq_chip = { | 52 | static struct irq_chip hd64461_irq_chip = { |
50 | .name = "HD64461-IRQ", | 53 | .name = "HD64461-IRQ", |
51 | .mask = hd64461_mask_irq, | 54 | .irq_mask = hd64461_mask_irq, |
52 | .mask_ack = hd64461_mask_and_ack_irq, | 55 | .irq_mask_ack = hd64461_mask_and_ack_irq, |
53 | .unmask = hd64461_unmask_irq, | 56 | .irq_unmask = hd64461_unmask_irq, |
54 | }; | 57 | }; |
55 | 58 | ||
56 | static void hd64461_irq_demux(unsigned int irq, struct irq_desc *desc) | 59 | static void hd64461_irq_demux(unsigned int irq, struct irq_desc *desc) |