diff options
-rw-r--r-- | src/drivers/intel/gma/Kconfig | 9 | ||||
-rw-r--r-- | src/northbridge/intel/gm45/gma.c | 7 | ||||
-rw-r--r-- | src/northbridge/intel/x4x/gma.c | 4 |
3 files changed, 16 insertions, 4 deletions
diff --git a/src/drivers/intel/gma/Kconfig b/src/drivers/intel/gma/Kconfig index 9e2872bb6c..1b9c2a647f 100644 --- a/src/drivers/intel/gma/Kconfig +++ b/src/drivers/intel/gma/Kconfig @@ -65,9 +65,10 @@ config GFX_GMA_ANALOG_I2C_HDMI_D config GFX_GMA def_bool y - depends on NORTHBRIDGE_INTEL_NEHALEM || NORTHBRIDGE_INTEL_SANDYBRIDGE \ - || NORTHBRIDGE_INTEL_IVYBRIDGE || NORTHBRIDGE_INTEL_HASWELL \ - || SOC_INTEL_BROADWELL || SOC_INTEL_SKYLAKE + depends on NORTHBRIDGE_INTEL_GM45 || NORTHBRIDGE_INTEL_X4X \ + || NORTHBRIDGE_INTEL_NEHALEM || NORTHBRIDGE_INTEL_SANDYBRIDGE \ + || NORTHBRIDGE_INTEL_IVYBRIDGE || NORTHBRIDGE_INTEL_HASWELL \ + || SOC_INTEL_BROADWELL || SOC_INTEL_SKYLAKE depends on MAINBOARD_HAS_LIBGFXINIT if GFX_GMA @@ -80,6 +81,7 @@ config GFX_GMA_CPU default "Ivybridge" if NORTHBRIDGE_INTEL_IVYBRIDGE default "Sandybridge" if NORTHBRIDGE_INTEL_SANDYBRIDGE default "Ironlake" if NORTHBRIDGE_INTEL_NEHALEM + default "G45" if NORTHBRIDGE_INTEL_GM45 || NORTHBRIDGE_INTEL_X4X config GFX_GMA_CPU_VARIANT string @@ -93,6 +95,7 @@ config GFX_GMA_INTERNAL_IS_EDP config GFX_GMA_INTERNAL_IS_LVDS bool + default y if NORTHBRIDGE_INTEL_GM45 default n config GFX_GMA_INTERNAL_PORT diff --git a/src/northbridge/intel/gm45/gma.c b/src/northbridge/intel/gm45/gma.c index f0171e6133..606170ce73 100644 --- a/src/northbridge/intel/gm45/gma.c +++ b/src/northbridge/intel/gm45/gma.c @@ -35,6 +35,7 @@ #include <drivers/intel/gma/opregion.h> #include <pc80/vga.h> #include <pc80/vga_io.h> +#include <drivers/intel/gma/libgfxinit.h> #define BASE_FREQUENCY 96000 @@ -770,8 +771,12 @@ static void gma_func0_init(struct device *dev) /* Post VBIOS init */ gma_pm_init_post_vbios(dev, edid_lvds.ascii_string); - if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT)) + if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT)) { gma_ngi(dev, &edid_lvds); + } else if (IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) { + int lightup_ok; + gma_gfxinit(&lightup_ok); + } intel_gma_restore_opregion(); } diff --git a/src/northbridge/intel/x4x/gma.c b/src/northbridge/intel/x4x/gma.c index 6c6f3a2318..f38d64d517 100644 --- a/src/northbridge/intel/x4x/gma.c +++ b/src/northbridge/intel/x4x/gma.c @@ -33,6 +33,7 @@ #include <drivers/intel/gma/edid.h> #include <drivers/intel/gma/i915.h> #include <drivers/intel/gma/opregion.h> +#include <drivers/intel/gma/libgfxinit.h> #include <pc80/vga.h> #include <pc80/vga_io.h> @@ -411,6 +412,9 @@ static void gma_func0_init(struct device *dev) return; } native_init(dev); + } else if (IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) { + int lightup_ok; + gma_gfxinit(&lightup_ok); } else { pci_dev_init(dev); } |