Title: [6710] trunk/arch/blackfin/kernel/setup.c: Fix bug[#5223] Write 0 to STSTEM_RESET field in SWRST when double fault
Revision
6710
Author
sonicz
Date
2009-06-15 02:35:13 -0500 (Mon, 15 Jun 2009)

Log Message

Fix bug[#5223] Write 0 to STSTEM_RESET field in SWRST when double fault
failure is configured.

Rollback last commit.

Modified Paths

Diff

Modified: trunk/arch/blackfin/kernel/setup.c (6709 => 6710)


--- trunk/arch/blackfin/kernel/setup.c	2009-06-15 06:50:12 UTC (rev 6709)
+++ trunk/arch/blackfin/kernel/setup.c	2009-06-15 07:35:13 UTC (rev 6710)
@@ -832,21 +832,21 @@
 
 	printk(KERN_INFO "Boot Mode: %i\n", bfin_read_SYSCR() & 0xF);
 
+	/* Newer parts mirror SWRST bits in SYSCR */
+#if defined(CONFIG_BF53x) || defined(CONFIG_BF561) || \
+    defined(CONFIG_BF538) || defined(CONFIG_BF539)
 	_bfin_swrst = bfin_read_SWRST();
+#else
+	_bfin_swrst = bfin_read_SYSCR();
+#endif
 
 #ifdef CONFIG_DEBUG_DOUBLEFAULT_PRINT
-	bfin_write_SWRST(_bfin_swrst & ~DOUBLE_FAULT);
+	bfin_write_SWRST(_bfin_swrst & 0xfff0 & ~DOUBLE_FAULT);
 #endif
 #ifdef CONFIG_DEBUG_DOUBLEFAULT_RESET
-	bfin_write_SWRST(_bfin_swrst | DOUBLE_FAULT);
+	bfin_write_SWRST(_bfin_swrst & 0xfff0 | DOUBLE_FAULT);
 #endif
 
-	/* Newer parts mirror SWRST bits in SYSCR */
-#if !(defined(CONFIG_BF53x) || defined(CONFIG_BF561) || \
-    defined(CONFIG_BF538) || defined(CONFIG_BF539))
-	_bfin_swrst = bfin_read_SYSCR();
-#endif
-
 #ifdef CONFIG_SMP
 	if (_bfin_swrst & SWRST_DBL_FAULT_A) {
 #else
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to