diff options
author | Aaron Durbin <adurbin@chromium.org> | 2018-10-12 12:33:34 -0600 |
---|---|---|
committer | Aaron Durbin <adurbin@chromium.org> | 2018-10-15 13:56:01 +0000 |
commit | 6db1b2fc24e5634d139d34c93813c2f703583494 (patch) | |
tree | 79e6807baedb83972c1a87e24d5f533db2a15872 | |
parent | b1ba6624cd54875a836494db4b2bd208c715037f (diff) |
vc/google/chromeos/ec: remove EC hibernate in cr50 update path
More platforms are not able to hibernate under certain circumstances,
such as when AC is plugged. This original path was conservatively put in
to prevent potential damage when cr50-update-caused asynchronous resets
occur. Julius' compelling argument that async resets from recovery mode
requests should have enough coverage of the design over the course of
project development. Remove the hibernate path and assume all is well
going forward.
Change-Id: I37121e75ff4e6abcb41d8534a1eccf0788ce2ea2
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/29076
Reviewed-by: Justin TerAvest <teravest@chromium.org>
Reviewed-by: Jett Rink <jettrink@chromium.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r-- | src/mainboard/google/poppy/Kconfig | 1 | ||||
-rw-r--r-- | src/security/tpm/tss/vendor/cr50/Kconfig | 6 | ||||
-rw-r--r-- | src/vendorcode/google/chromeos/cr50_enable_update.c | 10 |
3 files changed, 1 insertions, 16 deletions
diff --git a/src/mainboard/google/poppy/Kconfig b/src/mainboard/google/poppy/Kconfig index e75782268e..48ad6a5297 100644 --- a/src/mainboard/google/poppy/Kconfig +++ b/src/mainboard/google/poppy/Kconfig @@ -170,7 +170,6 @@ config VARIANT_SPECIFIC_OPTIONS_NAMI select DRIVERS_SPI_ACPI select EXCLUDE_NATIVE_SD_INTERFACE select MAINBOARD_HAS_SPI_TPM_CR50 - select DISABLE_POWER_OFF_EC_ON_CR50_UPDATE config VARIANT_SPECIFIC_OPTIONS_NAUTILUS def_bool n diff --git a/src/security/tpm/tss/vendor/cr50/Kconfig b/src/security/tpm/tss/vendor/cr50/Kconfig index fcbf47b9cf..4d40c08da6 100644 --- a/src/security/tpm/tss/vendor/cr50/Kconfig +++ b/src/security/tpm/tss/vendor/cr50/Kconfig @@ -25,10 +25,4 @@ config POWER_OFF_ON_CR50_UPDATE help Power off machine while waiting for CR50 update to take effect. -config DISABLE_POWER_OFF_EC_ON_CR50_UPDATE - bool - default n - help - Disable powering off EC while waiting for CR50 update to take effect. - endif diff --git a/src/vendorcode/google/chromeos/cr50_enable_update.c b/src/vendorcode/google/chromeos/cr50_enable_update.c index d07a9a37a5..06416bda76 100644 --- a/src/vendorcode/google/chromeos/cr50_enable_update.c +++ b/src/vendorcode/google/chromeos/cr50_enable_update.c @@ -59,16 +59,8 @@ static void enable_update(void *unused) printk(BIOS_INFO, "Waiting for CR50 reset to pick up update.\n"); - if (IS_ENABLED(CONFIG_POWER_OFF_ON_CR50_UPDATE)) { - if (IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC) && - !IS_ENABLED(CONFIG_DISABLE_POWER_OFF_EC_ON_CR50_UPDATE)) { - printk(BIOS_INFO, "Hibernating EC. Clearing AP_OFF.\n"); - google_chromeec_reboot(0, - EC_REBOOT_HIBERNATE_CLEAR_AP_OFF, - EC_REBOOT_FLAG_ON_AP_SHUTDOWN); - } + if (IS_ENABLED(CONFIG_POWER_OFF_ON_CR50_UPDATE)) poweroff(); - } halt(); } BOOT_STATE_INIT_ENTRY(BS_PAYLOAD_LOAD, BS_ON_ENTRY, enable_update, NULL); |