[PATCH v5 4/4] drm/tilcdc: Add drm bridge support for attaching drm bridge drivers
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Tue Nov 29 20:27:37 UTC 2016
Hi Jyri,
On Tuesday 29 Nov 2016 22:18:56 Jyri Sarha wrote:
> On 11/25/16 11:02, Jyri Sarha wrote:
> > -void tilcdc_remove_external_encoders(struct drm_device *dev)
> > +void tilcdc_remove_external_device(struct drm_device *dev)
> > {
> > struct tilcdc_drm_private *priv = dev->dev_private;
> > - int i;
> >
> > /* Restore the original helper functions, if any. */
> > - for (i = 0; i < priv->num_connectors; i++)
> > - if (IS_ERR(priv->connector_funcs[i]))
> > - drm_connector_helper_add(priv->connectors[i], NULL);
> > - else if (priv->connector_funcs[i])
> > - drm_connector_helper_add(priv->connectors[i],
> > - priv->connector_funcs[i]);
> > + if (IS_ERR(priv->connector_funcs))
> > + drm_connector_helper_add(priv->external_connector, NULL);
> > + else if (priv->connector_funcs)
> > + drm_connector_helper_add(priv->external_connector,
> > + priv->connector_funcs);
>
> I still need to add:
> +
> + if (priv->external_encoder && priv->external_encoder->bridge)
> + drm_bridge_detach(priv->external_encoder->bridge);
"drm: bridge: Detach bridge from encoder at encoder cleanup time" :-)
> > +}
>
> ... and reorder the tilcdc_fini() a bit. I need to put
> tilcdc_remove_external_device() before drm_mode_config_cleanup()
> for drm_bridge_detach() to be called before whole mode config is teared
> apart.
>
> There is also a bug in tearing down drm debugfs that had to be fixed
> before I got module unload and reload to work properly. I'll send a
> patch shortly.
--
Regards,
Laurent Pinchart
More information about the dri-devel
mailing list