* [PATCH] MPC85xx: CPM2 interrupt handler failure after 100, 000 interrupts
@ 2005-12-16 13:46 Marcelo Tosatti
0 siblings, 0 replies; only message in thread
From: Marcelo Tosatti @ 2005-12-16 13:46 UTC (permalink / raw)
To: Kumar Gala, linux-ppc-embedded; +Cc: Daniel Belz, Edson Seabra
Hi Kumar,
Please apply.
From: Edson Seabra <Edson.Seabra@cyclades.com>
The CPM2 interrupt handler does not return success to the IRQ subsystem, which
causes it to kill the IRQ line after 100,000 interrupts.
[root@KVM ~]# create_cf --doformat --factory_default
...
Copying Linux kernel to /dev/hda1
Initialization of /dev/hda1 done.
Copying RO file system to /dev/hda5
Packing dev done.
Creating directories...
Creating etc... done.
Creating home... done.
Creating root... done.
Creating mnt... done.
Creating var... done.
Creating dev... done.
Creating tmp... done.
Creating proc... done.
Copying directories/files...
Copying bin... done.
Copying sbin... done.
Copying lib... done.
Copying libexec... done.
Copying new_web... done.
Copying opt... done.
Copying usr... done.
Copying COPYRIGHTS...
Error in command: 'cp -a /COPYRIGHTS /mnt/hdPart'
[ 1133.542580] Disabling IRQ #94
May 23 16:59:53 s_kernel@KVM [ 1133.542222] irq 94: nobody cared (try
booting with the "irqpoll" option)
May 23 16:59:53 s_kernel@KVM [ 1133.542546] handlers:
May 23 16:59:53 s_kernel@KVM [ 1133.542554] [<c0013ba4>]
(cpm2_cascade+0x0/0x48)
The following patch fixes the problem.
Signed-off-by: Edson Seabra <Edson.Seabra@cyclades.com>
Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
RCS file: /usr/cvsroot/oobi_projects/sources/lsp/linux-2.6.14
/arch/ppc/platforms/85xx/mpc85xx_cds_common.c,v
retrieving revision 1.1
retrieving revision 1.4
diff -u -r1.1 -r1.4
--- a/arch/ppc/platforms/85xx/mpc85xx_cds_common.c 6 Dec 2005 02:56:21 -0000 1.1
+++ b/arch/ppc/platforms/85xx/mpc85xx_cds_common.c 14 Dec 2005 19:32:57 -0000 1.4
@@ -145,10 +154,11 @@
}
#ifdef CONFIG_CPM2
-static void cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
+static int cpm2_cascade(int irq, void *dev_id, struct pt_regs *regs)
{
while((irq = cpm2_get_irq(regs)) >= 0)
__do_IRQ(irq, regs);
+ return(IRQ_HANDLED);
}
static struct irqaction cpm2_irqaction = {
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-12-16 14:38 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-16 13:46 [PATCH] MPC85xx: CPM2 interrupt handler failure after 100, 000 interrupts Marcelo Tosatti
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.