diff options
author | peter <peter@FreeBSD.org> | 2001-06-16 22:59:46 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2001-06-16 22:59:46 +0000 |
commit | caf4a686e5258035deb90edbdbed7fd0b8958bd4 (patch) | |
tree | e21ea45a28bacc8b26342f453d5ea29a7e27ec9f /sys/dev/sound | |
parent | 38ecd59e07aead868125833230bcfd1b264ff134 (diff) | |
download | FreeBSD-src-caf4a686e5258035deb90edbdbed7fd0b8958bd4.zip FreeBSD-src-caf4a686e5258035deb90edbdbed7fd0b8958bd4.tar.gz |
Use INTR_TYPE_AV for the interrupt handlers because:
1: most drivers are sensitive to timing, and
2: the handlers are MPSAFE and need a chance to get into the kernel
before some other non-mpsafe handler blocks the ithread on Giant in
shared irq cases.
Reviewed by: cg (in principle)
Diffstat (limited to 'sys/dev/sound')
-rw-r--r-- | sys/dev/sound/isa/gusc.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/isa/gusmidi.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/isa/mpu.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/isa/uartsio.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/pci/csamidi.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/pci/vibes.c | 2 | ||||
-rw-r--r-- | sys/dev/sound/pcm/sound.c | 4 |
7 files changed, 8 insertions, 8 deletions
diff --git a/sys/dev/sound/isa/gusc.c b/sys/dev/sound/isa/gusc.c index bd98a8f..283c432 100644 --- a/sys/dev/sound/isa/gusc.c +++ b/sys/dev/sound/isa/gusc.c @@ -324,7 +324,7 @@ gusc_attach(device_t dev) } if (scp->irq != NULL) - bus_setup_intr(dev, scp->irq, INTR_TYPE_TTY, gusc_intr, scp, &ih); + bus_setup_intr(dev, scp->irq, INTR_TYPE_AV, gusc_intr, scp, &ih); bus_generic_attach(dev); return (0); diff --git a/sys/dev/sound/isa/gusmidi.c b/sys/dev/sound/isa/gusmidi.c index a9b2150..88193bf 100644 --- a/sys/dev/sound/isa/gusmidi.c +++ b/sys/dev/sound/isa/gusmidi.c @@ -207,7 +207,7 @@ gusmidi_init(device_t dev) midiinit(devinfo, dev); - bus_setup_intr(dev, scp->irq, INTR_TYPE_TTY, gusmidi_intr, scp, + bus_setup_intr(dev, scp->irq, INTR_TYPE_AV, gusmidi_intr, scp, &scp->ih); return (0); diff --git a/sys/dev/sound/isa/mpu.c b/sys/dev/sound/isa/mpu.c index f66b921..a8cf490 100644 --- a/sys/dev/sound/isa/mpu.c +++ b/sys/dev/sound/isa/mpu.c @@ -385,7 +385,7 @@ mpu_attach(device_t dev) /* Now we can handle the interrupts. */ if (scp->irq != NULL) - bus_setup_intr(dev, scp->irq, INTR_TYPE_TTY, mpu_intr, scp, + bus_setup_intr(dev, scp->irq, INTR_TYPE_AV, mpu_intr, scp, &scp->ih); DEB(printf("mpu: attached.\n")); diff --git a/sys/dev/sound/isa/uartsio.c b/sys/dev/sound/isa/uartsio.c index 248dda5..297e986 100644 --- a/sys/dev/sound/isa/uartsio.c +++ b/sys/dev/sound/isa/uartsio.c @@ -253,7 +253,7 @@ uartsio_attach(device_t dev) midiinit(devinfo, dev); /* Now we can handle the interrupts. */ - bus_setup_intr(dev, scp->irq, INTR_TYPE_TTY, uartsio_intr, scp, &scp->ih); + bus_setup_intr(dev, scp->irq, INTR_TYPE_AV, uartsio_intr, scp, &scp->ih); DEB(printf("uartsio: attached.\n")); diff --git a/sys/dev/sound/pci/csamidi.c b/sys/dev/sound/pci/csamidi.c index d59f52e..df117af 100644 --- a/sys/dev/sound/pci/csamidi.c +++ b/sys/dev/sound/pci/csamidi.c @@ -202,7 +202,7 @@ csamidi_attach(device_t dev) midiinit(devinfo, dev); /* Enable interrupt. */ - if (bus_setup_intr(dev, scp->irq, INTR_TYPE_TTY, csamidi_intr, scp, &scp->ih)) { + if (bus_setup_intr(dev, scp->irq, INTR_TYPE_AV, csamidi_intr, scp, &scp->ih)) { csamidi_releaseres(scp, dev); return (ENXIO); } diff --git a/sys/dev/sound/pci/vibes.c b/sys/dev/sound/pci/vibes.c index f160351..41a8c58 100644 --- a/sys/dev/sound/pci/vibes.c +++ b/sys/dev/sound/pci/vibes.c @@ -760,7 +760,7 @@ sv_attach(device_t dev) { sc->irq = bus_alloc_resource(dev, SYS_RES_IRQ, &sc->irqid, 0, ~0, 1, RF_ACTIVE | RF_SHAREABLE); if (!sc->irq || - bus_setup_intr(dev, sc->irq, INTR_TYPE_TTY, sv_intr, sc, &sc->ih)) { + bus_setup_intr(dev, sc->irq, INTR_TYPE_AV, sv_intr, sc, &sc->ih)) { device_printf(dev, "sv_attach: Unable to map interrupt\n"); goto fail; } diff --git a/sys/dev/sound/pcm/sound.c b/sys/dev/sound/pcm/sound.c index ec8c2ed..ba41858 100644 --- a/sys/dev/sound/pcm/sound.c +++ b/sys/dev/sound/pcm/sound.c @@ -103,9 +103,9 @@ snd_setup_intr(device_t dev, struct resource *res, int flags, driver_intr_t hand { #ifdef USING_MUTEX flags &= INTR_MPSAFE; - flags |= INTR_TYPE_TTY; + flags |= INTR_TYPE_AV; #else - flags = INTR_TYPE_TTY; + flags = INTR_TYPE_AV; #endif return bus_setup_intr(dev, res, flags, hand, param, cookiep); } |