diff options
author | Poornima Tom <poornima.tom@intel.com> | 2020-10-29 00:50:52 +0530 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-11-14 08:21:24 +0000 |
commit | e925194f41077344ccd3d1f815c69be0d1b3cad1 (patch) | |
tree | d556dc9ca9f067fa04ddfd8afeb00091b361667a | |
parent | 27c170587fdcc368f461f87fbc7d62d3d738fa12 (diff) | |
download | chrome-ec-e925194f41077344ccd3d1f815c69be0d1b3cad1.tar.gz |
Tcpmv2: Handle transmission delay after Vccon swap
While in PE state - PE_VCS_Send_Ps_Rdy_Swap,after
successful vconn swap, it is expected to reset cable
& receive the Accept/Reject Response. In case of more
transmission delays, response_timer must be set,
inorder to set the PE_FLAGS_TX_COMPLETE flag.
BRANCH=None
BUG=none
TEST=Tested on ADL-RVP
Signed-off-by: Poornima Tom <poornima.tom@intel.com>
Change-Id: Ia7f7f183ad51c7500b4dc4629e6d2b17dddc8163
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2505399
Tested-by: Vijay P Hiremath <vijay.p.hiremath@intel.com>
Commit-Queue: Keith Short <keithshort@chromium.org>
Reviewed-by: Keith Short <keithshort@chromium.org>
-rw-r--r-- | common/usbc/usb_pe_drp_sm.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/common/usbc/usb_pe_drp_sm.c b/common/usbc/usb_pe_drp_sm.c index 117572ac82..bffba90088 100644 --- a/common/usbc/usb_pe_drp_sm.c +++ b/common/usbc/usb_pe_drp_sm.c @@ -5938,6 +5938,13 @@ static void pe_vcs_send_ps_rdy_swap_run(int port) send_ctrl_msg(port, TCPC_TX_SOP_PRIME, PD_CTRL_SOFT_RESET); + /* + * Ensures enough time for transmission completion, + * in the case of more delays. + */ + pe[port].sender_response_timer = get_time().val + + PD_T_SENDER_RESPONSE; + pe[port].sub = PE_SUB1; } break; |