Module Name:    src
Committed By:   skrll
Date:           Sun Dec  5 12:19:09 UTC 2010

Modified Files:
        src/sys/arch/hp700/dev: apic.c asp.c dino.c lasi.c mongoose.c
            siop_sgc.c wax.c
        src/sys/arch/hp700/gsc: com_gsc.c gscbus.c gsckbc.c harmony.c
            if_ie_gsc.c if_iee_gsc.c lpt_gsc.c oosiop_gsc.c osiop_gsc.c
            siop_gsc.c
        src/sys/arch/hp700/hp700: intr.c intr.h

Log Message:
Make the interrupt evcnt name consistent everywhere.


To generate a diff of this commit:
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/hp700/dev/apic.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/hp700/dev/asp.c \
    src/sys/arch/hp700/dev/lasi.c src/sys/arch/hp700/dev/wax.c
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/hp700/dev/dino.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/hp700/dev/mongoose.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/hp700/dev/siop_sgc.c
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/hp700/gsc/com_gsc.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/hp700/gsc/gscbus.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/hp700/gsc/gsckbc.c
cvs rdiff -u -r1.17 -r1.18 src/sys/arch/hp700/gsc/harmony.c \
    src/sys/arch/hp700/gsc/if_iee_gsc.c
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/hp700/gsc/if_ie_gsc.c
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/hp700/gsc/lpt_gsc.c \
    src/sys/arch/hp700/gsc/siop_gsc.c
cvs rdiff -u -r1.8 -r1.9 src/sys/arch/hp700/gsc/oosiop_gsc.c
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/hp700/gsc/osiop_gsc.c
cvs rdiff -u -r1.29 -r1.30 src/sys/arch/hp700/hp700/intr.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/hp700/hp700/intr.h

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/hp700/dev/apic.c
diff -u src/sys/arch/hp700/dev/apic.c:1.7 src/sys/arch/hp700/dev/apic.c:1.8
--- src/sys/arch/hp700/dev/apic.c:1.7	Sat Apr 24 10:41:21 2010
+++ src/sys/arch/hp700/dev/apic.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: apic.c,v 1.7 2010/04/24 10:41:21 skrll Exp $	*/
+/*	$NetBSD: apic.c,v 1.8 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: apic.c,v 1.7 2007/10/06 23:50:54 krw Exp $	*/
 
@@ -71,6 +71,7 @@
 	void *arg;
 	struct apic_iv *next;
 	struct evcnt *cnt;
+	char aiv_name[32];
 };
 
 struct apic_iv *apic_intr_list[CPU_NINTS];
@@ -189,8 +190,11 @@
 			return NULL;
 		}
 
+		snprintf(aiv->aiv_name, sizeof(aiv->aiv_name), "line %d irq %d",
+		    line, irq);
+
 		evcnt_attach_dynamic(cnt, EVCNT_TYPE_INTR, NULL,
-		    device_xname(sc->sc_dv), "irq" /* XXXNH */);
+		    device_xname(sc->sc_dv), aiv->aiv_name);
 		biv = apic_intr_list[irq];
 		while (biv->next)
 			biv = biv->next;
@@ -199,8 +203,8 @@
 		return arg;
 	}
 
