diff options
author | Michal Simek <monstr@monstr.eu> | 2011-03-30 11:13:38 (GMT) |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2011-04-01 07:25:04 (GMT) |
commit | 56d448010f4cde5293fe3adfbc636ede827fdfb0 (patch) | |
tree | 7dfc3aae8004af56b6b414498793bad28157d2ee | |
parent | 0ce790e7d736cedc563e1fb4e998babf5a4dbc3d (diff) | |
download | linux-56d448010f4cde5293fe3adfbc636ede827fdfb0.tar.xz |
microblaze: Fix level/edge irq sensibility
Patches:
"microblaze: Convert to new irq function names"
sha (4adc192ec7d977c74c750320f289af9d61c1caca)
and
"microblaze: Use generic show_interrupts()"
sha(9d61c18b25726306c9231428c17db42e3ff29ba7)
should also setup edge/level in irq_set_chip_and_handler_name
name parameter.
Error log:
~ # cat /proc/interrupts
CPU0
2: 2 Xilinx INTC-Xilinx INTC eth0
3: 2 Xilinx INTC-Xilinx INTC eth0
4: 241 Xilinx INTC-Xilinx INTC timer
6: 108 Xilinx INTC-Xilinx INTC serial
Fixed:
~ # cat /proc/interrupts
CPU0
2: 2 Xilinx INTC-level eth0
3: 2 Xilinx INTC-level eth0
4: 238 Xilinx INTC-edge timer
6: 108 Xilinx INTC-level serial
Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
---
v2: Fix exchanged edge and level
-rw-r--r-- | arch/microblaze/kernel/intc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/microblaze/kernel/intc.c b/arch/microblaze/kernel/intc.c index 5ba7e16..c88f066 100644 --- a/arch/microblaze/kernel/intc.c +++ b/arch/microblaze/kernel/intc.c @@ -158,11 +158,11 @@ void __init init_IRQ(void) for (i = 0; i < nr_irq; ++i) { if (intr_type & (0x00000001 << i)) { irq_set_chip_and_handler_name(i, &intc_dev, - handle_edge_irq, intc_dev.name); + handle_edge_irq, "edge"); irq_clear_status_flags(i, IRQ_LEVEL); } else { irq_set_chip_and_handler_name(i, &intc_dev, - handle_level_irq, intc_dev.name); + handle_level_irq, "level"); irq_set_status_flags(i, IRQ_LEVEL); } } |