diff options
author | Takashi Iwai <tiwai@suse.de> | 2008-12-19 08:02:32 -0500 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2008-12-19 08:23:08 -0500 |
commit | 8f55c1e51fbb03998708bdd97d5b6665ab92462d (patch) | |
tree | 7fe1a0b88e59eff30531981cceed7ac85fcf5ef5 | |
parent | 9e43f0de690211cf7153b5f3ec251bc315647ada (diff) |
ALSA: hda - Remove non-working headphone control for Dell laptops
The previous commit re-enabled hp_nid setup for IDT92HD73*, but
it's unneeded indeed for Dell laptops that have multiple headphones.
Setting the extra hp_nid results in a non-working "Headpohne" mixer
control. Thus hp_nid should be 0 for these dell models.
Also, the automatic addition of hp_nid should check whether it's
a dual-HP model or not. For dual-HPs, the pins are already checked
by the early workaround.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index d7c622f944f6..596ceabd6504 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c | |||
@@ -2903,7 +2903,7 @@ static int stac92xx_auto_create_multi_out_ctls(struct hda_codec *codec, | |||
2903 | } | 2903 | } |
2904 | 2904 | ||
2905 | if ((spec->multiout.num_dacs - cfg->line_outs) > 0 && | 2905 | if ((spec->multiout.num_dacs - cfg->line_outs) > 0 && |
2906 | cfg->hp_outs && !spec->multiout.hp_nid) | 2906 | cfg->hp_outs == 1 && !spec->multiout.hp_nid) |
2907 | spec->multiout.hp_nid = nid; | 2907 | spec->multiout.hp_nid = nid; |
2908 | 2908 | ||
2909 | if (cfg->hp_outs > 1 && cfg->line_out_type == AUTO_PIN_LINE_OUT) { | 2909 | if (cfg->hp_outs > 1 && cfg->line_out_type == AUTO_PIN_LINE_OUT) { |
@@ -4307,6 +4307,7 @@ again: | |||
4307 | spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP]; | 4307 | spec->amp_nids = &stac92hd73xx_amp_nids[DELL_M6_AMP]; |
4308 | spec->eapd_switch = 0; | 4308 | spec->eapd_switch = 0; |
4309 | spec->num_amps = 1; | 4309 | spec->num_amps = 1; |
4310 | spec->multiout.hp_nid = 0; /* dual HPs */ | ||
4310 | 4311 | ||
4311 | if (!spec->init) | 4312 | if (!spec->init) |
4312 | spec->init = dell_m6_core_init; | 4313 | spec->init = dell_m6_core_init; |