commit: http://blackfin.uclinux.org/git/?p=linux-kernel;a=commitdiff;h=a19f2c82b377a648f37b79ed7a8820493d252448 branch: http://blackfin.uclinux.org/git/?p=linux-kernel;a=shortlog;h=refs/heads/trunk
USB host device can't be recognized after unplug. This patch fix it by reinit vbus register and state. Signed-off-by: Bob Liu <[email protected]> --- drivers/usb/musb/blackfin.c | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/drivers/usb/musb/blackfin.c b/drivers/usb/musb/blackfin.c index 1e0951b..2a5a796 100644 --- a/drivers/usb/musb/blackfin.c +++ b/drivers/usb/musb/blackfin.c @@ -192,7 +192,12 @@ static irqreturn_t blackfin_interrupt(int irq, void *__hci) mod_timer(&musb_conn_timer, jiffies + TIMER_DELAY); musb->a_wait_bcon = TIMER_DELAY; } - +#ifdef CONFIG_BF60x + if (musb->int_usb & MUSB_INTR_DISCONNECT && is_host_active(musb)) { + musb->xceiv->state = OTG_STATE_B_IDLE; + bfin_write_USB_VBUS_CTL(0x00); + } +#endif spin_unlock_irqrestore(&musb->lock, flags); return retval;
_______________________________________________ Linux-kernel-commits mailing list [email protected] https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits
