AnsweredAssumed Answered

LVDS VGA no image in IMX6Q

Question asked by Carlos Soto on Apr 6, 2015
Latest reply on Apr 14, 2015 by Carlos Soto

Hi,

I'm trying to get output from a custom board based on a Seco QuadMo747-X/i.MX6. The signal comes out from LVDS and then it's converted to VGA. I'm using kernel imx_3.10.53_1.1.0_ga.

 

When I connect my board to a TFT display through the VGA input, sync signals are detected fine (1024x768) but the screen is black, even though I've checked the framebuffer has something, because I've dumped its contents to a PPM file and I see the four penguins.

 

I've set the relevant parts of my DTS like this:

mxcfb1: fb@0 {

            compatible = "fsl,mxc_sdc_fb";

            disp_dev = "ldb";

            interface_pix_fmt = "RGB666";

            default_bpp = <16>;

            int_clk = <0>;

            late_init = <0>;

            status = "okay";

        };

 

        mxcfb2: fb@1 {

            compatible = "fsl,mxc_sdc_fb";

            disp_dev = "ldb";

            interface_pix_fmt = "RGB666";

            default_bpp = <16>;

            int_clk = <0>;

            late_init = <0>;

            status = "okay";

        };

       

        mxcfb3: fb@2 {

            compatible = "fsl,mxc_sdc_fb";

            disp_dev = "hdmi";

            interface_pix_fmt = "RGB24";

            mode_str ="1920x1080M@60";

            default_bpp = <24>;

            int_clk = <0>;

            late_init = <0>;

            status = "disabled";

        };

       

        mxcfb4: fb@3 {

            compatible = "fsl,mxc_sdc_fb";

            disp_dev = "hdmi";

            interface_pix_fmt = "RGB24";

            mode_str ="1920x1080M@60";

            default_bpp = <24>;

            int_clk = <0>;

            late_init = <0>;

            status = "disabled";

        };       

 

And the ldb:

&ldb {

    status = "okay";

 

    lvds-channel@0 {

        fsl,data-mapping = "spwg";

        fsl,data-width = <18>;

        crtc = "ipu1-di0";

        primary;

        status = "okay";

 

        display-timings {

            native-mode = <&timing0>;

            timing0: hsd100pxn1 {

                clock-frequency = <65000000>;

                hactive = <1024>;

                vactive = <768>;

                hback-porch = <220>;

                hfront-porch = <40>;

                vback-porch = <21>;

                vfront-porch = <7>;

                hsync-len = <60>;

                vsync-len = <10>;

            };

        };

    };

 

    lvds-channel@1 {

        fsl,data-mapping = "spwg";

        fsl,data-width = <18>;

        primary;

        crtc = "ipu1-di1";

        status = "okay";

 

        display-timings {

            native-mode = <&timing1>;

            timing1: hsd100pxn1 {

                clock-frequency = <65000000>;

                hactive = <1024>;

                vactive = <768>;

                hback-porch = <220>;

                hfront-porch = <40>;

                vback-porch = <21>;

                vfront-porch = <7>;

                hsync-len = <60>;

                vsync-len = <10>;

            };

        };

    };

};

 

And my bootargs are:

console=ttymxc1,115200 root=/dev/nfs nfsroot=192.168.1.14:/home/cs/nfs_secoimx6 rw nolock,wsize=4096,rsize=4096 ip=192.168.1.18:::255.255.255.0::eth0:off mem=1024M arm_freq=996 video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666


Thanks in advance,

Carlos

Outcomes