diff --git a/drivers/video/cfb_console.c b/drivers/video/cfb_console.c
index c0b1b8dc17e2bd15785e97a209f42ea9843be0cf..a4cbc4456491a1afc7cbe1d69d9e226fc62ca75e 100644
--- a/drivers/video/cfb_console.c
+++ b/drivers/video/cfb_console.c
@@ -1861,14 +1861,16 @@ static void *video_logo(void)
 	__maybe_unused int y_off = 0;
 	__maybe_unused ulong addr;
 	__maybe_unused char *s;
-	__maybe_unused int len, space;
+	__maybe_unused int len, ret, space;
 
 	splash_get_pos(&video_logo_xpos, &video_logo_ypos);
 
 #ifdef CONFIG_SPLASH_SCREEN
 	s = getenv("splashimage");
 	if (s != NULL) {
-		splash_screen_prepare();
+		ret = splash_screen_prepare();
+		if (ret < 0)
+			return video_fb_address;
 		addr = simple_strtoul(s, NULL, 16);
 
 		if (video_display_bitmap(addr,