x86: Gracefully disable the vesa driver when running from EFI
authorSimon Glass <sjg@chromium.org>
Tue, 4 Aug 2015 18:34:04 +0000 (12:34 -0600)
committerSimon Glass <sjg@chromium.org>
Wed, 5 Aug 2015 14:44:08 +0000 (08:44 -0600)
We cannot use this driver when running from EFI as we have no direct hardware
access. In fact coreboot uses a different driver which uses tables provided
by coreboot. So far it does not seem possible to use a normal video driver
when booting from EFI.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Anatolij Gustschin <agust@denx.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
drivers/video/vesa_fb.c

index 909f8e8..4e6d070 100644 (file)
@@ -24,6 +24,14 @@ void *video_hw_init(void)
        int ret;
 
        printf("Video: ");
+       if (!ll_boot_init()) {
+               /*
+                * If we are running from EFI or coreboot, this driver can't
+                * work.
+                */
+               printf("Not available (previous bootloader prevents it)\n");
+               return NULL;
+       }
        if (vbe_get_video_info(gdev)) {
                dev = pci_find_class(PCI_CLASS_DISPLAY_VGA << 8, 0);
                if (dev == -1) {