diff options
author | Eric Herrmann <eherrmann@chromium.org> | 2021-03-01 11:35:36 -0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-03-02 23:09:21 +0000 |
commit | b5ea1e1f5d38eff3eae49ebf233324a546870a65 (patch) | |
tree | 4190c529f70ffcee90991aa1275cff85b0913d46 /common/usbc/usb_pe_drp_sm.c | |
parent | 389952243915fd4a47ea6916395314ef32412078 (diff) | |
download | chrome-ec-b5ea1e1f5d38eff3eae49ebf233324a546870a65.tar.gz |
TCPMv2: Don't Soft_reset in SNK_SRC_SOURCE_ON
In state PE_PRS_SNK_SRC_SOURCE_ON, we shouldn't soft reset and instead
use ErrorRecovery:
The Policy Engine Shall transition to the ErrorRecovery state when:
- The PS_RDY Message is not sent after retries (a GoodCRC Message has
not been received). A soft reset Shall Not be initiated in this case.
Add an exception to the protocol error handling to not use Soft Reset.
BUG=b:181054403
TEST=Check that we don't use Soft reset by running TD.PD.FRSISNK3.E6
BRANCH=None
Signed-off-by: Eric Herrmann <eherrmann@chromium.org>
Change-Id: Icc85cf768b19f72aaadfe16c611f735167f4ad5e
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2727861
Reviewed-by: Diana Z <dzigterman@chromium.org>
Diffstat (limited to 'common/usbc/usb_pe_drp_sm.c')
-rw-r--r-- | common/usbc/usb_pe_drp_sm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/common/usbc/usb_pe_drp_sm.c b/common/usbc/usb_pe_drp_sm.c index b5f9391ec5..ff42152a2b 100644 --- a/common/usbc/usb_pe_drp_sm.c +++ b/common/usbc/usb_pe_drp_sm.c @@ -1144,6 +1144,7 @@ void pe_report_error(int port, enum pe_error e, enum tcpm_transmit_type type) if ((get_state_pe(port) == PE_SRC_SEND_CAPABILITIES || get_state_pe(port) == PE_SRC_TRANSITION_SUPPLY || get_state_pe(port) == PE_PRS_SNK_SRC_EVALUATE_SWAP || + get_state_pe(port) == PE_PRS_SNK_SRC_SOURCE_ON || get_state_pe(port) == PE_PRS_SRC_SNK_WAIT_SOURCE_ON || get_state_pe(port) == PE_SRC_DISABLED || get_state_pe(port) == PE_SRC_DISCOVERY || |