Setting display resolution for iMX6ULL 512MB on Linux Reference Multimedia BSP 6

Hi everyone.

I’m using the iMX6ULL 512MB with the Toradex Linux Reference Multimedia (UPSTREAM) 6.1.0 image installed via Easy Installer. I tried to set the display resolution for the Resistive Touch Display 7" Parallel on U-Boot

setenv vidargs video='mxsfb:800x480M-16@60,pixclockpol=1'
saveenv

But didn’t work on BSP 6. This command worked fine on LXDE BSP 2.8 and Linux Reference Multimedia 5.7.

How can I set the display resolution?

Thanks for your help!

System and Hardware:

  • TDX Wayland with XWayland Upstream 6.1.0+build.5 (kirkstone)
  • Colibri-iMX6ULL_Reference-Multimedia-Image-upstream
  • Linux colibri-imx6ull-06823042 6.0.17-6.1.0+git.71e1e02850ab
  • Colibri iMX6ULL 512MB IT V1.1A
  • Aster V1.1B
  • Resistive Touch Display 7" Parallel

Hi @CharlesDias,

This is the driver from the downstream kernel. For the upstream, this isn’t the driver being loaded, that’s why it doesn’t work. I suggest you take a look at the overlays from the 1GB eMMC versions and copy the same settings for your imx6ull-colibri-aster.dts file.

For example, checking the overlays, I could create the following patch:

diff --git a/arch/arm/boot/dts/imx6ull-colibri-aster.dts b/arch/arm/boot/dts/imx6ull-colibri-aster.dts
index d3f2fb7c6c1e..2ec19c7ec1bf 100644
--- a/arch/arm/boot/dts/imx6ull-colibri-aster.dts
+++ b/arch/arm/boot/dts/imx6ull-colibri-aster.dts
@@ -18,3 +18,57 @@ / {
 &atmel_mxt_ts {
    status = "okay";
 };
+
+// Resistive AD7879 touch controller for the 7" display orderable
+// at Toradex.
+
+&ad7879_ts {
+   status = "okay";
+};
+
+&i2c2 {
+   /* Was disabled because ad7879 is a single I2C slave */
+   status = "okay";
+};
+
+// Enable the parallel RGB interface on the Colibri iMX6ULL.
+
+&backlight {
+   status = "okay";
+};
+
+&lcdif {
+   status = "okay";
+};
+
+&panel_dpi {
+   data-mapping = "bgr666";
+   status = "okay";
+};
+
+&pwm4 {
+   status = "okay";
+};
+
+// LT161010 panel with a resolution of 800x480 pixel.
+
+&panel_dpi {
+   compatible = "panel-dpi";
+   status = "okay";
+
+   width-mm = <154>;
+   height-mm = <86>;
+
+   panel-timing {
+       clock-frequency = <33230769>;
+       hactive = <800>;
+       vactive = <480>;
+       hsync-len = <128>;
+       hfront-porch = <40>;
+       hback-porch = <88>;
+       vsync-len = <1>;
+       vfront-porch = <10>;
+       vback-porch = <33>;
+       pixelclk-active = <1>;
+   };
+};

Then you can compile your device tree using Yocto or the linux kernel source v6.0 mainline:

$ make imx6ull-colibri-aster.dtb

Best Regards,
Hiago.

Hi @hfranco.tx. Thanks for your reply!

In this link, the branch related to Kernel version Upstream BSP 6.0.0 for iMX6ULL is master or v6.0. However, when I tried to clone the master or v6.0 branch I got the error message informed that the remote branch not found in upstream origin. Is this branch names right? Because I can clone the branch toradex_5.4.y without problem!

I tried clone the Kernel project by the commands below

git clone -b master git://git.toradex.com/linux-toradex.git

or

git clone -b master git://git.toradex.com/linux-toradex.git

Thanks for your help!

Hi @CharlesDias,

For BSP 6 and Colibri iMX6ULL, the kernel that you will use is the mainline kernel from Linus Torvalds, not our linux Toradex fork. Sorry, I forgot to mention that. Here is the command:

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git -b v6.0

For BSP 6/TC 6 and iMX6/iMX7, all our work is upstream with the Linux source code.
Then, you can apply the patch that I shared.

Best Regards,
Hiago.

1 Like

Thanks a lot, @hfranco.tx!

This solved the problem!