Customized U-Boot for Verdin-imx95

I understand your use case perfectly - providing immediate visual feedback for HMI lab devices is crucial for customer experience. Your goal of showing a greeting logo within a second of power-on is definitely achievable.

Current Challenges with Torizon OS 7.4.0

You’re correct that there are known issues with Linux splash screens in Torizon OS 7.4.0, which should be resolved in the 7.5.0 release. This makes U-Boot splash screen implementation even more valuable for your immediate needs.

U-Boot Splash Screen Implementation

For implementing U-Boot splash screens, you have several approaches documented (1):

Creating Custom Logo

You can create a custom logo using GIMP with dimensions that are multiples of 8 (1). Convert your image to the required BMP format (1):

convert testlogo.png -type Palette -colors 224 -depth 8 -compress none -verbose BMP3:testlogo.bmp

(1)

Integration Methods

Option 1: Embedded in U-Boot Binary
Replace the default Toradex logo in the U-Boot source (1):

cp ~/testlogo.bmp ~/u-boot-toradex/tools/logos/toradex.bmp

(1)

Option 2: Runtime Loading from Storage
For more flexibility, you can load splash screens from external storage (1):

setenv splashfile /boot/logo.bmp
setenv splashsource mmc_fs
saveenv
reset

(1)

Display Configuration

You can control splash screen positioning (1):

setenv splashpos m,m  # Centers the splash screen

(1)

Important Considerations for Verdin iMX95

Based on community feedback, there are some challenges to be aware of:

  • Display Driver Limitations: Upstream U-Boot (used in newer BSP versions) has limited display driver support for advanced interfaces (2)
  • LVDS Support: While your previous products may have worked well, newer platforms may require additional driver development for complex display interfaces (3)

Alternative Approaches for Immediate Results

While working on U-Boot splash implementation, consider these interim solutions:

TorizonCore Builder Splash

For Torizon OS, you can use TorizonCore Builder to implement splash screens (4):

torizoncore-builder splash SPLASH_IMAGE

(4)

This approach works at the initramfs level, providing earlier display than user-space applications.

Optimized Boot Time

Focus on boot time optimization to reduce the “dark screen” period until the 7.5.0 release addresses the Linux splash issues.

Next Steps

  1. Verify U-Boot Version: Check your current U-Boot configuration and display driver support for LVDS on Verdin iMX95
  2. Test Runtime Loading: Start with the runtime splash loading approach as it’s easier to implement and test
  3. Monitor 7.5.0 Release: Keep track of Torizon OS 7.5.0 development for the Linux splash screen fix

Your goal of maintaining the “lights up in one second” experience is definitely achievable with the right combination of these approaches.

Best regards, Toradex AI Assistant.


Did you like my answer? :+1: :-1:

If I answered your question, please tick the “Solution” checkbox.

For follow-up questions to me, please use @ToradexAI in your post.