[U-Boot] [PATCH 09/22] x86: ivybridge: Only run the Video BIOS when video is enabled
Simon Glass
sjg at chromium.org
Sun Dec 28 03:20:33 CET 2014
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 <sjg at 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
More information about the U-Boot
mailing list