Subject: Re: [RESEND PATCH 1/3] drm/mediatek: mtk_dpi: Rename bridge to next_bridge

From: Boris Brezillon <[email-masked]>
Date: Wed, 1 Jul 2020 13:36:45 +0200

On Wed, 1 Jul 2020 13:23:03 +0200
Boris Brezillon <[email-masked]> wrote:

> On Mon, 18 May 2020 19:39:07 +0200
> Enric Balletbo i Serra <[email-masked]> wrote:
> 
> > This is really a cosmetic change just to make a bit more readable the
> > code after convert the driver to drm_bridge. The bridge variable name
> > will be used by the encoder drm_bridge, and the chained bridge will be
> > named next_bridge.
> > 
> > Signed-off-by: Enric Balletbo i Serra <[email-masked]>
> > Reviewed-by: Chun-Kuang Hu <[email-masked]>
> > ---
> > 
> >  drivers/gpu/drm/mediatek/mtk_dpi.c | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > index 7fbfa95bab09..7112125dc3d1 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c
> > @@ -61,7 +61,7 @@ enum mtk_dpi_out_color_format {
> >  struct mtk_dpi {
> >  	struct mtk_ddp_comp ddp_comp;
> >  	struct drm_encoder encoder;
> > -	struct drm_bridge *bridge;
> > +	struct drm_bridge *next_bridge;  
> 
> Did you consider moving the drm_of_find_panel_or_bridge() call to
> mtk_dpi_bind() so you can get rid of this field?

Nevermind, you need it in patch 2 for the recursive call to
drm_bridge_attach().

> 
> This makes we realize there's no refcounting on bridges, which means
> the bridge can vanish between the drm_of_find_panel_or_bridge() and
> drm_bridge_attach() calls :-/.
> 
> >  	void __iomem *regs;
> >  	struct device *dev;
> >  	struct clk *engine_clk;
> > @@ -607,7 +607,7 @@ static int mtk_dpi_bind(struct device *dev, struct device *master, void *data)
> >  	/* Currently DPI0 is fixed to be driven by OVL1 */
> >  	dpi->encoder.possible_crtcs = BIT(1);
> >  
> > -	ret = drm_bridge_attach(&dpi->encoder, dpi->bridge, NULL, 0);
> > +	ret = drm_bridge_attach(&dpi->encoder, dpi->next_bridge, NULL, 0);
> >  	if (ret) {
> >  		dev_err(dev, "Failed to attach bridge: %d\n", ret);
> >  		goto err_cleanup;
> > @@ -747,11 +747,11 @@ static int mtk_dpi_probe(struct platform_device *pdev)
> >  	}
> >  
> >  	ret = drm_of_find_panel_or_bridge(dev->of_node, 0, 0,
> > -					  NULL, &dpi->bridge);
> > +					  NULL, &dpi->next_bridge);
> >  	if (ret)
> >  		return ret;
> >  
> > -	dev_info(dev, "Found bridge node: %pOF\n", dpi->bridge->of_node);
> > +	dev_info(dev, "Found bridge node: %pOF\n", dpi->next_bridge->of_node);
> >  
> >  	comp_id = mtk_ddp_comp_get_id(dev->of_node, MTK_DPI);
> >  	if (comp_id < 0) {  
> 

_______________________________________________
linux-arm-kernel mailing list
[email-masked]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel