diff options
Diffstat (limited to 'drivers/usb/musb/musb_core.c')
| -rw-r--r-- | drivers/usb/musb/musb_core.c | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index ec57fc811..22f3dba0c 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -32,7 +32,9 @@ struct musb_regs *musbr;   */  void musb_start(void)  { +#if defined(CONFIG_MUSB_HCD)  	u8 devctl; +#endif  	/* disable all interrupts */  	writew(0, &musbr->intrtxe); @@ -74,9 +76,10 @@ void musb_configure_ep(struct musb_epinfo *epinfo, u8 cnt)  			/* Configure fifo size and fifo base address */  			writeb(idx, &musbr->txfifosz);  			writew(fifoaddr >> 3, &musbr->txfifoadd); + +			csr = readw(&musbr->txcsr);  #if defined(CONFIG_MUSB_HCD)  			/* clear the data toggle bit */ -			csr = readw(&musbr->txcsr);  			writew(csr | MUSB_TXCSR_CLRDATATOG, &musbr->txcsr);  #endif  			/* Flush fifo if required */ @@ -87,9 +90,10 @@ void musb_configure_ep(struct musb_epinfo *epinfo, u8 cnt)  			/* Configure fifo size and fifo base address */  			writeb(idx, &musbr->rxfifosz);  			writew(fifoaddr >> 3, &musbr->rxfifoadd); + +			csr = readw(&musbr->rxcsr);  #if defined(CONFIG_MUSB_HCD)  			/* clear the data toggle bit */ -			csr = readw(&musbr->rxcsr);  			writew(csr | MUSB_RXCSR_CLRDATATOG, &musbr->rxcsr);  #endif  			/* Flush fifo if required */ |