Stefan Reinauer (stefan.reinauer(a)coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/852
-gerrit
commit 460069fb2ffab71a7e9dfd85a8a1020e74b47f07
Author: Stefan Reinauer <stefan.reinauer(a)coreboot.org>
Date: Tue Apr 3 23:28:22 2012 +0200
Add support for mainboard specific suspend/resume handler
Some mainboards (most likely laptops) will need mainboard specific functions
called upon a resume from suspend.
Change-Id: If1518a4b016bba776643adaef0ae64ff49f57e51
Signed-off-by: Stefan Reinauer <reinauer(a)google.com>
---
src/arch/x86/boot/acpi.c | 6 +++++-
src/arch/x86/include/arch/acpi.h | 1 +
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/src/arch/x86/boot/acpi.c b/src/arch/x86/boot/acpi.c
index f81127a..f17e73e 100644
--- a/src/arch/x86/boot/acpi.c
+++ b/src/arch/x86/boot/acpi.c
@@ -474,8 +474,12 @@ void suspend_resume(void)
/* If we happen to be resuming find wakeup vector and jump to OS. */
wake_vec = acpi_find_wakeup_vector();
- if (wake_vec)
+ if (wake_vec) {
+ /* Call mainboard resume handler first, if defined. */
+ if (mainboard_suspend_resume)
+ mainboard_suspend_resume();
acpi_jump_to_wakeup(wake_vec);
+ }
}
/* This is to be filled by SB code - startup value what was found. */
diff --git a/src/arch/x86/include/arch/acpi.h b/src/arch/x86/include/arch/acpi.h
index 504d71b..8c521af 100644
--- a/src/arch/x86/include/arch/acpi.h
+++ b/src/arch/x86/include/arch/acpi.h
@@ -417,6 +417,7 @@ void acpi_write_rsdp(acpi_rsdp_t *rsdp, acpi_rsdt_t *rsdt, acpi_xsdt_t *xsdt);
extern u8 acpi_slp_type;
void suspend_resume(void);
+void __attribute__((weak)) mainboard_suspend_resume(void);
void *acpi_find_wakeup_vector(void);
void *acpi_get_wakeup_rsdp(void);
void acpi_jump_to_wakeup(void *wakeup_addr);
Stefan Reinauer (stefan.reinauer(a)coreboot.org) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/851
-gerrit
commit b11cee23d99ffe5dcbfea2758bd1ee5cff19911b
Author: Stefan Reinauer <stefan.reinauer(a)coreboot.org>
Date: Tue Apr 3 18:53:48 2012 +0200
Drop verified boot code from acpi.c
We changed our verified boot initialization to run from romstage,
as that allows faster boot times and does not add as much ChromeOS
specific code to generic files.
Change-Id: Id4164c26d524ea0ffce34467cf91379a19a4b2f6
Signed-off-by: Stefan Reinauer <reinauer(a)google.com>
---
src/arch/x86/boot/acpi.c | 8 --------
1 files changed, 0 insertions(+), 8 deletions(-)
diff --git a/src/arch/x86/boot/acpi.c b/src/arch/x86/boot/acpi.c
index ab67d38..f81127a 100644
--- a/src/arch/x86/boot/acpi.c
+++ b/src/arch/x86/boot/acpi.c
@@ -35,9 +35,6 @@
#if CONFIG_COLLECT_TIMESTAMPS
#include <timestamp.h>
#endif
-#if CONFIG_CHROMEOS
-#include <vendorcode/google/chromeos/chromeos.h>
-#endif
u8 acpi_checksum(u8 *table, u32 length)
{
@@ -530,11 +527,6 @@ void *acpi_find_wakeup_vector(void)
if (!acpi_is_wakeup())
return NULL;
-#if CONFIG_CHROMEOS
- printk(BIOS_DEBUG, "Verified boot TPM initialization.\n");
- init_vboot();
-#endif
-
printk(BIOS_DEBUG, "Trying to find the wakeup vector...\n");
/* Find RSDP. */