• Chen-Yu Tsai's avatar
    phy: allwinner: sun4i-usb: poll vbus changes on A23/A33 when driving VBUS · d7119224
    Chen-Yu Tsai authored
    The AXP223 PMIC, like the AXP221, does not generate VBUS change
    interrupts when N_VBUSEN is used to drive VBUS for the OTG port
    on the board.
    
    This was not noticed until recently, as most A23/A33 boards use
    a GPIO pin that does not support interrupts for OTG ID detection.
    This forces the driver to use polling. However the A33-OlinuXino
    uses a pin that does support interrupts, so the driver uses them.
    However the VBUS interrupt never fires, and the driver never gets
    to update the VBUS status. This results in musb timing out waiting
    for VBUS to rise.
    
    This was worked around for the AXP221 by resorting to polling
    changes in commit 91d96f06 ("phy-sun4i-usb: Add workaround for
    missing Vbus det interrupts on A31"). This patch adds the A23 and
    A33 to the list of SoCs that need the workaround.
    
    Fixes: fc1f45ed ("phy-sun4i-usb: Add support for the usb-phys on the
    		      sun8i-a33 SoC")
    Fixes: 123dfdbc ("phy-sun4i-usb: Add support for the usb-phys on the
    		      sun8i-a23 SoC")
    Cc: <stable@vger.kernel.org> # 4.3.x: 68dbc2ce phy-sun4i-usb:
    		Use of_match_node to get model specific config data
    Cc: <stable@vger.kernel.org> # 4.3.x: 5cf700ac phy: phy-sun4i-usb:
    		Fix optional gpios failing probe
    Cc: <stable@vger.kernel.org> # 4.3.x: 04e59a02 phy-sun4i-usb:
    		Fix irq free conditions to match request conditions
    Cc: <stable@vger.kernel.org> # 4.3.x: 91d96f06 phy-sun4i-usb:
    		Add workaround for missing Vbus det interrupts on A31
    Cc: <stable@vger.kernel.org> # 4.3.x
    Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
    Acked-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
    Signed-off-by: default avatarKishon Vijay Abraham I <kishon@ti.com>
    Signed-off-by: default avatarKishon Vijay Abraham I <kishon@ti.com>
    d7119224
phy-sun4i-usb.c 25.3 KB