UPSTREAM: mb/intel/d510mo: enable ACPI resume from S3

Replace ram_check with quick_ram_check, because ram_check is slow and
is destructive for dram content.

BUG=none
BRANCH=none
TEST=none

Change-Id: Ibb484e1894fa86c1f47a03a61ff4d0ace1452838
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: 58ab3bed82
Original-Change-Id: I5fb1bfe711549aabb6e597bda22848988a7e9cbe
Original-Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Original-Reviewed-on: https://review.coreboot.org/19416
Original-Tested-by: build bot (Jenkins)
Original-Reviewed-by: Kysti Mlkki <kyosti.malkki@gmail.com>
Original-Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-on: https://chromium-review.googlesource.com/488283
This commit is contained in:
Arthur Heymans 2017-04-21 16:23:30 +02:00 committed by chrome-bot
parent 0145b20054
commit 26e1568faa
2 changed files with 16 additions and 5 deletions

View file

@ -22,6 +22,7 @@ config BOARD_SPECIFIC_OPTIONS
select SOUTHBRIDGE_INTEL_I82801GX select SOUTHBRIDGE_INTEL_I82801GX
select SUPERIO_WINBOND_W83627THG select SUPERIO_WINBOND_W83627THG
select HAVE_ACPI_TABLES select HAVE_ACPI_TABLES
select HAVE_ACPI_RESUME
select BOARD_ROMSIZE_KB_1024 select BOARD_ROMSIZE_KB_1024
select MAINBOARD_HAS_NATIVE_VGA_INIT select MAINBOARD_HAS_NATIVE_VGA_INIT
select INTEL_INT15 select INTEL_INT15

View file

@ -103,6 +103,7 @@ void mainboard_romstage_entry(unsigned long bist)
const u8 spd_addrmap[4] = { 0x50, 0x51, 0, 0 }; const u8 spd_addrmap[4] = { 0x50, 0x51, 0, 0 };
int cbmem_was_initted; int cbmem_was_initted;
int s3resume = 0; int s3resume = 0;
int boot_path;
if (bist == 0) if (bist == 0)
enable_lapic(); enable_lapic();
@ -124,15 +125,24 @@ void mainboard_romstage_entry(unsigned long bist)
post_code(0x30); post_code(0x30);
s3resume = southbridge_detect_s3_resume();
if (s3resume) {
boot_path = BOOT_PATH_RESUME;
} else {
if (MCHBAR32(0xf14) & (1 << 8)) /* HOT RESET */
boot_path = BOOT_PATH_RESET;
else
boot_path = BOOT_PATH_NORMAL;
}
printk(BIOS_DEBUG, "Initializing memory\n"); printk(BIOS_DEBUG, "Initializing memory\n");
if (MCHBAR32(0xf14) & (1 << 8)) /* HOT RESET */ sdram_initialize(boot_path, spd_addrmap);
sdram_initialize(BOOT_PATH_RESET, spd_addrmap);
else
sdram_initialize(BOOT_PATH_NORMAL, spd_addrmap);
printk(BIOS_DEBUG, "Memory initialized\n"); printk(BIOS_DEBUG, "Memory initialized\n");
post_code(0x31); post_code(0x31);
ram_check(0x200000,0x300000);
quick_ram_check();
rcba_config(); rcba_config();