ALSA: hda/hdmi - consider eld_valid also in sync_eld_via_acomp()
authorJaroslav Kysela <perex@perex.cz>
Thu, 13 Jun 2019 13:09:01 +0000 (15:09 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 13 Jun 2019 13:51:26 +0000 (15:51 +0200)
In the commit 7f641e26a6df9269cb25dd7a4b0a91d6586ed441 (ALSA: hda/hdmi
- Consider eld_valid when reporting jack event) the eld_valid check was
added for the jack event reports. Do the same in sync_eld_via_acomp()
function. Apparently, it is required for the NVIDIA proprietary driver
(monitor presence reported first, but ELD is available later).

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c

index 0c61c05503f5ee61c551c38b80556582ec7dca6e..b522314ec5bed158d3a02b59fb24272885db885a 100644 (file)
@@ -1627,7 +1627,8 @@ static void sync_eld_via_acomp(struct hda_codec *codec,
        if (jack == NULL)
                goto unlock;
        snd_jack_report(jack,
-                       eld->monitor_present ? SND_JACK_AVOUT : 0);
+                       (eld->monitor_present && eld->eld_valid) ?
+                               SND_JACK_AVOUT : 0);
  unlock:
        mutex_unlock(&per_pin->lock);
 }