summaryrefslogtreecommitdiff
path: root/include/usb_pd_dpm.h
diff options
context:
space:
mode:
authorDiana Z <dzigterman@chromium.org>2021-08-03 17:34:52 -0600
committerCommit Bot <commit-bot@chromium.org>2021-11-15 22:43:02 +0000
commitcecf944509d00f5e258c0b74d890ac4a9a9c4f3e (patch)
treec7d841dfb049ccd0efbe5ae3ac6372cb3a0daff9 /include/usb_pd_dpm.h
parente9e7b70c98b0a61faf7dc56839b2a62874b12814 (diff)
downloadchrome-ec-cecf944509d00f5e258c0b74d890ac4a9a9c4f3e.tar.gz
TCPMv2: Prepare for boards using USB mux task
For boards using USB mux tasks, mux sets will be running in a task parallel to the PD task. This means we need to restructure any mux sets which have required PD sequencing, such as setting USB safe state before mode entry and DP configure. Restructure the DPM and associated code to account for the mux set taking some amount of time before VDMs may proceed. For the TBT module, align the module states to always indicate the message the state is sending (ex. enter SOP will only send from TBT_ENTER_SOP now). This includes a couple of functional changes for boards: - All boards will now set safe state before configuring DP pins, even if their board functions previously did not - TBT mode exit will now set safe state once before SOP exit, rather than bouncing between safe state and USB mode after each exit ACK, which matches more closely with how mode entry is currently working. - USB4 exit will leave safe state set for TBT cable exit if active BRANCH=None BUG=b:172222942,b:186777984 TEST=on voxel with no mux task, pass tast typec.Mode*.manual Signed-off-by: Diana Z <dzigterman@chromium.org> Change-Id: I9d9fb6087199fba04084f57cefb31f3cb45c28e5 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3078417 Reviewed-by: Abe Levkoy <alevkoy@chromium.org>
Diffstat (limited to 'include/usb_pd_dpm.h')
-rw-r--r--include/usb_pd_dpm.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/usb_pd_dpm.h b/include/usb_pd_dpm.h
index 4a389b2116..18b73fca84 100644
--- a/include/usb_pd_dpm.h
+++ b/include/usb_pd_dpm.h
@@ -113,6 +113,7 @@ enum dpm_msg_setup_status {
MSG_SETUP_SUCCESS,
MSG_SETUP_ERROR,
MSG_SETUP_UNSUPPORTED,
+ MSG_SETUP_MUX_WAIT,
};
#endif /* __CROS_EC_USB_DPM_H */