summaryrefslogtreecommitdiff
path: root/src/mainboard
diff options
context:
space:
mode:
authorHung-Te Lin <hungte@chromium.org>2013-04-30 16:14:35 +0800
committerRonald G. Minnich <rminnich@gmail.com>2013-05-01 18:26:50 +0200
commit043b823a736d101da46a120cfa883c5c48e3ab81 (patch)
tree9e3df4fd4252aaa354d6fe7bf0cc6cef4faf1762 /src/mainboard
parentc99ae5d9a93212cbecff0d10a1710b68f26e966e (diff)
downloadcoreboot-043b823a736d101da46a120cfa883c5c48e3ab81.tar.xz
Google/Snow: Revise bootblock initialization.
It's fine to always start timer even in suspend/resume mode, so we can move the timer_start() back to the very beginning of boot procedure. That provides more precise boot time information. With that timer change, the wake up state test procedure can be simplified. Verified by building and booting firmware image on Google/Snow successfully, and then suspend-resume without problem (suspend_stress_test). Change-Id: I0d739650dbff4eb3a75acbbf1e4356f2569b487d Signed-off-by: Hung-Te Lin <hungte@chromium.org> Reviewed-on: http://review.coreboot.org/3151 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net> Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Diffstat (limited to 'src/mainboard')
-rw-r--r--src/mainboard/google/snow/bootblock.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/src/mainboard/google/snow/bootblock.c b/src/mainboard/google/snow/bootblock.c
index 4a7894641c..44640428a7 100644
--- a/src/mainboard/google/snow/bootblock.c
+++ b/src/mainboard/google/snow/bootblock.c
@@ -30,17 +30,14 @@
void bootblock_mainboard_init(void);
void bootblock_mainboard_init(void)
{
- switch (snow_get_wakeup_state()) {
- case SNOW_WAKEUP_DIRECT:
- snow_wakeup();
- break;
+ /* kick off the microsecond timer.
+ * We want to do this as early as we can.
+ */
+ timer_start();
- case SNOW_IS_NOT_WAKEUP:
- /* kick off the microsecond timer.
- * We want to do this as early as we can.
- */
- timer_start();
- break;
+ if (snow_get_wakeup_state() == SNOW_WAKEUP_DIRECT) {
+ snow_wakeup();
+ /* Never returns. */
}
/* For most ARM systems, we have to initialize firmware media source