]> git.alsa-project.org Git - alsa-lib.git/commit
Add workaround for conflicting IEC958 controls for HD-audio
authorTakashi Iwai <tiwai@suse.de>
Mon, 11 Feb 2013 11:28:45 +0000 (12:28 +0100)
committerTakashi Iwai <tiwai@suse.de>
Thu, 21 Feb 2013 16:52:17 +0000 (17:52 +0100)
commitf5f45589f81c46d4ca4cbbe089441a0f7ac5e197
treed85cec4c9f4200a8cda078c4657edf3ebf6871be
parent8c6da54073b2c966d9a4e137ba4d521eac92816f
Add workaround for conflicting IEC958 controls for HD-audio

When both an SPDIF and an HDMI output are present on HD-audio, both
try to access IEC958 controls with index=0 although one of them must
be wrong.  For avoiding this conflict, the recent kernel code (3.9 and
3.8 stable) moves the IEC958 controls of an SPDIF with index=16 once
when the conflict happens.

In this patch, the corresponding support is added in alsa-lib side.
The new "skip_rest" boolean flag is added to the hooked element
definition which indicates that the rest of element array will be
ignored once when this element is present and evaluated.  With this
new flag, the HD-audio config takes index=16 primarily, then take
index=0 as fallback.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
src/conf/cards/HDA-Intel.conf
src/control/setup.c