-	if ((iv = hp700_intr_establish(sc->sc_dv, pri, apic_intr,
-	     aiv, &int_reg_cpu, irq))) {
+	iv = hp700_intr_establish(pri, apic_intr, aiv, &int_reg_cpu, irq);
+	if (iv) {
 		ent0 = (31 - irq) & APIC_ENT0_VEC;
 		ent0 |= apic_get_int_ent0(sc, line);
 #if 0

Index: src/sys/arch/hp700/dev/asp.c
diff -u src/sys/arch/hp700/dev/asp.c:1.15 src/sys/arch/hp700/dev/asp.c:1.16
--- src/sys/arch/hp700/dev/asp.c:1.15	Tue Nov  3 05:07:25 2009
+++ src/sys/arch/hp700/dev/asp.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: asp.c,v 1.15 2009/11/03 05:07:25 snj Exp $	*/
+/*	$NetBSD: asp.c,v 1.16 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: asp.c,v 1.5 2000/02/09 05:04:22 mickey Exp $	*/
 
@@ -37,7 +37,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: asp.c,v 1.15 2009/11/03 05:07:25 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: asp.c,v 1.16 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -246,6 +246,7 @@
 
 	/* Establish the interrupt register. */
 	hp700_intr_reg_establish(&sc->sc_int_reg);
+	sc->sc_int_reg.int_reg_name = device_xname(self);
 	sc->sc_int_reg.int_reg_mask = &sc->sc_trs->asp_imr;
 	sc->sc_int_reg.int_reg_req = &sc->sc_trs->asp_irr;
 
Index: src/sys/arch/hp700/dev/lasi.c
diff -u src/sys/arch/hp700/dev/lasi.c:1.15 src/sys/arch/hp700/dev/lasi.c:1.16
--- src/sys/arch/hp700/dev/lasi.c:1.15	Tue Nov  3 05:07:25 2009
+++ src/sys/arch/hp700/dev/lasi.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: lasi.c,v 1.15 2009/11/03 05:07:25 snj Exp $	*/
+/*	$NetBSD: lasi.c,v 1.16 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: lasi.c,v 1.4 2001/06/09 03:57:19 mickey Exp $	*/
 
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lasi.c,v 1.15 2009/11/03 05:07:25 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lasi.c,v 1.16 2010/12/05 12:19:09 skrll Exp $");
 
 #undef LASIDEBUG
 
@@ -190,6 +190,7 @@
 
 	/* Establish the interrupt register. */
 	hp700_intr_reg_establish(&sc->sc_int_reg);
+	sc->sc_int_reg.int_reg_name = device_xname(self);
 	sc->sc_int_reg.int_reg_mask = &sc->sc_trs->lasi_imr;
 	sc->sc_int_reg.int_reg_req = &sc->sc_trs->lasi_irr;
 
Index: src/sys/arch/hp700/dev/wax.c
diff -u src/sys/arch/hp700/dev/wax.c:1.15 src/sys/arch/hp700/dev/wax.c:1.16
--- src/sys/arch/hp700/dev/wax.c:1.15	Wed Feb 10 20:33:27 2010
+++ src/sys/arch/hp700/dev/wax.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: wax.c,v 1.15 2010/02/10 20:33:27 skrll Exp $	*/
+/*	$NetBSD: wax.c,v 1.16 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: wax.c,v 1.1 1998/11/23 03:04:10 mickey Exp $	*/
 
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: wax.c,v 1.15 2010/02/10 20:33:27 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: wax.c,v 1.16 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -149,6 +149,7 @@
 
 	/* Establish the interrupt register. */
 	hp700_intr_reg_establish(&sc->sc_int_reg);
+	sc->sc_int_reg.int_reg_name = device_xname(self);
 	sc->sc_int_reg.int_reg_mask = &sc->sc_regs->wax_imr;
 	sc->sc_int_reg.int_reg_req = &sc->sc_regs->wax_irr;
 

Index: src/sys/arch/hp700/dev/dino.c
diff -u src/sys/arch/hp700/dev/dino.c:1.26 src/sys/arch/hp700/dev/dino.c:1.27
--- src/sys/arch/hp700/dev/dino.c:1.26	Mon Nov  8 23:10:24 2010
+++ src/sys/arch/hp700/dev/dino.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: dino.c,v 1.26 2010/11/08 23:10:24 skrll Exp $ */
+/*	$NetBSD: dino.c,v 1.27 2010/12/05 12:19:09 skrll Exp $ */
 
 /*	$OpenBSD: dino.c,v 1.5 2004/02/13 20:39:31 mickey Exp $	*/
 
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: dino.c,v 1.26 2010/11/08 23:10:24 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: dino.c,v 1.27 2010/12/05 12:19:09 skrll Exp $");
 
 /* #include "cardbus.h" */
 
@@ -407,8 +407,7 @@
 {
 	struct dino_softc *sc = v;
 
-	return hp700_intr_establish(sc->sc_dv, pri, handler, arg,
-	    &sc->sc_int_reg, ih);
+	return hp700_intr_establish(pri, handler, arg, &sc->sc_int_reg, ih);
 }
 
 void
@@ -1661,13 +1660,14 @@
 	splx(s);
 	/* Establish the interrupt register. */
 	hp700_intr_reg_establish(&sc->sc_int_reg);
+	sc->sc_int_reg.int_reg_name = device_xname(self);
 	sc->sc_int_reg.int_reg_mask = &r->imr;
 	sc->sc_int_reg.int_reg_req = &r->irr0;
 	sc->sc_int_reg.int_reg_level = &r->ilr;
 	/* Add the I/O interrupt register. */
-	sc->sc_int_reg.int_reg_dev = device_xname(self);
-	sc->sc_ih = hp700_intr_establish(sc->sc_dv, IPL_NONE,
-	    NULL, &sc->sc_int_reg, &int_reg_cpu, ca->ca_irq);
+
+	sc->sc_ih = hp700_intr_establish(IPL_NONE, NULL, &sc->sc_int_reg,
+	    &int_reg_cpu, ca->ca_irq);
 
 	/* TODO establish the bus error interrupt */
 

Index: src/sys/arch/hp700/dev/mongoose.c
diff -u src/sys/arch/hp700/dev/mongoose.c:1.19 src/sys/arch/hp700/dev/mongoose.c:1.20
--- src/sys/arch/hp700/dev/mongoose.c:1.19	Wed Feb 10 20:32:34 2010
+++ src/sys/arch/hp700/dev/mongoose.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: mongoose.c,v 1.19 2010/02/10 20:32:34 skrll Exp $	*/
+/*	$NetBSD: mongoose.c,v 1.20 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: mongoose.c,v 1.19 2010/01/01 20:28:42 kettenis Exp $	*/
 
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: mongoose.c,v 1.19 2010/02/10 20:32:34 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: mongoose.c,v 1.20 2010/12/05 12:19:09 skrll Exp $");
 
 #define MONGOOSE_DEBUG 9
 
@@ -709,6 +709,6 @@
 #undef	R
 
 	/* attach interrupt */
-	sc->sc_ih = hp700_intr_establish(sc->sc_dev, IPL_NONE, mg_intr, sc,
-	    &int_reg_cpu, ca->ca_irq);
+	sc->sc_ih = hp700_intr_establish(IPL_NONE, mg_intr, sc, &int_reg_cpu,
+	    ca->ca_irq);
 }

Index: src/sys/arch/hp700/dev/siop_sgc.c
diff -u src/sys/arch/hp700/dev/siop_sgc.c:1.5 src/sys/arch/hp700/dev/siop_sgc.c:1.6
--- src/sys/arch/hp700/dev/siop_sgc.c:1.5	Sun May 24 06:53:34 2009
+++ src/sys/arch/hp700/dev/siop_sgc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: siop_sgc.c,v 1.5 2009/05/24 06:53:34 skrll Exp $	*/
+/*	$NetBSD: siop_sgc.c,v 1.6 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: siop_sgc.c,v 1.1 2007/08/05 19:09:52 kettenis Exp $	*/
 
@@ -19,7 +19,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: siop_sgc.c,v 1.5 2009/05/24 06:53:34 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: siop_sgc.c,v 1.6 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -134,8 +134,8 @@
 
 	siop_attach(&sgc->sc_siop);
 
-	(void)hp700_intr_establish(self, IPL_BIO,
-	    siop_intr, sc, &int_reg_cpu, ca->ca_irq);
+	(void)hp700_intr_establish(IPL_BIO, siop_intr, sc, &int_reg_cpu,
+	    ca->ca_irq);
 }
 
 void

