summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Laurie <dlaurie@google.com>2018-05-07 09:34:05 -0700
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2018-05-07 16:43:59 +0000
commit99363624350eb305055be9cfaccf1e36434e8fe9 (patch)
treeb686505948488ce324e322f66b7c2db63d4ae18b
parentd1ac1d5a0bf90d9b0b31613ca2ea4c750b62fa88 (diff)
downloadchrome-ec-99363624350eb305055be9cfaccf1e36434e8fe9.tar.gz
Revert "eve: Use PCH ACOK signal to control Deep Sleep entry"
This reverts commit a49f19a1aa9ad3f4951490f96f0320fa646b572e. Battery life in S3 (not Deep S3) is terrible, so reverting this change until we determine if improvements can be made. BUG=b:79346372 BRANCH=eve TEST=none Change-Id: I570c5ea1b2b74f17fb41cd46424bfe2a5749d49a Reviewed-on: https://chromium-review.googlesource.com/1047845 Reviewed-by: Duncan Laurie <dlaurie@google.com> Commit-Queue: Duncan Laurie <dlaurie@google.com> Tested-by: Duncan Laurie <dlaurie@google.com> Trybot-Ready: Duncan Laurie <dlaurie@google.com>
-rw-r--r--board/eve/board.c26
-rw-r--r--board/eve/board.h1
-rw-r--r--board/eve/usb_pd_policy.c6
3 files changed, 11 insertions, 22 deletions
diff --git a/board/eve/board.c b/board/eve/board.c
index 404800a865..ecf4d22431 100644
--- a/board/eve/board.c
+++ b/board/eve/board.c
@@ -466,19 +466,6 @@ int board_has_working_reset_flags(void)
return 1;
}
-/*
- * Update status of the ACPRESENT pin on the PCH. In order to prevent
- * Deep S3 when USB is inserted this will indicate that AC is present
- * if either port is supplying VBUS or there an external charger present.
- */
-void board_update_ac_status(void)
-{
- gpio_set_level(GPIO_PCH_ACOK, extpower_is_present() ||
- board_vbus_source_enabled(0) ||
- board_vbus_source_enabled(1));
-}
-DECLARE_HOOK(HOOK_AC_CHANGE, board_update_ac_status, HOOK_PRIO_DEFAULT);
-
/* Initialize board. */
static void board_init(void)
{
@@ -494,8 +481,8 @@ static void board_init(void)
/* Enable interrupts from BMI160 sensor. */
gpio_enable_interrupt(GPIO_ACCELGYRO3_INT_L);
- /* Update AC status to the PCH */
- board_update_ac_status();
+ /* Provide AC status to the PCH */
+ gpio_set_level(GPIO_PCH_ACOK, extpower_is_present());
#if defined(CONFIG_KEYBOARD_SCANCODE_MUTABLE) && !defined(TEST_BUILD)
if (board_get_version() == BOARD_VERSION_EVT) {
@@ -511,6 +498,15 @@ static void board_init(void)
}
DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT);
+/**
+ * Buffer the AC present GPIO to the PCH.
+ */
+static void board_extpower(void)
+{
+ gpio_set_level(GPIO_PCH_ACOK, extpower_is_present());
+}
+DECLARE_HOOK(HOOK_AC_CHANGE, board_extpower, HOOK_PRIO_DEFAULT);
+
int pd_snk_is_vbus_provided(int port)
{
if (port != 0 && port != 1)
diff --git a/board/eve/board.h b/board/eve/board.h
index bfcb4c009b..a21058d76b 100644
--- a/board/eve/board.h
+++ b/board/eve/board.h
@@ -308,7 +308,6 @@ void board_reset_pd_mcu(void);
void board_set_tcpc_power_mode(int port, int mode);
void board_tcpc_init(void);
void led_register_double_tap(void);
-void board_update_ac_status(void);
/* Sensors without hardware FIFO are in forced mode */
#define CONFIG_ACCEL_FORCE_MODE_MASK ((1 << LID_ACCEL) | (1 << LID_LIGHT))
diff --git a/board/eve/usb_pd_policy.c b/board/eve/usb_pd_policy.c
index 85be51ba92..541264ee3e 100644
--- a/board/eve/usb_pd_policy.c
+++ b/board/eve/usb_pd_policy.c
@@ -125,9 +125,6 @@ int pd_set_power_supply_ready(int port)
/* notify host of power info change */
pd_send_host_event(PD_EVENT_POWER_CHANGE);
- /* Update AC status to the PCH */
- board_update_ac_status();
-
return EC_SUCCESS; /* we are ready */
}
@@ -150,9 +147,6 @@ void pd_power_supply_reset(int port)
/* notify host of power info change */
pd_send_host_event(PD_EVENT_POWER_CHANGE);
-
- /* Update AC status to the PCH */
- board_update_ac_status();
}
int pd_board_checks(void)