x86: Avoid clearing the VESA display
authorSimon Glass <sjg@chromium.org>
Sat, 15 Mar 2025 14:25:30 +0000 (14:25 +0000)
committerTom Rini <trini@konsulko.com>
Thu, 3 Apr 2025 17:41:55 +0000 (11:41 -0600)
U-Boot clears the display when it starts up, so there is no need to ask
the VESA driver to do this. Fix this and add a comment explaining the
flags.

Signed-off-by: Simon Glass <sjg@chromium.org>
arch/x86/lib/bios.c

index 5dfe5a6..de45786 100644 (file)
@@ -231,7 +231,11 @@ static void vbe_set_graphics(int vesa_mode, struct vesa_state *mode_info)
 {
        unsigned char *framebuffer;
 
-       mode_info->video_mode = (1 << 14) | vesa_mode;
+       /*
+        * bit 14 is linear-framebuffer mode
+        * bit 15 means don't clear the display
+        */
+       mode_info->video_mode = (1 << 14) | (1 << 15) | vesa_mode;
        vbe_get_mode_info(mode_info);
 
        framebuffer = (unsigned char *)(ulong)mode_info->vesa.phys_base_ptr;