ChangeSet 1.2181.25.34, 2005/03/22 09:17:29+01:00, [EMAIL PROTECTED]
[ALSA] Increase buffer sizes for the CA0106 driver
CA0106 driver
This patch increases the buffer size for the ca0106 driver, so this
might help prevent over/underruns.
Signed-off-by: James Courtier-Dutton
Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]>
ca0106_main.c | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diff -Nru a/sound/pci/ca0106/ca0106_main.c b/sound/pci/ca0106/ca0106_main.c
--- a/sound/pci/ca0106/ca0106_main.c 2005-03-30 16:16:27 -08:00
+++ b/sound/pci/ca0106/ca0106_main.c 2005-03-30 16:16:27 -08:00
@@ -187,9 +187,9 @@
.rate_max = 192000,
.channels_min = 2, //1,
.channels_max = 2, //6,
- .buffer_bytes_max = (32*1024),
+ .buffer_bytes_max = ((65536 - 64) * 8),
.period_bytes_min = 64,
- .period_bytes_max = (16*1024),
+ .period_bytes_max = (65536 - 64),
.periods_min = 2,
.periods_max = 8,
.fifo_size = 0,
@@ -206,9 +206,9 @@
.rate_max = 48000,
.channels_min = 2,
.channels_max = 2,
- .buffer_bytes_max = (32*1024),
+ .buffer_bytes_max = ((65536 - 64) * 8),
.period_bytes_min = 64,
- .period_bytes_max = (16*1024),
+ .period_bytes_max = (65536 - 64),
.periods_min = 2,
.periods_max = 2,
.fifo_size = 0,
@@ -513,6 +513,8 @@
snd_ca0106_ptr_write(emu, PLAYBACK_LIST_PTR, channel, 0);
snd_ca0106_ptr_write(emu, PLAYBACK_DMA_ADDR, channel,
runtime->dma_addr);
snd_ca0106_ptr_write(emu, PLAYBACK_PERIOD_SIZE, channel,
frames_to_bytes(runtime, runtime->period_size)<<16); // buffer size in bytes
+ /* FIXME test what 0 bytes does. */
+ snd_ca0106_ptr_write(emu, PLAYBACK_PERIOD_SIZE, channel, 0); // buffer
size in bytes
snd_ca0106_ptr_write(emu, PLAYBACK_POINTER, channel, 0);
snd_ca0106_ptr_write(emu, 0x07, channel, 0x0);
snd_ca0106_ptr_write(emu, 0x08, channel, 0);
-
To unsubscribe from this list: send the line "unsubscribe bk-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html