summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Roth <martinroth@google.com>2016-01-04 12:43:22 -0700
committerMartin Roth <martinroth@google.com>2016-01-06 17:41:49 +0100
commitf812c44f003a1ba34548d1eceb622221d95a5945 (patch)
tree74b993bf512fc2279929a41b57cc003e40a56289
parent331c722dd73ff5902c76092f31ce1936b64643a1 (diff)
downloadcoreboot-f812c44f003a1ba34548d1eceb622221d95a5945.tar.xz
intel/braswell: Build in both C0 and 'other' vbios
The Braswell CPU seems to have two different Video BIOS roms, one for the C0 revision, and one for other revisions. Build them both into the coreboot image, and let coreboot sort out which one should be used at runtime. This should allow one rom to be used for all revisions. The initial reason for this patch was that the Kconfig symbol C0_DISP_SUPPORT didn't exist, and was causing issues. This seems like the best way to eliminate the need for that symbol. Change-Id: I5b9f225c0daf4e02fda75daf9cd07bb160bf0e0f Signed-off-by: Martin Roth <martinroth@google.com> Reviewed-on: https://review.coreboot.org/12826 Tested-by: build bot (Jenkins) Reviewed-by: Leroy P Leahy <leroy.p.leahy@intel.com> Reviewed-by: Patrick Georgi <pgeorgi@google.com>
-rw-r--r--src/mainboard/google/cyan/Kconfig15
-rwxr-xr-xsrc/mainboard/intel/strago/Kconfig17
-rw-r--r--src/soc/intel/braswell/Makefile.inc15
3 files changed, 35 insertions, 12 deletions
diff --git a/src/mainboard/google/cyan/Kconfig b/src/mainboard/google/cyan/Kconfig
index 7a3a11a820..593548d3bf 100644
--- a/src/mainboard/google/cyan/Kconfig
+++ b/src/mainboard/google/cyan/Kconfig
@@ -60,13 +60,18 @@ config VBOOT_REFCODE_INDEX
if !GOP_SUPPORT
config VGA_BIOS_FILE
string
- default "3rdparty/blobs/mainboard/intel/strago/vgabios_c0.bin" if C0_DISP_SUPPORT
- default "3rdparty/blobs/mainboard/intel/strago/vgabios.bin" if !C0_DISP_SUPPORT
+ default "3rdparty/blobs/mainboard/intel/strago/vgabios.bin"
+ help
+ The C0 version of the video bios gets computed from this name
+ so that they can both be added. Only the correct one for the
+ system will be run.
config VGA_BIOS_ID
string
- default "8086,22b1" if C0_DISP_SUPPORT
- default "8086,22b0" if !C0_DISP_SUPPORT
-endif
+ default "8086,22b0"
+ help
+ The VGA_BIOS_ID for the C0 version of the video bios is hardcoded
+ in soc/intel/braswell/Makefile.inc as 8086,22b1
+endif #GOP_SUPPORT
endif # BOARD_GOOGLE_CYAN
diff --git a/src/mainboard/intel/strago/Kconfig b/src/mainboard/intel/strago/Kconfig
index facd97f7e7..3c12ece71b 100755
--- a/src/mainboard/intel/strago/Kconfig
+++ b/src/mainboard/intel/strago/Kconfig
@@ -50,11 +50,18 @@ config MAINBOARD_VENDOR
if !GOP_SUPPORT
config VGA_BIOS_FILE
string
- default "3rdparty/blobs/mainboard/intel/strago/vgabios_c0.bin" if C0_DISP_SUPPORT
- default "3rdparty/blobs/mainboard/intel/strago/vgabios.bin" if !C0_DISP_SUPPORT
+ default "3rdparty/blobs/mainboard/intel/strago/vgabios.bin"
+ help
+ The C0 version of the video bios gets computed from this name
+ so that they can both be added. Only the correct one for the
+ system will be run.
+
config VGA_BIOS_ID
string
- default "8086,22b1" if C0_DISP_SUPPORT
- default "8086,22b0" if !C0_DISP_SUPPORT
-endif # GOP_SUPPORT
+ default "8086,22b0"
+ help
+ The VGA_BIOS_ID for the C0 version of the video bios is hardcoded
+ in soc/intel/braswell/Makefile.inc as 8086,22b1
+
+endif #GOP_SUPPORT
endif # BOARD_INTEL_STRAGO
diff --git a/src/soc/intel/braswell/Makefile.inc b/src/soc/intel/braswell/Makefile.inc
index 54b9c6a3e6..b61323d36b 100644
--- a/src/soc/intel/braswell/Makefile.inc
+++ b/src/soc/intel/braswell/Makefile.inc
@@ -43,7 +43,6 @@ ramstage-y += tsc_freq.c
# Remove as ramstage gets fleshed out
ramstage-y += placeholders.c
-
smm-y += lpc_init.c
smm-y += pmutil.c
smm-y += smihandler.c
@@ -58,4 +57,16 @@ CPPFLAGS_common += -I$(src)/vendorcode/intel/fsp/fsp1_1/braswell
CPPFLAGS_common += -I3rdparty/blobs/mainboard/$(CONFIG_MAINBOARD_DIR)
-endif
+ifneq ($(CONFIG_GOP_SUPPORT),y)
+ifneq ($(CONFIG_VGA_BIOS_FILE),)
+#we will assume that the vbios names will remain as they are now: vgabios.bin and vgabios_c0.bin
+BRASWELL_C0_VBIOS= $(subst .bin,_c0.bin,$(call strip_quotes,$(CONFIG_VGA_BIOS_FILE)))
+
+cbfs-files-$(CONFIG_VGA_BIOS) += pci8086,22b1.rom
+pci8086,22b1.rom-file := $(BRASWELL_C0_VBIOS)
+pci8086,22b1.rom-type := optionrom
+
+endif # ifneq ($(CONFIG_GOP_SUPPORT),y)
+endif # ifneq ($(CONFIG_VGA_BIOS_FILE),)
+
+endif # ifeq ($(CONFIG_SOC_INTEL_BRASWELL),y)