ALSA: hda - Don't check invalid HP pin
authorTakashi Iwai <tiwai@suse.de>
Mon, 2 Nov 2009 13:23:15 +0000 (14:23 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 2 Nov 2009 13:23:15 +0000 (14:23 +0100)
alc_automute_pin() might be called even if any HP pin is defined, and
it will result in verbs with NID=0.

This patch adds a check for the validity of HP widget before issuing
any verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_realtek.c

index 148734d16132cfc5b16a3a4ae01e303a9a694e2d..ff20048504b6484057e4a5464809c52773d7594e 100644 (file)
@@ -965,6 +965,8 @@ static void alc_automute_pin(struct hda_codec *codec)
        unsigned int nid = spec->autocfg.hp_pins[0];
        int i;
 
+       if (!nid)
+               return;
        pincap = snd_hda_query_pin_caps(codec, nid);
        if (pincap & AC_PINCAP_TRIG_REQ) /* need trigger? */
                snd_hda_codec_read(codec, nid, 0, AC_VERB_SET_PIN_SENSE, 0);