[coreboot-gerrit] Patch set updated for coreboot: 773c299 sandybridge: Add a parameter to skip mrc.cache usage.
Vladimir Serbinenko (phcoder@gmail.com)
gerrit at coreboot.org
Sun Jan 12 18:47:50 CET 2014
Vladimir Serbinenko (phcoder at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/4677
-gerrit
commit 773c29955499d8616a4077d9dcc1ef7141fdc509
Author: Vladimir Serbinenko <phcoder at gmail.com>
Date: Sun Jan 12 14:41:40 2014 +0100
sandybridge: Add a parameter to skip mrc.cache usage.
On Lenovo X230 MRC fails if mrc.cache is supplied. Until
better solution is found, allow skipping mrc.cache.
Change-Id: If4f386dcbe3710e5ef0e7b8cda48489c929fdd5c
Signed-off-by: Vladimir Serbinenko <phcoder at gmail.com>
---
src/mainboard/google/butterfly/romstage.c | 2 +-
src/mainboard/google/link/romstage.c | 2 +-
src/mainboard/google/parrot/romstage.c | 2 +-
src/mainboard/google/stout/romstage.c | 2 +-
src/mainboard/intel/emeraldlake2/romstage.c | 2 +-
src/mainboard/kontron/ktqm77/romstage.c | 2 +-
src/mainboard/samsung/lumpy/romstage.c | 2 +-
src/mainboard/samsung/stumpy/romstage.c | 2 +-
src/northbridge/intel/sandybridge/raminit.c | 6 +++---
src/northbridge/intel/sandybridge/raminit.h | 2 +-
10 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/mainboard/google/butterfly/romstage.c b/src/mainboard/google/butterfly/romstage.c
index 67e509e..0c1b7b5 100644
--- a/src/mainboard/google/butterfly/romstage.c
+++ b/src/mainboard/google/butterfly/romstage.c
@@ -232,7 +232,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3c);
diff --git a/src/mainboard/google/link/romstage.c b/src/mainboard/google/link/romstage.c
index 1aa309a..9388614 100644
--- a/src/mainboard/google/link/romstage.c
+++ b/src/mainboard/google/link/romstage.c
@@ -276,7 +276,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3c);
diff --git a/src/mainboard/google/parrot/romstage.c b/src/mainboard/google/parrot/romstage.c
index 2fe61d6..491881d 100644
--- a/src/mainboard/google/parrot/romstage.c
+++ b/src/mainboard/google/parrot/romstage.c
@@ -232,7 +232,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3c);
diff --git a/src/mainboard/google/stout/romstage.c b/src/mainboard/google/stout/romstage.c
index 8a961ea..b0bc03f 100644
--- a/src/mainboard/google/stout/romstage.c
+++ b/src/mainboard/google/stout/romstage.c
@@ -281,7 +281,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3b);
diff --git a/src/mainboard/intel/emeraldlake2/romstage.c b/src/mainboard/intel/emeraldlake2/romstage.c
index f116668..c100147 100644
--- a/src/mainboard/intel/emeraldlake2/romstage.c
+++ b/src/mainboard/intel/emeraldlake2/romstage.c
@@ -278,7 +278,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3b);
diff --git a/src/mainboard/kontron/ktqm77/romstage.c b/src/mainboard/kontron/ktqm77/romstage.c
index 773079d..85dac68 100644
--- a/src/mainboard/kontron/ktqm77/romstage.c
+++ b/src/mainboard/kontron/ktqm77/romstage.c
@@ -283,7 +283,7 @@ void main(unsigned long bist)
post_code(0x3a);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3c);
diff --git a/src/mainboard/samsung/lumpy/romstage.c b/src/mainboard/samsung/lumpy/romstage.c
index a4f0c42..1d3f020 100644
--- a/src/mainboard/samsung/lumpy/romstage.c
+++ b/src/mainboard/samsung/lumpy/romstage.c
@@ -301,7 +301,7 @@ void main(unsigned long bist)
post_code(0x39);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3a);
diff --git a/src/mainboard/samsung/stumpy/romstage.c b/src/mainboard/samsung/stumpy/romstage.c
index ee715e7..0aea4b0 100644
--- a/src/mainboard/samsung/stumpy/romstage.c
+++ b/src/mainboard/samsung/stumpy/romstage.c
@@ -309,7 +309,7 @@ void main(unsigned long bist)
post_code(0x39);
pei_data.boot_mode = boot_mode;
timestamp_add_now(TS_BEFORE_INITRAM);
- sdram_initialize(&pei_data);
+ sdram_initialize(&pei_data, 0);
timestamp_add_now(TS_AFTER_INITRAM);
post_code(0x3a);
diff --git a/src/northbridge/intel/sandybridge/raminit.c b/src/northbridge/intel/sandybridge/raminit.c
index 07172fc..13ac616 100644
--- a/src/northbridge/intel/sandybridge/raminit.c
+++ b/src/northbridge/intel/sandybridge/raminit.c
@@ -216,7 +216,7 @@ static void post_system_agent_init(struct pei_data *pei_data)
*
* @param pei_data: configuration data for UEFI PEI reference code
*/
-void sdram_initialize(struct pei_data *pei_data)
+void sdram_initialize(struct pei_data *pei_data, int skip_cache)
{
struct sys_info sysinfo;
int (*entry) (struct pei_data *pei_data) __attribute__ ((regparm(1)));
@@ -237,7 +237,7 @@ void sdram_initialize(struct pei_data *pei_data)
* Do not pass MRC data in for recovery mode boot,
* Always pass it in for S3 resume.
*/
- if (!recovery_mode_enabled() || pei_data->boot_mode == 2)
+ if ((!recovery_mode_enabled() || pei_data->boot_mode == 2) && !skip_cache)
prepare_mrc_cache(pei_data);
/* If MRC data is not found we cannot continue S3 resume. */
@@ -299,7 +299,7 @@ void sdram_initialize(struct pei_data *pei_data)
report_memory_config();
/* S3 resume: don't save scrambler seed or MRC data */
- if (pei_data->boot_mode != 2)
+ if (pei_data->boot_mode != 2 && !skip_cache)
save_mrc_data(pei_data);
}
diff --git a/src/northbridge/intel/sandybridge/raminit.h b/src/northbridge/intel/sandybridge/raminit.h
index 2e9b1f3..ac317e6 100644
--- a/src/northbridge/intel/sandybridge/raminit.h
+++ b/src/northbridge/intel/sandybridge/raminit.h
@@ -29,7 +29,7 @@ struct sys_info {
#define BOOT_PATH_RESUME 2
} __attribute__ ((packed));
-void sdram_initialize(struct pei_data *pei_data);
+void sdram_initialize(struct pei_data *pei_data, int skip_cache);
int fixup_sandybridge_errata(void);
#endif /* RAMINIT_H */
More information about the coreboot-gerrit
mailing list