Index: src/sys/arch/hp700/gsc/com_gsc.c
diff -u src/sys/arch/hp700/gsc/com_gsc.c:1.14 src/sys/arch/hp700/gsc/com_gsc.c:1.15
--- src/sys/arch/hp700/gsc/com_gsc.c:1.14	Tue Nov  3 05:07:25 2009
+++ src/sys/arch/hp700/gsc/com_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: com_gsc.c,v 1.14 2009/11/03 05:07:25 snj Exp $	*/
+/*	$NetBSD: com_gsc.c,v 1.15 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: com_gsc.c,v 1.8 2000/03/13 14:39:59 mickey Exp $	*/
 
@@ -29,7 +29,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: com_gsc.c,v 1.14 2009/11/03 05:07:25 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: com_gsc.c,v 1.15 2010/12/05 12:19:09 skrll Exp $");
 
 #include "opt_kgdb.h"
 
@@ -138,8 +138,8 @@
 	COM_INIT_REGS(sc->sc_regs, iot, ioh, iobase);
 
 	com_attach_subr(sc);
-	gsc->sc_ih = hp700_intr_establish(sc->sc_dev, IPL_TTY,
-	    comintr, sc, ga->ga_int_reg, ga->ga_irq);
+	gsc->sc_ih = hp700_intr_establish(IPL_TTY, comintr, sc, ga->ga_int_reg,
+	    ga->ga_irq);
 }
 
 #ifdef	KGDB

