--------------------- PatchSet 3098 Date: 2005/04/07 20:22:58 Author: tiwai Branch: HEAD Tag: (none) Log: Summary: Fix MC97 codec initialization This (especially 12000 -> 8000 sample rate replace) fix popular "MC97 converters.. not ready" error with modem codecs initializations. Signed-off-by: Sasha Khapyorsky Members: pci/ac97/ac97_codec.c:1.182->1.183 Index: /sound/pci/ac97/ac97_codec.c diff -u /sound/pci/ac97/ac97_codec.c.old /sound/pci/ac97/ac97_codec.c --- /sound/pci/ac97/ac97_codec.c.old Thu Apr 7 07:53:20 2005 +++ /sound/pci/ac97/ac97_codec.c Thu Apr 7 12:22:58 2005 @@ -1964,21 +1964,21 @@ /* note: it's important to set the rate at first */ tmp = AC97_MEA_GPIO; if (ac97->ext_mid & AC97_MEI_LINE1) { - snd_ac97_write_cache(ac97, AC97_LINE1_RATE, 12000); + snd_ac97_write_cache(ac97, AC97_LINE1_RATE, 8000); tmp |= AC97_MEA_ADC1 | AC97_MEA_DAC1; } if (ac97->ext_mid & AC97_MEI_LINE2) { - snd_ac97_write_cache(ac97, AC97_LINE2_RATE, 12000); + snd_ac97_write_cache(ac97, AC97_LINE2_RATE, 8000); tmp |= AC97_MEA_ADC2 | AC97_MEA_DAC2; } if (ac97->ext_mid & AC97_MEI_HANDSET) { - snd_ac97_write_cache(ac97, AC97_HANDSET_RATE, 12000); + snd_ac97_write_cache(ac97, AC97_HANDSET_RATE, 8000); tmp |= AC97_MEA_HADC | AC97_MEA_HDAC; } - snd_ac97_write_cache(ac97, AC97_EXTENDED_MSTATUS, 0xff00 & ~(tmp << 8)); + snd_ac97_write_cache(ac97, AC97_EXTENDED_MSTATUS, 0); udelay(100); /* nothing should be in powerdown mode */ - snd_ac97_write_cache(ac97, AC97_EXTENDED_MSTATUS, 0xff00 & ~(tmp << 8)); + snd_ac97_write_cache(ac97, AC97_EXTENDED_MSTATUS, 0); end_time = jiffies + (HZ / 10); do { if ((snd_ac97_read(ac97, AC97_EXTENDED_MSTATUS) & tmp) == tmp)