This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SN65DSI86: Interfacing MIPI DSI,EDP and TUSB546A-DCI DP ALT

Part Number: SN65DSI86

Tool/software:

I am working on imx8mp need to interface MIPI DSI to EDP and EDP to the TSUSB546A . What are the properties that needed to be added in the Devicetree Configuration. In between we are using a PD controller so the sn65dsi86 out need to be connected with PD controller or with the TSUSB546.

  • Hello Cyriac,

    I'm not quiet sure I fully understand your question? Are you having trouble bringing up the SN65DSI86 chip? I don't fully understand what device tree config you are referencing to?

    Here is a reference design and App note for this SN65DSI86 EVM.

    https://www.ti.com/tool/SN65DSI86EVM

    https://www.ti.com/lit/ug/sllu204/sllu204.pdf?ts=1752010759814&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FSN65DSI86EVM

    https://www.ti.com/lit/an/slla343/slla343.pdf?ts=1752010758260&ref_url=https%253A%252F%252Fwww.ti.com%252Ftool%252FSN65DSI86EVM

    - Fadi A.

  • The issue i am facing is that i am not able to bridge the sn65dsi86 with mipi dsi

    &i2c2 {
    clock-frequency = <100000>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_i2c2>;
    status = "okay";
    sn65dsi86_bridge: sn65dsi86@2c{
    compatible = "ti,sn65dsi86";
    reg = <0x2c>;
    status ="okay";

    enable-gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>;

    vccio-supply = <&vcc_1v8>;
    vpll-supply = <&vcc_1v8>;
    vcca-supply = <&vcc_1v2>;
    vcc-supply = <&vcc_1v2>;


    ports{
    #address-cells = <1>;
    #size-cells = <0>;
    port@0 {
    reg = <0>;

    edp_bridge_in: endpoint {
    remote-endpoint = <&dsi_out>;
    };
    };
    port@1 {
    reg = <1>;

    edp_bridge_out: endpoint {
    remote-endpoint = <&panel_in>;
    };
    };
    };
    };
    &mipi_dsi {
    status = "okay";

    port@1 {
    dsi_out: endpoint {
    remote-endpoint = <&edp_bridge_in>;
    attach_bridge;
    };
    };
    };
    This is my devicetree files
    i am getting the error like
    dmesg | grep -1 drm
    [ 4.473224] imx-drm display-subsystem: bound imx-lcdifv3-crtc.0 (ops lcdifv3_crtc_ops)
    [ 4.481222] imx-drm display-subsystem: bound imx-lcdifv3-crtc.1 (ops lcdifv3_crtc_ops)
    [ 4.489203] imx-drm display-subsystem: bound imx-lcdifv3-crtc.2 (ops lcdifv3_crtc_ops)
    [ 4.497299] imx_sec_dsim_drv 32e60000.mipi_dsi: version number is 0x1060200
    [ 4.504304] [drm:drm_bridge_attach] *ERROR* failed to attach bridge /soc@0/bus@32c00000/mipi_dsi@32e60000 to encoder DSI-40: -19
    [ 4.515896] imx_sec_dsim_drv 32e60000.mipi_dsi: Failed to attach bridge: 32e60000.mipi_dsi
    [ 4.524166] imx_sec_dsim_drv 32e60000.mipi_dsi: failed to bind sec dsim bridge: -19
    [ 4.531850] imx-drm display-subsystem: bound 32e60000.mipi_dsi (ops imx_sec_dsim_ops)
    [ 4.539718] imx-drm display-subsystem: bound 32fd8000.hdmi (ops dw_hdmi_imx_ops)
    [ 4.547983] [drm] Initialized imx-drm 1.0.0 20120507 for display-subsystem on minor 1
    [ 4.555875] imx-drm display-subsystem: [drm] Cannot find any crtc or sizes
  • Hi Cyriac,

    As a first step, have you verified that the DP/EDP output to the display panel is working? You can set the DSI86 device for test pattern mode with display timings and eDP/DP settings to get a generated pattern on the display. This does not use DSI input, so this will verify that the DP output to panel is working.

    If that is verified, you can then use the same timings and set up for DSI input video.
    To program the device, please use the "8.4.2 Power-Up Sequence" steps. This explains the DSI settings and programming sequence after power-up.

    You can use this calculator tool to generate the register writes required to program the device. Please enter the DSI, DP and display timing settings based on your application.
    You can find the calculator in this E2E thread: https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1382976/faq-sn65dsi8x-programming-tools

    If you already have a programming method, you can use the calculator tool to verify that all the register writes match based on the configuration.


    Best regards,
    Ikram

  • As a first step, have you verified that the DP/EDP output to the display panel is working? You can set the DSI86 device for test pattern mode with display timings and eDP/DP settings to get a generated pattern on the display. This does not use DSI input, so this will verify that the DP output to panel is working.

    How to add the timing parameters in edp node.

  • Hi Cyriac,

    If you open the Calculator tool excel file, there is a READ ME page that explains the steps. 

    You can find the calculator in this E2E thread: https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1382976/faq-sn65dsi8x-programming-tools

    For DP/eDP mode settings you should also refer to the "8.4.2 Power-Up Sequence" from the datasheet. It mentions the steps for ASSR or no ASSR.
    Please also make sure the DSI settings and timings follow this sequence.

    Best regards,
    Ikram