]> pilppa.com Git - linux-2.6-omap-h63xx.git/commitdiff
MUSB: Real fix bug 4 usb bugs found on Blackfin
authorBryan Wu <cooloney@kernel.org>
Sat, 17 May 2008 11:01:21 +0000 (19:01 +0800)
committerTony Lindgren <tony@atomide.com>
Wed, 21 May 2008 15:47:09 +0000 (08:47 -0700)
 - 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 <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
drivers/usb/musb/musb_host.c

index fa335adac046e2c0900fee1546c9e753509c7b89..52ac02a4c76a08fac5c920e55b9b6071df23bfee 100644 (file)
@@ -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;