Hello Sudarshan,

On Thu Mar 12, 2026 at 5:37 AM CET, Sudarshan Shetty wrote:
> Add a new optional device tree property `ti,dual-link-video-mode`
> to indicate that the bridge should configure the device for
> dual-link LVDS video mode.
>
> In dual-link configurations, some panels require the horizontal
> timing parameters to be adjusted before programming them into
> the device. In such cases, the horizontal timing values must be
> divided by two when operating in dual-link mode.
>
> Signed-off-by: Sudarshan Shetty <[email protected]>

This is not needed. Dual link mode is already implied by the presence of
port@2 and port@3.

Also, the driver implements that already, and handles even/odd pixel swap
as well:

        ctx->lvds_dual_link = false;
        ctx->lvds_dual_link_even_odd_swap = false;
        if (model != MODEL_SN65DSI83) {
                struct device_node *port2, *port3;
                int dual_link;

                port2 = of_graph_get_port_by_id(dev->of_node, 2);
                port3 = of_graph_get_port_by_id(dev->of_node, 3);
                dual_link = drm_of_lvds_get_dual_link_pixel_order(port2, port3);
                of_node_put(port2);
                of_node_put(port3);

                if (dual_link == DRM_LVDS_DUAL_LINK_ODD_EVEN_PIXELS) {
                        ctx->lvds_dual_link = true;
                        /* Odd pixels to LVDS Channel A, even pixels to B */
                        ctx->lvds_dual_link_even_odd_swap = false;
                } else if (dual_link == DRM_LVDS_DUAL_LINK_EVEN_ODD_PIXELS) {
                        ctx->lvds_dual_link = true;
                        /* Even pixels to LVDS Channel A, odd pixels to B */
                        ctx->lvds_dual_link_even_odd_swap = true;
                }
        }

(https://elixir.bootlin.com/linux/v7.0-rc3/source/drivers/gpu/drm/bridge/ti-sn65dsi83.c#L895-L916)

Luca

--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Reply via email to