|
@@ -6,6 +6,7 @@
|
|
|
|
|
|
#include <common.h>
|
|
|
#include <vbe.h>
|
|
|
+#include <asm/acpi_s3.h>
|
|
|
#include <asm/coreboot_tables.h>
|
|
|
#include <asm/e820.h>
|
|
|
|
|
@@ -19,7 +20,11 @@ int high_table_reserve(void)
|
|
|
gd->arch.high_table_ptr = gd->start_addr_sp;
|
|
|
|
|
|
/* clear the memory */
|
|
|
- memset((void *)gd->arch.high_table_ptr, 0, CONFIG_HIGH_TABLE_SIZE);
|
|
|
+#ifdef CONFIG_HAVE_ACPI_RESUME
|
|
|
+ if (gd->arch.prev_sleep_state != ACPI_S3)
|
|
|
+#endif
|
|
|
+ memset((void *)gd->arch.high_table_ptr, 0,
|
|
|
+ CONFIG_HIGH_TABLE_SIZE);
|
|
|
|
|
|
gd->start_addr_sp &= ~0xf;
|
|
|
|