Commit 02bb7fe2 authored by Lyude Paul's avatar Lyude Paul

drm/nouveau/kms: Move drm_dp_cec_unset_edid() into nouveau_connector_detect()

For whatever reason we currently unset the EDID for DP CEC support when
responding to the connector being unplugged, instead of just doing it in
nouveau_connector_detect() where we set the CEC EDID. This isn't really
needed and could even potentially cause us to forget to unset the EDID
if the connector is removed without a corresponding hpd event, so let's
fix that.
Signed-off-by: default avatarLyude Paul <lyude@redhat.com>
Reviewed-by: default avatarBen Skeggs <bskeggs@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200826182456.322681-12-lyude@redhat.com
parent 8b75e83e
...@@ -633,10 +633,11 @@ nouveau_connector_detect(struct drm_connector *connector, bool force) ...@@ -633,10 +633,11 @@ nouveau_connector_detect(struct drm_connector *connector, bool force)
conn_status = connector_status_connected; conn_status = connector_status_connected;
goto out; goto out;
} }
} }
out: out:
if (!nv_connector->edid)
drm_dp_cec_unset_edid(&nv_connector->aux);
pm_runtime_mark_last_busy(dev->dev); pm_runtime_mark_last_busy(dev->dev);
pm_runtime_put_autosuspend(dev->dev); pm_runtime_put_autosuspend(dev->dev);
...@@ -1174,8 +1175,6 @@ nouveau_connector_hotplug(struct nvif_notify *notify) ...@@ -1174,8 +1175,6 @@ nouveau_connector_hotplug(struct nvif_notify *notify)
return NVIF_NOTIFY_DROP; return NVIF_NOTIFY_DROP;
} }
if (!plugged)
drm_dp_cec_unset_edid(&nv_connector->aux);
NV_DEBUG(drm, "%splugged %s\n", plugged ? "" : "un", name); NV_DEBUG(drm, "%splugged %s\n", plugged ? "" : "un", name);
drm_helper_hpd_irq_event(connector->dev); drm_helper_hpd_irq_event(connector->dev);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment