diff options
author | Jett Rink <jettrink@chromium.org> | 2020-06-29 13:14:43 -0600 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-07-10 22:21:58 +0000 |
commit | 23ea3fbd4a6e52b8a54f4278bbed8975af34cca7 (patch) | |
tree | 84b8b0ee67f7fdbb9d9ad44695ed7659439c7c06 /include | |
parent | 0f713b36be38449cddea2196d1a135d7bdcfb82a (diff) | |
download | chrome-ec-23ea3fbd4a6e52b8a54f4278bbed8975af34cca7.tar.gz |
tcpmv2: perform partner reset on startup, remove BBRAM
- Reset the port partner by applying CC Open on both CC lines
- Reuse the existing error recovery state to apply CC values
- Extend error recovery timer to 240 msec to account for us being able
to source Vconn
- Since we always reset on startup, we don't need to store previous
contracts in BBRAM.
BRANCH=none
BUG=b:159495742,b:158802939
TEST=see that we apply CC Open upon reset
TEST=see that we do not get a fault on Trembyle went setting CC open
TEST=apple 3-1 dongle with display port and power on Puff will come back
with power and display after a `reboot` EC command (which will trigger
the ErrorRecovery brownout path)
Signed-off-by: Jett Rink <jettrink@chromium.org>
Change-Id: Iaac09d62e4a31557492cebb354d3a34371c1e9bb
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2271002
Reviewed-by: Denis Brockus <dbrockus@chromium.org>
Reviewed-by: Diana Z <dzigterman@chromium.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/config.h | 5 | ||||
-rw-r--r-- | include/usb_pd.h | 2 | ||||
-rw-r--r-- | include/usb_pe_sm.h | 5 |
3 files changed, 6 insertions, 6 deletions
diff --git a/include/config.h b/include/config.h index 26c3bc608c..96b412703e 100644 --- a/include/config.h +++ b/include/config.h @@ -3340,6 +3340,8 @@ * * When defined, CBI allows ectool to reprogram all the fields. Once undefined, * it refuses to change certain fields. (e.g. board version, OEM ID) + * + * Also, this will enable PD in RO for TCPMv2. */ #undef CONFIG_SYSTEM_UNLOCKED @@ -3791,6 +3793,9 @@ * We don't want to allow communication to outside world until * we jump to RW. This can by overridden with the removal of * the write protect screw to allow for easier testing. + * + * Note: this is assumed for TCPMv2. See also CONFIG_BRINGUP for enabling PD in + * RO. */ #undef CONFIG_USB_PD_COMM_LOCKED diff --git a/include/usb_pd.h b/include/usb_pd.h index b2707f5f2b..24271db6f6 100644 --- a/include/usb_pd.h +++ b/include/usb_pd.h @@ -200,7 +200,7 @@ enum pd_rx_errors { #define PD_T_PS_SOURCE_ON (480*MSEC) /* between 390ms and 480ms */ #define PD_T_PS_SOURCE_OFF (920*MSEC) /* between 750ms and 920ms */ #define PD_T_PS_HARD_RESET (25*MSEC) /* between 25ms and 35ms */ -#define PD_T_ERROR_RECOVERY (25*MSEC) /* 25ms */ +#define PD_T_ERROR_RECOVERY (240*MSEC) /* min 240ms if sourcing VConn */ #define PD_T_CC_DEBOUNCE (100*MSEC) /* between 100ms and 200ms */ /* DRP_SNK + DRP_SRC must be between 50ms and 100ms with 30%-70% duty cycle */ #define PD_T_DRP_SNK (40*MSEC) /* toggle time for sink DRP */ diff --git a/include/usb_pe_sm.h b/include/usb_pe_sm.h index 2ad41991a2..78c1f27759 100644 --- a/include/usb_pe_sm.h +++ b/include/usb_pe_sm.h @@ -175,11 +175,6 @@ void pe_dpm_request(int port, enum pe_dpm_request req); int pd_is_port_partner_dualrole(int port); /* - * Informs the Policy Engine that a sysjump has occurred - */ -void pe_set_sysjump(void); - -/* * Informs the Policy Engine that it should invalidate the * explicit contract. * |