summaryrefslogtreecommitdiff
path: root/sys/arch/macppc
diff options
context:
space:
mode:
authorMartin Pieuchot <mpi@cvs.openbsd.org>2015-04-07 09:54:12 +0000
committerMartin Pieuchot <mpi@cvs.openbsd.org>2015-04-07 09:54:12 +0000
commit16c1a9c963d77cc190fe702c2e711121184e7f76 (patch)
tree12c19fa2243309d8345c0712167ff3d6312b00ce /sys/arch/macppc
parentf859b41088b071ee70c5694789cbc9d182523113 (diff)
Mark audio interrupt handlers as MPSAFE, they already grab the right
mutex when necessary. ok kettenis@, ratchov@
Diffstat (limited to 'sys/arch/macppc')
-rw-r--r--sys/arch/macppc/dev/awacs.c14
-rw-r--r--sys/arch/macppc/dev/i2s.c14
2 files changed, 14 insertions, 14 deletions
diff --git a/sys/arch/macppc/dev/awacs.c b/sys/arch/macppc/dev/awacs.c
index 17b63e6e691..f8b0eab5744 100644
--- a/sys/arch/macppc/dev/awacs.c
+++ b/sys/arch/macppc/dev/awacs.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: awacs.c,v 1.29 2014/07/12 18:44:42 tedu Exp $ */
+/* $OpenBSD: awacs.c,v 1.30 2015/04/07 09:54:11 mpi Exp $ */
/* $NetBSD: awacs.c,v 1.4 2001/02/26 21:07:51 wiz Exp $ */
/*-
@@ -296,12 +296,12 @@ awacs_attach(struct device *parent, struct device *self, void *aux)
iirq = ca->ca_intr[2];
cirq_type = oirq_type = iirq_type = IST_LEVEL;
}
- mac_intr_establish(parent, cirq, cirq_type, IPL_AUDIO, awacs_intr,
- sc, sc->sc_dev.dv_xname);
- mac_intr_establish(parent, oirq, oirq_type, IPL_AUDIO, awacs_tx_intr,
- sc, sc->sc_dev.dv_xname);
- mac_intr_establish(parent, iirq, iirq_type, IPL_AUDIO, awacs_rx_intr,
- sc, sc->sc_dev.dv_xname);
+ mac_intr_establish(parent, cirq, cirq_type, IPL_AUDIO | IPL_MPSAFE,
+ awacs_intr, sc, sc->sc_dev.dv_xname);
+ mac_intr_establish(parent, oirq, oirq_type, IPL_AUDIO | IPL_MPSAFE,
+ awacs_tx_intr, sc, sc->sc_dev.dv_xname);
+ mac_intr_establish(parent, iirq, iirq_type, IPL_AUDIO | IPL_MPSAFE,
+ awacs_rx_intr, sc, sc->sc_dev.dv_xname);
printf(": irq %d,%d,%d",
cirq, oirq, iirq);
diff --git a/sys/arch/macppc/dev/i2s.c b/sys/arch/macppc/dev/i2s.c
index 6cf8f4d9cbc..288370bd8c3 100644
--- a/sys/arch/macppc/dev/i2s.c
+++ b/sys/arch/macppc/dev/i2s.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: i2s.c,v 1.25 2015/03/24 16:29:09 mpi Exp $ */
+/* $OpenBSD: i2s.c,v 1.26 2015/04/07 09:54:11 mpi Exp $ */
/* $NetBSD: i2s.c,v 1.1 2003/12/27 02:19:34 grant Exp $ */
/*-
@@ -126,10 +126,10 @@ i2s_attach(struct device *parent, struct i2s_softc *sc, struct confargs *ca)
iirq_type = intr[5] ? IST_LEVEL : IST_EDGE;
/* intr_establish(cirq, cirq_type, IPL_AUDIO, i2s_intr, sc); */
- mac_intr_establish(parent, oirq, oirq_type, IPL_AUDIO, i2s_intr,
- sc, sc->sc_dev.dv_xname);
- mac_intr_establish(parent, iirq, iirq_type, IPL_AUDIO, i2s_iintr,
- sc, sc->sc_dev.dv_xname);
+ mac_intr_establish(parent, oirq, oirq_type, IPL_AUDIO | IPL_MPSAFE,
+ i2s_intr, sc, sc->sc_dev.dv_xname);
+ mac_intr_establish(parent, iirq, iirq_type, IPL_AUDIO | IPL_MPSAFE,
+ i2s_iintr, sc, sc->sc_dev.dv_xname);
printf(": irq %d,%d,%d\n", cirq, oirq, iirq);
@@ -1158,11 +1158,11 @@ i2s_gpio_init(struct i2s_softc *sc, int node, struct device *parent)
if (hp_detect_intr != -1)
mac_intr_establish(parent, hp_detect_intr, IST_EDGE,
- IPL_AUDIO, i2s_cint, sc, sc->sc_dev.dv_xname);
+ IPL_AUDIO | IPL_MPSAFE, i2s_cint, sc, sc->sc_dev.dv_xname);
if (line_detect_intr != -1)
mac_intr_establish(parent, line_detect_intr, IST_EDGE,
- IPL_AUDIO, i2s_cint, sc, sc->sc_dev.dv_xname);
+ IPL_AUDIO | IPL_MPSAFE, i2s_cint, sc, sc->sc_dev.dv_xname);
/* Enable headphone interrupt? */
macobio_write(sc->sc_hp_detect, 0x80);