summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorBin Liu <b-liu@ti.com>2018-12-18 16:58:04 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-12-18 17:46:31 +0300
commit6010abf2c2c0e382d7e8ee44bd11f343aae90cce (patch)
tree368377270dc06ddbe5c54fe48913957c6f03119d /Documentation
parent1d6e81a288e28d8d0e38e0501a324216f79bba35 (diff)
downloadlinux-6010abf2c2c0e382d7e8ee44bd11f343aae90cce.tar.xz
usb: musb: dsps: fix otg state machine
Due to lack of ID pin interrupt event on AM335x devices, the musb dsps driver uses polling to detect usb device attach for dual-role port. But in the case if a micro-A cable adapter is attached without a USB device attached to the cable, the musb state machine gets stuck in a_wait_vrise state waiting for the MUSB_CONNECT interrupt which won't happen due to the usb device is not attached. The state is stuck in a_wait_vrise even after the micro-A cable is detached, which could cause VBUS retention if then the dual-role port is attached to a host port. To fix the problem, make a_wait_vrise as a transient state, then move the state to either a_wait_bcon for host port or a_idle state for dual-role port, if no usb device is attached to the port. Signed-off-by: Bin Liu <b-liu@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions