ALSA: hda - Do not set GPIOs for speakers on IDT if there are no speakers
authorDavid Henningsson <david.henningsson@canonical.com>
Wed, 22 Aug 2012 14:10:43 +0000 (16:10 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 22 Aug 2012 14:26:05 +0000 (16:26 +0200)
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>
sound/pci/hda/patch_sigmatel.c

index ea5775a..3edd73c 100644 (file)
@@ -4543,6 +4543,9 @@ static void stac92xx_line_out_detect(struct hda_codec *codec,
        struct auto_pin_cfg *cfg = &spec->autocfg;
        int i;
 
+       if (cfg->speaker_outs == 0)
+               return;
+
        for (i = 0; i < cfg->line_outs; i++) {
                if (presence)
                        break;