[PATCH v2 2/4] drm/sun4i: tcon: Refactor the LVDS and panel probing

Maxime Ripard maxime at cerno.tech
Mon Oct 5 14:18:17 UTC 2020


Hi Chen-Yu,

Sorry for the delay

On Sat, Aug 29, 2020 at 02:43:53PM +0800, Chen-Yu Tsai wrote:
> > +static int sun4i_tcon_register_panel(struct drm_device *drm,
> > +                                    struct sun4i_tcon *tcon)
> > +{
> > +       struct device_node *companion;
> > +       struct device_node *remote;
> > +       struct device *dev = tcon->dev;
> > +       bool has_lvds_alt;
> > +       bool has_lvds_rst;
> > +       int ret;
> > +
> > +       /*
> > +        * If we have an LVDS panel connected to the TCON, we should
> > +        * just probe the LVDS connector. Otherwise, let's just register
> > +        * an RGB panel.
> > +        */
> > +       remote = of_graph_get_remote_node(dev->of_node, 1, 0);
> > +       if (!tcon->quirks->supports_lvds ||
> > +           !of_device_is_compatible(remote, "panel-lvds"))
> > +               return sun4i_rgb_init(drm, tcon);
> 
> Slightly related: IIRC there are a few LVDS panels supported in panel-simple
> so they don't use the panel-lvds compatible. Any idea how to deal with those?

I agree that this is an issue, I'm not entirely sure how to fix it. The
proper fix would be to have multiple output ports, one for each output
type, but given how our current binding looks like I'm not sure how we
could retro-fit that without some horror-looking code.

Maybe we can add a property on the endpoint?

Maxime
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20201005/4ff388a6/attachment-0001.sig>


More information about the dri-devel mailing list