[alsa-devel] ALC882 on Abit AW9D-MAX

Takashi Iwai tiwai at suse.de
Fri Apr 13 12:21:51 CEST 2007


At Fri, 13 Apr 2007 00:11:41 +0300,
Dan Aloni wrote:
> 
> On Thu, Apr 12, 2007 at 02:34:49PM +0200, Takashi Iwai wrote:
> > At Thu, 12 Apr 2007 13:09:59 +0300,
> > Dan Aloni wrote:
> > > 
> > > Hello, 
> > > 
> > > Yesterday I posted this bug in the bugtracker:
> > > 
> > >     https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3013
> > > 
> > > I have received no reponse yet.
> > > 
> > > I'd like to cooperate on solving this.
> > 
> > Most of such problems are caused by buggy BIOS, as the driver tries
> > to set up based on BIOS information if the device is unknown.
> > 
> > Did you try to pass model options for ALC882?
> > For example, model=3stack or model=6stack.
> > Also, position_fix option is worth try to fix some playback problems.
> 
> Okay, so based on the 2.6.21-rc6 codebase:
> 
> position_fix=1 fixed the clicks.
> 
> Concerning the speakers - I have found that if I swap the orange
> and black - it works.

I had a similar bug report once and it was also an 8-channel device.
Could you try the patch below?


Takashi

diff -r 3f196675e724 pci/hda/hda_codec.c
--- a/pci/hda/hda_codec.c	Fri Aug 04 19:08:03 2006 +0200
+++ b/pci/hda/hda_codec.c	Mon Aug 07 14:55:42 2006 +0200
@@ -2122,16 +2122,19 @@ int snd_hda_parse_pin_def_config(struct 
 	 */
 	switch (cfg->line_outs) {
 	case 3:
+	case 4:
 		nid = cfg->line_out_pins[1];
 		cfg->line_out_pins[1] = cfg->line_out_pins[2];
 		cfg->line_out_pins[2] = nid;
 		break;
+#if 0 /* seems wrong */
 	case 4:
 		nid = cfg->line_out_pins[1];
 		cfg->line_out_pins[1] = cfg->line_out_pins[3];
 		cfg->line_out_pins[3] = cfg->line_out_pins[2];
 		cfg->line_out_pins[2] = nid;
 		break;
+#endif
 	}
 
 	/*


More information about the Alsa-devel mailing list