[coreboot-gerrit] New patch to review for coreboot: chromeec: Add kconfig entry for EC PD support

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Mon Sep 7 18:43:18 CET 2015


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11571

-gerrit

commit 5ed2f05a79f54f662076ff759a6105fe216b87d3
Author: Duncan Laurie <dlaurie at chromium.org>
Date:   Fri Sep 4 10:14:18 2015 -0700

    chromeec: Add kconfig entry for EC PD support
    
    Add a kconfig entry to indicate that a board has a PD chip and
    try to put it in RO mode before the EC during early init.
    
    BUG=chrome-os-partner:40635
    BRANCH=none
    TEST=emerge-glados coreboot
    
    Change-Id: I170271de9b929fcb73d6b0e09171385a6d23f153
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: 17e2d13261f4e35a8148039e324e22ec1da64b3c
    Original-Change-Id: I44eed5401beb1dc286e316cf0cc958da791580a5
    Original-Signed-off-by: Duncan Laurie <dlaurie at chromium.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/297747
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
---
 src/ec/google/chromeec/Kconfig |  6 ++++++
 src/ec/google/chromeec/ec.c    | 11 ++++++++---
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/ec/google/chromeec/Kconfig b/src/ec/google/chromeec/Kconfig
index 25cc0e4..2a86f33 100644
--- a/src/ec/google/chromeec/Kconfig
+++ b/src/ec/google/chromeec/Kconfig
@@ -47,6 +47,12 @@ config EC_GOOGLE_CHROMEEC_MEC
 	help
 	  Microchip EC variant for LPC register access.
 
+config EC_GOOGLE_CHROMEEC_PD
+	depends on EC_GOOGLE_CHROMEEC
+	def_bool n
+	help
+	  Indicates that Google's Chrome USB PD chip is present.
+
 config EC_GOOGLE_CHROMEEC_SPI
 	depends on EC_GOOGLE_CHROMEEC
 	def_bool n
diff --git a/src/ec/google/chromeec/ec.c b/src/ec/google/chromeec/ec.c
index de58d97..e1006dc 100644
--- a/src/ec/google/chromeec/ec.c
+++ b/src/ec/google/chromeec/ec.c
@@ -163,9 +163,14 @@ void google_chromeec_check_ec_image(int expected_type)
 /* Check for recovery mode and ensure EC is in RO */
 void google_chromeec_early_init(void)
 {
-	/* If in recovery ensure EC is running RO firmware. */
-	if (recovery_mode_enabled()) {
-		google_chromeec_check_ec_image(EC_IMAGE_RO);
+	if (IS_ENABLED(CONFIG_CHROMEOS)) {
+		/* Check USB PD chip state first */
+		if (IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC_PD))
+			google_chromeec_early_pd_init();
+
+		/* If in recovery ensure EC is running RO firmware. */
+		if (recovery_mode_enabled())
+			google_chromeec_check_ec_image(EC_IMAGE_RO);
 	}
 }
 



More information about the coreboot-gerrit mailing list