/
i.MX 8X Modify LVDS timings

i.MX 8X Modify LVDS timings

Since 3.x kernel version in order to set a different LVDS panel resolution a device tree file modification is required.

The file which should be modified is arch/arm64/boot/dts/imx8qxp-qx8x.dtsi under the kernel root folder, into &ldb1 section, in particular display-timings

<details>
<summary>The default version looks like this (click here)</summary>

&ldb1 { status = "okay"; lvds-channel@0 { fsl,data-mapping = "spwg"; fsl,data-width = <18>; 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>; 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>; }; }; }; };

</details>

Check if the panel is 18 or 24 bit, and change fsl,data-width = <18>; if needed.

As an example here you can find values for some different resolutions

<details>
<summary>800x480 (click here)</summary>

clock-frequency = <33000000>; hactive = <800>; vactive = <480>; hback-porch = <56>; hfront-porch = <50>; vback-porch = <20>; vfront-porch = <53>; hsync-len = <180>; vsync-len = <30>;

</details>

<details>
<summary>800x600 (click here)</summary>

clock-frequency = <40000000>; hactive = <800>; vactive = <600>; hfront-porch = <88>; hback-porch = <72>; hsync-len = <64>; vback-porch = <15>; vfront-porch = <4>; vsync-len = <6>; hsync-active = <2>; vsync-active = <2>;

</details>

<details>
<summary>1024x600 (click here)</summary>

</details>

<details>
<summary>1024x768 (click here)</summary>

</details>

<details>
<summary>1280x800 (click here)</summary>

</details>

<details>
<summary>1368x768 (click here)</summary>

</details>

<details>
<summary>1920x1050 (click here)</summary>

</details>

<details>
<summary>1920x1080 (click here)</summary>

</details>

After saving the changes made into the device tree file, it should be recompiled and transferred to the target system (instructions under Kernel standalone)

Before plugging in the panel, the jumper settings on the conga-QEVAL/Qseven 2.0 should be properly set (X46, X47, X50).
Also is highly recommendable measure the signals on connector X41

  • Pin 16: 1st channel clock

  • Ping 30: 2nd channel clock