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

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

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

689 次查看
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 项奖励
回复
3 回复数

654 次查看
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 项奖励
回复

650 次查看
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 项奖励
回复

659 次查看
Wobaffet
Senior Contributor I

reminder

0 项奖励
回复