Sorry, but latest CVS does not work. Sound is still very distorted. CVS from 2002-12-09 12:00 works well though, which is what I'm using now :) It is using version 1.37 alsa-kernel/pci/cs46xx/cs46xx_lib.cc.Current CVS still seems to be broken. The hercules_init(...) function will reset the EGPIO's to default state turning of the amplifier. This patch changes the initialization order calling amplifier_ctrl(...) after mixer_init.
/Benny
--- cs46xx_lib.c.orig 2003-02-16 15:28:21.000000000 +0100
+++ cs46xx_lib.c 2003-02-16 15:28:34.000000000 +0100
@@ -2516,9 +2516,6 @@
strcpy(id.name, "External Amplifier Power Down");
chip->eapd_switch = snd_ctl_find_id(chip->card, &id);
- /* turn on amplifier */
- chip->amplifier_ctrl(chip, 1);
-
#ifdef CONFIG_SND_CS46XX_NEW_DSP
/* do soundcard specific mixer setup */
if (chip->mixer_init) {
@@ -2526,6 +2523,9 @@
chip->mixer_init(chip);
}
#endif
+
+ /* turn on amplifier */
+ chip->amplifier_ctrl(chip, 1);
return 0;
}
