diff options
Diffstat (limited to 'arch/blackfin/mach-common/ints-priority-dc.c')
-rw-r--r-- | arch/blackfin/mach-common/ints-priority-dc.c | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/arch/blackfin/mach-common/ints-priority-dc.c b/arch/blackfin/mach-common/ints-priority-dc.c index c2f05fabedc1..4882f0e801a9 100644 --- a/arch/blackfin/mach-common/ints-priority-dc.c +++ b/arch/blackfin/mach-common/ints-priority-dc.c | |||
@@ -181,7 +181,6 @@ static struct irq_chip bf561_internal_irqchip = { | |||
181 | .unmask = bf561_internal_unmask_irq, | 181 | .unmask = bf561_internal_unmask_irq, |
182 | }; | 182 | }; |
183 | 183 | ||
184 | #ifdef CONFIG_IRQCHIP_DEMUX_GPIO | ||
185 | static unsigned short gpio_enabled[gpio_bank(MAX_BLACKFIN_GPIOS)]; | 184 | static unsigned short gpio_enabled[gpio_bank(MAX_BLACKFIN_GPIOS)]; |
186 | static unsigned short gpio_edge_triggered[gpio_bank(MAX_BLACKFIN_GPIOS)]; | 185 | static unsigned short gpio_edge_triggered[gpio_bank(MAX_BLACKFIN_GPIOS)]; |
187 | 186 | ||
@@ -362,8 +361,6 @@ static void bf561_demux_gpio_irq(unsigned int inta_irq, | |||
362 | 361 | ||
363 | } | 362 | } |
364 | 363 | ||
365 | #endif /* CONFIG_IRQCHIP_DEMUX_GPIO */ | ||
366 | |||
367 | void __init init_exception_vectors(void) | 364 | void __init init_exception_vectors(void) |
368 | { | 365 | { |
369 | SSYNC(); | 366 | SSYNC(); |
@@ -413,26 +410,21 @@ int __init init_arch_irq(void) | |||
413 | set_irq_chip(irq, &bf561_core_irqchip); | 410 | set_irq_chip(irq, &bf561_core_irqchip); |
414 | else | 411 | else |
415 | set_irq_chip(irq, &bf561_internal_irqchip); | 412 | set_irq_chip(irq, &bf561_internal_irqchip); |
416 | #ifdef CONFIG_IRQCHIP_DEMUX_GPIO | 413 | |
417 | if ((irq != IRQ_PROG0_INTA) && | 414 | if ((irq != IRQ_PROG0_INTA) && |
418 | (irq != IRQ_PROG1_INTA) && (irq != IRQ_PROG2_INTA)) { | 415 | (irq != IRQ_PROG1_INTA) && |
419 | #endif | 416 | (irq != IRQ_PROG2_INTA)) |
420 | set_irq_handler(irq, handle_simple_irq); | 417 | set_irq_handler(irq, handle_simple_irq); |
421 | #ifdef CONFIG_IRQCHIP_DEMUX_GPIO | 418 | else |
422 | } else { | ||
423 | set_irq_chained_handler(irq, bf561_demux_gpio_irq); | 419 | set_irq_chained_handler(irq, bf561_demux_gpio_irq); |
424 | } | ||
425 | #endif | ||
426 | |||
427 | } | 420 | } |
428 | 421 | ||
429 | #ifdef CONFIG_IRQCHIP_DEMUX_GPIO | ||
430 | for (irq = IRQ_PF0; irq <= IRQ_PF47; irq++) { | 422 | for (irq = IRQ_PF0; irq <= IRQ_PF47; irq++) { |
431 | set_irq_chip(irq, &bf561_gpio_irqchip); | 423 | set_irq_chip(irq, &bf561_gpio_irqchip); |
432 | /* if configured as edge, then will be changed to do_edge_IRQ */ | 424 | /* if configured as edge, then will be changed to do_edge_IRQ */ |
433 | set_irq_handler(irq, handle_level_irq); | 425 | set_irq_handler(irq, handle_level_irq); |
434 | } | 426 | } |
435 | #endif | 427 | |
436 | bfin_write_IMASK(0); | 428 | bfin_write_IMASK(0); |
437 | CSYNC(); | 429 | CSYNC(); |
438 | ilat = bfin_read_ILAT(); | 430 | ilat = bfin_read_ILAT(); |
@@ -457,9 +449,8 @@ int __init init_arch_irq(void) | |||
457 | } | 449 | } |
458 | 450 | ||
459 | #ifdef CONFIG_DO_IRQ_L1 | 451 | #ifdef CONFIG_DO_IRQ_L1 |
460 | void do_irq(int vec, struct pt_regs *fp)__attribute__((l1_text)); | 452 | __attribute__((l1_text)) |
461 | #endif | 453 | #endif |
462 | |||
463 | void do_irq(int vec, struct pt_regs *fp) | 454 | void do_irq(int vec, struct pt_regs *fp) |
464 | { | 455 | { |
465 | if (vec == EVT_IVTMR_P) { | 456 | if (vec == EVT_IVTMR_P) { |