From 6707794edb873ce9c28053b8f92a3bd54181f989 Mon Sep 17 00:00:00 2001 From: Lijian Zhao Date: Tue, 16 May 2017 12:11:45 -0700 Subject: [PATCH] UPSTREAM: sb/intel/common: Add common EC fw support Add support to the Intel common firmware Kconfig and Makefile.inc to allow the embedded controller (EC) blob to be added to the final binary through ifdtool. TEST=Add ec.bin and enable in config, build is successful. Change-Id: Ic4cc8d05f5cc6a303fe33807cf99c3081ac87dba Signed-off-by: Patrick Georgi Original-Commit-Id: 0fb6568444328ec62e9585d827c77fd8ecc66cd3 Original-Change-Id: Ib14732b4d263dde4770bf26b055c005de2540338 Original-Signed-off-by: Lijian Zhao Original-Reviewed-on: https://review.coreboot.org/19719 Original-Tested-by: build bot (Jenkins) Original-Reviewed-by: Aaron Durbin Original-Reviewed-by: Sumeet R Pawnikar Original-Reviewed-by: Philippe Mathieu-Daud Reviewed-on: https://chromium-review.googlesource.com/513956 Commit-Ready: Patrick Georgi Tested-by: Patrick Georgi Reviewed-by: Patrick Georgi --- src/southbridge/intel/common/firmware/Kconfig | 15 +++++++++++++++ .../intel/common/firmware/Makefile.inc | 8 ++++++++ 2 files changed, 23 insertions(+) diff --git a/src/southbridge/intel/common/firmware/Kconfig b/src/southbridge/intel/common/firmware/Kconfig index da40db0fd1..73d991de12 100644 --- a/src/southbridge/intel/common/firmware/Kconfig +++ b/src/southbridge/intel/common/firmware/Kconfig @@ -102,6 +102,21 @@ config GBE_BIN_PATH depends on HAVE_GBE_BIN default "3rdparty/blobs/mainboard/$(MAINBOARDDIR)/gbe.bin" +config HAVE_EC_BIN + bool "Add EC firmware" + depends on HAVE_IFD_BIN + help + The embedded controller needs a firmware file. + + Select this if you are going to use the PCH integrated controller + and have the EC firmware. EC firmware will be added to final image + through ifdtool. + +config EC_BIN_PATH + string "Path to EC firmware" + depends on HAVE_EC_BIN + default "3rdparty/blobs/mainboard/$(MAINBOARDDIR)/ec.bin" + ##### Fake IFD ##### config BUILD_WITH_FAKE_IFD diff --git a/src/southbridge/intel/common/firmware/Makefile.inc b/src/southbridge/intel/common/firmware/Makefile.inc index 98a36d3b81..b70de80466 100644 --- a/src/southbridge/intel/common/firmware/Makefile.inc +++ b/src/southbridge/intel/common/firmware/Makefile.inc @@ -71,6 +71,14 @@ ifeq ($(CONFIG_HAVE_GBE_BIN),y) $(obj)/coreboot.pre mv $(obj)/coreboot.pre.new $(obj)/coreboot.pre endif +ifeq ($(CONFIG_HAVE_EC_BIN),y) + printf " IFDTOOL ec.bin -> coreboot.pre\n" + $(objutil)/ifdtool/ifdtool \ + $(IFDTOOL_USE_CHIPSET) \ + -i EC:$(CONFIG_EC_BIN_PATH) \ + $(obj)/coreboot.pre + mv $(obj)/coreboot.pre.new $(obj)/coreboot.pre +endif ifeq ($(CONFIG_LOCK_MANAGEMENT_ENGINE),y) printf " IFDTOOL Locking Management Engine\n" $(objutil)/ifdtool/ifdtool \