Index: src/sys/arch/hp700/gsc/gscbus.c
diff -u src/sys/arch/hp700/gsc/gscbus.c:1.19 src/sys/arch/hp700/gsc/gscbus.c:1.20
--- src/sys/arch/hp700/gsc/gscbus.c:1.19	Sat Nov 21 15:36:33 2009
+++ src/sys/arch/hp700/gsc/gscbus.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: gscbus.c,v 1.19 2009/11/21 15:36:33 rmind Exp $	*/
+/*	$NetBSD: gscbus.c,v 1.20 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: gscbus.c,v 1.13 2001/08/01 20:32:04 miod Exp $	*/
 
@@ -68,7 +68,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: gscbus.c,v 1.19 2009/11/21 15:36:33 rmind Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gscbus.c,v 1.20 2010/12/05 12:19:09 skrll Exp $");
 
 #define GSCDEBUG
 
@@ -148,9 +148,9 @@
 	aprint_normal("\n");
 
 	/* Add the I/O subsystem's interrupt register. */
-	ga->ga_int_reg->int_reg_dev = device_xname(parent);
-	sc->sc_ih = hp700_intr_establish(sc->sc_dev, IPL_NONE, NULL,
-	    ga->ga_int_reg, &int_reg_cpu, ga->ga_irq);
+	ga->ga_int_reg->int_reg_name = device_xname(self);
+	sc->sc_ih = hp700_intr_establish(IPL_NONE, NULL, ga->ga_int_reg,
+	    &int_reg_cpu, ga->ga_irq);
 
 	ga->ga_ca.ca_nmodules = MAXMODBUS;
 	ga->ga_ca.ca_hpabase = 0;

Index: src/sys/arch/hp700/gsc/gsckbc.c
diff -u src/sys/arch/hp700/gsc/gsckbc.c:1.5 src/sys/arch/hp700/gsc/gsckbc.c:1.6
--- src/sys/arch/hp700/gsc/gsckbc.c:1.5	Fri May  8 09:33:58 2009
+++ src/sys/arch/hp700/gsc/gsckbc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: gsckbc.c,v 1.5 2009/05/08 09:33:58 skrll Exp $ */
+/* $NetBSD: gsckbc.c,v 1.6 2010/12/05 12:19:09 skrll Exp $ */
 /*
  * Copyright (c) 2004 Jochen Kunz.
  * All rights reserved.
@@ -33,7 +33,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: gsckbc.c,v 1.5 2009/05/08 09:33:58 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: gsckbc.c,v 1.6 2010/12/05 12:19:09 skrll Exp $");
 
 /* autoconfig and device stuff */
 #include <sys/param.h>
