commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=88c728083aa506b169d8f7308c568cb3544873f7
branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk

Shouldn't poll for MUSB_DEVCTL when peripheral mode is enabled.

Signed-off-by: Bob Liu <[email protected]>
---
 drivers/usb/musb/musb_core.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index 0a8ac6c..f1f62da 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -2255,7 +2255,8 @@ static void musb_restore_context(struct musb *musb)
 	 * Blackfin musb-host can't resume without reprobe if not polling for
 	 * detected 'A'device.
 	 */
-	if (is_host_enabled(musb)) {
+	if (is_host_enabled(musb) && (musb->xceiv->state != OTG_STATE_B_IDLE)
+			&& (musb->xceiv->state != OTG_STATE_B_PERIPHERAL)) {
 		while (musb_readb(musb_base, MUSB_DEVCTL) & MUSB_DEVCTL_BDEVICE)
 			mdelay(10);
 	}
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits

Reply via email to