ACPI S3: Remove HIGH_MEMORY_SAVE where possible
Add implementation to use actual requirements of ramstage size for S3 resume backup in CBMEM. The backup covers complete pages of 4 KiB. Only the required amount of low memory is backed up when ACPI_TINY_LOWMEM_BACKUP is selected for the platform. Enable this option for AGESA and binaryPI, other platforms (without RELOCATABLE_RAMSTAGE) currently keep their romstage ramstack in low memory for s3 resume path. Change-Id: Ide7ce013f3727c2928cdb00fbcc7e7e84e859ff1 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/15255 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Tested-by: build bot (Jenkins) Tested-by: Raptor Engineering Automated Test Stand <noreply@raptorengineeringinc.com>
This commit is contained in:
@@ -31,6 +31,7 @@ config CPU_AMD_AGESA
|
||||
select UDELAY_LAPIC
|
||||
select LAPIC_MONOTONIC_TIMER
|
||||
select SPI_FLASH if HAVE_ACPI_RESUME
|
||||
select ACPI_TINY_LOWMEM_BACKUP
|
||||
|
||||
if CPU_AMD_AGESA
|
||||
|
||||
|
@@ -69,7 +69,7 @@ static void prepare_romstage_ramstack(int s3resume)
|
||||
print_car_debug("Prepare CAR migration and stack regions...");
|
||||
|
||||
if (s3resume) {
|
||||
void *resume_backup_memory = cbmem_find(CBMEM_ID_RESUME);
|
||||
void *resume_backup_memory = acpi_backup_container(CONFIG_RAMBASE, HIGH_MEMORY_SAVE);
|
||||
if (resume_backup_memory)
|
||||
memcpy_(resume_backup_memory + HIGH_MEMORY_SAVE - backup_top,
|
||||
(void *)(CONFIG_RAMTOP - backup_top), backup_top);
|
||||
@@ -85,7 +85,7 @@ static void prepare_ramstage_region(int s3resume)
|
||||
print_car_debug("Prepare ramstage memory region...");
|
||||
|
||||
if (s3resume) {
|
||||
void *resume_backup_memory = cbmem_find(CBMEM_ID_RESUME);
|
||||
void *resume_backup_memory = acpi_backup_container(CONFIG_RAMBASE, HIGH_MEMORY_SAVE);
|
||||
if (resume_backup_memory)
|
||||
memcpy_(resume_backup_memory, (void *) CONFIG_RAMBASE,
|
||||
HIGH_MEMORY_SAVE - backup_top);
|
||||
|
@@ -28,6 +28,7 @@ config CPU_AMD_PI
|
||||
select UDELAY_LAPIC
|
||||
select LAPIC_MONOTONIC_TIMER
|
||||
select SPI_FLASH if HAVE_ACPI_RESUME
|
||||
select ACPI_TINY_LOWMEM_BACKUP
|
||||
|
||||
if CPU_AMD_PI
|
||||
|
||||
|
Reference in New Issue
Block a user