summaryrefslogtreecommitdiff
path: root/src/northbridge
diff options
context:
space:
mode:
authorAngel Pons <th3fanbus@gmail.com>2020-04-15 15:01:53 +0200
committerPatrick Georgi <pgeorgi@google.com>2020-04-22 13:46:42 +0000
commite8abb5ab8887969498f9953e76b7e0f4c68d3e47 (patch)
treecaa873b8cb43e06833f2f130c6030aea7f181bf2 /src/northbridge
parent52353d09fc981c48b58ebf8bf44f18ad12e119d2 (diff)
nb/intel/haswell: Deprecate WDB params in pei_data
The WDB (Write Data Buffer) is a data region in CAR, used as a scratchpad in the read and write training algorithms of memory initialization. Both SNB and IVB use this buffer, but HSW does not. Unlike earlier chipsets, Haswell contains much more in-hardware memory training machinery, known as REUT (Robust Electrical Unified Testing). Among other changes, the REUT hardware has a pattern storage buffer, which renders the need for a pattern storage buffer in CAR obsolete. Deprecate the WDB-related parameters in the pei_data structure for Haswell, as they are leftovers from the previous generation's MRC. Remove them from the mainboards, and explain why they are not required. Because the MRC ABI has to remain the same, the layout of pei_data must not be changed, so rename the WDB parameters instead of deleting them. Tested on Asrock B85M Pro4, still boots with the MRC from Google Wolf. Change-Id: I7acc9353a22f8c6f9fe6407617162f35849a79dd Signed-off-by: Angel Pons <th3fanbus@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/40406 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Diffstat (limited to 'src/northbridge')
-rw-r--r--src/northbridge/intel/haswell/pei_data.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/northbridge/intel/haswell/pei_data.h b/src/northbridge/intel/haswell/pei_data.h
index 6e537403b3..17b7c182fa 100644
--- a/src/northbridge/intel/haswell/pei_data.h
+++ b/src/northbridge/intel/haswell/pei_data.h
@@ -73,8 +73,9 @@ struct pei_data
uint32_t epbar;
uint32_t pciexbar;
uint16_t smbusbar;
- uint32_t wdbbar;
- uint32_t wdbsize;
+ /* Unused by HSW MRC, but changes to the memory layout of this struct break the ABI */
+ uint32_t _unused_wdbbar;
+ uint32_t _unused_wdbsize;
uint32_t hpet_address;
uint32_t rcba;
uint32_t pmbase;