From 180ac77e16e1e5a57769a2a20411b6e37d649107 Mon Sep 17 00:00:00 2001 From: Kevin K Wong Date: Wed, 21 Sep 2016 08:57:40 -0700 Subject: reef: enable tcpc-controlled drp toggle BUG=chrome-os-partner:54668 BRANCH=none TEST=Verified SNK is detected in S0 (toggle on), S3 (toggle off), and S5 (force sink). SRC is detect in S0 only, stays detected when entered S3, but unplug/plug while in S3 will not re-detect until system back in S0. When go to S5, SRC will get disconnected until back in S0, and hotplug SRC in S5 will not get detected. Checked power role swap with another chromebook in the above scenario also. Change-Id: I2a487fca5cb04c45524aa3efde84fcd10ff0579e Signed-off-by: Kevin K Wong Reviewed-on: https://chromium-review.googlesource.com/396918 Reviewed-by: Aaron Durbin --- include/usb_pd_tcpm.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'include/usb_pd_tcpm.h') diff --git a/include/usb_pd_tcpm.h b/include/usb_pd_tcpm.h index 912e3bbda2..5960d1b62e 100644 --- a/include/usb_pd_tcpm.h +++ b/include/usb_pd_tcpm.h @@ -184,6 +184,17 @@ struct tcpm_drv { * @param enable Discharge enable or disable */ void (*tcpc_discharge_vbus)(int port, int enable); + +#ifdef CONFIG_USB_PD_DUAL_ROLE_AUTO_TOGGLE + /** + * Enable TCPC auto DRP toggling. + * + * @param port Type-C port number + * + * @return EC_SUCCESS or error + */ + int (*drp_toggle)(int port); +#endif }; enum tcpc_alert_polarity { -- cgit v1.2.1