summaryrefslogtreecommitdiff
path: root/sound/pci/hda/thinkpad_helper.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2014-01-30 16:59:02 (GMT)
committerTakashi Iwai <tiwai@suse.de>2014-02-07 11:13:25 (GMT)
commit7fe307117db5bd7ec6efb93c563dcf44577b6d2b (patch)
tree33a6444eef35d6e511f55c60dbeb9fccc9ed5d68 /sound/pci/hda/thinkpad_helper.c
parentf8f1becfa4ac3231da55de68698cf7facf089646 (diff)
downloadlinux-7fe307117db5bd7ec6efb93c563dcf44577b6d2b.tar.xz
ALSA: hda - Fix inconsistent Mic mute LED
The current code for controlling mic mute LED in patch_sigmatel.c blindly assumes that there is a single capture switch. But, there can be multiple multiple ones, and each of them flips the state, ended up in an inconsistent state. For fixing this problem, this patch adds kcontrol to be passed to the hook function so that the callee can check which switch is being accessed. In stac_capture_led_hook(), the state is checked as a bitmask, and turns on the LED when all capture switches are off. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/thinkpad_helper.c')
-rw-r--r--sound/pci/hda/thinkpad_helper.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/hda/thinkpad_helper.c b/sound/pci/hda/thinkpad_helper.c
index 5799fbc..8fe3b8c 100644
--- a/sound/pci/hda/thinkpad_helper.c
+++ b/sound/pci/hda/thinkpad_helper.c
@@ -39,6 +39,7 @@ static void update_tpacpi_mute_led(void *private_data, int enabled)
}
static void update_tpacpi_micmute_led(struct hda_codec *codec,
+ struct snd_kcontrol *kcontrol,
struct snd_ctl_elem_value *ucontrol)
{
if (!ucontrol || !led_set_func)