diff options
-rw-r--r-- | drivers/media/video/saa7134/saa7134-alsa.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/media/video/saa7134/saa7134-alsa.c b/drivers/media/video/saa7134/saa7134-alsa.c index b9c5cf7dc849..ece177de72a5 100644 --- a/drivers/media/video/saa7134/saa7134-alsa.c +++ b/drivers/media/video/saa7134/saa7134-alsa.c | |||
@@ -457,7 +457,7 @@ static struct snd_pcm_hardware snd_card_saa7134_capture = | |||
457 | .buffer_bytes_max = (256*1024), | 457 | .buffer_bytes_max = (256*1024), |
458 | .period_bytes_min = 64, | 458 | .period_bytes_min = 64, |
459 | .period_bytes_max = (256*1024), | 459 | .period_bytes_max = (256*1024), |
460 | .periods_min = 2, | 460 | .periods_min = 4, |
461 | .periods_max = 1024, | 461 | .periods_max = 1024, |
462 | }; | 462 | }; |
463 | 463 | ||
@@ -491,7 +491,7 @@ static int snd_card_saa7134_hw_params(struct snd_pcm_substream * substream, | |||
491 | 491 | ||
492 | snd_assert(period_size >= 0x100 && period_size <= 0x10000, | 492 | snd_assert(period_size >= 0x100 && period_size <= 0x10000, |
493 | return -EINVAL); | 493 | return -EINVAL); |
494 | snd_assert(periods >= 2, return -EINVAL); | 494 | snd_assert(periods >= 4, return -EINVAL); |
495 | snd_assert(period_size * periods <= 1024 * 1024, return -EINVAL); | 495 | snd_assert(period_size * periods <= 1024 * 1024, return -EINVAL); |
496 | 496 | ||
497 | dev = saa7134->dev; | 497 | dev = saa7134->dev; |
@@ -647,7 +647,14 @@ static int snd_card_saa7134_capture_open(struct snd_pcm_substream * substream) | |||
647 | saa7134_tvaudio_setmute(dev); | 647 | saa7134_tvaudio_setmute(dev); |
648 | } | 648 | } |
649 | 649 | ||
650 | if ((err = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS)) < 0) | 650 | err = snd_pcm_hw_constraint_integer(runtime, |
651 | SNDRV_PCM_HW_PARAM_PERIODS); | ||
652 | if (err < 0) | ||
653 | return err; | ||
654 | |||
655 | err = snd_pcm_hw_constraint_step(runtime, 0, | ||
656 | SNDRV_PCM_HW_PARAM_PERIODS, 2); | ||
657 | if (err < 0) | ||
651 | return err; | 658 | return err; |
652 | 659 | ||
653 | return 0; | 660 | return 0; |