Hi Laurent. On Thu, Apr 09, 2020 at 03:46:07AM +0300, Laurent Pinchart wrote: > To prepare for the implementation of the DRM bridge connector > operations, move EDID read out of adv7511_get_modes() to a separate > function. > > Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@xxxxxxxxxxxxxxxx> The code do not check if drm_do_get_edid() return NULL. But all functions called with the edid seems to handle a NULL edid well. So thats OK. Acked-by: Sam Ravnborg <sam@xxxxxxxxxxxx> > --- > drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 23 ++++++++++++++------ > 1 file changed, 16 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > index 87b58c1acff4..58d02e92b6b9 100644 > --- a/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > +++ b/drivers/gpu/drm/bridge/adv7511/adv7511_drv.c > @@ -589,11 +589,10 @@ static int adv7511_get_edid_block(void *data, u8 *buf, unsigned int block, > * ADV75xx helpers > */ > > -static int adv7511_get_modes(struct adv7511 *adv7511, > - struct drm_connector *connector) > +static struct edid *adv7511_get_edid(struct adv7511 *adv7511, > + struct drm_connector *connector) > { > struct edid *edid; > - unsigned int count; > > /* Reading the EDID only works if the device is powered */ > if (!adv7511->powered) { > @@ -612,15 +611,25 @@ static int adv7511_get_modes(struct adv7511 *adv7511, > if (!adv7511->powered) > __adv7511_power_off(adv7511); > > - > - drm_connector_update_edid_property(connector, edid); > - count = drm_add_edid_modes(connector, edid); > - > adv7511_set_config_csc(adv7511, connector, adv7511->rgb, > drm_detect_hdmi_monitor(edid)); > > cec_s_phys_addr_from_edid(adv7511->cec_adap, edid); > > + return edid; > +} > + > +static int adv7511_get_modes(struct adv7511 *adv7511, > + struct drm_connector *connector) > +{ > + struct edid *edid; > + unsigned int count; > + > + edid = adv7511_get_edid(adv7511, connector); > + > + drm_connector_update_edid_property(connector, edid); > + count = drm_add_edid_modes(connector, edid); > + > kfree(edid); > > return count; > -- > Regards, > > Laurent Pinchart > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel