[PATCH] fix interrupt handling for R2 CPUs

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

 



This patch ensures that

a) only the low bit is used for status flags if CONFIG_CPU_MIPSR2,
   consistent with the use of di/ei.

b) the ERL/EXL bits get cleared as well.


Signed-off-by:  Thiemo Seufer <ths@xxxxxxxxxxxx>


--- linux-orig/include/asm-mips/interrupt.h	2006-04-24 12:02:35.000000000 +0100
+++ linux-work/include/asm-mips/interrupt.h	2006-05-15 18:10:49.000000000 +0100
@@ -102,6 +102,9 @@ __asm__ (
 	"	mfc0	\\flags, $2, 1					\n"
 #else
 	"	mfc0	\\flags, $12					\n"
+#ifdef CONFIG_CPU_MIPSR2
+	"	andi	\\flags, 1					\n"
+#endif
 #endif
 	"	.set	pop						\n"
 	"	.endm							\n");
@@ -169,7 +172,7 @@ __asm__ (
 	 * Fast, dangerous.  Life is fun, life is good.
 	 */
 	"	mfc0	$1, $12						\n"
-	"	ins	$1, \\flags, 0, 1				\n"
+	"	ins	$1, \\flags, 0, 5				\n"
 	"	mtc0	$1, $12						\n"
 #else
 	"	mfc0	$1, $12						\n"


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux