At Mon, 14 Jan 2013 15:18:11 +0100, Takashi Iwai wrote:
At Mon, 14 Jan 2013 21:46:57 +0800, Raymond Yau wrote:
Yes, testing the latest code with real machines is highly appreciated. Try sound-unstable git tree, either master or test/hda-migrate branch. git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-unstable.git
Alternatively you can build the external alsa-driver modules from alsa-driver-unstable snapshot tarball, too
ftp://ftp.suse.com/pub/people/tiwai/snapshot/alsa-driver-unstable-snapshot.tar.gz
Note that only the behavior of model=auto has been changed in the tree above. The other model behaviors of AD codecs are unchanged at all.
- On one of the boards (Asus M3A79-T DELUXE) the mixer control labels
are > misconfigured since muting the Master channel does not turn the sound off.
Node 0x1a [Pin Complex] wcaps 0x400000: Mono Pincap 0x00000020: IN Pin Default 0x911711f0: [Fixed] Speaker at Int Rear Conn = Analog, Color = Black DefAssociation = 0xf, Sequence = 0x0 Misc = NO_PRESENCE Pin-ctls: 0x20: IN
Do you prefer a pin fixup of node 0x1a for Asus M3A79-T DELUXE
or ignore these kind of pin during parsing
case AC_JACK_SPEAKER:
if ((snd_hda_query_pin_caps(codec, pin) &
AC_PINCTL_OUT_EN) == AC_PINCTL_OUT_EN) { seq = get_defcfg_sequence(def_conf); assoc = get_defcfg_association(def_conf); if (cfg->speaker_outs >= ARRAY_SIZE(cfg->speaker_pins)) continue; speaker_out[cfg->speaker_outs].pin = nid; speaker_out[cfg->speaker_outs].seq = (assoc << 4) | seq; cfg->speaker_outs++;
} break;
The latter, it must be filtered out in general.
If a codec has really the output capability on this pin, the pincap should be overridden beforehand by the codec parser.
Care to send a proper patch?
Never mind, I patched by myself now. It's found in test/hda-gen-parser branch of sound-unstable git tree.
thanks,
Takashi