[alsa-devel] Intel HDA digital out distortion

Ingmar Stieger alsauser at stiegerhs.de
Mon Jul 23 23:09:24 CEST 2007


Hi,

a couple of weeks ago, I bought an ASUS mainboard with integrated Intel HDA and 
an AD1988B codec. Unfortunately, the digital / SPDIF output gets distorted with 
stock 1.0.14 drivers. It does not matter what the volume levels of the various 
mixers are set to.

I think I might have found the source for this problem. Maybe it's only a 
workaround, but it solved the issue and digital out now works fine for me, so I 
thought I'd share.

In patch_analog.c, in static struct hda_verb ad1988_spdif_init_verbs[], 
changeing the forth entry

from {0x1d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},

to {0x1d, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(1)}

mutes what might be an feedback loop from the analog inputs. The distortion is 
gone if the input to this widget is muted.

On a side note, the settings for the ADCs with NID:08, 09, and 0F looks fishy, 
too. According to the functional diagram, those should have no amps, and thus 
should not be muteable. The driver mutes them anyway...

I'd like to help somebody who really understands this stuff to solve the 
problem for good. What would the next step be ?

Thanks,
Ingmar



More information about the Alsa-devel mailing list