24-bit parallel RGB on Colibri iMX6


I have a problem to run parallel RGB interface in 24-bit color mode on Colibri iMX6 module.

This is my “vidargs” uboot variable: ‘video=mxcfb0:dev=lcd,800x480M@60,if=RGB24,bpp=32 video=mxcfb1:off fbmem=8M’.

When I check with digital microscope:

  • correct RGB data signals (bits are transmitted) are from B0 to R1;
  • incorrect signals (no bits transmitted, signal always on high level) are R2…R7.

Is there anything more to change in configuration of uboot / linux, to make it work?

PS. I use custom carrier board with all 24 RGB data signals (primary LCD RGB interface) wired to FPC connector.


This requires you to change the pinmuxing for the additional 6 pins in the device tree.


Thx. I’ll try to customize DT and rebuild the kernel. I’ll write about results after next test.

I’ve made custom DT but when I try to save changed environment in uBoot with command “saveenv” I get result:

Colibri iMX6 # saveenv
Saving Environment to MMC...
Env export buffer too small: 8188, but need 8269
ERROR: Cannot export environment: errno = 12

at common/env_common.c:239/env_export()

What can I do with this error?


I guess you added a lot of variables to the environment, e.g. by using ‘run setupdate’ from our legacy update procedure.

You could reset the environment its default by using ‘env default -a’ and then make your changes. This should lead to an environment which is small enough to fit in the 8k reserved in the eMMC.


It worked. Thx.

It worked - now all RGB lines are sending data. Thx