mb/google/kahlee/OemCustomize.c: Disable bank interleave

AmdInitPost returns AGESA_WARNING. This is because AGESA by default
enables bank interleaving, while the HW does not meet the requirements
for it. Disable bank interleaving, thus clearing AGESA_WARNING.

BUG=b:73118857
TEST= Build and run kahlee. Search for "agesawrapper_amdinitpost()
returned AGESA_SUCCESS".

Change-Id: Ice9270f9b10051dbb622344919223cf5439f5d7b
Signed-off-by: Richard Spiegel <richard.spiegel@silverbackltd.com>
Reviewed-on: https://review.coreboot.org/23763
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
Richard Spiegel 2018-02-16 14:33:59 -07:00 committed by Martin Roth
parent 5268b76801
commit 9b3da9fc57
1 changed files with 11 additions and 0 deletions

View File

@ -39,4 +39,15 @@ void OemPostParams(AMD_POST_PARAMS *PostParams)
{ {
PostParams->MemConfig.PlatformMemoryConfiguration = PostParams->MemConfig.PlatformMemoryConfiguration =
(PSO_ENTRY *)DDR4PlatformMemoryConfiguration; (PSO_ENTRY *)DDR4PlatformMemoryConfiguration;
/*
* Bank interleaving is enabled by default in AGESA. However, from AMD's
* explanation, bank interleaving is really chip select interleave,
* requiring 2 chip select arriving to the DIMM (rank interleaving). As
* both kahlee and grunt are hardware limited to a single chip select
* arriving at the DIMM, interleave will not work. This causes AGESA to
* throw a warning. To avoid the warning, interleaving needs to be
* disabled.
*/
PostParams->MemConfig.EnableBankIntlv = FALSE;
} }