diff options
author | Ruibin Chang <Ruibin.Chang@ite.com.tw> | 2018-11-13 15:23:39 +0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2019-05-01 01:01:38 +0000 |
commit | 9e1f0ffe6b7e8b063e9f85d588c95642077db779 (patch) | |
tree | d30d7a7a8fd6fdc092c6a707cc63bfa038eebe6e | |
parent | 0c96a88928610b357e8bbf6c4d9c71a7cc1d869f (diff) | |
download | chrome-ec-9e1f0ffe6b7e8b063e9f85d588c95642077db779.tar.gz |
common/usb_pd_protocol: Fix TryWait.SNK to Unattached.SNK timeout value
When state transits from TryWait.SNK to Unattached.SNK,
the timeout value is 10~20ms (tPDDebounce). This define
in USB Type-C 1.3 spec Figure 4-16.
BRANCH=None
BUG=None
TEST=GRL USBPD test
Change-Id: If736daf1ef9e74f07a571a2f1adb12a928415c2b
Signed-off-by: Ruibin Chang <Ruibin.Chang@ite.com.tw>
Reviewed-on: https://chromium-review.googlesource.com/1333217
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Reviewed-by: Jett Rink <jettrink@chromium.org>
(cherry picked from commit c1b19edff6875060b8679c7579f76fd4b2cd2421)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1590552
Commit-Queue: Daisuke Nojiri <dnojiri@chromium.org>
Tested-by: Daisuke Nojiri <dnojiri@chromium.org>
-rw-r--r-- | common/usb_pd_protocol.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/common/usb_pd_protocol.c b/common/usb_pd_protocol.c index a354a848bd..ebfadfba66 100644 --- a/common/usb_pd_protocol.c +++ b/common/usb_pd_protocol.c @@ -2562,7 +2562,7 @@ void pd_task(void *u) tcpm_set_cc(port, TYPEC_CC_RD); next_role_swap = get_time().val + PD_T_DRP_SNK; pd[port].try_src_marker = get_time().val - + PD_T_TRY_WAIT; + + PD_T_DEBOUNCE; /* Swap states quickly */ timeout = 2*MSEC; @@ -3688,7 +3688,7 @@ void pd_task(void *u) tcpm_set_cc(port, TYPEC_CC_RD); /* Set timer for TryWait.SNK state */ pd[port].try_src_marker = get_time().val - + PD_T_TRY_WAIT; + + PD_T_DEBOUNCE; /* Advance to TryWait.SNK state */ set_state(port, PD_STATE_SNK_DISCONNECTED); |