[coreboot-gerrit] Patch set updated for coreboot: intel/apollolake: Clear sleep type on vboot reboot request

Furquan Shaikh (furquan@google.com) gerrit at coreboot.org
Thu Jun 23 23:10:37 CEST 2016


Furquan Shaikh (furquan at google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/15340

-gerrit

commit 62250d789f81622eff30a54a91dc663b49a14b00
Author: Furquan Shaikh <furquan at google.com>
Date:   Thu Jun 23 14:00:05 2016 -0700

    intel/apollolake: Clear sleep type on vboot reboot request
    
    Add support for vboot_platform_prepare_reboot which is called whenever
    vboot requests reboot of the platform. SLP_TYPE needs to be cleared in
    such conditions since the platform would no longer be in a resuming
    state after reset.
    
    Change-Id: I01392bfda90c9274cd52c1004555d250b1d539b7
    Signed-off-by: Furquan Shaikh <furquan at google.com>
---
 src/soc/intel/apollolake/pmutil.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/soc/intel/apollolake/pmutil.c b/src/soc/intel/apollolake/pmutil.c
index 6e47911..81149a89 100644
--- a/src/soc/intel/apollolake/pmutil.c
+++ b/src/soc/intel/apollolake/pmutil.c
@@ -365,3 +365,13 @@ int vboot_platform_is_resuming(void)
 	typ = (inl(ACPI_PMIO_BASE + PM1_CNT) & SLP_TYP) >> SLP_TYP_SHIFT;
 	return typ == SLP_TYP_S3;
 }
+
+/*
+ * In case of vboot requesting a reboot of the platform, clear sleep type since
+ * the platform would no longer be in a resuming state after reset.
+ */
+void vboot_platform_prepare_reboot(void)
+{
+	const uint16_t port = ACPI_PMIO_BASE + PM1_CNT;
+	outl(inl(port) & ~(SLP_TYP), port);
+}



More information about the coreboot-gerrit mailing list