summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiana Z <dzigterman@chromium.org>2021-02-11 16:33:10 -0700
committerCommit Bot <commit-bot@chromium.org>2021-02-16 23:52:52 +0000
commit2d117a7373bb48e4ddd5385952a3bc070794f73a (patch)
tree8e9948fccbf870107dc761a41e25591c83104d02
parent6a077f21f25be5b0ec7073af2adbba1dd9e261b7 (diff)
downloadchrome-ec-2d117a7373bb48e4ddd5385952a3bc070794f73a.tar.gz
TCPMv2: Update source Rp if no contract in place
When no contract is in place, update our source Rp when a new current is selected on a port. BRANCH=None BUG=b:141690755 TEST=make -j buildall Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: Ie155353a4a6ab28957edff548747c47d96d840a3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2692029 Reviewed-by: Keith Short <keithshort@chromium.org>
-rw-r--r--common/usbc/usb_tc_drp_acc_trysrc_sm.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/common/usbc/usb_tc_drp_acc_trysrc_sm.c b/common/usbc/usb_tc_drp_acc_trysrc_sm.c
index ab94531cf7..964d6dda8c 100644
--- a/common/usbc/usb_tc_drp_acc_trysrc_sm.c
+++ b/common/usbc/usb_tc_drp_acc_trysrc_sm.c
@@ -3100,11 +3100,15 @@ static void tc_attached_src_run(const int port)
#endif
if (TC_CHK_FLAG(port, TC_FLAGS_UPDATE_CURRENT)) {
- /* TODO(b/141690755): Also set new CC if needed for non-PD */
TC_CLR_FLAG(port, TC_FLAGS_UPDATE_CURRENT);
typec_set_source_current_limit(port,
tc[port].select_current_limit_rp);
pd_update_contract(port);
+
+ /* Update Rp if no contract is present */
+ if (!IS_ENABLED(CONFIG_USB_PE_SM) ||
+ !pe_is_explicit_contract(port))
+ typec_update_cc(port);
}
}