summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Palatin <vpalatin@chromium.org>2013-02-13 09:51:36 -0800
committerChromeBot <chrome-bot@google.com>2013-02-13 11:58:41 -0800
commit92ceccbc4ba81ae077b2a41594d83dc125af0b46 (patch)
tree08500730acec6c0f58bf0bc9c5a4de8aee2cd651
parent695289cfe6724ad349a96d1f36ddf036b3df5daa (diff)
downloadchrome-ec-92ceccbc4ba81ae077b2a41594d83dc125af0b46.tar.gz
tps65090: update LDOs configuration
Match the configuration on Snow : - set overcurrent timeout to 3200us (max) (to avoid triggering the protection on initial inrush current) - properly enable the auto-discharge feature (we need it when the LDOs are turned OFF) Signed-off-by: Vincent Palatin <vpalatin@chromium.org> BRANCH=none BUG=chrome-os-partner:17790 chrome-os-partner:17804 TEST=on Spring, boot and dump the TPS65090 configuration from the EC command line by using "pmu" command. See 0x1f in registers 0x0f and 0x14 for LCD and Backlight LDOs. Change-Id: I20b0cb11d7abb890e921816e75e8ed816ca4f2d4 Reviewed-on: https://gerrit.chromium.org/gerrit/43180 Tested-by: Vincent Palatin <vpalatin@chromium.org> Reviewed-by: Todd Broch <tbroch@chromium.org> Commit-Queue: Vincent Palatin <vpalatin@chromium.org>
-rw-r--r--common/pmu_tps65090.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/common/pmu_tps65090.c b/common/pmu_tps65090.c
index 7a587e1b21..cfb6ffd582 100644
--- a/common/pmu_tps65090.c
+++ b/common/pmu_tps65090.c
@@ -80,6 +80,7 @@
/* FET control register bits */
#define FET_CTRL_ENFET (1 << 0)
#define FET_CTRL_ADENFET (1 << 1)
+#define FET_CTRL_WAIT (3 << 2) /* Overcurrent timeout max : 3200 us */
#define FET_CTRL_PGFET (1 << 4)
#define FET_CTRL_BASE (FET1_CTRL - 1)
@@ -380,8 +381,9 @@ int pmu_enable_fet(int fet_id, int enable, int *power_good)
rv = pmu_read(reg_offset, &reg);
if (rv)
return rv;
+ reg |= FET_CTRL_ADENFET | FET_CTRL_WAIT;
if (enable)
- reg |= FET_CTRL_ADENFET | FET_CTRL_ENFET;
+ reg |= FET_CTRL_ENFET;
else
reg &= ~FET_CTRL_ENFET;