OpenCloudOS-Kernel/drivers/usb/otg
Mike Thompson 363366cf61 usb: otg: mxs-phy: Fix mx23 operation
Currently mx23 fails to enumerate a USB device:

[ 1.300000] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 1.520000] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 1.740000] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 1.960000] hub 1-0:1.0: unable to enumerate USB device on port 1
[ 2.180000] hub 1-0:1.0: unable to enumerate USB device on port 1

Use a kernel workqueue to asynchronously delay the setting of
ENHOSTDISCONDETECT bit until after higher level hub connect/reset processing
is complete.  Prematurely setting the bit prevents the connection
processing from completing and not setting it prevents disconnect from being
detected. No delay is needed for clearing of ENHOSTDISCONDETECT.

Successfully tested on mx23-olinuxino (micro, mini and maxi variants) and mx28evk.

Cc: stable@vger.kernel.org # v3.6
Signed-off-by: Mike Thompson <mpthompson@gmail.com>
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2012-09-10 19:46:38 +03:00
..
Kconfig usb: otg: make twl6030_usb as a comparator driver to omap_usb2 2012-09-06 20:15:59 +03:00
Makefile usb: otg: add basic mxs phy driver support 2012-07-09 09:59:23 -07:00
ab8500-usb.c usb: otg: support for multiple transceivers by a single controller 2012-06-25 14:05:35 +03:00
fsl_otg.c usb: otg: move the dereference below the NULL test 2012-09-10 19:26:14 +03:00
fsl_otg.h usb: otg: fsl: Start using struct usb_otg 2012-02-13 13:35:25 +02:00
gpio_vbus.c usb: otg: support for multiple transceivers by a single controller 2012-06-25 14:05:35 +03:00
isp1301_omap.c This patch series contains a major revamp of how we collect entropy 2012-07-31 19:07:42 -07:00
msm_otg.c usb: otg: support for multiple transceivers by a single controller 2012-06-25 14:05:35 +03:00
mv_otg.c usb: otg: support for multiple transceivers by a single controller 2012-06-25 14:05:35 +03:00
mv_otg.h usb: otg: mv_otg: Start using struct usb_otg 2012-02-27 15:41:22 +02:00
mxs-phy.c usb: otg: mxs-phy: Fix mx23 operation 2012-09-10 19:46:38 +03:00
nop-usb-xceiv.c usb: xceiv: nop: let it work as USB2 and USB3 phy 2012-08-03 09:36:19 +03:00
otg.c usb: otg: Remove the unneeded NULL check 2012-08-09 14:36:58 +03:00
otg_fsm.c usb: otg: fsl: Start using struct usb_otg 2012-02-13 13:35:25 +02:00
otg_fsm.h usb: otg: fsl: Start using struct usb_otg 2012-02-13 13:35:25 +02:00
twl4030-usb.c usb: twl4030: Add device tree support for twl4030 usb 2012-09-06 20:16:07 +03:00
twl6030-usb.c usb: twl6030: Add dt support for twl6030 usb 2012-09-06 20:16:07 +03:00
ulpi.c usb: otg: ulpi: Start using struct usb_otg 2012-02-13 13:35:56 +02:00
ulpi_viewport.c usb: otg: ulpi: Start using struct usb_otg 2012-02-13 13:35:56 +02:00