diff options
author | Karthikeyan Ramasubramanian <kramasub@google.com> | 2023-07-13 11:12:16 -0600 |
---|---|---|
committer | Martin Roth <martin.roth@amd.corp-partner.google.com> | 2023-07-14 18:16:03 +0000 |
commit | 2118fb1f69009d65abc0d0ab7faad0b7fc5a0bdc (patch) | |
tree | e286ac8ec32d8b5a53d55935dcf51b32172aa89d | |
parent | ebafd4b905d913c37274ce97ff21c8f26ffabd78 (diff) |
soc/amd/phoenix: Disable APOB Cache
There is a data abort in ABL when the memory training data is used from
APOB Cache. Disable APOB Cache until the cause is identified. The
downside of this change is that the memory training happens in every
boot cycle.
BUG=b:290763369
TEST=Build BIOS image and boot to OS in Myst. Trigger a reboot from AP
console and ensure that the system boots to OS.
Change-Id: I20f4f40cdaac68bca6e121e3a238d13fe80d0d3c
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76422
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
-rw-r--r-- | src/soc/amd/common/block/include/amdblocks/apob_cache.h | 7 | ||||
-rw-r--r-- | src/soc/amd/phoenix/Kconfig | 5 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/soc/amd/common/block/include/amdblocks/apob_cache.h b/src/soc/amd/common/block/include/amdblocks/apob_cache.h index e91720fa61..bbb65a72e2 100644 --- a/src/soc/amd/common/block/include/amdblocks/apob_cache.h +++ b/src/soc/amd/common/block/include/amdblocks/apob_cache.h @@ -3,8 +3,15 @@ #ifndef AMD_BLOCK_APOB_CACHE_H #define AMD_BLOCK_APOB_CACHE_H +#include <stddef.h> + +#if CONFIG(SOC_AMD_COMMON_BLOCK_APOB) /* Start loading the APOB as soon as possible so it is ready by the time we need it. */ void start_apob_cache_read(void); void *soc_fill_apob_cache(void); +#else /* CONFIG(SOC_AMD_COMMON_BLOCK_APOB) */ +static inline void start_apob_cache_read(void) {} +static inline void *soc_fill_apob_cache(void) { return NULL; } +#endif /* CONFIG(SOC_AMD_COMMON_BLOCK_APOB) */ #endif /* AMD_BLOCK_APOB_CACHE_H */ diff --git a/src/soc/amd/phoenix/Kconfig b/src/soc/amd/phoenix/Kconfig index 5f4e5d174e..8c4280bbc6 100644 --- a/src/soc/amd/phoenix/Kconfig +++ b/src/soc/amd/phoenix/Kconfig @@ -42,8 +42,9 @@ config SOC_AMD_PHOENIX select SOC_AMD_COMMON_BLOCK_ACPI_GPIO # TODO: Check if this is still correct select SOC_AMD_COMMON_BLOCK_ACPI_IVRS # TODO: Check if this is still correct select SOC_AMD_COMMON_BLOCK_AOAC - select SOC_AMD_COMMON_BLOCK_APOB - select SOC_AMD_COMMON_BLOCK_APOB_HASH + # TODO (b/290763369): Enable APOB after resolving data_abort in ABL + # select SOC_AMD_COMMON_BLOCK_APOB + # select SOC_AMD_COMMON_BLOCK_APOB_HASH select SOC_AMD_COMMON_BLOCK_BANKED_GPIOS select SOC_AMD_COMMON_BLOCK_CPUFREQ_FAM17H_19H select SOC_AMD_COMMON_BLOCK_DATA_FABRIC |