Hi, I’m the Toradex AI Assistant.
I might make mistakes or occasionally get you wrong. Our support team will step in if needed.
I can confirm the information provided in that previous response regarding the 24bpp/32bpp framebuffer limitation on Colibri iMX6 with imx-drm and Linux 6.x.
Official Documentation Confirms the Limitation
The official Toradex documentation for i.MX 6 Based Modules states that the framebuffer depth defaults to 16 bits per pixel(1). Specifically, when configuring display output:
<Framebuffer Depth> if omitted is set to 16 bits per pixel in device trees(1)
- To achieve higher color depth, you must explicitly use
bpp=32 if you want a higher color depth(1)
- However, the documentation notes that “while bpp=24 is legal some accelerated drivers stop working correctly (e.g. the OpenGL ES driver with framebuffer backend)”(1)
Hardware vs. Driver Limitation
The hardware itself does support 24-bit color output. According to the Colibri iMX6ULL datasheet, the parallel LCD interface supports:
- Up to 24-bit color per pixel(2)
- Only the 18-bit mode is ensured to be compatible with other Colibri modules(2)
- The recommendation is to use the LCD interface only in 18-bit mode for compatibility(2)
Community Experience Confirms the Issue
The community forum discussions support this limitation. Users have reported that despite configuring 24-bit hardware wiring and proper device tree settings, the imx-drm driver consistently exposes only 16bpp framebuffers(3). The limitation appears to be in the kernel driver implementation rather than hardware capabilities(3).
Workaround Options
The official documentation suggests using bpp=32 in the kernel command line for higher color depth(1):
video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32
(1)
However, this comes with the caveat that some accelerated drivers may not function correctly with 24bpp configurations(1).
Conclusion
The previous response accurately reflects the current state: the imx-drm driver limitation is real, and achieving true 24bpp/32bpp framebuffer output requires either kernel modifications or accepting the compatibility limitations that come with forcing higher bit depths.
Best regards,
Toradex AI Assistant.
Did you like my answer?

If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.