aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-iop13xx/irq.c
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2006-12-14 17:31:20 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-12-19 14:48:53 -0500
commit3a2aeda86d9af50510b370cb01bc38aef213a36d (patch)
tree34c84fa3d950048e1874f852ed534219a77686b7 /arch/arm/mach-iop13xx/irq.c
parent0f7d667ba341337b77b31ce81be04b16b3964cf6 (diff)
[ARM] 4022/1: iop13xx: generic irq fixups
* use irq_chip * use handle_level_irq Signed-off-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-iop13xx/irq.c')
-rw-r--r--arch/arm/mach-iop13xx/irq.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/arch/arm/mach-iop13xx/irq.c b/arch/arm/mach-iop13xx/irq.c
index c4d9c8c5579c..dbbc07c38b14 100644
--- a/arch/arm/mach-iop13xx/irq.c
+++ b/arch/arm/mach-iop13xx/irq.c
@@ -222,25 +222,29 @@ iop13xx_irq_unmask3(unsigned int irq)
222 iop13xx_cp6_restore(cp_flags); 222 iop13xx_cp6_restore(cp_flags);
223} 223}
224 224
225static struct irqchip iop13xx_irqchip0 = { 225static struct irq_chip iop13xx_irqchip1 = {
226 .name = "IOP13xx-1",
226 .ack = iop13xx_irq_mask0, 227 .ack = iop13xx_irq_mask0,
227 .mask = iop13xx_irq_mask0, 228 .mask = iop13xx_irq_mask0,
228 .unmask = iop13xx_irq_unmask0, 229 .unmask = iop13xx_irq_unmask0,
229}; 230};
230 231
231static struct irqchip iop13xx_irqchip1 = { 232static struct irq_chip iop13xx_irqchip2 = {
233 .name = "IOP13xx-2",
232 .ack = iop13xx_irq_mask1, 234 .ack = iop13xx_irq_mask1,
233 .mask = iop13xx_irq_mask1, 235 .mask = iop13xx_irq_mask1,
234 .unmask = iop13xx_irq_unmask1, 236 .unmask = iop13xx_irq_unmask1,
235}; 237};
236 238
237static struct irqchip iop13xx_irqchip2 = { 239static struct irq_chip iop13xx_irqchip3 = {
240 .name = "IOP13xx-3",
238 .ack = iop13xx_irq_mask2, 241 .ack = iop13xx_irq_mask2,
239 .mask = iop13xx_irq_mask2, 242 .mask = iop13xx_irq_mask2,
240 .unmask = iop13xx_irq_unmask2, 243 .unmask = iop13xx_irq_unmask2,
241}; 244};
242 245
243static struct irqchip iop13xx_irqchip3 = { 246static struct irq_chip iop13xx_irqchip4 = {
247 .name = "IOP13xx-4",
244 .ack = iop13xx_irq_mask3, 248 .ack = iop13xx_irq_mask3,
245 .mask = iop13xx_irq_mask3, 249 .mask = iop13xx_irq_mask3,
246 .unmask = iop13xx_irq_unmask3, 250 .unmask = iop13xx_irq_unmask3,
@@ -270,15 +274,15 @@ void __init iop13xx_init_irq(void)
270 274
271 for(i = 0; i < NR_IOP13XX_IRQS; i++) { 275 for(i = 0; i < NR_IOP13XX_IRQS; i++) {
272 if (i < 32) 276 if (i < 32)
273 set_irq_chip(i, &iop13xx_irqchip0);
274 else if (i < 64)
275 set_irq_chip(i, &iop13xx_irqchip1); 277 set_irq_chip(i, &iop13xx_irqchip1);
276 else if (i < 96) 278 else if (i < 64)
277 set_irq_chip(i, &iop13xx_irqchip2); 279 set_irq_chip(i, &iop13xx_irqchip2);
278 else 280 else if (i < 96)
279 set_irq_chip(i, &iop13xx_irqchip3); 281 set_irq_chip(i, &iop13xx_irqchip3);
282 else
283 set_irq_chip(i, &iop13xx_irqchip4);
280 284
281 set_irq_handler(i, do_level_IRQ); 285 set_irq_handler(i, handle_level_irq);
282 set_irq_flags(i, IRQF_VALID | IRQF_PROBE); 286 set_irq_flags(i, IRQF_VALID | IRQF_PROBE);
283 } 287 }
284 288