On Tue, May 14, 2024 at 03:55:16PM +0300, Jani Nikula wrote: > Prefer the struct drm_edid based functions for reading the EDID and > updating the connector. > > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> > > --- > > Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> > Cc: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> > Cc: Maxime Ripard <mripard@xxxxxxxxxx> > Cc: Thomas Zimmermann <tzimmermann@xxxxxxx> > Cc: Shawn Guo <shawnguo@xxxxxxxxxx> > Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > Cc: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx> > Cc: Fabio Estevam <festevam@xxxxxxxxx> > Cc: imx@xxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > --- > drivers/gpu/drm/imx/ipuv3/imx-tve.c | 14 ++++++-------- > 1 file changed, 6 insertions(+), 8 deletions(-) > > diff --git a/drivers/gpu/drm/imx/ipuv3/imx-tve.c b/drivers/gpu/drm/imx/ipuv3/imx-tve.c > index b49bddb85535..29f494bfff67 100644 > --- a/drivers/gpu/drm/imx/ipuv3/imx-tve.c > +++ b/drivers/gpu/drm/imx/ipuv3/imx-tve.c > @@ -201,18 +201,16 @@ static int tve_setup_vga(struct imx_tve *tve) > static int imx_tve_connector_get_modes(struct drm_connector *connector) > { > struct imx_tve *tve = con_to_tve(connector); > - struct edid *edid; > - int ret = 0; > + const struct drm_edid *drm_edid; > + int ret; > > if (!tve->ddc) > return 0; > > - edid = drm_get_edid(connector, tve->ddc); > - if (edid) { > - drm_connector_update_edid_property(connector, edid); > - ret = drm_add_edid_modes(connector, edid); > - kfree(edid); > - } > + drm_edid = drm_edid_read_ddc(connector, tve->ddc); > + drm_edid_connector_update(connector, drm_edid); > + ret = drm_edid_connector_add_modes(connector); > + drm_edid_free(drm_edid); Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> Nit: if you change two last lines, you can drop ret= assignment and use return drm_edid_connector_add_modes(connector). Maybe we shoud add cocci rule for such cases. > > return ret; > } > -- > 2.39.2 > -- With best wishes Dmitry