|
@@ -1396,7 +1396,6 @@ static bool hdmi_present_sense_via_verbs(struct hdmi_spec_per_pin *per_pin,
|
|
|
struct hda_codec *codec = per_pin->codec;
|
|
|
struct hdmi_spec *spec = codec->spec;
|
|
|
struct hdmi_eld *eld = &spec->temp_eld;
|
|
|
- struct hdmi_eld *pin_eld = &per_pin->sink_eld;
|
|
|
hda_nid_t pin_nid = per_pin->pin_nid;
|
|
|
/*
|
|
|
* Always execute a GetPinSense verb here, even when called from
|
|
@@ -1413,17 +1412,15 @@ static bool hdmi_present_sense_via_verbs(struct hdmi_spec_per_pin *per_pin,
|
|
|
present = snd_hda_pin_sense(codec, pin_nid);
|
|
|
|
|
|
mutex_lock(&per_pin->lock);
|
|
|
- pin_eld->monitor_present = !!(present & AC_PINSENSE_PRESENCE);
|
|
|
- eld->monitor_present = pin_eld->monitor_present;
|
|
|
-
|
|
|
- if (pin_eld->monitor_present)
|
|
|
+ eld->monitor_present = !!(present & AC_PINSENSE_PRESENCE);
|
|
|
+ if (eld->monitor_present)
|
|
|
eld->eld_valid = !!(present & AC_PINSENSE_ELDV);
|
|
|
else
|
|
|
eld->eld_valid = false;
|
|
|
|
|
|
codec_dbg(codec,
|
|
|
"HDMI status: Codec=%d Pin=%d Presence_Detect=%d ELD_Valid=%d\n",
|
|
|
- codec->addr, pin_nid, pin_eld->monitor_present, eld->eld_valid);
|
|
|
+ codec->addr, pin_nid, eld->monitor_present, eld->eld_valid);
|
|
|
|
|
|
if (eld->eld_valid) {
|
|
|
if (spec->ops.pin_get_eld(codec, pin_nid, eld->eld_buffer,
|
|
@@ -1443,7 +1440,7 @@ static bool hdmi_present_sense_via_verbs(struct hdmi_spec_per_pin *per_pin,
|
|
|
else
|
|
|
update_eld(codec, per_pin, eld);
|
|
|
|
|
|
- ret = !repoll || !pin_eld->monitor_present || pin_eld->eld_valid;
|
|
|
+ ret = !repoll || !eld->monitor_present || eld->eld_valid;
|
|
|
|
|
|
jack = snd_hda_jack_tbl_get(codec, pin_nid);
|
|
|
if (jack)
|