Is there any support in u-boot and/or kernel to display such logo/splash screen when device has connected display to HDMI output on Genio boards?
If no then what are the possibilities to give the user better experience during bootup time when HDMI display only is used?
We found your question very interesting, we have already a year+ working with the Genio 510 for one of our clients project and never tested HDMI output, we have always used it headless.
So we tried connecting our devkit to an external Display and we did not see the splash screen on it, while it was actually showing on the onboard panel that comes with the devkit.
We tried doing a bit of research and it seems like the boot loader might simply be missing HDMI support, therefore it uses the panel as primary display.
These are some relevant links we found from MediaTek’s git repo:
Now, we believe there might be a few different options that could be evaluated as a possible solution for showing users a nice logo on boot and improve their user experience:
Add support to uboot for HDMI. This option might be the hardest to implement, however, it will probably show the fastest boot time.
The linux kernel seems to have a mechanism for showing OS logo as well, see: linux/drivers/video/logo/logo.c at master · torvalds/linux · GitHub
This would be the second best option and an easier one to test since it seems to only require a couple of config variables to be set and having the image where it needs to go.
The easiest to implement could be writing a systemd service and have it show a boot logo on boot. Although this would be by far the easiest solution to implement, it could be the lowest performance one, since it would require boot loader and kernel to be done loading before showing any logos.
Hope those ideas help.
Please keep us posted and don’t hesitate to reach out if you have any other questions or require further help, we would love to give you a hand.
best regards,
Andres
Embedded Software Engineer at ProventusNova
Thank you Andres for all suggestions.
I tried option 2 with kernel logo. To have it on HDMI output it was required to enable following configs in kernel: CONFIG_DRM_MALI_DISPLAY=y CONFIG_DRM_DISPLAY_CONNECTOR=y CONFIG_DRM_MEDIATEK_HDMI=y CONFIG_DRM_MEDIATEK_HDMI_HDCP=y
I think this is good solution when you have always connected display with same resolution (like LCD display), but on HDMI the end user can use whatever display he has. That require small improvements in kernel sources to show splash logo always on screen center.
Another disadvantage of this solution is that it is shown only during kernel initialization. It disappear on weston startup.
So for now I prepared simple systemd service which is a wayland client displaying logo splash until my appliction is ready. I know that it is shown a little late during whole system startup but it makes impression a little better.
I’m looking forward to have splash on HDMI possible in U-Boot.