mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-15 13:15:57 +00:00
ALSA: emu10k1: Allow to switch hardware sampe rate on EMU
Commit 57e5c63007955838043e34c732d224b2cbbb128f "emu10k1: allow to disable the SRC" force hardware use only one rate (48000 hz). EMU 0404/1010/1616 have support two hardware sampling rates (44100 and 48000 hz). This patch add check if we have EMU 0404/1010/1616 and choose correct sample rate to restrict. Signed-off-by: Mihail Zenkov <mihail.zenkov@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
8554ee4057
commit
d0ec95fe6a
@ -1127,7 +1127,7 @@ static int snd_emu10k1_playback_open(struct snd_pcm_substream *substream)
|
||||
struct snd_emu10k1_pcm *epcm;
|
||||
struct snd_emu10k1_pcm_mixer *mix;
|
||||
struct snd_pcm_runtime *runtime = substream->runtime;
|
||||
int i, err;
|
||||
int i, err, sample_rate;
|
||||
|
||||
epcm = kzalloc(sizeof(*epcm), GFP_KERNEL);
|
||||
if (epcm == NULL)
|
||||
@ -1146,7 +1146,11 @@ static int snd_emu10k1_playback_open(struct snd_pcm_substream *substream)
|
||||
kfree(epcm);
|
||||
return err;
|
||||
}
|
||||
err = snd_pcm_hw_rule_noresample(runtime, 48000);
|
||||
if (emu->card_capabilities->emu_model && emu->emu1010.internal_clock == 0)
|
||||
sample_rate = 44100;
|
||||
else
|
||||
sample_rate = 48000;
|
||||
err = snd_pcm_hw_rule_noresample(runtime, sample_rate);
|
||||
if (err < 0) {
|
||||
kfree(epcm);
|
||||
return err;
|
||||
|
Loading…
x
Reference in New Issue
Block a user