summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Brockus <dbrockus@google.com>2020-04-29 10:01:47 -0600
committerCommit Bot <commit-bot@chromium.org>2020-04-30 05:49:06 +0000
commitd76c37b3c16e9ef5b17bc201f7b5da06767451dd (patch)
tree1eb8b3197e101348ee343cc5a6732a005594e2a2
parent815121bc496d5c90265fd8b77089e5b2944ef4b9 (diff)
downloadchrome-ec-d76c37b3c16e9ef5b17bc201f7b5da06767451dd.tar.gz
tcpci: display when we send/receive Hard Reset
BUG=none BRANCH=none TEST=check output when Hard Reset happens Signed-off-by: Denis Brockus <dbrockus@google.com> Change-Id: I8ff34daf27d392aeaa27e4a5af4c2c320f18d49e Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2173217 Tested-by: Denis Brockus <dbrockus@chromium.org> Reviewed-by: Edward Hill <ecgh@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Diana Z <dzigterman@chromium.org> Commit-Queue: Denis Brockus <dbrockus@chromium.org> Auto-Submit: Denis Brockus <dbrockus@chromium.org>
-rw-r--r--driver/tcpm/tcpci.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/driver/tcpm/tcpci.c b/driver/tcpm/tcpci.c
index b68feacf83..2ac4cf91f3 100644
--- a/driver/tcpm/tcpci.c
+++ b/driver/tcpm/tcpci.c
@@ -1060,12 +1060,24 @@ void tcpci_tcpc_alert(int port)
if (reg & TCPC_REG_POWER_STATUS_VBUS_DET)
board_vbus_present_change();
}
+
if (alert & TCPC_REG_ALERT_RX_HARD_RST) {
/* hard reset received */
+ CPRINTS("C%d Hard Reset received", port);
pd_execute_hard_reset(port);
pd_event |= TASK_EVENT_WAKE;
}
+ /* USB TCPCI Spec R2 V1.1 Section 4.7.3 Step 2
+ *
+ * The TCPC asserts both ALERT.TransmitSOP*MessageSuccessful and
+ * ALERT.TransmitSOP*MessageFailed regardless of the outcome of the
+ * transmission and asserts the Alert# pin.
+ */
+ if (alert & TCPC_REG_ALERT_TX_SUCCESS &&
+ alert & TCPC_REG_ALERT_TX_FAILED)
+ CPRINTS("C%d Hard Reset sent", port);
+
if (IS_ENABLED(CONFIG_USB_TYPEC_PD_FAST_ROLE_SWAP)
&& (alert_ext & TCPC_REG_ALERT_EXT_SNK_FRS))
pd_got_frs_signal(port);