@@ -267,8 +267,8 @@
 			return;
 		}
 		aprint_debug(" (master)");
-		sc->sc_ih = hp700_intr_establish(sc->sc_dev, IPL_TTY,
-		    gsckbc_intr, sc, ga->ga_int_reg, ga->ga_irq);
+		sc->sc_ih = hp700_intr_establish(IPL_TTY, gsckbc_intr, sc,
+		    ga->ga_int_reg, ga->ga_irq);
 		master_sc = sc;
 	} else {
 		if (master_sc == NULL) {

Index: src/sys/arch/hp700/gsc/harmony.c
diff -u src/sys/arch/hp700/gsc/harmony.c:1.17 src/sys/arch/hp700/gsc/harmony.c:1.18
--- src/sys/arch/hp700/gsc/harmony.c:1.17	Fri May  8 09:33:58 2009
+++ src/sys/arch/hp700/gsc/harmony.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: harmony.c,v 1.17 2009/05/08 09:33:58 skrll Exp $	*/
+/*	$NetBSD: harmony.c,v 1.18 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: harmony.c,v 1.23 2004/02/13 21:28:19 mickey Exp $	*/
 
@@ -280,8 +280,8 @@
 	    offsetof(struct harmony_empty, playback[0][0]),
 	    PLAYBACK_EMPTYS * HARMONY_BUFSIZE, BUS_DMASYNC_PREWRITE);
 
-	(void) hp700_intr_establish(sc->sc_dv, IPL_AUDIO,
-	    harmony_intr, sc, ga->ga_int_reg, ga->ga_irq);
+	(void) hp700_intr_establish(IPL_AUDIO, harmony_intr, sc, ga->ga_int_reg,
+	     ga->ga_irq);
 
 	/* set defaults */
 	sc->sc_in_port = HARMONY_IN_LINE;
Index: src/sys/arch/hp700/gsc/if_iee_gsc.c
diff -u src/sys/arch/hp700/gsc/if_iee_gsc.c:1.17 src/sys/arch/hp700/gsc/if_iee_gsc.c:1.18
--- src/sys/arch/hp700/gsc/if_iee_gsc.c:1.17	Tue Jan 19 22:06:20 2010
+++ src/sys/arch/hp700/gsc/if_iee_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: if_iee_gsc.c,v 1.17 2010/01/19 22:06:20 pooka Exp $ */
+/* $NetBSD: if_iee_gsc.c,v 1.18 2010/12/05 12:19:09 skrll Exp $ */
 
 /*
  * Copyright (c) 2003 Jochen Kunz.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_iee_gsc.c,v 1.17 2010/01/19 22:06:20 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iee_gsc.c,v 1.18 2010/12/05 12:19:09 skrll Exp $");
 
 /* autoconfig and device stuff */
 #include <sys/param.h>
@@ -249,8 +249,8 @@
 		sc->sc_flags = IEE_NEED_SWAP;
 	}
 
-	sc_gsc->sc_ih = hp700_intr_establish(self, IPL_NET,
-	    iee_intr, sc, ga->ga_int_reg, ga->ga_irq);
+	sc_gsc->sc_ih = hp700_intr_establish(IPL_NET, iee_intr, sc,
+	    ga->ga_int_reg, ga->ga_irq);
 
 	sc->sc_iee_reset = iee_gsc_reset;
 	sc->sc_iee_cmd = iee_gsc_cmd;

