diff options
| author | David Henningsson <david.henningsson@canonical.com> | 2012-08-22 10:10:43 -0400 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2012-08-22 10:26:05 -0400 |
| commit | 042b92c185cbd7b4291710255510ae76b2d7797b (patch) | |
| tree | cdd85f240c81b9579980075cfb6ce25c28352fdd | |
| parent | 53e1719f3da0f095b8db1461bd12dd79f3246b84 (diff) | |
ALSA: hda - Do not set GPIOs for speakers on IDT if there are no speakers
This fixes an issue with a machine where there were no speakers,
but GPIO0 had to be data=1 for the headphone to be functioning.
I'm not sure if we need a more advanced patch to solve all possible cases,
but if so, this patch would still provide a minor optimisation.
BugLink: https://bugs.launchpad.net/bugs/1040077
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
| -rw-r--r-- | sound/pci/hda/patch_sigmatel.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c index ea5775a1a7db..3edd73c3d361 100644 --- a/sound/pci/hda/patch_sigmatel.c +++ b/sound/pci/hda/patch_sigmatel.c | |||
| @@ -4543,6 +4543,9 @@ static void stac92xx_line_out_detect(struct hda_codec *codec, | |||
| 4543 | struct auto_pin_cfg *cfg = &spec->autocfg; | 4543 | struct auto_pin_cfg *cfg = &spec->autocfg; |
| 4544 | int i; | 4544 | int i; |
| 4545 | 4545 | ||
| 4546 | if (cfg->speaker_outs == 0) | ||
| 4547 | return; | ||
| 4548 | |||
| 4546 | for (i = 0; i < cfg->line_outs; i++) { | 4549 | for (i = 0; i < cfg->line_outs; i++) { |
| 4547 | if (presence) | 4550 | if (presence) |
| 4548 | break; | 4551 | break; |
