summaryrefslogtreecommitdiff
path: root/src/mainboard
diff options
context:
space:
mode:
authorKyösti Mälkki <kyosti.malkki@gmail.com>2014-01-04 11:02:45 +0200
committerKyösti Mälkki <kyosti.malkki@gmail.com>2014-01-15 15:33:54 +0100
commit78938481eb3b4a11950d7c37627bf4704eb6e7da (patch)
tree326709d3d340e5c7a0238392fb29a2f6ad06b5b9 /src/mainboard
parent1e5cacc8f81666818450ec2ca783367af2fdf56c (diff)
downloadcoreboot-78938481eb3b4a11950d7c37627bf4704eb6e7da.tar.xz
Intel (sandy/ivy): Avoid calling cbmem_initialize() twice
Delay the copying of MRC cache data from CAR to CBMEM until after sdram_initialize() returns and cbmem_initialize() completes. Calling cbmem_initialize() twice would complicate the decision logic of when CBMEM area needs to be wiped clean. Change-Id: Ic59e94cb2436293efc47b52f7418f5dbf76c714a Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/4666 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@google.com>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/butterfly/romstage.c2
-rw-r--r--src/mainboard/google/link/romstage.c2
-rw-r--r--src/mainboard/google/parrot/romstage.c2
-rw-r--r--src/mainboard/google/stout/romstage.c2
-rw-r--r--src/mainboard/intel/emeraldlake2/romstage.c2
-rw-r--r--src/mainboard/kontron/ktqm77/romstage.c2
-rw-r--r--src/mainboard/samsung/lumpy/romstage.c2
-rw-r--r--src/mainboard/samsung/stumpy/romstage.c2
8 files changed, 16 insertions, 0 deletions
diff --git a/src/mainboard/google/butterfly/romstage.c b/src/mainboard/google/butterfly/romstage.c
index 67e509ebee..b7ec01107d 100644
--- a/src/mainboard/google/butterfly/romstage.c
+++ b/src/mainboard/google/butterfly/romstage.c
@@ -245,6 +245,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/google/link/romstage.c b/src/mainboard/google/link/romstage.c
index 1aa309a4fa..1e4b42c393 100644
--- a/src/mainboard/google/link/romstage.c
+++ b/src/mainboard/google/link/romstage.c
@@ -289,6 +289,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/google/parrot/romstage.c b/src/mainboard/google/parrot/romstage.c
index 2fe61d6449..b6bacaedfe 100644
--- a/src/mainboard/google/parrot/romstage.c
+++ b/src/mainboard/google/parrot/romstage.c
@@ -245,6 +245,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/google/stout/romstage.c b/src/mainboard/google/stout/romstage.c
index a0700af2eb..a775e69cdf 100644
--- a/src/mainboard/google/stout/romstage.c
+++ b/src/mainboard/google/stout/romstage.c
@@ -297,6 +297,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/intel/emeraldlake2/romstage.c b/src/mainboard/intel/emeraldlake2/romstage.c
index f116668833..3534700236 100644
--- a/src/mainboard/intel/emeraldlake2/romstage.c
+++ b/src/mainboard/intel/emeraldlake2/romstage.c
@@ -297,6 +297,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/kontron/ktqm77/romstage.c b/src/mainboard/kontron/ktqm77/romstage.c
index 773079d4e8..15c10b29ba 100644
--- a/src/mainboard/kontron/ktqm77/romstage.c
+++ b/src/mainboard/kontron/ktqm77/romstage.c
@@ -296,6 +296,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/samsung/lumpy/romstage.c b/src/mainboard/samsung/lumpy/romstage.c
index a4f0c4291f..1f4fd02574 100644
--- a/src/mainboard/samsung/lumpy/romstage.c
+++ b/src/mainboard/samsung/lumpy/romstage.c
@@ -318,6 +318,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so
diff --git a/src/mainboard/samsung/stumpy/romstage.c b/src/mainboard/samsung/stumpy/romstage.c
index ee715e7a95..7630c05549 100644
--- a/src/mainboard/samsung/stumpy/romstage.c
+++ b/src/mainboard/samsung/stumpy/romstage.c
@@ -325,6 +325,8 @@ void main(unsigned long bist)
MCHBAR16(SSKPD) = 0xCAFE;
cbmem_was_initted = !cbmem_initialize();
+ if (boot_mode!=2)
+ save_mrc_data(&pei_data);
#if CONFIG_HAVE_ACPI_RESUME
/* If there is no high memory area, we didn't boot before, so