diff options
Diffstat (limited to 'common/usbc/usb_pe_drp_sm.c')
-rw-r--r-- | common/usbc/usb_pe_drp_sm.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/common/usbc/usb_pe_drp_sm.c b/common/usbc/usb_pe_drp_sm.c index 1aa2b4b270..aefd656066 100644 --- a/common/usbc/usb_pe_drp_sm.c +++ b/common/usbc/usb_pe_drp_sm.c @@ -1456,13 +1456,15 @@ static bool common_src_snk_dpm_requests(int port) if (!PE_CHK_FLAG(port, PE_FLAGS_MODAL_OPERATION)) { /* * Clear counters and reset timer to trigger a - * port discovery. + * port discovery, and also clear any pending VDM send + * requests. */ pd_dfp_discovery_init(port); pe[port].dr_swap_attempt_counter = 0; pe[port].discover_identity_counter = 0; pd_timer_enable(port, PE_TIMER_DISCOVER_IDENTITY, PD_T_DISCOVER_IDENTITY); + PE_CLR_DPM_REQUEST(port, DPM_REQUEST_VDM); } return true; } else if (PE_CHK_DPM_REQUEST(port, DPM_REQUEST_VDM)) { |