aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-12-26 04:36:12 -0500
committerTakashi Iwai <tiwai@suse.de>2009-12-26 04:36:12 -0500
commit043958e602ac2cbf918c0dab1e4e2a7f9751ebf6 (patch)
tree760ae6f9d6e574fc9a5d3f24ce4cc6b423466c3f /sound/pci/hda/patch_sigmatel.c
parent15e7f8b92aed71819411025279cd3df37f8c636b (diff)
ALSA: hda - Add more hints for GPIO setup of IDT/STAC codecs
gpio_led, gpio_led_polarity and gpio_mute are added now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_sigmatel.c')
-rw-r--r--sound/pci/hda/patch_sigmatel.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 247be19e17b8..69dd5a4e52f2 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -4184,9 +4184,23 @@ static void stac_store_hints(struct hda_codec *codec)
4184 p = snd_hda_get_hint(codec, "eapd_mask"); 4184 p = snd_hda_get_hint(codec, "eapd_mask");
4185 if (p) 4185 if (p)
4186 spec->eapd_mask = simple_strtoul(p, NULL, 0) & spec->gpio_mask; 4186 spec->eapd_mask = simple_strtoul(p, NULL, 0) & spec->gpio_mask;
4187 p = snd_hda_get_hint(codec, "gpio_mute");
4188 if (p)
4189 spec->gpio_mute = simple_strtoul(p, NULL, 0) & spec->gpio_mask;
4187 val = snd_hda_get_bool_hint(codec, "eapd_switch"); 4190 val = snd_hda_get_bool_hint(codec, "eapd_switch");
4188 if (val >= 0) 4191 if (val >= 0)
4189 spec->eapd_switch = val; 4192 spec->eapd_switch = val;
4193 p = snd_hda_get_hint(codec, "gpio_led_polarity");
4194 if (p)
4195 spec->gpio_led_polarity = simple_strtoul(p, NULL, 0);
4196 p = snd_hda_get_hint(codec, "gpio_led");
4197 if (p) {
4198 spec->gpio_led = simple_strtoul(p, NULL, 0);
4199 spec->gpio_mask |= spec->gpio_led;
4200 spec->gpio_dir |= spec->gpio_led;
4201 if (spec->gpio_led_polarity)
4202 spec->gpio_data |= spec->gpio_led;
4203 }
4190} 4204}
4191 4205
4192static int stac92xx_init(struct hda_codec *codec) 4206static int stac92xx_init(struct hda_codec *codec)