Module Name: src Committed By: matt Date: Wed May 12 19:11:33 UTC 2010
Modified Files: src/sys/arch/sbmips/sbmips [matt-nb5-mips64]: sb1250_icu.c Log Message: Force the Watchdog interrupts to NMI and don't mask them. To generate a diff of this commit: cvs rdiff -u -r1.9.36.11 -r1.9.36.12 src/sys/arch/sbmips/sbmips/sb1250_icu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/sbmips/sbmips/sb1250_icu.c diff -u src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.11 src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.12 --- src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.11 Tue Mar 16 02:34:48 2010 +++ src/sys/arch/sbmips/sbmips/sb1250_icu.c Wed May 12 19:11:33 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: sb1250_icu.c,v 1.9.36.11 2010/03/16 02:34:48 matt Exp $ */ +/* $NetBSD: sb1250_icu.c,v 1.9.36.12 2010/05/12 19:11:33 matt Exp $ */ /* * Copyright 2000, 2001 @@ -33,7 +33,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sb1250_icu.c,v 1.9.36.11 2010/03/16 02:34:48 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sb1250_icu.c,v 1.9.36.12 2010/05/12 19:11:33 matt Exp $"); #define __INTR_PRIVATE @@ -207,9 +207,10 @@ MIPS_PHYS_TO_KSEG1(A_IMR_MAPPER(cpu->sb1cpu_ci->ci_cpuid)); #ifdef MULTIPROCESSOR cpu->sb1cpu_imr_all = - ~(M_INT_MBOX_0|M_INT_MBOX_1|M_INT_MBOX_2|M_INT_MBOX_3); + ~(M_INT_MBOX_0|M_INT_MBOX_1|M_INT_MBOX_2|M_INT_MBOX_3 + |M_INT_WATCHDOG_TIMER_0|M_INT_WATCHDOG_TIMER_1); #else - cpu->sb1cpu_imr_all = ~0ULL; + cpu->sb1cpu_imr_all = ~(M_INT_WATCHDOG_TIMER_0|M_INT_WATCHDOG_TIMER_1); #endif for (u_int i = 0; i < K_INT_SOURCES; i++, evcnts++) { @@ -217,6 +218,8 @@ evcnt_attach_dynamic(evcnts, EVCNT_TYPE_INTR, NULL, xname, sb1250_intr_names[i]); } + WRITE_REG(cpu->sb1cpu_imr_base + SB1250_I_MAP(K_INT_WATCHDOG_TIMER_0), K_INT_MAP_NMI); + WRITE_REG(cpu->sb1cpu_imr_base + SB1250_I_MAP(K_INT_WATCHDOG_TIMER_1), K_INT_MAP_NMI); WRITE_REG(cpu->sb1cpu_imr_base + R_IMR_INTERRUPT_MASK, cpu->sb1cpu_imr_all); #ifdef MULTIPROCESSOR