This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Display splash screen early in the bootloader

The AM335x EVM  on booting up has a black screen on the LCD for a few seconds followed by a tux image and ti image with progress bar. I can enable and disable the two. I have disabled the tux boot up logo and want to display a SINGLE splash screen early in the boot loader (to prevent the LCD being black for those few seconds) and animate it while the board boots up. Any resources or pointers on doing so? Where can i learn on how to make a frame buffer animated splash screen to replace the ti logo and progress bar?

Thanks!

  • Hi Siddharth,

    The TI splash screen is generated by psplash, but psplash can only do this much - display a logo + a moving progress bar.

    If you wish to display an animation, it should be possible using a Qt application. Just add your Qt application or a script that would invoke it to your system's runtime configuration. Here is how you can do this:

    Some information: https://www.debian-administration.org/articles/28

    For information on editing the runtime priority levels of boot scripts/applications:

    man update-rc.d

    1. Add the script/application to the /etc/init.d/ directory.
    2. Make it executable.
    3. Update the runtime control with the following command:

    update-rc.d <script_or_application_name> defaults

    This will add the needed symbolic links to the /etc/rc#.d/ (runtime control) directories.

    4. You can remove it with:

    sudo update-rc.d -f <script_or_application_name> remove

    # More info on Debian runlevels: https://wiki.debian.org/RunLevel

    Depending on the runlevel (default is 5), the starting priority of the script/application can be seen inside /etc/rc5.d/. Example:
    S97script_or_application -> ../init.d/script_or_application

    The number 97 means that any other script/app with number below 97 would be executed before this script/application.

    There is also the /etc/rcS.d/ folder which contains boot scripts/applications that are to be run before the ones for the current runlevel (inside /etc/rc5.d/). This is where you will find the S00psplash.sh script. The 00 number means that this is the first script to be executed after INIT has run. You will have to remove this and then add your Qt app/script in its place. Read the man page on update-rc.d, but it should be something like this:

    update-rc.d <app_or_script_name> start 00 S

    All of this, however, happens after the kernel has booted and the INIT has started. I can't help you with displaying animations in U-Boot.

    Best regards,
    Miroslav