Index: src/sys/arch/hp700/gsc/if_ie_gsc.c
diff -u src/sys/arch/hp700/gsc/if_ie_gsc.c:1.21 src/sys/arch/hp700/gsc/if_ie_gsc.c:1.22
--- src/sys/arch/hp700/gsc/if_ie_gsc.c:1.21	Tue Mar 30 07:59:15 2010
+++ src/sys/arch/hp700/gsc/if_ie_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_ie_gsc.c,v 1.21 2010/03/30 07:59:15 skrll Exp $	*/
+/*	$NetBSD: if_ie_gsc.c,v 1.22 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: if_ie_gsc.c,v 1.6 2001/01/12 22:57:04 mickey Exp $	*/
 
@@ -38,7 +38,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ie_gsc.c,v 1.21 2010/03/30 07:59:15 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ie_gsc.c,v 1.22 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -558,7 +558,6 @@
 		      "LASI/i82596CA" :
 		      "i82596DX",
 		      myaddr, ie_gsc_media, IE_NMEDIA, ie_gsc_media[0]);
-	gsc->sc_ih = hp700_intr_establish(&sc->sc_dev, IPL_NET,
-					  i82586_intr, sc,
-					  ga->ga_int_reg, ga->ga_irq);
+	gsc->sc_ih = hp700_intr_establish(IPL_NET, i82586_intr, sc,
+	    ga->ga_int_reg, ga->ga_irq);
 }

Index: src/sys/arch/hp700/gsc/lpt_gsc.c
diff -u src/sys/arch/hp700/gsc/lpt_gsc.c:1.11 src/sys/arch/hp700/gsc/lpt_gsc.c:1.12
--- src/sys/arch/hp700/gsc/lpt_gsc.c:1.11	Sun May 24 06:53:35 2009
+++ src/sys/arch/hp700/gsc/lpt_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: lpt_gsc.c,v 1.11 2009/05/24 06:53:35 skrll Exp $	*/
+/*	$NetBSD: lpt_gsc.c,v 1.12 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: lpt_gsc.c,v 1.6 2000/07/21 17:41:06 mickey Exp $	*/
 
@@ -53,7 +53,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: lpt_gsc.c,v 1.11 2009/05/24 06:53:35 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: lpt_gsc.c,v 1.12 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -214,8 +214,7 @@
 
 	lpt_attach_subr(sc);
 
-	sc->sc_ih = hp700_intr_establish(sc->sc_dev, IPL_TTY,
-					 lptintr, sc,
-					 ga->ga_int_reg, ga->ga_irq);
+	sc->sc_ih = hp700_intr_establish(IPL_TTY, lptintr, sc, ga->ga_int_reg,
+	     ga->ga_irq);
 	aprint_normal("\n");
 }
Index: src/sys/arch/hp700/gsc/siop_gsc.c
diff -u src/sys/arch/hp700/gsc/siop_gsc.c:1.11 src/sys/arch/hp700/gsc/siop_gsc.c:1.12
--- src/sys/arch/hp700/gsc/siop_gsc.c:1.11	Sun May 24 06:53:35 2009
+++ src/sys/arch/hp700/gsc/siop_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: siop_gsc.c,v 1.11 2009/05/24 06:53:35 skrll Exp $	*/
+/*	$NetBSD: siop_gsc.c,v 1.12 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*	$OpenBSD: siop_gsc.c,v 1.4 2007/08/23 21:01:22 kettenis Exp $	*/
 
@@ -19,7 +19,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: siop_gsc.c,v 1.11 2009/05/24 06:53:35 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: siop_gsc.c,v 1.12 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -124,8 +124,8 @@
 
 	siop_attach(sc);
 
-	(void)hp700_intr_establish(self, IPL_BIO,
-	    siop_intr, sc, ga->ga_int_reg, ga->ga_irq);
+	(void)hp700_intr_establish(IPL_BIO, siop_intr, sc, ga->ga_int_reg,
+	    ga->ga_irq);
 
 }
 

