drivers/intel/fsp2_0: Ensure EC is in right mode before memory init
If EC_GOOGLE_CHROMEEC is enabled, ensure that the EC is in correct mode before running memory init. This saves additional memory training required in recovery path because of reboot later in ramstage. BUG=chrome-os-partner:54245 Change-Id: Ic71c054afdcd0001cea95563fe513783b56f3e60 Signed-off-by: Furquan Shaikh <furquan@google.com> Reviewed-on: https://review.coreboot.org/16034 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
44d0ddcc81
commit
35cca5a923
|
@ -17,6 +17,7 @@
|
||||||
#include <cbfs.h>
|
#include <cbfs.h>
|
||||||
#include <cbmem.h>
|
#include <cbmem.h>
|
||||||
#include <console/console.h>
|
#include <console/console.h>
|
||||||
|
#include <ec/google/chromeec/ec.h>
|
||||||
#include <elog.h>
|
#include <elog.h>
|
||||||
#include <fsp/api.h>
|
#include <fsp/api.h>
|
||||||
#include <fsp/util.h>
|
#include <fsp/util.h>
|
||||||
|
@ -295,6 +296,14 @@ void fsp_memory_init(bool s3wake)
|
||||||
if (IS_ENABLED(CONFIG_ELOG_BOOT_COUNT) && !s3wake)
|
if (IS_ENABLED(CONFIG_ELOG_BOOT_COUNT) && !s3wake)
|
||||||
boot_count_increment();
|
boot_count_increment();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Before doing any memory init/training, ensure that the EC is in the
|
||||||
|
* right mode. This saves an additional memory training when in recovery
|
||||||
|
* mode.
|
||||||
|
*/
|
||||||
|
if (IS_ENABLED(CONFIG_EC_GOOGLE_CHROMEEC))
|
||||||
|
google_chromeec_early_init();
|
||||||
|
|
||||||
if (cbfs_boot_locate(&file_desc, name, NULL)) {
|
if (cbfs_boot_locate(&file_desc, name, NULL)) {
|
||||||
printk(BIOS_CRIT, "Could not locate %s in CBFS\n", name);
|
printk(BIOS_CRIT, "Could not locate %s in CBFS\n", name);
|
||||||
die("FSPM not available!\n");
|
die("FSPM not available!\n");
|
||||||
|
|
Loading…
Reference in New Issue