sunxi: usb-phy: Never power off the usb ports
authorHans de Goede <hdegoede@redhat.com>
Wed, 8 Jul 2015 14:44:22 +0000 (16:44 +0200)
committerHans de Goede <hdegoede@redhat.com>
Sat, 8 Aug 2015 14:26:19 +0000 (16:26 +0200)
commitc9f8947e66042b49bba358d4bce531da3bd440be
tree8c1785ba6f2a8ea1aa9e771c31616d282692f353
parent960caeba8f76baffc7201b7535de964f406d48b3
sunxi: usb-phy: Never power off the usb ports

USB devices are not really designed to get the power bounced off and on
at them. Esp. USB powered harddisks do not like this.

Currently we power off the USB ports both on a "usb reset" and when
booting the kernel, causing the usb-power to bounce off and then back
on again.

This patch removes the powering off calls, fixing the undesirable power
bouncing.

Note this requires some special handling for the OTG port:
1) We must skip the external vbus check if we've already enabled our own
vbus to avoid false positives
2) If on an usb reset we no longer detect that the id-pin is grounded, turn
off vbus as that means an external vbus may be present now

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Acked-by: Ian Campbell <ijc@hellion.org.uk>
arch/arm/cpu/armv7/sunxi/usb_phy.c
arch/arm/include/asm/arch-sunxi/usb_phy.h
drivers/usb/host/ehci-sunxi.c
drivers/usb/host/ohci-sunxi.c
drivers/usb/musb-new/sunxi.c