From: Bryan Wu Date: Sat, 17 May 2008 11:01:21 +0000 (+0800) Subject: MUSB: Real fix bug 4 usb bugs found on Blackfin X-Git-Tag: v2.6.26-omap1~123^2~70 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=41c13615e46ed02a1aaafcc267603be8ea5244e9;p=linux-2.6-omap-h63xx.git MUSB: Real fix bug 4 usb bugs found on Blackfin - USB-IDE http://blackfin.uclinux.org/gf/project/linux-kernel/tracker/?action=TrackerItemEdit&tracker_item_id=3789 - 30G iPod http://blackfin.uclinux.org/gf/project/linux-kernel/tracker/?action=TrackerItemEdit&tracker_item_id=3806 - USB to CF/SD card reader http://blackfin.uclinux.org/gf/project/linux-kernel/tracker/?action=TrackerItemEdit&tracker_item_id=3790 http://blackfin.uclinux.org/gf/project/linux-kernel/tracker/?action=TrackerItemEdit&tracker_item_id=3807 Sonic found, when we got STALL, we should clear the toggle. Signed-off-by: Sonic Zhang Signed-off-by: Bryan Wu Signed-off-by: Tony Lindgren --- diff --git a/drivers/usb/musb/musb_host.c b/drivers/usb/musb/musb_host.c index fa335adac04..52ac02a4c76 100644 --- a/drivers/usb/musb/musb_host.c +++ b/drivers/usb/musb/musb_host.c @@ -1453,7 +1453,7 @@ void musb_host_rx(struct musb *musb, u8 epnum) (void) musb->dma_controller->channel_abort(dma); xfer_len = dma->actual_len; } - musb_h_flush_rxfifo(hw_ep, 0); + musb_h_flush_rxfifo(hw_ep, MUSB_RXCSR_CLRDATATOG); musb_writeb(epio, MUSB_RXINTERVAL, 0); done = true; goto finish;