Commit 072c0119 authored by Jaroslav Kysela's avatar Jaroslav Kysela

[ALSA] ens1371 - added extra delay for ac97 codec initialization

ENS1370/1+ driver
Signed-off-by: default avatarJaroslav Kysela <perex@suse.cz>
parent 856def8a
...@@ -685,6 +685,15 @@ static unsigned short snd_es1371_codec_read(ac97_t *ac97, ...@@ -685,6 +685,15 @@ static unsigned short snd_es1371_codec_read(ac97_t *ac97,
return 0; return 0;
} }
static void snd_es1371_codec_wait(ac97_t *ac97)
{
msleep(750);
snd_es1371_codec_read(ac97, AC97_RESET);
snd_es1371_codec_read(ac97, AC97_VENDOR_ID1);
snd_es1371_codec_read(ac97, AC97_VENDOR_ID2);
msleep(50);
}
static void snd_es1371_adc_rate(ensoniq_t * ensoniq, unsigned int rate) static void snd_es1371_adc_rate(ensoniq_t * ensoniq, unsigned int rate)
{ {
unsigned int n, truncm, freq, result; unsigned int n, truncm, freq, result;
...@@ -1585,6 +1594,7 @@ static int snd_ensoniq_1371_mixer(ensoniq_t * ensoniq) ...@@ -1585,6 +1594,7 @@ static int snd_ensoniq_1371_mixer(ensoniq_t * ensoniq)
static ac97_bus_ops_t ops = { static ac97_bus_ops_t ops = {
.write = snd_es1371_codec_write, .write = snd_es1371_codec_write,
.read = snd_es1371_codec_read, .read = snd_es1371_codec_read,
.wait = snd_es1371_codec_wait,
}; };
if ((err = snd_ac97_bus(card, 0, &ops, NULL, &pbus)) < 0) if ((err = snd_ac97_bus(card, 0, &ops, NULL, &pbus)) < 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment