ALSA: ca0106 - Fix the max capture buffer size
authorTakashi Iwai <tiwai@suse.de>
Mon, 20 Jul 2009 13:42:51 +0000 (15:42 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 20 Jul 2009 13:49:46 +0000 (15:49 +0200)
The capture buffer size with 64kB seems broken with CA0106.
At least, either the update timing or the DMA position is wrong,
and this screws up pulseaudio badly.

This patch restricts the max buffer size less than that to make life
a bit easier.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
sound/pci/ca0106/ca0106_main.c

index 57b992a5c05724c6b67e18668464e592d8b82660..700f15ea16d4431e8075c296bc8b2dd94dc57893 100644 (file)
@@ -325,9 +325,9 @@ static struct snd_pcm_hardware snd_ca0106_capture_hw = {
        .rate_max =             192000,
        .channels_min =         2,
        .channels_max =         2,
-       .buffer_bytes_max =     ((65536 - 64) * 8),
+       .buffer_bytes_max =     65536 - 128,
        .period_bytes_min =     64,
-       .period_bytes_max =     (65536 - 64),
+       .period_bytes_max =     32768 - 64,
        .periods_min =          2,
        .periods_max =          2,
        .fifo_size =            0,