Without this patch clearing was done only when U-Boot was compiled with
MUSB Host Controller. But clearing of data toggle bit is needed also for
MUSB Device Controller otherwise Device Controller does not work correctly.

Signed-off-by: Pali Rohár <p...@kernel.org>
Reviewed-by: Lukasz Majewski <lu...@denx.de>
Acked-by: Pavel Machek <pa...@ucw.cz>
---
 drivers/usb/musb/musb_core.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c
index 147b2eb929..cc6dc3839d 100644
--- a/drivers/usb/musb/musb_core.c
+++ b/drivers/usb/musb/musb_core.c
@@ -81,10 +81,8 @@ void musb_configure_ep(const struct musb_epinfo *epinfo, u8 
cnt)
                        config_fifo(tx, idx, fifoaddr);
 
                        csr = readw(&musbr->txcsr);
-#if defined(CONFIG_USB_MUSB_HCD)
                        /* clear the data toggle bit */
                        writew(csr | MUSB_TXCSR_CLRDATATOG, &musbr->txcsr);
-#endif
                        /* Flush fifo if required */
                        if (csr & MUSB_TXCSR_TXPKTRDY)
                                writew(csr | MUSB_TXCSR_FLUSHFIFO,
@@ -94,10 +92,8 @@ void musb_configure_ep(const struct musb_epinfo *epinfo, u8 
cnt)
                        config_fifo(rx, idx, fifoaddr);
 
                        csr = readw(&musbr->rxcsr);
-#if defined(CONFIG_USB_MUSB_HCD)
                        /* clear the data toggle bit */
                        writew(csr | MUSB_RXCSR_CLRDATATOG, &musbr->rxcsr);
-#endif
                        /* Flush fifo if required */
                        if (csr & MUSB_RXCSR_RXPKTRDY)
                                writew(csr | MUSB_RXCSR_FLUSHFIFO,
-- 
2.20.1

Reply via email to