summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mainboard/lenovo/x201/Kconfig1
-rw-r--r--src/northbridge/intel/nehalem/gma.c16
2 files changed, 4 insertions, 13 deletions
diff --git a/src/mainboard/lenovo/x201/Kconfig b/src/mainboard/lenovo/x201/Kconfig
index 1204e23a39..a2d66b3724 100644
--- a/src/mainboard/lenovo/x201/Kconfig
+++ b/src/mainboard/lenovo/x201/Kconfig
@@ -17,6 +17,7 @@ config BOARD_SPECIFIC_OPTIONS # dummy
select HAVE_ACPI_TABLES
select HAVE_ACPI_RESUME
select EARLY_CBMEM_INIT
+ select MAINBOARD_HAS_NATIVE_VGA_INIT
config MAINBOARD_DIR
string
diff --git a/src/northbridge/intel/nehalem/gma.c b/src/northbridge/intel/nehalem/gma.c
index 31068d11fa..c7a0e9b941 100644
--- a/src/northbridge/intel/nehalem/gma.c
+++ b/src/northbridge/intel/nehalem/gma.c
@@ -548,10 +548,12 @@ static void gma_pm_init_pre_vbios(struct device *dev)
#include <pc80/vga.h>
#include <pc80/vga_io.h>
+#if CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT
static void fake_vbios(void)
{
#include "fake_vbios.c"
}
+#endif
static void gma_pm_init_post_vbios(struct device *dev)
{
@@ -635,8 +637,8 @@ static void gma_func0_init(struct device *dev)
pci_dev_init(dev);
#else
printk(BIOS_SPEW, "Initializing VGA without OPROM.\n");
-#endif
fake_vbios();
+#endif
/* Linux relies on VBT for panel info. */
if (read16(0xc0000) != 0xaa55) {
@@ -670,18 +672,6 @@ static void gma_func0_init(struct device *dev)
/* Post VBIOS init */
gma_pm_init_post_vbios(dev);
-
-#if CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT
- /* This should probably run before post VBIOS init. */
- u32 iobase, mmiobase, physbase, graphics_base;
- iobase = dev->resource_list[2].base;
- mmiobase = dev->resource_list[0].base;
- physbase = pci_read_config32(dev, 0x5c) & ~0xf;
- graphics_base = dev->resource_list[1].base;
-
- int i915lightup(u32 physbase, u32 iobase, u32 mmiobase, u32 gfx);
- i915lightup(physbase, iobase, mmiobase, graphics_base);
-#endif
}
static void gma_set_subsystem(device_t dev, unsigned vendor, unsigned device)