Enable MIPI display on i.MX6DL

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

Enable MIPI display on i.MX6DL

跳至解决方案
1,782 次查看
tonioch
Contributor III

Hello everyone,

I'm trying to enable the MIPI display (DSI) on my board and I've encountered some problems.

I tried to modify the file imx6qdl-sabresd.dtsi and set the status of mxcfb3 and lcd to okay but it didn't work neither:

mxcfb3: fb@2 {

        compatible = "fsl,mxc_sdc_fb";

        disp_dev = "lcd";

        interface_pix_fmt = "RGB565";

        mode_str ="CLAA-WVGA";

        default_bpp = <16>;

        int_clk = <0>;

        late_init = <0>;

        status = "okay";

    };

lcd@0 {

        compatible = "fsl,lcd";

        ipu_id = <0>;

        disp_id = <0>;

        default_ifmt = "RGB565";

        pinctrl-names = "default";

        pinctrl-0 = <&pinctrl_ipu1_1>;

        status = "okay";

    };

I've got the following message when I'm booting the card with the image core-image-minimal:

mxc_mipi_dsi 21e0000.mipi: i.MX MIPI DSI driver probed

MIPI DSI driver module loaded

mxc_sdc_fb fb.32: register mxc display driver lcd

mxc_sdc_fb fb.32: ipu0-di0 already in use

mxc_sdc_fb: probe of fb.32 failed with error -16

I've also tried to change the disp_id of "&mipi_dsi" without success.

Anybody knows how to solve this?

Regards,

Antoine

标记 (3)
0 项奖励
1 解答
552 次查看
tonioch
Contributor III

I've found the answer, to enable the MIPI display, you have to disable the ldb display and change the disp_id and framebuffer of mipi_dsi on the imx6qdl-sabresd.dtsi file:

Here's my configuration in order to enable the mipi display, hope that will help you.

mxcfb1: fb@0 {

        compatible = "fsl,mxc_sdc_fb";

        disp_dev = "mipi_dsi";

        interface_pix_fmt = "RGB565";

        mode_str ="TRULY-WVGA";

        default_bpp = <16>;

        int_clk = <0>;

        late_init = <0>;

        status = "okay";

    };

lcd@0 {

        compatible = "fsl,lcd";

        ipu_id = <1>;

        disp_id = <1>;

        default_ifmt = "RGB565";

        pinctrl-names = "default";

        pinctrl-0 = <&pinctrl_ipu1_1>;

        status = "okay";

    };

&ldb {

          ipu_id = <1>;

          disp_id = <1>;

          ext_ref = <1>;

          mode = "sep1";

          sec_ipu_id = <1>;

          sec_disp_id = <0>;

          status = "disabled";

}

&mipi_dsi {

    dev_id = <0>;

    disp_id = <1>;  /* modif */

    lcd_panel = "TRULY-WVGA";

    disp-power-on-supply = <&reg_mipi_dsi_pwr_on>;

    resets = <&mipi_dsi_reset>;

    status = "okay";

};

在原帖中查看解决方案

0 项奖励
1 回复
553 次查看
tonioch
Contributor III

I've found the answer, to enable the MIPI display, you have to disable the ldb display and change the disp_id and framebuffer of mipi_dsi on the imx6qdl-sabresd.dtsi file:

Here's my configuration in order to enable the mipi display, hope that will help you.

mxcfb1: fb@0 {

        compatible = "fsl,mxc_sdc_fb";

        disp_dev = "mipi_dsi";

        interface_pix_fmt = "RGB565";

        mode_str ="TRULY-WVGA";

        default_bpp = <16>;

        int_clk = <0>;

        late_init = <0>;

        status = "okay";

    };

lcd@0 {

        compatible = "fsl,lcd";

        ipu_id = <1>;

        disp_id = <1>;

        default_ifmt = "RGB565";

        pinctrl-names = "default";

        pinctrl-0 = <&pinctrl_ipu1_1>;

        status = "okay";

    };

&ldb {

          ipu_id = <1>;

          disp_id = <1>;

          ext_ref = <1>;

          mode = "sep1";

          sec_ipu_id = <1>;

          sec_disp_id = <0>;

          status = "disabled";

}

&mipi_dsi {

    dev_id = <0>;

    disp_id = <1>;  /* modif */

    lcd_panel = "TRULY-WVGA";

    disp-power-on-supply = <&reg_mipi_dsi_pwr_on>;

    resets = <&mipi_dsi_reset>;

    status = "okay";

};

0 项奖励