/**
* intel_connector_update_modes - update connector from edid
* @connector: DRM connector device to use
- * @edid: previously read EDID information
+ * @drm_edid: previously read EDID information
*/
int intel_connector_update_modes(struct drm_connector *connector,
- struct edid *edid)
+ const struct drm_edid *drm_edid)
{
int ret;
- drm_connector_update_edid_property(connector, edid);
- ret = drm_add_edid_modes(connector, edid);
+ drm_edid_connector_update(connector, drm_edid);
+ ret = drm_edid_connector_add_modes(connector);
return ret;
}
int intel_ddc_get_modes(struct drm_connector *connector,
struct i2c_adapter *adapter)
{
- struct edid *edid;
+ const struct drm_edid *drm_edid;
int ret;
- edid = drm_get_edid(connector, adapter);
- if (!edid)
+ drm_edid = drm_edid_read_ddc(connector, adapter);
+ if (!drm_edid)
return 0;
- ret = intel_connector_update_modes(connector, edid);
- kfree(edid);
+ ret = intel_connector_update_modes(connector, drm_edid);
+ drm_edid_free(drm_edid);
return ret;
}