Hello,
I am trying to develop a bridge driver for a Serializer (DSI Peripheral)
that has two DSI Ports with the primary control bus being I2C. The host is
MediaTek MT2172 SoC (Compatible with MT8173). I defined the device tree
referring to example 5 in mipi-dsi-bus[1].

However the configuration does not work. The issue I am facing is that
drm_bridge_attach returns EBUSY for the second DSI (dsi1). This is because
the bridge is already attached to another device (dsi0). This seems to be
inline with the concept of crtc --> encoder --> bridge -> connector. i.e.
there is 1-1 relationship. But seems contradictory to the device tree
layout.

I looked up all the existing examples but none seemed to match my use case.
I considered the following options

1) Modify drm_bridge to keep up to n (<= 4) downstream devices. The idea is
to have something like the following ( please excuse the representation)

crtc1 --> encoder1 -->\                         / - - >connector1
                                    \   -> bridge - >/
                                    /                       \
crtc2 --> encoder2 -->/                         \ - - >connector2

The issue with this approach is, it is plainly incorrect based on my
understanding

2) Define a second bridge in the device tree with may be a dummy <reg> and
connect the endpoint of dsi1_out to an endpoint within this bridge. This
seems counter-intuitive as actually there is just one bridge device.

I am personally leaning towards approach 1. Any suggestions? Any examples
that you can point me to?

Thanks,
Sriram

[1]
https://www.kernel.org/doc/Documentation/devicetree/bindings/display/mipi-dsi-bus.txt
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to