diff options
author | Ting Shen <phoenixshen@google.com> | 2019-10-28 14:32:54 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2019-10-31 09:42:30 +0000 |
commit | 316a8dbad0f3b7f8c21b232ac0872f10cfc3a798 (patch) | |
tree | 28b308c1f16b6066b3a13ff438702e777c51c33e /driver | |
parent | b0828291b501289f4c1d3726ab545cf3efd06d13 (diff) | |
download | chrome-ec-316a8dbad0f3b7f8c21b232ac0872f10cfc3a798.tar.gz |
tcpm/fusb302: implement low power mode
Implement tcpc_low_power_mode to reduce power consumption in G3.
BUG=b:142760774
TEST=measure power consumption on jacuzzi.
verify that power consumption is reduced by 3~4mW
see b:142760774 comment 3 for more detail.
BRANCH=master
Change-Id: I04436d3baaa97b7c049ae3f3d9a9510e5a2024d9
Signed-off-by: Ting Shen <phoenixshen@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1880773
Reviewed-by: Eric Yilun Lin <yllin@chromium.org>
Commit-Queue: Ting Shen <phoenixshen@chromium.org>
Tested-by: Ting Shen <phoenixshen@chromium.org>
Diffstat (limited to 'driver')
-rw-r--r-- | driver/tcpm/fusb302.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/driver/tcpm/fusb302.c b/driver/tcpm/fusb302.c index ee16a206b3..3e85fbe713 100644 --- a/driver/tcpm/fusb302.c +++ b/driver/tcpm/fusb302.c @@ -19,7 +19,6 @@ #include "util.h" #if defined(CONFIG_USB_PD_DUAL_ROLE_AUTO_TOGGLE) || \ - defined(CONFIG_USB_PD_TCPC_LOW_POWER) || \ defined(CONFIG_USB_PD_DISCHARGE_TCPC) #error "Unsupported config options of fusb302 PD driver" #endif @@ -1008,6 +1007,13 @@ void tcpm_set_bist_test_data(int port) tcpc_write(port, TCPC_REG_CONTROL3, reg); } +#ifdef CONFIG_USB_PD_TCPC_LOW_POWER +static int fusb302_tcpm_enter_low_power_mode(int port) +{ + return tcpc_write(port, TCPC_REG_POWER, TCPC_REG_POWER_PWR_LOW); +} +#endif + const struct tcpm_drv fusb302_tcpm_drv = { .init = &fusb302_tcpm_init, .release = &fusb302_tcpm_release, @@ -1024,4 +1030,7 @@ const struct tcpm_drv fusb302_tcpm_drv = { .get_message_raw = &fusb302_tcpm_get_message_raw, .transmit = &fusb302_tcpm_transmit, .tcpc_alert = &fusb302_tcpc_alert, +#ifdef CONFIG_USB_PD_TCPC_LOW_POWER + .enter_low_power_mode = &fusb302_tcpm_enter_low_power_mode, +#endif }; |