Index: src/sys/arch/hp700/gsc/oosiop_gsc.c
diff -u src/sys/arch/hp700/gsc/oosiop_gsc.c:1.8 src/sys/arch/hp700/gsc/oosiop_gsc.c:1.9
--- src/sys/arch/hp700/gsc/oosiop_gsc.c:1.8	Tue Nov  3 05:07:25 2009
+++ src/sys/arch/hp700/gsc/oosiop_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: oosiop_gsc.c,v 1.8 2009/11/03 05:07:25 snj Exp $	*/
+/*	$NetBSD: oosiop_gsc.c,v 1.9 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 2001 Matt Fredette.  All rights reserved.
@@ -80,7 +80,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: oosiop_gsc.c,v 1.8 2009/11/03 05:07:25 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: oosiop_gsc.c,v 1.9 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -170,8 +170,8 @@
 	 */
 	oosiop_attach(sc);
 
-	(void)hp700_intr_establish(self, IPL_BIO,
-	    oosiop_gsc_intr, sc, ga->ga_int_reg, ga->ga_irq);
+	(void)hp700_intr_establish(IPL_BIO, oosiop_gsc_intr, sc,
+	    ga->ga_int_reg, ga->ga_irq);
 }
 
 /*

Index: src/sys/arch/hp700/gsc/osiop_gsc.c
diff -u src/sys/arch/hp700/gsc/osiop_gsc.c:1.15 src/sys/arch/hp700/gsc/osiop_gsc.c:1.16
--- src/sys/arch/hp700/gsc/osiop_gsc.c:1.15	Tue Nov  3 05:07:25 2009
+++ src/sys/arch/hp700/gsc/osiop_gsc.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: osiop_gsc.c,v 1.15 2009/11/03 05:07:25 snj Exp $	*/
+/*	$NetBSD: osiop_gsc.c,v 1.16 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*
  * Copyright (c) 2001 Matt Fredette.  All rights reserved.
@@ -80,7 +80,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: osiop_gsc.c,v 1.15 2009/11/03 05:07:25 snj Exp $");
+__KERNEL_RCSID(0, "$NetBSD: osiop_gsc.c,v 1.16 2010/12/05 12:19:09 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -179,8 +179,8 @@
 #endif /* OSIOP_DEBUG */
 	osiop_attach(sc);
 
-	(void)hp700_intr_establish(self, IPL_BIO,
-	    osiop_gsc_intr, sc, ga->ga_int_reg, ga->ga_irq);
+	(void)hp700_intr_establish(IPL_BIO, osiop_gsc_intr, sc, ga->ga_int_reg,
+	    ga->ga_irq);
 }
 
 /*

Index: src/sys/arch/hp700/hp700/intr.c
diff -u src/sys/arch/hp700/hp700/intr.c:1.29 src/sys/arch/hp700/hp700/intr.c:1.30
--- src/sys/arch/hp700/hp700/intr.c:1.29	Sun Dec  5 10:47:22 2010
+++ src/sys/arch/hp700/hp700/intr.c	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: intr.c,v 1.29 2010/12/05 10:47:22 skrll Exp $	*/
+/*	$NetBSD: intr.c,v 1.30 2010/12/05 12:19:09 skrll Exp $	*/
 /*	$OpenBSD: intr.c,v 1.27 2009/12/31 12:52:35 jsing Exp $	*/
 
 /*
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: intr.c,v 1.29 2010/12/05 10:47:22 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intr.c,v 1.30 2010/12/05 12:19:09 skrll Exp $");
 
 #define __MUTEX_PRIVATE
 
@@ -86,6 +86,9 @@
 	 */
 	int int_bit_spl;
 
+	/* The interrupt name. */
+	char int_bit_name[16];
+
 	/* The interrupt event count. */
 	struct evcnt int_bit_evcnt;
 
@@ -153,15 +156,15 @@
 
 	/* Initialize the CPU interrupt register description. */
 	hp700_intr_reg_establish(&int_reg_cpu);
