[PATCH][PPC32] PPC4xx PIC: ack parent UIC in disable_irq

Eugene Surovegin ebs at ebshome.net
Sat Feb 19 07:38:36 EST 2005


Andrew,

this patch fixes bug in PPC4xx disable_irq implementation. We need to 
ACK parent UIC to prevent false triggering in case IRQ we just 
disabled was already pending.

Signed-off-by: Eugene Surovegin <ebs at ebshome.net>

-------------- next part --------------
diff -Nru a/arch/ppc/syslib/ppc4xx_pic.c b/arch/ppc/syslib/ppc4xx_pic.c
--- a/arch/ppc/syslib/ppc4xx_pic.c	2005-02-18 12:12:54 -08:00
+++ b/arch/ppc/syslib/ppc4xx_pic.c	2005-02-18 12:12:54 -08:00
@@ -4,7 +4,7 @@
  * Interrupt controller driver for PowerPC 4xx-based processors.
  *
  * Eugene Surovegin <eugene.surovegin at zultys.com> or <ebs at ebshome.net>
- * Copyright (c) 2004 Zultys Technologies
+ * Copyright (c) 2004, 2005 Zultys Technologies
  *
  * Based on original code by
  *    Copyright (c) 1999 Grant Erickson <grant at lcse.umn.edu>
@@ -49,6 +49,7 @@
 {									\
 	ppc_cached_irq_mask[n] &= ~IRQ_MASK_UIC##n(irq);		\
 	mtdcr(DCRN_UIC_ER(UIC##n), ppc_cached_irq_mask[n]);		\
+	ACK_UIC##n##_PARENT						\
 }									\
 									\
 static void ppc4xx_uic##n##_ack(unsigned int irq)			\


More information about the Linuxppc-embedded mailing list