summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVic Yang <victoryang@chromium.org>2013-05-30 17:46:56 +0800
committerChromeBot <chrome-bot@google.com>2013-06-04 07:36:00 -0700
commitc089dfb9d1cf9579e7a9f2a03262d53e9c26d00f (patch)
tree1c873838249c0b11e5ef5362ee73ccdbcdbf8bad
parent97612af4101da4f83626185ad9cbe556c00ae3b5 (diff)
downloadchrome-ec-c089dfb9d1cf9579e7a9f2a03262d53e9c26d00f.tar.gz
Print error message before PMU hard reset
Hard-reset triggers a pulse on the PMIC_RESET pin but this is hard to see when debugging. By printing error message explicitly before resetting the board, it's easier to tell why the board is resetting. BUG=chrome-os-partner:19778 TEST=Trivial change. Build and boot on Spring. Make sure system is alive. BRANCH=spring Original-Change-Id: I26b749af2f8760339373c3e4db46c59d7b0d039e Signed-off-by: Vic Yang <victoryang@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57101 Reviewed-by: Randall Spangler <rspangler@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> (cherry picked from commit 1806f521955623770405778a742d0398cae028a2) Change-Id: I56e0e99e4af77dd769e05d48c97c4ba59e73f851 Signed-off-by: Vic Yang <victoryang@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/57415 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
-rw-r--r--common/gaia_power.c5
-rw-r--r--common/pmu_tps65090.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/common/gaia_power.c b/common/gaia_power.c
index 52742c0db6..dea7d38224 100644
--- a/common/gaia_power.c
+++ b/common/gaia_power.c
@@ -465,8 +465,11 @@ static void power_off(void)
if (!pmu_shutdown())
break;
}
- if (pmu_shutdown_retries < 0)
+ if (pmu_shutdown_retries < 0) {
+ CPUTS("PMU shutdown failed. Hard-resetting.\n");
+ cflush();
board_hard_reset();
+ }
CPUTS("Shutdown complete.\n");
}
diff --git a/common/pmu_tps65090.c b/common/pmu_tps65090.c
index 279d7d93db..3f4d0c2ab9 100644
--- a/common/pmu_tps65090.c
+++ b/common/pmu_tps65090.c
@@ -593,8 +593,11 @@ void pmu_init(void)
break;
}
- if (failure)
+ if (failure) {
+ CPUTS("Failed to initialize PMU. Hard-resetting.\n");
+ cflush();
board_hard_reset();
+ }
}
/* Initializes PMU when power is turned on. This is necessary because the TPS'