patch-2.4.2 linux/drivers/sound/i810_audio.c
Next file: linux/drivers/sound/maestro.c
Previous file: linux/drivers/sound/esssolo1.c
Back to the patch index
Back to the overall index
- Lines: 62
- Date:
Fri Feb 16 16:02:37 2001
- Orig file:
v2.4.1/linux/drivers/sound/i810_audio.c
- Orig date:
Thu Jan 4 12:50:17 2001
diff -u --recursive --new-file v2.4.1/linux/drivers/sound/i810_audio.c linux/drivers/sound/i810_audio.c
@@ -73,7 +73,7 @@
#include <linux/sched.h>
#include <linux/delay.h>
#include <linux/sound.h>
-#include <linux/malloc.h>
+#include <linux/slab.h>
#include <linux/soundcard.h>
#include <linux/pci.h>
#include <asm/io.h>
@@ -879,7 +879,9 @@
dmabuf->endcleared = 1;
}
}
- wake_up(&dmabuf->wait);
+ if (dmabuf->count < (signed)dmabuf->dmasize/2) {
+ wake_up(&dmabuf->wait);
+ }
}
}
/* error handling and process wake up for DAC */
@@ -896,10 +898,12 @@
it here, just stop the machine and let the process force hwptr
and swptr to sync */
__stop_dac(state);
- printk("DMA overrun on send\n");
+ printk(KERN_WARNING "i810_audio: DMA overrun on send\n");
dmabuf->error++;
}
- wake_up(&dmabuf->wait);
+ if (dmabuf->count < (signed)dmabuf->dmasize/2) {
+ wake_up(&dmabuf->wait);
+ }
}
}
}
@@ -1047,7 +1051,7 @@
dmabuf->dmasize, dmabuf->fragsize, dmabuf->count,
dmabuf->hwptr, dmabuf->swptr);
#endif
- /* a buffer overrun, we delay the recovery untill next time the
+ /* a buffer overrun, we delay the recovery until next time the
while loop begin and we REALLY have space to record */
}
if (signal_pending(current)) {
@@ -1144,7 +1148,7 @@
dmabuf->dmasize, dmabuf->fragsize, dmabuf->count,
dmabuf->hwptr, dmabuf->swptr);
#endif
- /* a buffer underrun, we delay the recovery untill next time the
+ /* a buffer underrun, we delay the recovery until next time the
while loop begin and we REALLY have data to play */
}
if (signal_pending(current)) {
@@ -1823,7 +1827,7 @@
}
/* install the driver, we do not allocate hardware channel nor DMA buffer now, they are defered
- untill "ACCESS" time (in prog_dmabuf called by open/read/write/ioctl/mmap) */
+ until "ACCESS" time (in prog_dmabuf called by open/read/write/ioctl/mmap) */
static int __init i810_probe(struct pci_dev *pci_dev, const struct pci_device_id *pci_id)
{
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)