diff --git a/src/device/Kconfig b/src/device/Kconfig
index 841f224..0637c69 100644
--- a/src/device/Kconfig
+++ b/src/device/Kconfig
@@ -42,39 +42,36 @@
 config MAINBOARD_FORCE_NATIVE_VGA_INIT
 	def_bool n
 	depends on MAINBOARD_HAS_NATIVE_VGA_INIT || MAINBOARD_HAS_LIBGFXINIT
-	select MAINBOARD_DO_NATIVE_VGA_INIT
 	help
 	  Selected by mainboards / chipsets whose graphics driver can't or
 	  shouldn't be disabled.
 
-config MAINBOARD_DO_NATIVE_VGA_INIT
-	bool "Use native graphics initialization"
-	depends on MAINBOARD_HAS_NATIVE_VGA_INIT
-	default n
-	help
-	  Some mainboards, such as the Google Link, allow initializing the display
-	  without the need of a binary only VGA OPROM. Enabling this option may be
-	  faster, but also lacks flexibility in setting modes.
-
-	  If unsure, say N.
-
 config MAINBOARD_HAS_LIBGFXINIT
 	def_bool n
-	select MAINBOARD_HAS_NATIVE_VGA_INIT
 	help
 	  Selected by mainboards that implement support for `libgfxinit`.
 	  Usually this requires a list of ports to be probed for displays.
 
+choice
+	prompt "Graphics initialization"
+	default NO_GFX_INIT if VGA_BIOS && PAYLOAD_SEABIOS
+	default VGA_ROM_RUN if VGA_BIOS
+
+config MAINBOARD_DO_NATIVE_VGA_INIT
+	bool "Use native graphics init"
+	depends on MAINBOARD_HAS_NATIVE_VGA_INIT
+	help
+	  Some mainboards, such as the Google Link, allow initializing the
+	  display without the need of a binary only VGA OPROM. Enabling this
+	  option may be faster, but also lacks flexibility in setting modes.
+
 config MAINBOARD_USE_LIBGFXINIT
-	bool "Use libgfxinit for native graphics initialization"
-	depends on MAINBOARD_DO_NATIVE_VGA_INIT
+	bool "Use libgfxinit"
 	depends on MAINBOARD_HAS_LIBGFXINIT
 	select HAVE_VGA_TEXT_FRAMEBUFFER
 	select HAVE_LINEAR_FRAMEBUFFER
 	select RAMSTAGE_LIBHWBASE
 	select VGA if VGA_TEXT_FRAMEBUFFER
-	select NO_EDID_FILL_FB
-	default n
 	help
 	  Use the SPARK library `libgfxinit` for the native graphics
 	  initialization. This requires an Ada toolchain.
@@ -82,12 +79,10 @@
 # TODO: Explain differences (if any) for onboard cards.
 config VGA_ROM_RUN
 	bool "Run VGA Option ROMs"
-	default n if PAYLOAD_SEABIOS
-	default y if !PAYLOAD_SEABIOS
-	depends on PCI && !MAINBOARD_DO_NATIVE_VGA_INIT
+	depends on PCI && !MAINBOARD_FORCE_NATIVE_VGA_INIT
 	select HAVE_VGA_TEXT_FRAMEBUFFER
 	help
-	  Execute VGA Option ROMs in coreboot if found. This is required
+	  Execute VGA Option ROMs in coreboot if found. This can be used
 	  to enable PCI/AGP/PCI-E video cards when not using a SeaBIOS
 	  payload.
 
@@ -95,7 +90,15 @@
 	  more complete BIOS interrupt services available than coreboot,
 	  which some option ROMs require in order to function correctly.
 
-	  If unsure, say N when using SeaBIOS as payload, Y otherwise.
+config NO_GFX_INIT
+	bool "None"
+	depends on !MAINBOARD_FORCE_NATIVE_VGA_INIT
+	help
+	  Select this to not perform any graphics initialization in
+	  coreboot. This is useful if the payload (e.g. SeaBIOS) can
+	  initialize graphics or if pre-boot graphics are not required.
+
+endchoice
 
 config S3_VGA_ROM_RUN
 	bool "Re-run VGA Option ROMs on S3 resume"
diff --git a/src/mainboard/asus/kfsn4-dre/Kconfig b/src/mainboard/asus/kfsn4-dre/Kconfig
index 0920056..3e9f3f3 100644
--- a/src/mainboard/asus/kfsn4-dre/Kconfig
+++ b/src/mainboard/asus/kfsn4-dre/Kconfig
@@ -81,10 +81,6 @@
 	bool
 	default y
 
