Comments
Patch
@@ -341,6 +341,7 @@ static void i82801gx_lock_smm(struct device *dev)
u8 reg8;
#endif
+ if (acpi_slp_type != 3) {
#if ENABLE_ACPI_MODE_IN_COREBOOT
printk(BIOS_DEBUG, "Enabling ACPI via APMC:\n");
outb(APM_CNT_ACPI_ENABLE, APM_CNT); // Enable ACPI mode
@@ -350,6 +351,10 @@ static void i82801gx_lock_smm(struct device *dev)
outb(APM_CNT_ACPI_DISABLE, APM_CNT); // Disable ACPI mode
printk(BIOS_DEBUG, "done.\n");
#endif
+ } else {
+ printk(BIOS_DEBUG, "S3 wakeup, enabling ACPI via APMC\n");
+ outb(APM_CNT_ACPI_ENABLE, APM_CNT);
+ }
/* Don't allow evil boot loaders, kernels, or
* userspace applications to deceive us:
*/
disabling ACPI during S3 wakeup breaks ACPI wakeup, as the Host OS is assuming that ACPI is enabled. Signed-off-by: Sven Schnelle <svens@stackframe.org> --- src/southbridge/intel/i82801gx/lpc.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)