[ALSA] pcxhr - Fix the sample rate changes

Modules: Digigram PCXHR driver

Fix the hardware set up when the sample rate is changed multiple times.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2006-01-10 11:14:49 +01:00 committed by Jaroslav Kysela
parent d298139361
commit 8937fd8855
1 changed files with 4 additions and 3 deletions

View File

@ -744,13 +744,14 @@ static int pcxhr_prepare(struct snd_pcm_substream *subs)
/* only the first stream can choose the sample rate */
/* the further opened streams will be limited to its frequency (see open) */
/* set the clock only once (first stream) */
if (mgr->sample_rate == 0) {
if (mgr->sample_rate != subs->runtime->rate) {
err = pcxhr_set_clock(mgr, subs->runtime->rate);
if (err)
break;
if (mgr->sample_rate == 0)
/* start the DSP-timer */
err = pcxhr_hardware_timer(mgr, 1);
mgr->sample_rate = subs->runtime->rate;
err = pcxhr_hardware_timer(mgr, 1); /* start the DSP-timer */
}
} while(0); /* do only once (so we can use break instead of goto) */