diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2015-04-07 09:54:12 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2015-04-07 09:54:12 +0000 |
commit | 16c1a9c963d77cc190fe702c2e711121184e7f76 (patch) | |
tree | 12c19fa2243309d8345c0712167ff3d6312b00ce /sys/arch/macppc | |
parent | f859b41088b071ee70c5694789cbc9d182523113 (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.c | 14 | ||||
-rw-r--r-- | sys/arch/macppc/dev/i2s.c | 14 |
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); |