summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Gwynne <dlg@cvs.openbsd.org>2014-01-21 10:59:31 +0000
committerDavid Gwynne <dlg@cvs.openbsd.org>2014-01-21 10:59:31 +0000
commit2cc05b5e18e9b5afde34367acb97662603f60849 (patch)
treec061c02e8ed810a64151d1a2e38601dd48f17cb0
parentfb912cc035001a2ccd59ea9c9abfc6bc2792acbf (diff)
enable MPSAFE interrupts on pyro. it seems to work ok.
kettenis@ told me where to put these lines
-rw-r--r--sys/arch/sparc64/dev/pyro.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/sys/arch/sparc64/dev/pyro.c b/sys/arch/sparc64/dev/pyro.c
index 2d3a60089bb..daf02c992a7 100644
--- a/sys/arch/sparc64/dev/pyro.c
+++ b/sys/arch/sparc64/dev/pyro.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pyro.c,v 1.25 2013/05/13 19:27:16 kettenis Exp $ */
+/* $OpenBSD: pyro.c,v 1.26 2014/01/21 10:59:30 dlg Exp $ */
/*
* Copyright (c) 2002 Jason L. Wright (jason@thought.net)
@@ -632,6 +632,9 @@ pyro_intr_establish(bus_space_tag_t t, bus_space_tag_t t0, int ihandle,
pbm->pp_msi[msinum] = ih;
ih->ih_number = msinum;
+ if (flags & BUS_INTR_ESTABLISH_MPSAFE)
+ ih->ih_mpsafe = 1;
+
pci_msi_enable(pc, tag, pbm->pp_msiaddr, msinum);
/* Map MSI to the right EQ and mark it as valid. */
@@ -677,6 +680,9 @@ pyro_intr_establish(bus_space_tag_t t, bus_space_tag_t t0, int ihandle,
if (ih == NULL)
return (NULL);
+ if (flags & BUS_INTR_ESTABLISH_MPSAFE)
+ ih->ih_mpsafe = 1;
+
intr_establish(ih->ih_pil, ih);
if (intrmapptr != NULL) {