From c34d0cc8bf4308046d2d213f4ff744b011e0edbe Mon Sep 17 00:00:00 2001 From: Vic Yang Date: Fri, 30 Aug 2013 12:21:01 +0800 Subject: kirby: Add delay before enabling 3.3V rail A delay between enabling PMIC_PWRON and 3.3V rail is needed so as to prevent leakage. BUG=chrome-os-partner:22101 TEST=Power cycle the AP. BRANCH=None Change-Id: I2dd1c7ebc71565fc64dacaeb5caa46b2d3801d50 Signed-off-by: Vic Yang Reviewed-on: https://chromium-review.googlesource.com/167582 --- common/chipset_gaia.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/common/chipset_gaia.c b/common/chipset_gaia.c index 064fb311c3..baeb7d1251 100644 --- a/common/chipset_gaia.c +++ b/common/chipset_gaia.c @@ -51,6 +51,11 @@ #define DELAY_5V_SETUP MSEC #endif +/* Delay between PMIC_PWRON and enabling 3.3V */ +#ifdef BOARD_kirby +#define DELAY_PRE_3V_ENABLE 16620 +#endif + /* Delay between 1.35v and 3.3v rails startup */ #define DELAY_RAIL_STAGGERING 100 /* 100us */ @@ -491,7 +496,13 @@ static int power_on(void) set_pmic_pwrok(1); } -#ifndef BOARD_kirby +#ifdef BOARD_kirby + /* + * There is no input signal for PMIC ready for 3.3V power. We can only + * for a pre-defined amount of time. + */ + udelay(DELAY_PRE_3V_ENABLE); +#else /* wait for all PMIC regulators to be ready */ wait_in_signal(GPIO_PP1800_LDO2, 1, PMIC_TIMEOUT); -- cgit v1.2.1