From: marius vlad <marius.c.v...@intel.com>

Make a copy of drm_property_blob data for user-supplied EDID blobs.

Signed-off-by: Abdiel Janulgue <abdiel.janul...@linux.intel.com>
Signed-off-by: Marius Vlad <marius.c.v...@intel.com>
---
 drivers/gpu/drm/i915/intel_hdmi.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_hdmi.c 
b/drivers/gpu/drm/i915/intel_hdmi.c
index a580de8..76b8023 100644
--- a/drivers/gpu/drm/i915/intel_hdmi.c
+++ b/drivers/gpu/drm/i915/intel_hdmi.c
@@ -1463,6 +1463,16 @@ intel_hdmi_set_edid(struct drm_connector *connector)
                            intel_gmbus_get_adapter(dev_priv,
                            intel_hdmi->ddc_bus));
 
+       /*
+        * Use the user-supplied EDID blob in case we don't have an
+        * EDID from the display.
+        */
+       if (!edid && connector->override_edid) {
+               edid = kmemdup(connector->edid_blob_ptr->data,
+                              connector->edid_blob_ptr->length,
+                              GFP_KERNEL);
+       }
+
        intel_hdmi_dp_dual_mode_detect(connector, edid != NULL);
 
        intel_display_power_put(dev_priv, POWER_DOMAIN_GMBUS);
-- 
2.7.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to