From: Mike Thompson Date: Thu, 30 Aug 2012 21:26:25 +0000 (-0300) Subject: usb: otg: mxs-phy: Fix mx23 operation X-Git-Tag: omap-for-v3.7-rc1/fixes-cpufreq-signed~60^2~4^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=363366cf61c544ea476f3d220f43a95cb03014f5;p=pandora-kernel.git 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 Signed-off-by: Fabio Estevam Signed-off-by: Felipe Balbi --- Reading git-diff-tree failed