AnsweredAssumed Answered

How do I configure a 320x240 LCD in the Device Tree for i.MX6 Solo?

Question asked by Nate Sigrist on May 25, 2015
Latest reply on Dec 14, 2017 by Pedro Ruiz Diaz

So I'm lazy, or I'm hoping to benefit from kernel changes and maintenance.  It's confusing as to what the correct way to define an LCD in the device tree for Linux.  I've read the binding documentation and managed to run `fbset' to change the resolution to 320x240 along with guessing the timings.  However, this is NOT clean and gives bad LCD flicker on startup.  Also, I am still not getting the right timing settings.

 

I feel like I am missing something simple.  I am using Hantronic HDA350-2S LCD panel.

 

Is there a way to do something like the following but ALSO with SPI?

 

&lcdif {

    compatible = "fsl,imx6dl-lcdif";

    pinctrl-names = "default";

    pinctrl-0 = <&pinctrl_lcdif_dat_0

                 &pinctrl_lcdif_ctrl_0>;

    lcd-supply = <&reg_lcd_3v3>;

    display = <&display_conf>;

    status = "okay";

 

    display_conf: display-0 {

        bits-per-pixel = <24>;

        bus-width = <24>;

 

        display-timings {

            native-mode = <&timing0>;

            timing0: timing0 {

            clock-frequency = <6500000>;

            hactive = <320>;

            vactive = <240>;

            hback-porch = <68>;

            hfront-porch = <20>;

            vback-porch = <18>;

            vfront-porch = <4>;

            hsync-len = <10>;

            vsync-len = <10>;

            hsync-active = <0>;

            vsync-active = <0>;

            de-active = <1>;

            pixelclk-active = <0>;

        };

    };

};

 

Outcomes