nb/intel/x4x: Issue a hard reset with empty MRC cache on warm reset
The dram controller cannot fully initialize the dram on warm reset (receive enable calibration consistently fails) therefore requiring cached timings. This option is mostly useful when rebooting after having flashed a new rom which overwrites the mrc cache region. Change-Id: I405c0eca076fe081641ede9a670f734c98cbf8fc Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/27100 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
parent
76f7b79fb8
commit
df946b8696
|
@ -653,6 +653,11 @@ void sdram_initialize(int boot_path, const u8 *spd_map)
|
||||||
/* Failed S3 resume, reset to come up cleanly */
|
/* Failed S3 resume, reset to come up cleanly */
|
||||||
outb(0x6, 0xcf9);
|
outb(0x6, 0xcf9);
|
||||||
halt();
|
halt();
|
||||||
|
} else if (boot_path == BOOT_PATH_WARM_RESET) {
|
||||||
|
/* On warm reset some of dram calibrations fail
|
||||||
|
and therefore requiring valid cached settings */
|
||||||
|
outb(0xe, 0xcf9);
|
||||||
|
halt();
|
||||||
}
|
}
|
||||||
ctrl_cached = NULL;
|
ctrl_cached = NULL;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue