usb: musb: sunxi: Set state to A_WAIT_VRISE when enabling Vbus
authorHans de Goede <hdegoede@redhat.com>
Tue, 31 May 2016 15:05:08 +0000 (10:05 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Jun 2016 21:58:59 +0000 (14:58 -0700)
commita60d541a2d402c8645d5bb2ec8dabe474b66e018
treed0abaf2d3f99adcdf6ee60c58b4c7d54330bcece
parent37f30d887a41775066b78f8c0fa9a4929638db07
usb: musb: sunxi: Set state to A_WAIT_VRISE when enabling Vbus

When the board is powering attached usb devices via the otg port
sometimes / on some devices it takes slightly too long for the Vbus
detection code in phy-sun4i-usb.c to signal that Vbus is high after
enabling Vbus and the musb hardware signals a MUSB_INTR_VBUSERROR
interrupt.

This commit sets the otg state to A_WAIT_VRISE upon enabling Vbus
making musb_stage0_irq() ignore the first VBUSERR_RETRY_COUNT
VBUSERROR interrupts, fixing connection issues in these cases.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
[b-liu@ti.com: revise subject prefix]
Signed-off-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/musb/sunxi.c