-config MAINBOARD_DO_NATIVE_VGA_INIT
-	bool
-	default y
-
 config MAINBOARD_POWER_ON_AFTER_POWER_FAIL
 	bool
 	default y
diff --git a/src/mainboard/asus/kfsn4-dre_k8/Kconfig b/src/mainboard/asus/kfsn4-dre_k8/Kconfig
index 8bd2146..0d13a4e 100644
--- a/src/mainboard/asus/kfsn4-dre_k8/Kconfig
+++ b/src/mainboard/asus/kfsn4-dre_k8/Kconfig
@@ -87,10 +87,6 @@
 	bool
 	default y
 
-config MAINBOARD_DO_NATIVE_VGA_INIT
-	bool
-	default y
-
 config MAINBOARD_POWER_ON_AFTER_POWER_FAIL
 	bool
 	default y
diff --git a/src/mainboard/google/slippy/Kconfig b/src/mainboard/google/slippy/Kconfig
index 1d889df..e24e2f7 100644
--- a/src/mainboard/google/slippy/Kconfig
+++ b/src/mainboard/google/slippy/Kconfig
@@ -15,7 +15,6 @@
 	select MAINBOARD_HAS_LPC_TPM
 	select INTEL_INT15
 	select MAINBOARD_HAS_LIBGFXINIT
-	select MAINBOARD_USE_LIBGFXINIT if MAINBOARD_DO_NATIVE_VGA_INIT
 
 if BOARD_GOOGLE_BASEBOARD_SLIPPY
 
diff --git a/src/mainboard/sapphire/pureplatinumh61/Kconfig b/src/mainboard/sapphire/pureplatinumh61/Kconfig
index f9458a6..6ade9b5 100644
--- a/src/mainboard/sapphire/pureplatinumh61/Kconfig
+++ b/src/mainboard/sapphire/pureplatinumh61/Kconfig
@@ -14,7 +14,6 @@
 	select HAVE_CMOS_DEFAULT
 	select HAVE_ACPI_RESUME
 	select MAINBOARD_HAS_LIBGFXINIT
-	select MAINBOARD_USE_LIBGFXINIT if MAINBOARD_DO_NATIVE_VGA_INIT
 	select INTEL_INT15
 	select UDELAY_TSC
 	select SERIRQ_CONTINUOUS_MODE
diff --git a/src/northbridge/intel/haswell/gma.c b/src/northbridge/intel/haswell/gma.c
index a7478de..1379539 100644
--- a/src/northbridge/intel/haswell/gma.c
+++ b/src/northbridge/intel/haswell/gma.c
@@ -443,7 +443,7 @@
 	/* Pre panel init */
 	gma_setup_panel(dev);
 
