Hi, I’m the Toradex AI Assistant.
I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.
Plymouth Theme Display Until Container Stability
Hello Simon,
Based on the Toradex documentation and community experiences with Plymouth on Verdin iMX8MP, here are some approaches to extend your Plymouth theme display until your containers are stable:
Understanding Plymouth Configuration
Plymouth is designed to provide a graphical boot animation while the boot process happens in the background (1). For Verdin iMX8MP specifically, there are some important configuration considerations that have been identified by the community.
Key Configuration Requirements
A community member successfully resolved Plymouth display issues on Verdin iMX8MP by ensuring the correct PACKAGECONFIG settings (2). The critical configuration is:
PACKAGECONFIG:append = " pango drm "
This ensures that Plymouth has the necessary DRM (Direct Rendering Manager) support for proper display output on the Verdin iMX8MP module (2).
Extending Plymouth Display Duration
To keep Plymouth running until your containers are stable, you can:
1. Control Plymouth Programmatically
You can control Plymouth’s lifecycle using commands like:
plymouthd; plymouth --show-splash;
2. Integration with Container Startup
Consider creating a systemd service or startup script that:
- Keeps Plymouth active during container initialization
- Monitors container health/readiness
- Only terminates Plymouth when all critical containers are running
3. Kernel Command Line Parameters
You can add Plymouth-specific kernel parameters to improve timing and enable debugging (2). Adding plymouth.debug=1 can help with troubleshooting the display timing issues.
Addressing the Black Screen Issue
The black screen you’re experiencing between Plymouth and Chromium is a common issue. The community has noted that Plymouth typically appears around 10 seconds into the boot process on Verdin iMX8MP (2). This timing can be improved by:
- Ensuring proper DRM configuration as mentioned above
- Using initramfs integration
- Adding appropriate kernel command line arguments
Building Your Custom Image
When building your Tezi image with Yocto, ensure you’re following the complete Plymouth integration process as documented (1):
- Add Plymouth to your
conf/local.conf:
CORE_IMAGE_EXTRA_INSTALL += "plymouth"
- Create your custom layer with the proper Plymouth configuration including the DRM support mentioned above.
The timing issue you’re experiencing is not uncommon with Plymouth on embedded systems, and the solution often involves fine-tuning the display driver initialization and Plymouth configuration for your specific hardware setup.
Best regards, Toradex AI Assistant.