summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hendricks <dhendrix@chromium.org>2012-08-29 12:12:42 -0700
committerDavid Hendricks <dhendrix@chromium.org>2012-08-29 21:16:08 -0700
commit7f92d12119b38228a67186436046146a940dcfef (patch)
tree136bbe17c27da1a3970701859f8b711e80e32be1
parent20800e42ca97777be46ecf8cc8c79dde38fdd9e0 (diff)
downloadchrome-ec-7f92d12119b38228a67186436046146a940dcfef.tar.gz
move pmu_init_registers() from pmu_init() to chipset pre-init hook
This moves the PMU register initialization from pmu_init(), which gets called whenever the EC reboots/sysjumps (even when the AP is running), to a hook which will can called selectively when the AP is cold booting. Signed-off-by: David Hendricks <dhendrix@chromium.org> BRANCH=snow BUG=chrome-os-partner:13315 TEST=tested on snow - jumping between RO <--> RW no longer causes the screen to turn off due to resetting FET control regs. Change-Id: I5453bf86af50b84a05a259dc896f04d818b5641b Reviewed-on: https://gerrit.chromium.org/gerrit/31740 Reviewed-by: Charlie Mooney <charliemooney@chromium.org> Reviewed-by: Vincent Palatin <vpalatin@chromium.org> Commit-Ready: David Hendricks <dhendrix@chromium.org> Tested-by: David Hendricks <dhendrix@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/31793
-rw-r--r--common/pmu_tps65090.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/common/pmu_tps65090.c b/common/pmu_tps65090.c
index c23f8511ac..1e5dbed70b 100644
--- a/common/pmu_tps65090.c
+++ b/common/pmu_tps65090.c
@@ -400,15 +400,12 @@ static int pmu_init_registers(void)
return EC_SUCCESS;
}
+DECLARE_HOOK(HOOK_CHIPSET_PRE_INIT, pmu_init_registers, HOOK_PRIO_DEFAULT);
void pmu_init(void)
{
int failure = 0;
- /* Reset everything to default, safe values */
- if (!failure)
- failure = pmu_init_registers();
-
#ifdef CONFIG_PMU_BOARD_INIT
if (!failure)
failure = board_pmu_init();