FROMGIT: usb: typec: tcpm: Implement enabling Auto Discharge disconnect support
TCPCI spec allows TCPC hardware to autonomously discharge the vbus capacitance upon disconnect. The expectation is that the TCPM enables AutoDischargeDisconnect while entering SNK/SRC_ATTACHED states. Hardware then automously discharges vbus when the vbus falls below a certain threshold i.e. VBUS_SINK_DISCONNECT_THRESHOLD. Apart from enabling the vbus discharge circuit, AutoDischargeDisconnect is also used a flag to move TCPCI based TCPC implementations into Attached.Snk/Attached.Src state as mentioned in Figure 4-15. TCPC State Diagram before a Connection of the USB Type-C Port Controller Interface Specification. In such TCPC implementations, setting AutoDischargeDisconnect would prevent TCPC into entering "Connection_Invalid" state as well. Bug: 168555244 Signed-off-by:Badhri Jagan Sridharan <badhri@google.com> Reviewed-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Link: https://lore.kernel.org/r/20201029063138.1429760-8-badhri@google.com Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit f321a02c https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-next) Signed-off-by:
Greg Kroah-Hartman <gregkh@google.com> (cherry picked from commit e9a276bd2a70537eab1b4162cca9b7eeb0f1514a) (cherry picked from commit a53a13168af75458cc57fe1e7a0e1129562fcd1a) Signed-off-by:
Will McVicker <willmcvicker@google.com> (cherry picked from commit 303a3291) Signed-off-by:
Will McVicker <willmcvicker@google.com> Change-Id: I3e25e9045c335b48cefaddb70329dd4df7e0fd94
Loading
Please sign in to comment