Arthur Heymans has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/30683
Change subject: nb/intel/gm45: Fix GMA init on the libgfxinit path ......................................................................
nb/intel/gm45: Fix GMA init on the libgfxinit path
This does the following: - Don't run the VBIOS on the libgfxinit path - Generate a fake option rom containing the VBT on the libgfxinit path
Change-Id: Id4145d2d721c6cab6dd4db40e4a1f92ae7402d08 Signed-off-by: Arthur Heymans arthur@aheymans.xyz --- M src/northbridge/intel/gm45/gma.c 1 file changed, 5 insertions(+), 5 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/83/30683/1
diff --git a/src/northbridge/intel/gm45/gma.c b/src/northbridge/intel/gm45/gma.c index 8acec29..ecd4be6 100644 --- a/src/northbridge/intel/gm45/gma.c +++ b/src/northbridge/intel/gm45/gma.c @@ -599,7 +599,6 @@ struct edid edid_vga; int vga_edid_status; u8 *mmio; - struct northbridge_intel_gm45_config *conf = dev->chip_info;
mmio = res2mmio(gtt_res, 0, 0); printk(BIOS_DEBUG, "VGA EDID\n"); @@ -632,9 +631,6 @@ gma_init_lvds(conf, mmio, physbase, pio_res->base, lfb_res->base, edid_lvds); } - - /* Linux relies on VBT for panel info. */ - generate_fake_intel_oprom(&conf->gfx, dev, "$VBT CANTIGA"); }
static u32 get_cdclk(struct device *const dev) @@ -756,6 +752,7 @@ u8 *mmio; u8 edid_data_lvds[128]; struct edid edid_lvds; + const struct northbridge_intel_gm45_config *const conf = dev->chip_info;
/* IGD needs to be Bus Master */ reg32 = pci_read_config32(dev, PCI_COMMAND); @@ -767,7 +764,8 @@ return; mmio = res2mmio(gtt_res, 0, 0);
- if (!IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT)) { + if (!IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT) && + !IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) { /* PCI Init, will run VBIOS */ printk(BIOS_DEBUG, "Initialising IGD using VBIOS\n"); pci_dev_init(dev); @@ -794,6 +792,8 @@ int lightup_ok; gma_gfxinit(&lightup_ok); } + /* Linux relies on VBT for panel info. */ + generate_fake_intel_oprom(&conf->gfx, dev, "$VBT CANTIGA"); }
intel_gma_restore_opregion();