Module Name: src
Committed By: nakayama
Date: Sun Sep 4 12:17:14 UTC 2011
Modified Files:
src/sys/arch/sparc64/dev: psycho.c sbus.c schizo.c
src/sys/arch/sparc64/sparc64: locore.s
Log Message:
ih_pil is an interrupt level, not an interrupt mask.
To generate a diff of this commit:
cvs rdiff -u -r1.110 -r1.111 src/sys/arch/sparc64/dev/psycho.c
cvs rdiff -u -r1.91 -r1.92 src/sys/arch/sparc64/dev/sbus.c
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/sparc64/dev/schizo.c
cvs rdiff -u -r1.337 -r1.338 src/sys/arch/sparc64/sparc64/locore.s
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/sparc64/dev/psycho.c
diff -u src/sys/arch/sparc64/dev/psycho.c:1.110 src/sys/arch/sparc64/dev/psycho.c:1.111
--- src/sys/arch/sparc64/dev/psycho.c:1.110 Fri Aug 12 06:38:35 2011
+++ src/sys/arch/sparc64/dev/psycho.c Sun Sep 4 12:17:14 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: psycho.c,v 1.110 2011/08/12 06:38:35 mrg Exp $ */
+/* $NetBSD: psycho.c,v 1.111 2011/09/04 12:17:14 nakayama Exp $ */
/*
* Copyright (c) 1999, 2000 Matthew R. Green
@@ -55,7 +55,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: psycho.c,v 1.110 2011/08/12 06:38:35 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: psycho.c,v 1.111 2011/09/04 12:17:14 nakayama Exp $");
#include "opt_ddb.h"
@@ -702,7 +702,7 @@
ih->ih_map = mapper;
ih->ih_clr = clearer;
ih->ih_fun = handler;
- ih->ih_pil = (1<<ipl);
+ ih->ih_pil = ipl;
ih->ih_number = INTVEC(*(ih->ih_map));
ih->ih_pending = 0;
intr_establish(ipl, ipl != IPL_VM, ih);
Index: src/sys/arch/sparc64/dev/sbus.c
diff -u src/sys/arch/sparc64/dev/sbus.c:1.91 src/sys/arch/sparc64/dev/sbus.c:1.92
--- src/sys/arch/sparc64/dev/sbus.c:1.91 Fri Aug 12 06:41:15 2011
+++ src/sys/arch/sparc64/dev/sbus.c Sun Sep 4 12:17:14 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: sbus.c,v 1.91 2011/08/12 06:41:15 mrg Exp $ */
+/* $NetBSD: sbus.c,v 1.92 2011/09/04 12:17:14 nakayama Exp $ */
/*
* Copyright (c) 1999-2002 Eduardo Horvath
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sbus.c,v 1.91 2011/08/12 06:41:15 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sbus.c,v 1.92 2011/09/04 12:17:14 nakayama Exp $");
#include "opt_ddb.h"
@@ -260,7 +260,7 @@
ih->ih_clr = NULL; /* &sc->sc_sysio->therm_clr_int; */
ih->ih_fun = sbus_overtemp;
ipl = 1;
- ih->ih_pil = (1<<ipl);
+ ih->ih_pil = ipl;
ih->ih_number = INTVEC(*(ih->ih_map));
ih->ih_pending = 0;
intr_establish(ipl, true, ih);
@@ -580,7 +580,7 @@
ih->ih_arg = arg;
ih->ih_number = vec;
ih->ih_ivec = 0;
- ih->ih_pil = (1<<ipl);
+ ih->ih_pil = ipl;
ih->ih_pending = 0;
intr_establish(ipl, level != IPL_VM, ih);
Index: src/sys/arch/sparc64/dev/schizo.c
diff -u src/sys/arch/sparc64/dev/schizo.c:1.26 src/sys/arch/sparc64/dev/schizo.c:1.27
--- src/sys/arch/sparc64/dev/schizo.c:1.26 Fri Aug 12 06:41:16 2011
+++ src/sys/arch/sparc64/dev/schizo.c Sun Sep 4 12:17:14 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: schizo.c,v 1.26 2011/08/12 06:41:16 mrg Exp $ */
+/* $NetBSD: schizo.c,v 1.27 2011/09/04 12:17:14 nakayama Exp $ */
/* $OpenBSD: schizo.c,v 1.55 2008/08/18 20:29:37 brad Exp $ */
/*
@@ -531,7 +531,7 @@
ih->ih_map = (uint64_t *)(uintptr_t)(intrregs + mapoff);
ih->ih_clr = (uint64_t *)(uintptr_t)(intrregs + clroff);
ih->ih_fun = handler;
- ih->ih_pil = (1<<ipl);
+ ih->ih_pil = ipl;
ih->ih_number = INTVEC(schizo_pbm_read(pbm, mapoff));
ih->ih_pending = 0;
Index: src/sys/arch/sparc64/sparc64/locore.s
diff -u src/sys/arch/sparc64/sparc64/locore.s:1.337 src/sys/arch/sparc64/sparc64/locore.s:1.338
--- src/sys/arch/sparc64/sparc64/locore.s:1.337 Wed Jul 27 20:07:49 2011
+++ src/sys/arch/sparc64/sparc64/locore.s Sun Sep 4 12:17:13 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.s,v 1.337 2011/07/27 20:07:49 nakayama Exp $ */
+/* $NetBSD: locore.s,v 1.338 2011/09/04 12:17:13 nakayama Exp $ */
/*
* Copyright (c) 2006-2010 Matthew R. Green
@@ -3133,7 +3133,7 @@
setup_sparcintr:
LDPTR [%g5+IH_PEND], %g6 ! Read pending flag
brnz,pn %g6, ret_from_intr_vector ! Skip it if it's running
- ldub [%g5+IH_PIL], %g6 ! Read interrupt mask
+ ldub [%g5+IH_PIL], %g6 ! Read interrupt level
sethi %hi(CPUINFO_VA+CI_INTRPENDING), %g1
sll %g6, PTRSHFT, %g3 ! Find start of table for this IPL
or %g1, %lo(CPUINFO_VA+CI_INTRPENDING), %g1