[coreboot-gerrit] New patch to review for coreboot: google/chromeec: Add Kconfig option to enable / disable EC build
Martin Roth (martinroth@google.com)
gerrit at coreboot.org
Tue Jul 26 20:17:33 CEST 2016
Martin Roth (martinroth at google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15904
-gerrit
commit 060947c10549957171c8517d22e798aa4987593d
Author: Martin Roth <martinroth at google.com>
Date: Mon Jul 25 14:29:14 2016 -0600
google/chromeec: Add Kconfig option to enable / disable EC build
Add a Kconfig option to explicitly enable and disable the google
Chrome EC firmware build. Disabling the build will also disable
the software sync in the chipsets where it's enabled. On the
platforms where EC_SOFTWARE_SYNC is enabled in the mainboard Kconfig,
the select will need to be removed explicitly.
Change-Id: I724727f8984957ac50fff2436939cd4f5dd7acd8
Signed-off-by: Martin Roth <martinroth at google.com>
---
src/ec/google/chromeec/Kconfig | 6 ++++++
src/ec/google/chromeec/Makefile.inc | 5 ++++-
src/soc/intel/apollolake/Kconfig | 2 +-
src/soc/intel/skylake/Kconfig | 4 ++--
src/vendorcode/google/chromeos/Kconfig | 2 +-
5 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/src/ec/google/chromeec/Kconfig b/src/ec/google/chromeec/Kconfig
index 0e1b4f2..6fdae4b 100644
--- a/src/ec/google/chromeec/Kconfig
+++ b/src/ec/google/chromeec/Kconfig
@@ -105,3 +105,9 @@ config EC_GOOGLE_CHROMEEC_RTC
help
Enable support for the real-time clock on the Chrome OS EC. This
uses the EC_CMD_RTC_GET_VALUE command to read the current time.
+
+config BUILD_EC_FIRMWARE
+ def_bool y
+ help
+ Build the Chrome EC firmware, include it in the ROM image, and
+ enable EC_SOFTWARE_SYNC if supported.
diff --git a/src/ec/google/chromeec/Makefile.inc b/src/ec/google/chromeec/Makefile.inc
index 58f8b6b..4f70f7a 100644
--- a/src/ec/google/chromeec/Makefile.inc
+++ b/src/ec/google/chromeec/Makefile.inc
@@ -27,6 +27,8 @@ smm-$(CONFIG_VBOOT_VERIFY_FIRMWARE) += vboot_storage.c
romstage-$(CONFIG_VBOOT_VERIFY_FIRMWARE) += vboot_storage.c
verstage-$(CONFIG_VBOOT_VERIFY_FIRMWARE) += vboot_storage.c
+ifeq ($(CONFIG_BUILD_EC_FIRMWARE),y)
+
# These are Chrome EC firmware images that a payload (such as depthcharge) can
# use to update the EC. ecrw is the main embedded controller's firmware,
# pdrw is for a USB PD controller.
@@ -76,4 +78,5 @@ $(obj)/mainboard/$(MAINBOARDDIR)/%.hash: $(obj)/mainboard/$(MAINBOARDDIR)/%
.PHONY: $(obj)/mainboard/$(MAINBOARDDIR)/ecrw $(obj)/mainboard/$(MAINBOARDDIR)/pdrw
-endif
+endif # ifeq ($(CONFIG_BUILD_EC_FIRMWARE),y)
+endif # ifeq ($(CONFIG_EC_GOOGLE_CHROMEEC),y)
diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig
index 3f14880..870cda5 100644
--- a/src/soc/intel/apollolake/Kconfig
+++ b/src/soc/intel/apollolake/Kconfig
@@ -61,7 +61,7 @@ config CHROMEOS
select CHROMEOS_RAMOOPS_DYNAMIC
select CHROMEOS_VBNV_CMOS
select CHROMEOS_VBNV_CMOS_BACKUP_TO_FLASH
- select EC_SOFTWARE_SYNC if EC_GOOGLE_CHROMEEC
+ select EC_SOFTWARE_SYNC if EC_GOOGLE_CHROMEEC && BUILD_EC_FIRMWARE
select SEPARATE_VERSTAGE
select VBOOT_OPROM_MATTERS
select VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT
diff --git a/src/soc/intel/skylake/Kconfig b/src/soc/intel/skylake/Kconfig
index 4c055ea..0e4ddf6 100644
--- a/src/soc/intel/skylake/Kconfig
+++ b/src/soc/intel/skylake/Kconfig
@@ -55,8 +55,8 @@ config CHROMEOS
select CHROMEOS_RAMOOPS_DYNAMIC
select CHROMEOS_VBNV_CMOS
select CHROMEOS_VBNV_CMOS_BACKUP_TO_FLASH
- select EC_SOFTWARE_SYNC if EC_GOOGLE_CHROMEEC
- select VBOOT_EC_SLOW_UPDATE
+ select EC_SOFTWARE_SYNC if EC_GOOGLE_CHROMEEC && BUILD_EC_FIRMWARE
+ select VBOOT_EC_SLOW_UPDATE if EC_SOFTWARE_SYNC
select VBOOT_OPROM_MATTERS
select VBOOT_SAVE_RECOVERY_REASON_ON_REBOOT
select VIRTUAL_DEV_SWITCH
diff --git a/src/vendorcode/google/chromeos/Kconfig b/src/vendorcode/google/chromeos/Kconfig
index f97a4e1..81a3e0c 100644
--- a/src/vendorcode/google/chromeos/Kconfig
+++ b/src/vendorcode/google/chromeos/Kconfig
@@ -97,7 +97,7 @@ config CHROMEOS_RAMOOPS_RAM_SIZE
config EC_SOFTWARE_SYNC
bool "Enable EC software sync"
default n
- depends on VBOOT_VERIFY_FIRMWARE
+ depends on VBOOT_VERIFY_FIRMWARE && BUILD_EC_FIRMWARE
help
EC software sync is a mechanism where the AP helps the EC verify its
firmware similar to how vboot verifies the main system firmware. This
More information about the coreboot-gerrit
mailing list