summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/vboot/vboot.c3
-rw-r--r--common/vboot_hash.c5
2 files changed, 8 insertions, 0 deletions
diff --git a/common/vboot/vboot.c b/common/vboot/vboot.c
index 38d57ed45a..8a0e039aa2 100644
--- a/common/vboot/vboot.c
+++ b/common/vboot/vboot.c
@@ -10,6 +10,7 @@
#include "battery.h"
#include "charge_manager.h"
#include "chipset.h"
+#include "clock.h"
#include "console.h"
#include "flash.h"
#include "hooks.h"
@@ -243,8 +244,10 @@ void vboot_main(void)
return;
}
+ clock_enable_module(MODULE_FAST_CPU, 1);
/* If successful, this won't return. */
verify_and_jump();
+ clock_enable_module(MODULE_FAST_CPU, 0);
/* Failed to jump. Need recovery. */
request_recovery();
diff --git a/common/vboot_hash.c b/common/vboot_hash.c
index b7f0be32f2..93a8597c40 100644
--- a/common/vboot_hash.c
+++ b/common/vboot_hash.c
@@ -5,6 +5,7 @@
/* Verified boot hash computing module for Chrome EC */
+#include "clock.h"
#include "common.h"
#include "console.h"
#include "flash.h"
@@ -118,6 +119,7 @@ static void vboot_hash_next_chunk(void)
/* Handle abort */
if (want_abort) {
in_progress = 0;
+ clock_enable_module(MODULE_FAST_CPU, 0);
vboot_hash_abort();
return;
}
@@ -143,6 +145,8 @@ static void vboot_hash_next_chunk(void)
in_progress = 0;
+ clock_enable_module(MODULE_FAST_CPU, 0);
+
/* Handle receiving abort during finalize */
if (want_abort)
vboot_hash_abort();
@@ -176,6 +180,7 @@ static int vboot_hash_start(uint32_t offset, uint32_t size,
return EC_ERROR_INVAL;
}
+ clock_enable_module(MODULE_FAST_CPU, 1);
/* Save new hash request */
data_offset = offset;
data_size = size;