Module Name: src
Committed By: matt
Date: Sun May 16 00:34:45 UTC 2010
Modified Files:
src/sys/arch/evbmips/malta [matt-nb5-mips64]: malta_intr.c
src/sys/arch/mips/include [matt-nb5-mips64]: intr.h
src/sys/arch/mips/mips [matt-nb5-mips64]: spl.S
src/sys/arch/sbmips/sbmips [matt-nb5-mips64]: sb1250_icu.c
Log Message:
Add IPL_DDB. This is needed for watchdog on sbmips and for IPIs used by DDB.
It's above IPL_SCHED but below IPL_HIGH.
To generate a diff of this commit:
cvs rdiff -u -r1.19.16.6 -r1.19.16.7 src/sys/arch/evbmips/malta/malta_intr.c
cvs rdiff -u -r1.3.96.11 -r1.3.96.12 src/sys/arch/mips/include/intr.h
cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/mips/mips/spl.S
cvs rdiff -u -r1.9.36.13 -r1.9.36.14 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/evbmips/malta/malta_intr.c
diff -u src/sys/arch/evbmips/malta/malta_intr.c:1.19.16.6 src/sys/arch/evbmips/malta/malta_intr.c:1.19.16.7
--- src/sys/arch/evbmips/malta/malta_intr.c:1.19.16.6 Sun Feb 28 03:32:23 2010
+++ src/sys/arch/evbmips/malta/malta_intr.c Sun May 16 00:34:45 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: malta_intr.c,v 1.19.16.6 2010/02/28 03:32:23 matt Exp $ */
+/* $NetBSD: malta_intr.c,v 1.19.16.7 2010/05/16 00:34:45 matt Exp $ */
/*
* Copyright 2001, 2002 Wasabi Systems, Inc.
@@ -40,7 +40,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: malta_intr.c,v 1.19.16.6 2010/02/28 03:32:23 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: malta_intr.c,v 1.19.16.7 2010/05/16 00:34:45 matt Exp $");
#define __INTR_PRIVATE
@@ -71,7 +71,9 @@
[IPL_SOFTCLOCK] = MIPS_SOFT_INT_MASK_0,
[IPL_SOFTNET] = MIPS_SOFT_INT_MASK,
[IPL_VM] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0,
- [IPL_SCHED] = MIPS_INT_MASK,
+ [IPL_SCHED] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0
+ | MIPS_INT_MASK_5,
+ [IPL_DDB] = MIPS_INT_MASK,
[IPL_HIGH] = MIPS_INT_MASK,
},
};
Index: src/sys/arch/mips/include/intr.h
diff -u src/sys/arch/mips/include/intr.h:1.3.96.11 src/sys/arch/mips/include/intr.h:1.3.96.12
--- src/sys/arch/mips/include/intr.h:1.3.96.11 Sat May 15 23:11:38 2010
+++ src/sys/arch/mips/include/intr.h Sun May 16 00:34:45 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: intr.h,v 1.3.96.11 2010/05/15 23:11:38 matt Exp $ */
+/* $NetBSD: intr.h,v 1.3.96.12 2010/05/16 00:34:45 matt Exp $ */
/*-
* Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -42,7 +42,8 @@
#define IPL_SOFTSERIAL (IPL_SOFTNET) /* shares SWINT with softnet */
#define IPL_VM (IPL_SOFTSERIAL+1)
#define IPL_SCHED (IPL_VM+1)
-#define IPL_HIGH (IPL_SCHED)
+#define IPL_DDB (IPL_SCHED+1)
+#define IPL_HIGH (IPL_DDB+1)
#define _IPL_N (IPL_HIGH+1)
@@ -83,7 +84,7 @@
};
struct ipl_sr_map {
- uint32_t sr_bits[_IPL_N+1];
+ uint32_t sr_bits[_IPL_N];
};
#else
struct splsw;
Index: src/sys/arch/mips/mips/spl.S
diff -u src/sys/arch/mips/mips/spl.S:1.1.2.5 src/sys/arch/mips/mips/spl.S:1.1.2.6
--- src/sys/arch/mips/mips/spl.S:1.1.2.5 Tue Apr 20 22:08:13 2010
+++ src/sys/arch/mips/mips/spl.S Sun May 16 00:34:45 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: spl.S,v 1.1.2.5 2010/04/20 22:08:13 matt Exp $ */
+/* $NetBSD: spl.S,v 1.1.2.6 2010/05/16 00:34:45 matt Exp $ */
/*-
* Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
@@ -37,7 +37,7 @@
#include <mips/asm.h>
#include <mips/cpuregs.h>
-RCSID("$NetBSD: spl.S,v 1.1.2.5 2010/04/20 22:08:13 matt Exp $")
+RCSID("$NetBSD: spl.S,v 1.1.2.6 2010/05/16 00:34:45 matt Exp $")
#include "assym.h"
@@ -51,9 +51,8 @@
.word MIPS_SOFT_INT_MASK /* IPL_SOFT{NET,SERIAL} */
.word MIPS_INT_MASK /* IPL_VM */
.word MIPS_INT_MASK /* IPL_SCHED */
-#if IPL_SCHED != IPL_HIGH
+ .word MIPS_INT_MASK /* IPL_DDB */
.word MIPS_INT_MASK /* IPL_HIGH */
-#endif
.text
/*
@@ -237,6 +236,13 @@
nop
END(_splsw_splhigh)
+STATIC_LEAF(_splsw_splddb)
+ INT_L a0, _C_LABEL(ipl_sr_map) + 4*IPL_DDB
+ li a1, IPL_DDB
+ b _splraise
+ nop
+END(_splsw_splddb)
+
STATIC_LEAF(_splsw_splsched)
INT_L a0, _C_LABEL(ipl_sr_map) + 4*IPL_SCHED
li a1, IPL_SCHED
Index: src/sys/arch/sbmips/sbmips/sb1250_icu.c
diff -u src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.13 src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.14
--- src/sys/arch/sbmips/sbmips/sb1250_icu.c:1.9.36.13 Sat May 15 06:22:38 2010
+++ src/sys/arch/sbmips/sbmips/sb1250_icu.c Sun May 16 00:34:45 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: sb1250_icu.c,v 1.9.36.13 2010/05/15 06:22:38 matt Exp $ */
+/* $NetBSD: sb1250_icu.c,v 1.9.36.14 2010/05/16 00:34:45 matt Exp $ */
/*
* Copyright 2000, 2001
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sb1250_icu.c,v 1.9.36.13 2010/05/15 06:22:38 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sb1250_icu.c,v 1.9.36.14 2010/05/16 00:34:45 matt Exp $");
#define __INTR_PRIVATE
@@ -56,21 +56,19 @@
static const struct ipl_sr_map sb1250_ipl_sr_map = {
.sr_bits = {
- [IPL_NONE] = 0,
- [IPL_SOFTCLOCK] = MIPS_SOFT_INT_MASK_0,
- [IPL_SOFTBIO] = MIPS_SOFT_INT_MASK_0,
- [IPL_SOFTNET] = MIPS_SOFT_INT_MASK,
- [IPL_SOFTSERIAL] = MIPS_SOFT_INT_MASK,
- [IPL_VM] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0,
-#if IPL_SCHED < IPL_HIGH
+ [IPL_NONE] = MIPS_INT_MASK_5,
+ [IPL_SOFTCLOCK] = MIPS_SOFT_INT_MASK_0 | MIPS_INT_MASK_5,
+ [IPL_SOFTBIO] = MIPS_SOFT_INT_MASK_0 | MIPS_INT_MASK_5,
+ [IPL_SOFTNET] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_5,
+ [IPL_SOFTSERIAL] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_5,
+ [IPL_VM] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0
+ | MIPS_INT_MASK_5,
[IPL_SCHED] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0
| MIPS_INT_MASK_1 | MIPS_INT_MASK_5,
-#endif
- [IPL_HIGH] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0
- | MIPS_INT_MASK_1 | MIPS_INT_MASK_5,
-#if 0
+ [IPL_DDB] = MIPS_SOFT_INT_MASK | MIPS_INT_MASK_0
+ | MIPS_INT_MASK_1 | MIPS_INT_MASK_4
+ | MIPS_INT_MASK_5,
[IPL_HIGH] = MIPS_INT_MASK,
-#endif
},
};