16.04.2020 20:41, Laurent Pinchart пишет:
...
>> + if (output->bridge) {
>> + err = drm_bridge_attach(&output->encoder, output->bridge,
>> + NULL, DRM_BRIDGE_ATTACH_NO_CONNECTOR);
>
> Using DRM_BRIDGE_ATTACH_NO_CONNECTOR is definitely the way to go, but
> please be aware that it will require creating a connector and an encoder
> manually (which I think this driver already does), and using the bridge
> operations to implement the connector operations. I highly recommend
> using the DRM bridge connector helper for this purpose.
Okay, I missed that there is a DRM bridge connector helper. Thank you
very much for the suggestion, I'll switch to the bridge helper in v4.
>> + if (err) {
>> + dev_err(output->dev, "cannot connect bridge: %d\n",
>> + err);
>> + return err;
>> + }
>> + }
>> +
>> if (output->panel) {
>
> May I also recommend switching to the DRM panel bridge helper ? It will
> simplify the code.
Could you please clarify what is the "DRM panel bridge helper"?
I think we won't need any additional helpers after switching to the
bridge connector helper, no?
...
>> + np = of_graph_get_remote_node(rgb->output.bridge->of_node,
>> + panel_port, -1);
>
> This shouldn't be needed, the LVDS codec bridge driver should already
> get the panel and handle it internally. You only need to handle panels
> in this driver when they're connected directly to the RGB input.
Indeed, it won't be needed if we will use the bridge connector helper.
Thank you very much for the clarifications!
_______________________________________________
dri-devel mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/dri-devel