-	int_reg_cpu.int_reg_dev = "cpu0";	/* XXX */
+	int_reg_cpu.int_reg_name = "cpu0";
 }
 
 /*
  * This establishes a new interrupt handler.
  */
 void *
-hp700_intr_establish(device_t dv, int ipl, int (*handler)(void *),
-    void *arg, struct hp700_int_reg *int_reg, int bit_pos)
+hp700_intr_establish(int ipl, int (*handler)(void *), void *arg,
+    struct hp700_int_reg *int_reg, int bit_pos)
 {
 	struct hp700_int_bit *int_bit;
 	int idx;
@@ -174,8 +177,9 @@
 	 * Panic if this int bit is already handled, but allow shared
 	 * interrupts for PCI.
 	 */
-	if (int_reg->int_reg_bits_map[31 ^ bit_pos] != INT_REG_BIT_UNUSED
-	    && strncmp(device_xname(dv), "dino", 4) != 0 && handler == NULL)
+	if (int_reg->int_reg_bits_map[31 ^ bit_pos] != INT_REG_BIT_UNUSED &&
+	    !INT_REG_BIT_NESTED_P(int_reg->int_reg_bits_map[31 ^ bit_pos]) &&
+	    handler == NULL)
 		panic("hp700_intr_establish: int already handled");
 
 	/*
@@ -210,8 +214,11 @@
 	int_bit->int_bit_reg = int_reg;
 	int_bit->int_bit_ipl = ipl;
 	int_bit->int_bit_spl = (1 << idx);
+	snprintf(int_bit->int_bit_name, sizeof(int_bit->int_bit_name), "irq %d",
+	   bit_pos);
+
 	evcnt_attach_dynamic(&int_bit->int_bit_evcnt, EVCNT_TYPE_INTR, NULL,
-	    device_xname(dv), "intr");
+	    int_reg->int_reg_name, int_bit->int_bit_name);
 	int_bit->int_bit_handler = handler;
 	int_bit->int_bit_arg = arg;
 

Index: src/sys/arch/hp700/hp700/intr.h
diff -u src/sys/arch/hp700/hp700/intr.h:1.12 src/sys/arch/hp700/hp700/intr.h:1.13
--- src/sys/arch/hp700/hp700/intr.h:1.12	Sun Dec  5 10:27:50 2010
+++ src/sys/arch/hp700/hp700/intr.h	Sun Dec  5 12:19:09 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: intr.h,v 1.12 2010/12/05 10:27:50 skrll Exp $	*/
+/*	$NetBSD: intr.h,v 1.13 2010/12/05 12:19:09 skrll Exp $	*/
 
 /*-
  * Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -45,7 +45,7 @@
 	/*
 	 * The device name for this interrupt register.
 	 */
-	const char *int_reg_dev;
+	const char *int_reg_name;
 
 	/*
 	 * The virtual address of the mask, request and level
@@ -74,6 +74,7 @@
 	unsigned int int_reg_bits_map[HP700_INT_BITS];
 #define	INT_REG_BIT_REG		0xffffff00
 #define	INT_REG_BIT_UNUSED	INT_REG_BIT_REG
+#define	INT_REG_BIT_NESTED_P(x)	(((x) & ~INT_REG_BIT_UNUSED) != 0)
 
 	/*
 	 * The mask of allocatable bit numbers.
@@ -84,8 +85,8 @@
 extern	struct hp700_int_reg int_reg_cpu;
 void	hp700_intr_bootstrap(void);
 void	hp700_intr_reg_establish(struct hp700_int_reg *);
-void *	hp700_intr_establish(device_t, int, int (*)(void *), void *,
-	    struct hp700_int_reg *, int);
+void *	hp700_intr_establish(int, int (*)(void *), void *, 
+    struct hp700_int_reg *, int);
 int	hp700_intr_allocate_bit(struct hp700_int_reg *);
 int	_hp700_intr_ipl_next(void);
 void	hp700_intr_init(void);

Reply via email to