diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 6f319ba0d54..f9c289e042c 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -55,6 +55,16 @@ config VIDEO_LOGO
 	  tools/logos/u-boot_logo.bmp and looks best when the display has a
 	  black background.
 
+config VIDEO_LOGO_COREBOOT
+	bool "Show the coreboot logo on the display"
+	depends on VIDEO_LOGO && (SYS_COREBOOT || SANDBOX)
+	default y if SYS_COREBOOT
+	help
+	  This enables showing the coreboot logo on the display when a video
+	  device is probed. It appears at the top right, just below the U-Boot
+	  logo. The appearance of this logo indicates that coreboot provided
+	  the first-stage system setup.
+
 config BACKLIGHT
 	bool "Enable panel backlight uclass support"
 	default y
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index fdc29376324..f7ea7fa7fa0 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -25,6 +25,8 @@ obj-$(CONFIG_PANEL_HX8238D) += hx8238d.o
 obj-$(CONFIG_$(SPL_TPL_)SIMPLE_PANEL) += simple_panel.o
 
 obj-$(CONFIG_VIDEO_LOGO) += u_boot_logo.o
+obj-$(CONFIG_VIDEO_LOGO_COREBOOT) += coreboot_logo.o
+
 obj-$(CONFIG_$(SPL_TPL_)BMP) += bmp.o
 
 endif
diff --git a/drivers/video/coreboot_logo.bmp b/drivers/video/coreboot_logo.bmp
new file mode 100644
index 0000000000000000000000000000000000000000..ed74ce1de0b09a6b6a9c0d06d3f435621b82950e
GIT binary patch
diff --git a/drivers/video/video-uclass.c b/drivers/video/video-uclass.c
index f743ed74c81..a0d2627e429 100644
--- a/drivers/video/video-uclass.c
+++ b/drivers/video/video-uclass.c
@@ -508,6 +508,17 @@ void *video_get_u_boot_logo(void)
 	return SPLASH_START(u_boot_logo);
 }
 
+#ifdef CONFIG_VIDEO_LOGO_COREBOOT
+SPLASH_DECL(coreboot_logo);
+
+void *video_get_coreboot_logo(void)
+{
+	return SPLASH_START(coreboot_logo);
+}
+#else
+static inline void *video_get_coreboot_logo(void) { return NULL; }
+#endif
+
 static int show_splash(struct udevice *dev)
 {
 	u8 *data = SPLASH_START(u_boot_logo);
@@ -515,6 +526,13 @@ static int show_splash(struct udevice *dev)
 
 	ret = video_bmp_display(dev, map_to_sysmem(data), -4, 4, true);
 
+	if (IS_ENABLED(CONFIG_VIDEO_LOGO_COREBOOT)) {
+		void *data_cb = video_get_coreboot_logo();
+
+		ret = video_bmp_display(dev, map_to_sysmem(data_cb), -4, 200,
+					true);
+	}
+
 	return 0;
 }
 
