diff options
author | Denis Brockus <dbrockus@google.com> | 2020-07-27 12:53:31 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-07-28 05:24:13 +0000 |
commit | ea077cccd9e5cf25176ab9082be438ac26823126 (patch) | |
tree | 9694b14a57bc46841b452a00a8d2f9c4247959b9 /driver/tcpm/tcpm.h | |
parent | 9fadd40cebcd179aebf1b12b6fbc0080e71420bc (diff) | |
download | chrome-ec-ea077cccd9e5cf25176ab9082be438ac26823126.tar.gz |
AOZ1380: initialize srcing/snking flags to reflect hardware
The AOZ1380 always started off with not sinking and not
sourcing. In a batteryless or dead battery condition this
is not true. So making sure we start with an accurate
state.
BUG=b:162016100
BRANCH=none
TEST=trembyle cold boot with only AC power
Signed-off-by: Denis Brockus <dbrockus@google.com>
Change-Id: Ic542e52b3b8d715b7526e7e393ae4f4c40c721ac
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2321132
Tested-by: Denis Brockus <dbrockus@chromium.org>
Reviewed-by: Edward Hill <ecgh@chromium.org>
Commit-Queue: Denis Brockus <dbrockus@chromium.org>
Auto-Submit: Denis Brockus <dbrockus@chromium.org>
Diffstat (limited to 'driver/tcpm/tcpm.h')
-rw-r--r-- | driver/tcpm/tcpm.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/driver/tcpm/tcpm.h b/driver/tcpm/tcpm.h index 4dd9af993d..4ab993dcc2 100644 --- a/driver/tcpm/tcpm.h +++ b/driver/tcpm/tcpm.h @@ -230,6 +230,17 @@ static inline int tcpm_transmit(int port, enum tcpm_transmit_type type, } #ifdef CONFIG_USBC_PPC +static inline int tcpm_get_snk_ctrl(int port, bool *sinking) +{ + int rv = EC_ERROR_UNIMPLEMENTED; + + if (tcpc_config[port].drv->get_snk_ctrl != NULL) + rv = tcpc_config[port].drv->get_snk_ctrl(port, sinking); + else + *sinking = false; + + return rv; +} static inline int tcpm_set_snk_ctrl(int port, int enable) { if (tcpc_config[port].drv->set_snk_ctrl != NULL) @@ -238,6 +249,17 @@ static inline int tcpm_set_snk_ctrl(int port, int enable) return EC_ERROR_UNIMPLEMENTED; } +static inline int tcpm_get_src_ctrl(int port, bool *sourcing) +{ + int rv = EC_ERROR_UNIMPLEMENTED; + + if (tcpc_config[port].drv->get_src_ctrl != NULL) + rv = tcpc_config[port].drv->get_src_ctrl(port, sourcing); + else + *sourcing = false; + + return rv; +} static inline int tcpm_set_src_ctrl(int port, int enable) { if (tcpc_config[port].drv->set_src_ctrl != NULL) |