From patchwork Sun Jun 5 13:51:05 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: i82801gx: enable ACPI during S3 resume Date: Sun, 05 Jun 2011 13:51:05 -0000 From: Sven Schnelle X-Patchwork-Id: 3051 Message-Id: <1307281865-32298-1-git-send-email-svens@stackframe.org> To: coreboot@coreboot.org Cc: svens@stackframe.org disabling ACPI during S3 wakeup breaks ACPI wakeup, as the Host OS is assuming that ACPI is enabled. Signed-off-by: Sven Schnelle --- src/southbridge/intel/i82801gx/lpc.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/src/southbridge/intel/i82801gx/lpc.c b/src/southbridge/intel/i82801gx/lpc.c index 394f161..b4b2f41 100644 --- a/src/southbridge/intel/i82801gx/lpc.c +++ b/src/southbridge/intel/i82801gx/lpc.c @@ -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: */