-	if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT)) {
+	if (IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) {
 		printk(BIOS_SPEW, "NATIVE graphics, run native enable\n");
 		physbase = pci_read_config32(dev, 0x5c) & ~0xf;
 		gma_gfxinit(gtt_res->base, linearfb_res->base,
diff --git a/src/northbridge/intel/nehalem/gma.c b/src/northbridge/intel/nehalem/gma.c
index 0af8d6c..43ca4b6 100644
--- a/src/northbridge/intel/nehalem/gma.c
+++ b/src/northbridge/intel/nehalem/gma.c
@@ -1008,39 +1008,41 @@
 	/* Init graphics power management */
 	gma_pm_init_pre_vbios(dev);
 
-#if !CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT
-	/* PCI Init, will run VBIOS */
-	pci_dev_init(dev);
-#else
-	u32 physbase;
-	struct northbridge_intel_nehalem_config *conf = dev->chip_info;
-	struct resource *lfb_res;
-	struct resource *pio_res;
+	if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT) ||
+	    IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) {
+		u32 physbase;
+		struct northbridge_intel_nehalem_config *conf = dev->chip_info;
+		struct resource *lfb_res;
+		struct resource *pio_res;
 
-	lfb_res = find_resource(dev, PCI_BASE_ADDRESS_2);
-	pio_res = find_resource(dev, PCI_BASE_ADDRESS_4);
+		lfb_res = find_resource(dev, PCI_BASE_ADDRESS_2);
+		pio_res = find_resource(dev, PCI_BASE_ADDRESS_4);
 
-	physbase = pci_read_config32(dev, 0x5c) & ~0xf;
+		physbase = pci_read_config32(dev, 0x5c) & ~0xf;
 
-	if (gtt_res && gtt_res->base && physbase && pio_res && pio_res->base
-	    && lfb_res && lfb_res->base) {
-		printk(BIOS_SPEW, "Initializing VGA without OPROM. MMIO 0x%llx\n",
-		       gtt_res->base);
-		if (IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) {
-			int lightup_ok;
-			gma_gfxinit(gtt_res->base, lfb_res->base,
-				    physbase, &lightup_ok);
-		} else {
-			intel_gma_init(conf, res2mmio(gtt_res, 0, 0), physbase,
-				       pio_res->base, lfb_res->base);
+		if (gtt_res && gtt_res->base && physbase &&
+		    pio_res && pio_res->base && lfb_res && lfb_res->base) {
+			printk(BIOS_SPEW,
+			       "Initializing VGA without OPROM. MMIO 0x%llx\n",
+			       gtt_res->base);
+			if (IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) {
+				int lightup_ok;
+				gma_gfxinit(gtt_res->base, lfb_res->base,
+					    physbase, &lightup_ok);
+			} else {
+				intel_gma_init(conf, res2mmio(gtt_res, 0, 0),
+					physbase, pio_res->base, lfb_res->base);
+			}
 		}
+
+		/* Linux relies on VBT for panel info. */
+		generate_fake_intel_oprom(&conf->gfx, dev,
+					  "$VBT IRONLAKE-MOBILE");
+	} else {
+		/* PCI Init, will run VBIOS */
+		pci_dev_init(dev);
 	}
 
-	/* Linux relies on VBT for panel info. */
-	generate_fake_intel_oprom(&conf->gfx, dev, "$VBT IRONLAKE-MOBILE");
-#endif
-
-
 	/* Post VBIOS init */
 	gma_pm_init_post_vbios(dev);
 }
diff --git a/src/northbridge/intel/pineview/Kconfig b/src/northbridge/intel/pineview/Kconfig
index cf659ef..1af8d3c 100644
--- a/src/northbridge/intel/pineview/Kconfig
+++ b/src/northbridge/intel/pineview/Kconfig
@@ -26,12 +26,9 @@
 	select VGA
 	select MAINBOARD_HAS_NATIVE_VGA_INIT
 	select HAVE_VGA_TEXT_FRAMEBUFFER if MAINBOARD_DO_NATIVE_VGA_INIT
+	select INTEL_EDID if MAINBOARD_DO_NATIVE_VGA_INIT
 	select RELOCATABLE_RAMSTAGE
 
-config MAINBOARD_DO_NATIVE_VGA_INIT
-	def_bool y
-	select INTEL_EDID
-
 config BOOTBLOCK_NORTHBRIDGE_INIT
 	string
 	default "northbridge/intel/pineview/bootblock.c"
diff --git a/src/northbridge/intel/sandybridge/Kconfig b/src/northbridge/intel/sandybridge/Kconfig
index ad1ceae..b52807c 100644
--- a/src/northbridge/intel/sandybridge/Kconfig
+++ b/src/northbridge/intel/sandybridge/Kconfig
@@ -59,7 +59,9 @@
 	select VGA
 	select MAINBOARD_HAS_NATIVE_VGA_INIT
 
-config MAINBOARD_DO_NATIVE_VGA_INIT
+config IF_NATIVE_VGA_INIT
+	def_bool y
+	depends on MAINBOARD_DO_NATIVE_VGA_INIT
 	select VGA
 	select INTEL_EDID
 	select HAVE_LINEAR_FRAMEBUFFER
diff --git a/src/northbridge/intel/sandybridge/gma.c b/src/northbridge/intel/sandybridge/gma.c
index 868a961..bc64fe6 100644
--- a/src/northbridge/intel/sandybridge/gma.c
+++ b/src/northbridge/intel/sandybridge/gma.c
@@ -595,7 +595,8 @@
 	/* Post VBIOS init */
 	gma_pm_init_post_vbios(dev);
 
-	if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT)) {
+	if (IS_ENABLED(CONFIG_MAINBOARD_DO_NATIVE_VGA_INIT) ||
+	    IS_ENABLED(CONFIG_MAINBOARD_USE_LIBGFXINIT)) {
 		/* This should probably run before post VBIOS init. */
 		printk(BIOS_SPEW, "Initializing VGA without OPROM.\n");
 		u8 *mmiobase;
