diff --git a/sys/dev/sound/isa/sb.c b/sys/dev/sound/isa/sb.c index 93e1815db7ff..216198272a3c 100644 --- a/sys/dev/sound/isa/sb.c +++ b/sys/dev/sound/isa/sb.c @@ -583,14 +583,10 @@ ess_intr(void *arg) * We are transferring data in DSP normal mode, * so clear the dl to indicate the DMA is stopped. */ - if (sb->pch.buffer->dl > 0) { - sb->pch.buffer->dl = -1; + if (sb->pch.buffer->dl > 0) chn_intr(sb->pch.channel); - } - if (sb->rch.buffer->dl > 0) { - sb->rch.buffer->dl = -1; + if (sb->rch.buffer->dl > 0) chn_intr(sb->rch.channel); - } } static int diff --git a/sys/dev/sound/isa/sb16.c b/sys/dev/sound/isa/sb16.c index 93e1815db7ff..216198272a3c 100644 --- a/sys/dev/sound/isa/sb16.c +++ b/sys/dev/sound/isa/sb16.c @@ -583,14 +583,10 @@ ess_intr(void *arg) * We are transferring data in DSP normal mode, * so clear the dl to indicate the DMA is stopped. */ - if (sb->pch.buffer->dl > 0) { - sb->pch.buffer->dl = -1; + if (sb->pch.buffer->dl > 0) chn_intr(sb->pch.channel); - } - if (sb->rch.buffer->dl > 0) { - sb->rch.buffer->dl = -1; + if (sb->rch.buffer->dl > 0) chn_intr(sb->rch.channel); - } } static int diff --git a/sys/dev/sound/isa/sb8.c b/sys/dev/sound/isa/sb8.c index 93e1815db7ff..216198272a3c 100644 --- a/sys/dev/sound/isa/sb8.c +++ b/sys/dev/sound/isa/sb8.c @@ -583,14 +583,10 @@ ess_intr(void *arg) * We are transferring data in DSP normal mode, * so clear the dl to indicate the DMA is stopped. */ - if (sb->pch.buffer->dl > 0) { - sb->pch.buffer->dl = -1; + if (sb->pch.buffer->dl > 0) chn_intr(sb->pch.channel); - } - if (sb->rch.buffer->dl > 0) { - sb->rch.buffer->dl = -1; + if (sb->rch.buffer->dl > 0) chn_intr(sb->rch.channel); - } } static int