aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJani Nikula <jani.nikula@intel.com>2017-02-17 10:20:53 -0500
committerJani Nikula <jani.nikula@intel.com>2017-02-21 08:43:04 -0500
commit15f080f08d48af9388142e45a247c8410736178b (patch)
treebec95005deb4ba16eedc925d95959e0ccb28c050
parente9bd0b84f4bb758f8410fba930fc38facc665c40 (diff)
drm/edid: respect connector force for drm_get_edid ddc probe
Skip DDC probe for forced connector status. Don't try to read the EDID if the connector is forced off. Skipping probe for forced on connectors will make more sense when drm_do_get_edid() will handle override and firmware EDIDs. Suggested-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1487344854-18777-4-git-send-email-jani.nikula@intel.com
-rw-r--r--drivers/gpu/drm/drm_edid.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 4bb50e0e7110..e1743ab276dc 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -1428,7 +1428,10 @@ struct edid *drm_get_edid(struct drm_connector *connector,
1428{ 1428{
1429 struct edid *edid; 1429 struct edid *edid;
1430 1430
1431 if (!drm_probe_ddc(adapter)) 1431 if (connector->force == DRM_FORCE_OFF)
1432 return NULL;
1433
1434 if (connector->force == DRM_FORCE_UNSPECIFIED && !drm_probe_ddc(adapter))
1432 return NULL; 1435 return NULL;
1433 1436
1434 edid = drm_do_get_edid(connector, drm_do_probe_ddc_edid, adapter); 1437 edid = drm_do_get_edid(connector, drm_do_probe_ddc_edid, adapter);