diff options
author | Heikki Lindholm <holindho@cs.helsinki.fi> | 2007-11-23 15:37:48 +0100 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-01-31 17:29:28 +0100 |
commit | df86d1149f4b7b77158755b85b85f94e7bade32f (patch) | |
tree | a06cc07d9af3d56f384ab9f1f31dcd12707d37d9 /sound/aoa/soundbus/i2sbus | |
parent | 7c7fc2d44b7a660846115e65b67772b6742a14d8 (diff) |
[ALSA] add number of periods constraint to snd-aoa
The aoa driver is not specifying constraints on number of periods, and, it
seems, it might end with a non-integer number, which it cannot deal with.
Fix by adding a proper constraint.
Signed-off-by: Heikki Lindholm <holindho@cs.helsinki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/aoa/soundbus/i2sbus')
-rw-r--r-- | sound/aoa/soundbus/i2sbus/i2sbus-pcm.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c b/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c index c6b42f9bdbc9..a4b0e1acb11d 100644 --- a/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c +++ b/sound/aoa/soundbus/i2sbus/i2sbus-pcm.c @@ -194,6 +194,12 @@ static int i2sbus_pcm_open(struct i2sbus_dev *i2sdev, int in) hw->period_bytes_max = 16384; hw->periods_min = 3; hw->periods_max = MAX_DBDMA_COMMANDS; + err = snd_pcm_hw_constraint_integer(pi->substream->runtime, + SNDRV_PCM_HW_PARAM_PERIODS); + if (err < 0) { + result = err; + goto out_unlock; + } list_for_each_entry(cii, &sdev->codec_list, list) { if (cii->codec->open) { err = cii->codec->open(cii, pi->substream); |