linux/arch/mips/alchemy/common
Manuel Lauss 44f2c586a3 MIPS: Alchemy: Fix hang with high-frequency edge interrupts
The handle_edge_irq() flowhandler disables edge int sources which occur
too fast (i.e. another edge comes in before the irq handler function
had a chance to finish).  Currently, the mask_ack() callback does not
ack the edges in hardware, leading to an endless loop in the flowhandler
where it tries to shut up the irq source.

When I rewrote the alchemy IRQ code  I wrongly assumed the mask_ack()
callback was only used by the level flowhandler, hence it omitted the
(at the time pointless) edge acks.  Turned out I was wrong; so here
is a complete mask_ack implementation for Alchemy IC, which fixes
the above mentioned problem.

Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2009-11-02 12:00:08 +01:00
..
Makefile
clocks.c
dbdma.c MIPS: Decrease size of au1xxx_dbdma_pm_regs[][] 2009-09-30 21:47:01 +02:00
dma.c
gpiolib-au1000.c
irq.c MIPS: Alchemy: Fix hang with high-frequency edge interrupts 2009-11-02 12:00:08 +01:00
pci.c
platform.c
power.c
prom.c
puts.c
reset.c
setup.c MIPS: Alchemy: override loops_per_jiffy detection 2009-09-17 20:07:51 +02:00
sleeper.S
time.c cpumask: remove dangerous CPU_MASK_ALL_PTR, &CPU_MASK_ALL.: mips 2009-09-24 09:34:36 +09:30