[PATCH 2/2] Clear pending interrupts at CPU boot up time

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The pending interrupts can be remaining at boot up time on some
platform. This will cause spurious interrupts when interrupt is
enabled for the first time. This patch clears IVR at the CPU
initialization to eliminate such spurious interrupts.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>

---
 arch/ia64/kernel/setup.c |    5 +++++
 1 files changed, 5 insertions(+)

Index: linux-2.6.23-rc3/arch/ia64/kernel/setup.c
===================================================================
--- linux-2.6.23-rc3.orig/arch/ia64/kernel/setup.c
+++ linux-2.6.23-rc3/arch/ia64/kernel/setup.c
@@ -953,6 +953,11 @@ cpu_init (void)
 
 	/* clear TPR & XTP to enable all interrupt classes: */
 	ia64_setreg(_IA64_REG_CR_TPR, 0);
+
+	/* Clear any pending interrupts left by SAL/EFI */
+	while (ia64_get_ivr() != IA64_SPURIOUS_INT_VECTOR)
+		ia64_eoi();
+
 #ifdef CONFIG_SMP
 	normal_xtp();
 #endif


-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux