Don't re-init EBDA in S3 resume path.

I forgot to implement this the first time around.

It does not seem to cause noticeable problems but
in heavy suspend/resume testing I saw a suspicious
crash in the kernel when trying to bring one of the
CPUs back online.

Change-Id: I950ac260f251e2683693d9bd20a0dd5e041aa26e
Signed-off-by: Duncan Laurie <dlaurie@google.com>
Reviewed-on: http://review.coreboot.org/770
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Duncan Laurie 2012-01-18 10:05:18 -08:00 committed by Stefan Reinauer
parent b4aaaa7632
commit 67e6c2aaf4
1 changed files with 9 additions and 0 deletions

View File

@ -23,9 +23,18 @@
#include <string.h> #include <string.h>
#include <arch/io.h> #include <arch/io.h>
#include <arch/ebda.h> #include <arch/ebda.h>
#if CONFIG_HAVE_ACPI_RESUME
#include <arch/acpi.h>
#endif
void setup_ebda(u32 low_memory_size, u16 ebda_segment, u16 ebda_size) void setup_ebda(u32 low_memory_size, u16 ebda_segment, u16 ebda_size)
{ {
#if CONFIG_HAVE_ACPI_RESUME
/* Skip in S3 resume path */
if (acpi_slp_type == 3)
return;
#endif
if (!low_memory_size || !ebda_segment || !ebda_size) if (!low_memory_size || !ebda_segment || !ebda_size)
return; return;