Denis Carikli (GNUtoo@no-log.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3304
-gerrit
commit 83b0d43286df43f5260356ea064e5c7f4c0a228a Author: Denis 'GNUtoo' Carikli GNUtoo@no-log.org Date: Sun May 26 18:24:41 2013 +0200
i82801gx: smihandle: sync with southbridge/intel/bd82x6x/smihandler.c
Change-Id: Ic725b169061bd426aa8206dc1d6d31e67cc639f2 Signed-off-by: Denis 'GNUtoo' Carikli GNUtoo@no-log.org --- src/southbridge/intel/i82801gx/smihandler.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/src/southbridge/intel/i82801gx/smihandler.c b/src/southbridge/intel/i82801gx/smihandler.c index 193e96f..c4c6c70 100644 --- a/src/southbridge/intel/i82801gx/smihandler.c +++ b/src/southbridge/intel/i82801gx/smihandler.c @@ -20,6 +20,7 @@ */
#include <types.h> +#include <arch/hlt.h> #include <arch/io.h> #include <console/console.h> #include <cpu/x86/cache.h> @@ -345,6 +346,9 @@ static void southbridge_smi_sleep(unsigned int node, smm_state_save_area_t *stat */ outl(reg32 | SLP_EN, pmbase + PM1_CNT);
+ /* Make sure to stop executing code here for S3/S4/S5 */ + if (slp_typ > 1) + hlt(); /* In most sleep states, the code flow of this function ends at * the line above. However, if we entered sleep state S1 and wake * up again, we will continue to execute code in this function.