This takes about about 700ms on link when running natively and 900ms when
running using the emulator. It is a waste of time if video is not enabled,
so don't bother running the video BIOS in that case.

We could add a command to run the video BIOS later when needed, but this is
not considered at present.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 arch/x86/cpu/ivybridge/gma.c | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/arch/x86/cpu/ivybridge/gma.c b/arch/x86/cpu/ivybridge/gma.c
index 3d7f740..125021b 100644
--- a/arch/x86/cpu/ivybridge/gma.c
+++ b/arch/x86/cpu/ivybridge/gma.c
@@ -15,6 +15,13 @@
 #include <asm/pci.h>
 #include <asm/arch/pch.h>
 #include <asm/arch/sandybridge.h>
+#include <linux/kconfig.h>
+
+#ifdef CONFIG_VIDEO
+#define RUN_VIDEO_BIOS         1
+#else
+#define RUN_VIDEO_BIOS         1
+#endif
 
 struct gt_powermeter {
        u16 reg;
@@ -745,7 +752,15 @@ int gma_func0_init(pci_dev_t dev, struct pci_controller 
*hose,
        if (ret)
                return ret;
 
-       ret = pci_run_vga_bios(dev, int15_handler, false);
+       /*
+        * TODO: Change to IS_ENABLED(CONFIG_VIDEO) when Kconfig supports
+        * CONFIG_VIDEO.
+        */
+       if (RUN_VIDEO_BIOS) {
+               start = get_timer(0);
+               ret = pci_run_vga_bios(dev, int15_handler, false);
+               debug("BIOS ran in %lums\n", get_timer(start));
+       }
 
        /* Post VBIOS init */
        ret = gma_pm_init_post_vbios(gtt_bar, blob, node);
-- 
2.2.0.rc0.207.ga3a616c

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to