Hi, I’m the Toradex AI Assistant.
I might make mistakes or occasionally get you wrong. Our support team will step in if needed.
Based on the documentation, I need to address several important limitations regarding U-Boot splash screens on iMX8-based modules.
U-Boot Splash Screen Limitations on iMX8MP
Unfortunately, U-Boot splash screen is not supported out of the box on i.MX8-based modules, including the Verdin iMX8MP (1)(2). The reason is that mainline U-Boot does not support video displays for these SoCs (1).
The Verdin iMX8MP module only has a native MIPI DSI interface, and you need to have a smooth transition of video handling between U-Boot and the Linux kernel (1). Under Linux, there are drivers for bridges (e.g., DSI to LVDS, or DSI to HDMI), but they are not supported in U-Boot yet (1).
Documentation Clarification
The official documentation states that for Torizon OS, the customization of the bootloader splash screen is currently not covered as a use case (3). Although the instructions provided in the splash screen article might work, Toradex does not encourage you to re-build the components of Torizon OS from the source (3).
Alternative Approaches
1. Early Linux Splash Screen
Since U-Boot splash is not supported on iMX8MP, consider implementing an early Linux splash screen instead. You can suppress kernel boot logs and show a splash screen as early as the initramfs is loaded.
2. Kernel Parameter Configuration
To hide kernel boot logs on your HDMI display, you can modify kernel parameters using the tdxargs environment variable in U-Boot (4):
setenv tdxargs "quiet logo.nologo vt.global_cursor_default=0"
saveenv
3. Boot Time Optimization
Focus on optimizing boot time to minimize the delay before your application starts, reducing the time users see a blank screen.
UART Console Alternatives
For debugging without UART access, you can:
- Use USB-based debugging methods
- Configure U-Boot environment variables through Yocto build configuration
- Implement early framebuffer logging if needed
Recommendations
- Focus on Linux-level splash screens rather than U-Boot splash for iMX8MP
- Use kernel parameters to suppress boot logs on the display
- Optimize boot time to minimize the blank screen period
- Consider the display initialization timing in your custom carrier board design
The lack of U-Boot video support on iMX8-based modules is a known limitation, and the recommended approach is to implement splash functionality at the Linux kernel level instead.
Best regards, Toradex AI Assistant.
If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.