aboutsummaryrefslogtreecommitdiff
path: root/src/vendorcode/google/chromeos/vboot_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/vendorcode/google/chromeos/vboot_common.c')
-rw-r--r--src/vendorcode/google/chromeos/vboot_common.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/vendorcode/google/chromeos/vboot_common.c b/src/vendorcode/google/chromeos/vboot_common.c
index ac16382186..448aad6db0 100644
--- a/src/vendorcode/google/chromeos/vboot_common.c
+++ b/src/vendorcode/google/chromeos/vboot_common.c
@@ -77,6 +77,21 @@ int vboot_enable_recovery(void)
return vboot_handoff_flag(VB_INIT_OUT_ENABLE_RECOVERY);
}
+int vboot_recovery_reason(void)
+{
+ struct vboot_handoff *vbho;
+ VbSharedDataHeader *sd;
+
+ vbho = cbmem_find(CBMEM_ID_VBOOT_HANDOFF);
+
+ if (vbho == NULL)
+ return 0;
+
+ sd = (VbSharedDataHeader *)vbho->shared_data;
+
+ return sd->recovery_reason;
+}
+
void vboot_reboot(void)
{
if (IS_ENABLED(CONFIG_CONSOLE_CBMEM_DUMP_TO_UART))