Colibri imx7d set touch display resolution

Hello,

we are using a Colibri imx7d SoM together with a capacitive touch display. Display driver in Linux kernel is ST1633. I have the following display definition in the device tree. Display resolution is accordingly 480x272, which is equivalent to the hardware specification.

I would like to set the resolution in Linux to 480x270. However, neither changing the “vactive” nor the “vback-porch” settings seems to have any effect on the usable display dimensions in Linux.
I kept the “vidargs” kernel parameter empty, or set it according to the description here ( Display Output, Resolution and Timings (Linux) | Toradex Developer Center ), but cannot observe any effect either.

Would you have an advice how the display resolution can be configured?
Many thanks, Otmar

&lcdif {
	display = <&display0>;
	status = "okay";

	display0: lcd-display {
		bits-per-pixel = <32>;
		bus-width = <18>;

		display-timings {
			native-mode = <&timing_hexagon>;

			/* Standard VGA timing */
			timing_hexagon: 480x272 {
				clock-frequency = <9000000>;
				hactive = <480>;
				vactive = <272>;
				hback-porch = <44>;
				hfront-porch = <8>;
				vback-porch = <14>;
				vfront-porch = <8>;
				hsync-len = <4>;
				vsync-len = <4>;

				de-active = <1>;
				hsync-active = <0>;
				vsync-active = <0>;
				pixelclk-active = <0>;
			};
		};
	};
};

Are you trying to change display resolution (how picture get displayed on screen) or trying to to do touch calibration?

Hello Alex,

I would like to change the display resolution. Ideally, a 480x270 image would exactly fill the screen - no clipping, no scaling, no unoccupied lines.
I was hoping this is possible by changing the configuration in the device tree accordingly.

Best regards,
Otmar

Hello @Otmar@hexagon ,

If I understood you correctly, you would like to change the display resolution to 480x270. And the current resolution is 480x272?!
But also, in your display tree you have set the resolution to 480x272.
I am not sure if I understand your question correctly.

Can you please explain your query in more detail!

Best Regards,

Janani.

Hello Janani,

the display supports a resolution of 480x272. I would like to change the resolution that is used by Linux to 480x270. To achieve that I modified the values in the devicetree. For instance, I set vactive = <270>; However, that appeared to have no effect - Linux still uses a resolution of 480x272. Likewise, i set vback-porch = <16>; assuming it would use 2 more lines as black bar at the bottom of the screen. But again, Linux uses 480x272 pixels.

So my question is: how can I configure the display resolution for Linux?

Many thanks,
Otmar

Hello @Otmar@hexagon ,

Could you please tell which BSP / kernel you are using?

BR, Janani

Hello Janani,

I’m using the kernel version 4.14-2.3
BSP version, I believe, is 3.0. Though I’m not sure where exactly to verify this number.

Best regards,
Otmar

Hello @Otmar@hexagon ,

You can find this by uname -a. Could you also send the output of cat /etc/issue?

Best Regards,
Janani

Hello Janani,

here is the output form the device:

root@colibri-imx7-emmc:~# uname -a
Linux colibri-imx7-emmc 4.14.170-3.0.4+gbaa6c24 #1 SMP Thu Feb 25 12:59:11 UTC 2021 armv7l GNU/Linux

root@colibri-imx7-emmc:~# cat /etc/issue
TDX X11 2.6-snapshot \n \l

I guess this means BSP version is 2.6.

Best regards,
Otmar

Hello @Otmar@hexagon ,

Could you please share the complete output of cat /etc/issue. It will look something like :

 TDX X11 2.6-snapshot \n \l
 Apalis-iMX6_Console-Image 3.0b4 20200821

And to be sure, did you also compile your device tree again using make command and reboot the module?

Best Regards,
Janani

Hello Janani,

it turned out that when I set vactive to the desired value and at the same time modify vfront-porch and vback-porch accordingly, the display uses the resolution as defined in the device tree.

Thank you for your time looking into this, and please consider the issue resolved.

Many thanks, Otmar

Hello @Otmar@hexagon

Glad you found out your solution!
Thank you for your feedback.

Best Regards,
Janani