LVDS Display Support for Custom Board LDB Node of the Device Tree

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LVDS Display Support for Custom Board LDB Node of the Device Tree

582 Views
Wobaffet
Senior Contributor I

Hello,

I am a little confused with the internal dsi to lvds bridge on the imx8mp device tree configuration. On the fsl,ldb.yaml example is like below:

 

    #include <dt-bindings/clock/imx8mp-clock.h>

    blk-ctrl {
        #address-cells = <1>;
        #size-cells = <1>;

        bridge@5c {
            compatible = "fsl,imx8mp-ldb";
            clocks = <&clk IMX8MP_CLK_MEDIA_LDB>;
            clock-names = "ldb";
            reg = <0x5c 0x4>, <0x128 0x4>;
            reg-names = "ldb", "lvds";

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

                port@0 {
                    reg = <0>;

                    ldb_from_lcdif2: endpoint {
                        remote-endpoint = <&lcdif2_to_ldb>;
                    };
                };

                port@1 {
                    reg = <1>;

                    ldb_lvds_ch0: endpoint {
                        remote-endpoint = <&ldb_to_lvdsx4panel>;
                    };
                };

                port@2 {
                    reg = <2>;

                    ldb_lvds_ch1: endpoint {
                    };
                };
            };
        };
    };

 

ldb node for the evk is like below:

 

ldb: ldb@32ec005c {
                                #address-cells = <1>;
                                #size-cells = <0>;
                                compatible = "fsl,imx8mp-ldb";
                                clocks = <&clk IMX8MP_CLK_MEDIA_LDB_ROOT>;
                                clock-names = "ldb";
                                assigned-clocks = <&clk IMX8MP_CLK_MEDIA_LDB>;
                                assigned-clock-parents = <&clk IMX8MP_VIDEO_PLL1_OUT>;
                                gpr = <&media_blk_ctrl>;
                                power-domains = <&pgc_mediamix>;
                                status = "disabled";

                                lvds-channel@0 {
                                        #address-cells = <1>;
                                        #size-cells = <0>;
                                        reg = <0>;
                                        phys = <&ldb_phy1>;
                                        phy-names = "ldb_phy";
                                        status = "disabled";

                                        port@0 {
                                                reg = <0>;

                                                ldb_ch0: endpoint {
                                                        remote-endpoint = <&lcdif2_disp_ldb_ch0>;
                                                };
                                        };
                                };

                                lvds-channel@1 {
                                        #address-cells = <1>;
                                        #size-cells = <0>;
                                        reg = <1>;
                                        phys = <&ldb_phy2>;
                                        phy-names = "ldb_phy";
                                        status = "disabled";

                                        port@0 {
                                                reg = <0>;

                                                ldb_ch1: endpoint {
                                                        remote-endpoint = <&lcdif2_disp_ldb_ch1>;
                                                };
                                        };
                                };

 

  • In this context are lvds-channel@1  and lvds-channel@0 are necessary and make a difference or both configurations are just like the same?

Thank you in advance!

Best Regards!

0 Kudos
Reply
3 Replies

547 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

They are the same, but is needed it if you have the plan to use two lvds.

Regards

0 Kudos
Reply

543 Views
Wobaffet
Senior Contributor I

Hello, thank you for your answer.

  • I'll be using lvds display directly connected to the mpu, so I should be using lcdif2 which  points to the ldb, am I correct?
  • If so do I need to make any additional changes to the evk bsp other than DT updates to be able to use an LVDS display with my custom board. Any changes  required with the clocks or kernel menuconfig?
  • Our LPDDR4 tested and working but we weren't able to bring up the lvds display yet. we are trying to port our lvds display with the panel simple driver with provided porch settings on the DT. But nothing yet. Any advice?

Thank you in advance!

0 Kudos
Reply

552 Views
Wobaffet
Senior Contributor I

reminder

0 Kudos
Reply