]> git.baikalelectronics.ru Git - kernel.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)
committerTakashi Iwai <tiwai@suse.de>
Tue, 16 Apr 2013 10:38:38 +0000 (12:38 +0200)
commit2b3d9f4e3d25820e51fded0167aa03ce24c5d4c3
treea7fe7008769a45b453145d1e5a4e72672c2c52d2
parent751c3747ab2c25c57879ec6627f10359fcea35db
ALSA: hda - Fix aamix activation with loopback control on VIA codecs

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>
Cc: <stable@vger.kernel.org> [v3.9+]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_generic.c