Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The existing U-Boot STM32 LTDC driver (drivers/video/stm32/stm32_ltdc.c) is used to provide support for displaying a splash screen image on the display. By default, the U-Boot LCD display is configured to support the 480x272 resolution. Only true color (24 bpp) images can be displayed by U-Boot. Format of the splash screen image is "PC bitmap, Windows 3.x format, 480 x 272 x 24".

The default configuration for LCD is defined in the arch/arm/dts/stm32h7-som.dts U-Boot file:

Code Block
&ltdc {
        status = "okay";
        pinctrl-0 = <&ltdc_pins>;
        display-timings {
                timing@0 {
                        clock-frequency = <12000000>;
                        hactive = <480>;
                        vactive = <272>;
.......

1.2. U-Boot Splash Image

The stm32h7-splash-24bpp.bmp splash image stored in board/emcraft/stm32h7-som in the U-Boot source tree is used as the default image to be displayed.

...

The system installation kermit script stm32h7-som-prog.kermit allows to write the splash image to the dedicated UBI volume on the QSPI Flash system partition.

...

  1. From the U-Boot command interface, call the loadb command to load a splash image to SDRAM from the development host via UART using the kermit utility.

  2. From the U-Boot command interface, call the ubi write $loadaddr splash $filesize command to copy splash image from SDRAM to the QSPI NAND Flash.

...

  1. Boot the board to the U-Boot command line. To do so, reset the unit and interrupt the boot sequence by pressing any key on the serial console.

  2. From the U-Boot command monitor, issue the loadb command.

  3. On the development host, exit the terminal application connected to the U-Boot serial console to free UART interface for the kermit utility.

  4. Upload a splash screen image to SDRAM from the development host via UART using the kermit utility:

    Code Block
    $ kermit
    C-Kermit> set line /dev/ttyUSB0
    C-Kermit> set speed 115200
    C-Kermit> set carrier-watch off
    C-Kermit> set flow-control none
    C-Kermit> set prefixing all
    C-Kermit> send stm32h7-splash-24bpp.bmp
    C-Kermit> exit
  5. On the development host, re-connect to the U-Boot serial console with a terminal application.

  6. Issue the ubi write $loadaddr splash $filesize command to copy the splash image from SDRAM to QSPI NAND Flash.

  7. Reboot the target board and validate that the splash screen image is displayed.