ALSA: hda - Switch HP DAC dynamically with indep-HP switch for VIA
authorTakashi Iwai <tiwai@suse.de>
Mon, 18 Jul 2011 14:54:40 +0000 (16:54 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 18 Jul 2011 14:54:40 +0000 (16:54 +0200)
commit3b607e3d3a2538e06686c8c26057f95471ac1f9c
tree8c795f35ffa819a1edb571251a08770dc93b612a
parent3214b9665c06f684011f169428963b20f8ac554b
ALSA: hda - Switch HP DAC dynamically with indep-HP switch for VIA

This patch changes the behavior of independent-HP enum switch.  Now
instead of returning a busy error, the driver switches dynamically the
stream of the HP (and shared) DACs according to the current mode.
The logic is similar like the dual-mic ADC switch, but a bit more
complicated because of the presence of shared DAC.

Together with the change, a mutex is introduced to protect against the
possible races for the indep-HP mode setting.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_via.c