|
@@ -37,6 +37,9 @@
|
|
|
#include <asm/sibyte/sb1250_regs.h>
|
|
|
#include <asm/sibyte/sb1250_int.h>
|
|
|
#include <asm/sibyte/sb1250_scd.h>
|
|
|
+#if defined(CONFIG_SIBYTE_BCM1x55) || defined(CONFIG_SIBYTE_BCM1x80)
|
|
|
+#include <asm/sibyte/bcm1480_regs.h>
|
|
|
+#endif
|
|
|
|
|
|
|
|
|
struct bw_stats_struct {
|
|
@@ -81,9 +84,15 @@ void check_bus_watcher(void)
|
|
|
#ifdef CONFIG_SB1_PASS_1_WORKAROUNDS
|
|
|
/* Destructive read, clears register and interrupt */
|
|
|
status = csr_in32(IOADDR(A_SCD_BUS_ERR_STATUS));
|
|
|
-#else
|
|
|
+#elif defined(CONFIG_SIBYTE_BCM112X) || defined(CONFIG_SIBYTE_SB1250)
|
|
|
/* Use non-destructive register */
|
|
|
status = csr_in32(IOADDR(A_SCD_BUS_ERR_STATUS_DEBUG));
|
|
|
+#elif defined(CONFIG_SIBYTE_BCM1x55) || defined(CONFIG_SIBYTE_BCM1x80)
|
|
|
+ /* Use non-destructive register */
|
|
|
+ /* Same as 1250 except BUS_ERR_STATUS_DEBUG is in a different place. */
|
|
|
+ status = csr_in32(IOADDR(A_BCM1480_BUS_ERR_STATUS_DEBUG));
|
|
|
+#else
|
|
|
+#error bus watcher being built for unknown Sibyte SOC!
|
|
|
#endif
|
|
|
if (!(status & 0x7fffffff)) {
|
|
|
printk("Using last values reaped by bus watcher driver\n");
|