Ronald G. Minnich (rminnich@gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/3151
-gerrit
commit a40faa72aec099fa4b48ed66d08ed450de6fe099 Author: Hung-Te Lin hungte@chromium.org Date: Tue Apr 30 16:14:35 2013 +0800
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 --- src/mainboard/google/snow/bootblock.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/src/mainboard/google/snow/bootblock.c b/src/mainboard/google/snow/bootblock.c index 4a78946..4464042 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