]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ALSA: hda - Fix aamix activation with loopback control on VIA codecs
authorTakashi Iwai <tiwai@suse.de>
Tue, 16 Apr 2013 10:31:05 +0000 (12:31 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 8 May 2013 03:33:10 +0000 (20:33 -0700)
commit02cd348296250dc2357bd5c1739935dd8f978e51
tree68ed55e5c04e17b5e23411b94b5124236c6bb54f
parentff865cae825f9be5a0281f6af55dfb2f9a0fa5d3
ALSA: hda - Fix aamix activation with loopback control on VIA codecs

commit 65033cc8d5ffd9b754e04da4be9cd1e8b61eeaff upstream.

When we have a loopback mixer control, this should manage the state
whether the output paths include the aamix or not.  But the current
code blindly initializes the output paths with aamix = true, thus the
aamix is enabled unless the loopback mixer control is changed.

Also, update_aamix_paths() called by the loopback mixer control put
callback invokes snd_hda_activate_path() with aamix = true even for
disabling the mixing.  This leaves the aamix path even though the
loopback control is turned off.

This patch fixes these issues:
- Introduced aamix_default() helper to indicate whether with_aamix is
  true or false as default
- Fix the argument in update_aamix_paths() for disabling loopback

Reported-by: Lydia Wang <LydiaWang@viatech.com.cn>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/pci/hda/hda_generic.c