From: Jaroslav Kysela Date: Sat, 9 Jul 2005 08:07:55 +0000 (+0200) Subject: [ALSA] ens1371 - added extra delay for ac97 codec initialization X-Git-Tag: v2.6.13-rc4~3^2~16 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=072c01194df6e4843582d09380b780987f642d6d;p=linux-2.6 [ALSA] ens1371 - added extra delay for ac97 codec initialization ENS1370/1+ driver Signed-off-by: Jaroslav Kysela --- diff --git a/sound/pci/ens1370.c b/sound/pci/ens1370.c index 4e63498a58..d4287338c0 100644 --- a/sound/pci/ens1370.c +++ b/sound/pci/ens1370.c @@ -685,6 +685,15 @@ static unsigned short snd_es1371_codec_read(ac97_t *ac97, 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) { unsigned int n, truncm, freq, result; @@ -1585,6 +1594,7 @@ static int snd_ensoniq_1371_mixer(ensoniq_t * ensoniq) static ac97_bus_ops_t ops = { .write = snd_es1371_codec_write, .read = snd_es1371_codec_read, + .wait = snd_es1371_codec_wait, }; if ((err = snd_ac97_bus(card, 0, &ops, NULL, &pbus)) < 0)