[PATCH 00/23] video: Support a U-Boot logo more easily
Simon Glass
sjg at chromium.org
Fri Nov 19 21:23:44 CET 2021
At present it is possible to show a logo on the display but it requires
some board configuration and an image.
This series aims to make this easier, by showing a logo automatically if
there is a display but no splash screen.
The logo is embedded in U-Boot and takes approximately 7KB of space.
Some fixes to the sandbox display support are provided, to make it more
robust and to allow running tests with different display depths. Support
for 8bpp depths is added, to enable more tests.
This series also includes a lot of improvements to BMP (Windows Bitmap)
support:
- support for drawing to depths other than 16bpp
- tests for the different types of supported BMP images
For theadorable there is a potentially breaking change to consider.
This series also enables a logo to be shown when running coreboot via
qemu, providing a script to help with that.
Simon Glass (23):
sandbox: video: Support 8bpp depth
video: sandbox: Avoid duplicate display windows
console: Avoid serial output before the console is running
video: sandbox: Set a maximum frame-buffer size
sandbox: video: Correct the address of the copy base
sandbox: video: Add BMP tests for 32bpp and 8bpp modes
video: Expand video debugging buffer size
sandbox: Enable support for the gzip command
video: Drop fb_put_byte() el at
video: Move BMP pixel-writing into a function
video: bmp: Update RLE8 support to use the write function
video: Drop the uclass colour map
video: Tidy up 24/32 BMP blitting
video: Add a test for 16bpp BMP files
video: theadorable: Use RGB565 for BMP blitting
video: Drop #ifdefs from video_bmp
video: Convert CONFIG_VIDEO_LOGO to Kconfig
video: Drop VIDEO_LOGO from cfb_console
video: Support showing the U-Boot logo
video: Show the U-Boot logo by default
video: Support virtio devices with the splash screen
x86: coreboot: Support getting a logo from virtio
x86: coreboot: Add a sample script to build a qemu image
.gitattributes | 1 +
README | 1 -
arch/sandbox/cpu/sdl.c | 98 +++++++-
arch/sandbox/include/asm/sdl.h | 7 +
arch/sandbox/include/asm/test.h | 18 ++
board/coreboot/coreboot/coreboot.c | 20 +-
cmd/unzip.c | 4 +-
common/console.c | 6 +-
common/splash.c | 2 +-
common/splash_source.c | 14 ++
configs/apalis_imx6_defconfig | 1 +
configs/aristainetos2c_defconfig | 1 +
configs/aristainetos2ccslb_defconfig | 1 +
configs/cm_fx6_defconfig | 1 +
configs/colibri-imx6ull-emmc_defconfig | 1 +
configs/colibri-imx6ull_defconfig | 1 +
configs/colibri_imx6_defconfig | 1 +
configs/colibri_imx7_defconfig | 1 +
configs/colibri_imx7_emmc_defconfig | 1 +
configs/colibri_vf_defconfig | 1 +
configs/gurnard_defconfig | 1 +
configs/gwventana_emmc_defconfig | 1 +
configs/gwventana_gw5904_defconfig | 1 +
configs/gwventana_nand_defconfig | 1 +
configs/imx6dl_icore_nand_defconfig | 1 +
configs/imx6q_icore_nand_defconfig | 1 +
configs/imx6qdl_icore_mmc_defconfig | 1 +
configs/imx6qdl_icore_nand_defconfig | 1 +
configs/imxrt1050-evk_defconfig | 1 +
configs/m53menlo_defconfig | 1 +
configs/marsboard_defconfig | 1 +
configs/mx6cuboxi_defconfig | 1 +
configs/mx6sabreauto_defconfig | 1 +
configs/mx6sabresd_defconfig | 1 +
configs/mx6ul_14x14_evk_defconfig | 1 +
configs/mx6ul_9x9_evk_defconfig | 1 +
configs/novena_defconfig | 1 +
configs/opos6uldev_defconfig | 1 +
configs/pico-dwarf-imx7d_defconfig | 1 +
configs/pico-hobbit-imx7d_defconfig | 1 +
configs/pico-imx6_defconfig | 1 +
configs/pico-imx6ul_defconfig | 1 +
configs/pico-imx7d_bl33_defconfig | 1 +
configs/pico-imx7d_defconfig | 1 +
configs/pico-nymph-imx7d_defconfig | 1 +
configs/pico-pi-imx7d_defconfig | 1 +
configs/riotboard_defconfig | 1 +
configs/s5p4418_nanopi2_defconfig | 1 +
configs/sandbox_defconfig | 2 +
configs/sandbox_flattree_defconfig | 2 +
configs/tbs2910_defconfig | 1 +
configs/wandboard_defconfig | 1 +
drivers/video/Kconfig | 11 +
drivers/video/Makefile | 3 +
drivers/video/cfb_console.c | 325 +------------------------
drivers/video/console_truetype.c | 21 ++
drivers/video/sandbox_sdl.c | 77 +++++-
drivers/video/u_boot_logo.bmp | Bin 0 -> 6932 bytes
drivers/video/video-uclass.c | 35 +--
drivers/video/video_bmp.c | 249 +++++++++----------
include/configs/T102xRDB.h | 1 -
include/configs/T104xRDB.h | 1 -
include/configs/apalis_imx6.h | 1 -
include/configs/aristainetos2.h | 1 -
include/configs/cm_fx6.h | 1 -
include/configs/colibri-imx6ull.h | 1 -
include/configs/colibri_imx6.h | 1 -
include/configs/colibri_imx7.h | 1 -
include/configs/colibri_vf.h | 1 -
include/configs/coreboot.h | 3 +
include/configs/embestmx6boards.h | 1 -
include/configs/gw_ventana.h | 1 -
include/configs/imx6-engicam.h | 1 -
include/configs/imxrt1050-evk.h | 1 -
include/configs/ls1021aqds.h | 1 -
include/configs/ls1021atwr.h | 1 -
include/configs/m53menlo.h | 1 -
include/configs/mx23evk.h | 1 -
include/configs/mx28evk.h | 1 -
include/configs/mx51evk.h | 1 -
include/configs/mx53loco.h | 1 -
include/configs/mx6cuboxi.h | 1 -
include/configs/mx6sabre_common.h | 1 -
include/configs/mx6sxsabresd.h | 1 -
include/configs/mx6ul_14x14_evk.h | 1 -
include/configs/mx7dsabresd.h | 1 -
include/configs/nokia_rx51.h | 1 -
include/configs/novena.h | 1 -
include/configs/opos6uldev.h | 1 -
include/configs/pico-imx6.h | 1 -
include/configs/pico-imx6ul.h | 1 -
include/configs/pico-imx7d.h | 1 -
include/configs/pxm2.h | 1 -
include/configs/rut.h | 1 -
include/configs/s5p4418_nanopi2.h | 2 -
include/configs/wandboard.h | 1 -
include/configs/x86-common.h | 6 +-
include/splash.h | 1 +
include/video.h | 4 +-
include/virtio.h | 1 +
scripts/Makefile.lib | 21 ++
scripts/build-cb.sh | 19 ++
scripts/config_whitelist.txt | 1 -
test/dm/video.c | 189 +++++++++++++-
tools/logos/denx-16bpp.bmp.gz | Bin 0 -> 4516 bytes
tools/logos/denx-24bpp.bmp.gz | Bin 0 -> 7137 bytes
106 files changed, 678 insertions(+), 539 deletions(-)
create mode 100644 drivers/video/u_boot_logo.bmp
create mode 100755 scripts/build-cb.sh
create mode 100644 tools/logos/denx-16bpp.bmp.gz
create mode 100644 tools/logos/denx-24bpp.bmp.gz
--
2.34.0.rc2.393.gf8c9666880-goog
More information about the U-Boot
mailing list