the following patch was just integrated into master:
commit 32bc18ef9772d006bea014d3e871e7353a438d55
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri May 1 16:48:54 2015 -0500
nvidia/tegra132: Fix vboot2 memory layout
bootblock et al were listed twice, which shouldn't happen.
Change-Id: I3e6077d70e064ebe74bd4e5e3156f87d548c2fcb
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Reviewed-on: http://review.coreboot.org/10097
Tested-by: build bot (Jenkins)
See http://review.coreboot.org/10097 for details.
-gerrit
the following patch was just integrated into master:
commit 8fb36c07ac4eb34da61894bba260ab57c4b7f9db
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri May 1 16:48:54 2015 -0500
console: rename do_vtxprintf to do_printk_va_list and use it
The name is more consistent with what we have elsewhere,
and the callsite didn't build at all (with vboot enabled)
Change-Id: I3576f3b8f737d360f68b67b6ce1683199948776d
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Reviewed-on: http://review.coreboot.org/10096
Tested-by: build bot (Jenkins)
See http://review.coreboot.org/10096 for details.
-gerrit
the following patch was just integrated into master:
commit ed98eeea8451f7f9a320525e73fb448371adb34f
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri May 1 16:48:54 2015 -0500
vboot: Remove vboot_get_payload()
It's not used at all.
Change-Id: I97bf02a9277f6ca348443c6886f77b4dfc70da78
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Reviewed-on: http://review.coreboot.org/10095
Tested-by: build bot (Jenkins)
See http://review.coreboot.org/10095 for details.
-gerrit
the following patch was just integrated into master:
commit 0946a1bb21594d274fd21df7a9e40f3d90b0ba84
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri May 1 16:48:54 2015 -0500
vboot: remove uses of vboot2_verify_firmware()
The vboot mechanism will be implemented within the program loader
subsystem to make it transparent to mainboards and chipsets.
Change-Id: Icd0bdcba06cdc30591f9b25068b3fa3a112e58fb
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
Reviewed-on: http://review.coreboot.org/10094
Tested-by: build bot (Jenkins)
See http://review.coreboot.org/10094 for details.
-gerrit
Patrick Georgi (pgeorgi(a)google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10102
-gerrit
commit 4cc31dc680b1fe28e0d0924c83618fcead77d62b
Author: Aaron Durbin <adurbin(a)chromium.org>
Date: Fri May 1 16:48:54 2015 -0500
timestamp: refine boot CPU test
The timestamp code's restriction to run only on the BSP
is for AMD systems. No need to run it everywhere, so
tighten the test (and only run boot_cpu() when required).
Change-Id: I800e817cc89e8688a671672961cab15c7f788ba8
Signed-off-by: Aaron Durbin <adurbin(a)chromium.org>
Signed-off-by: Patrick Georgi <pgeorgi(a)chromium.org>
---
src/lib/timestamp.c | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/src/lib/timestamp.c b/src/lib/timestamp.c
index 5846781..9a0e631 100644
--- a/src/lib/timestamp.c
+++ b/src/lib/timestamp.c
@@ -21,8 +21,10 @@
#include <stdint.h>
#include <console/console.h>
#include <cbmem.h>
+#include <timer.h>
#include <timestamp.h>
#include <arch/early_variables.h>
+#include <rules.h>
#include <smp/node.h>
#define MAX_TIMESTAMPS 60
@@ -52,12 +54,24 @@ static void timestamp_real_init(uint64_t base)
car_set_var(ts_table_p, tst);
}
+/* Determine if one should proceed into timestamp code. This is for protecting
+ * systems that have multiple processors running in romstage -- namely AMD
+ * based x86 platforms. */
+static int timestamp_should_run(void)
+{
+ /* Only check boot_cpu() in other stages than ramstage on x86. */
+ if ((!ENV_RAMSTAGE && IS_ENABLED(CONFIG_ARCH_X86)) && !boot_cpu())
+ return 0;
+
+ return 1;
+}
+
void timestamp_add(enum timestamp_id id, uint64_t ts_time)
{
struct timestamp_entry *tse;
struct timestamp_table *ts_table = NULL;
- if (!boot_cpu())
+ if (!timestamp_should_run())
return;
ts_table = car_get_var(ts_table_p);
@@ -121,7 +135,7 @@ static void timestamp_do_sync(void)
void timestamp_init(uint64_t base)
{
- if (!boot_cpu())
+ if (!timestamp_should_run())
return;
#ifdef __PRE_RAM__
@@ -145,7 +159,7 @@ void timestamp_init(uint64_t base)
void timestamp_reinit(void)
{
- if (!boot_cpu())
+ if (!timestamp_should_run())
return;
#ifdef __PRE_RAM__