cpu/amd/agesa: Use common MRC_CACHE code to save S3 data
Use the common code to save data for fast boot or S3 resume. An notable improvement that comes with this, is that the same 4K page is not rewritten all the time. This prolongs the hardware's life. TESTED on pcengines/apu1 and lenovo/g505s: S3 resume works fine. Change-Id: I0f4f36dcead52a6c550fb5e606772e0a99029872 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/44295 Reviewed-by: Mike Banon <mikebdp2@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-by: Michał Żygowski <michal.zygowski@3mdeb.com>
This commit is contained in:
committed by
Michał Żygowski
parent
750d57ff5d
commit
b97a303fa6
@@ -13,6 +13,7 @@ config CPU_AMD_AGESA
|
||||
select LAPIC_MONOTONIC_TIMER
|
||||
select SPI_FLASH if HAVE_ACPI_RESUME
|
||||
select SSE2
|
||||
select CACHE_MRC_SETTINGS
|
||||
|
||||
if CPU_AMD_AGESA
|
||||
|
||||
@@ -44,14 +45,6 @@ config ENABLE_MRC_CACHE
|
||||
Try to restore memory training results
|
||||
from non-volatile memory.
|
||||
|
||||
config S3_DATA_POS
|
||||
hex
|
||||
default 0xFFFF0000
|
||||
|
||||
config S3_DATA_SIZE
|
||||
int
|
||||
default 4096
|
||||
|
||||
endif # CPU_AMD_AGESA
|
||||
|
||||
source "src/cpu/amd/agesa/family14/Kconfig"
|
||||
|
@@ -3,18 +3,3 @@
|
||||
subdirs-$(CONFIG_CPU_AMD_AGESA_FAMILY14) += family14
|
||||
subdirs-$(CONFIG_CPU_AMD_AGESA_FAMILY15_TN) += family15tn
|
||||
subdirs-$(CONFIG_CPU_AMD_AGESA_FAMILY16_KB) += family16kb
|
||||
|
||||
ifeq ($(CONFIG_HAVE_ACPI_RESUME), y)
|
||||
|
||||
$(obj)/coreboot_s3nv.rom: $(obj)/config.h
|
||||
echo " S3 NVRAM $(CONFIG_S3_DATA_POS) (S3 storage area)"
|
||||
# force C locale, so cygwin awk doesn't try to interpret the 0xff below as UTF-8 (or worse)
|
||||
printf %d $(CONFIG_S3_DATA_SIZE) | LC_ALL=C awk '{for (i=0; i<$$1; i++) {printf "%c", 255}}' > $@.tmp
|
||||
mv $@.tmp $@
|
||||
|
||||
cbfs-files-y += s3nv
|
||||
s3nv-file := $(obj)/coreboot_s3nv.rom
|
||||
s3nv-position := $(CONFIG_S3_DATA_POS)
|
||||
s3nv-type := raw
|
||||
|
||||
endif # CONFIG_HAVE_ACPI_RESUME == y
|
||||
|
Reference in New Issue
Block a user