i810_audio.c cli/sti fix

Greg KH (greg@kroah.com)
Wed, 24 Jul 2002 17:37:36 -0700


Here's a small patch to get the i810_audio.c driver working again.

thanks,

greg k-h

diff -Nru a/sound/oss/i810_audio.c b/sound/oss/i810_audio.c
--- a/sound/oss/i810_audio.c Wed Jul 24 17:35:31 2002
+++ b/sound/oss/i810_audio.c Wed Jul 24 17:35:32 2002
@@ -1733,7 +1733,7 @@
}

spin_unlock_irqrestore(&state->card->lock, flags);
- synchronize_irq();
+ synchronize_irq(state->card->irq);
dmabuf->ready = 0;
dmabuf->swptr = dmabuf->hwptr = 0;
dmabuf->count = dmabuf->total_bytes = 0;
@@ -2814,15 +2814,15 @@
}
dmabuf->count = dmabuf->dmasize;
outb(31,card->iobase+dmabuf->write_channel->port+OFF_LVI);
- save_flags(flags);
- cli();
+ local_irq_save(flags);
+ local_irq_disable();
start_dac(state);
offset = i810_get_dma_addr(state, 0);
mdelay(50);
new_offset = i810_get_dma_addr(state, 0);
stop_dac(state);
outb(2,card->iobase+dmabuf->write_channel->port+OFF_CR);
- restore_flags(flags);
+ local_irq_restore(flags);
i = new_offset - offset;
#ifdef DEBUG
printk("i810_audio: %d bytes in 50 milliseconds\n", i);
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/