From 2cc05b5e18e9b5afde34367acb97662603f60849 Mon Sep 17 00:00:00 2001 From: David Gwynne Date: Tue, 21 Jan 2014 10:59:31 +0000 Subject: enable MPSAFE interrupts on pyro. it seems to work ok. kettenis@ told me where to put these lines --- sys/arch/sparc64/dev/pyro.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'sys') 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) { -- cgit v1.2.3