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; }