Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/sparc64/dev When establishing interrupt set CPU_UPA...



details:   https://anonhg.NetBSD.org/src/rev/d209a487a845
branches:  trunk
changeset: 553186:d209a487a845
user:      petrov <petrov%NetBSD.org@localhost>
date:      Sat Oct 11 20:53:14 2003 +0000

description:
When establishing interrupt set CPU_UPAID in mapping register
so that interrupt would be delivered.

diffstat:

 sys/arch/sparc64/dev/iommureg.h |   3 ++-
 sys/arch/sparc64/dev/sbus.c     |  10 ++++------
 2 files changed, 6 insertions(+), 7 deletions(-)

diffs (48 lines):

diff -r cdd5a40d6bc5 -r d209a487a845 sys/arch/sparc64/dev/iommureg.h
--- a/sys/arch/sparc64/dev/iommureg.h   Sat Oct 11 18:32:53 2003 +0000
+++ b/sys/arch/sparc64/dev/iommureg.h   Sat Oct 11 20:53:14 2003 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: iommureg.h,v 1.10 2003/08/07 16:29:47 agc Exp $        */
+/*     $NetBSD: iommureg.h,v 1.11 2003/10/11 20:53:14 petrov Exp $     */
 
 /*
  * Copyright (c) 1992, 1993
@@ -136,6 +136,7 @@
 
 #define INTMAP_V       0x080000000LL   /* Interrupt valid (enabled) */
 #define INTMAP_TID     0x07c000000LL   /* UPA target ID mask */
+#define INTMAP_TID_SHIFT 26
 #define INTMAP_IGN     0x0000007c0LL   /* Interrupt group no (sbus only). */
 #define INTMAP_INO     0x00000003fLL   /* Interrupt number */
 #define INTMAP_INR     (INTMAP_IGN|INTMAP_INO)
diff -r cdd5a40d6bc5 -r d209a487a845 sys/arch/sparc64/dev/sbus.c
--- a/sys/arch/sparc64/dev/sbus.c       Sat Oct 11 18:32:53 2003 +0000
+++ b/sys/arch/sparc64/dev/sbus.c       Sat Oct 11 20:53:14 2003 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: sbus.c,v 1.62 2003/08/27 15:59:55 mrg Exp $ */
+/*     $NetBSD: sbus.c,v 1.63 2003/10/11 20:53:14 petrov Exp $ */
 
 /*
  * Copyright (c) 1999-2002 Eduardo Horvath
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: sbus.c,v 1.62 2003/08/27 15:59:55 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sbus.c,v 1.63 2003/10/11 20:53:14 petrov Exp $");
 
 #include "opt_ddb.h"
 
@@ -654,10 +654,8 @@
                        }
 #endif
                        /* Enable the interrupt */
-                       vec |= INTMAP_V;
-                       /* Insert IGN */
-                       vec |= sc->sc_ign;
-                       /* XXXX */
+                       vec |= INTMAP_V | sc->sc_ign |
+                               (CPU_UPAID << INTMAP_TID_SHIFT);
                        *(ih->ih_map) = vec;
                } else {
                        int64_t *intrptr = &sc->sc_sysio->scsi_int_map;



Home | Main Index | Thread Index | Old Index