summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior2013-08-13 19:38:24 +0200
committerFelipe Balbi2013-08-13 21:21:42 +0200
commit13266fea59f6f55e98d61e66707d784b9e947c84 (patch)
treea1770b04903fcbf3e5b8823cc86cd2b41ece9384
parentusb: musb: Use is_cppi_enabled() and tusb_dma_omap() instead of the ifdef (diff)
downloadkernel-qcow2-linux-13266fea59f6f55e98d61e66707d784b9e947c84.tar.gz
kernel-qcow2-linux-13266fea59f6f55e98d61e66707d784b9e947c84.tar.xz
kernel-qcow2-linux-13266fea59f6f55e98d61e66707d784b9e947c84.zip
usb: musb: cppi41: Enable in device-TX mode
Since the musb-gadget code now calls the dma engine properly it is possible to enable it for the TX path in device mode. AM335x Advisory 1.0.13 says that we may lose the toggle bit on multiple RX transfers. There is a workaround in host mode but none in device mode and therefore RX transfers are disabled. Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Felipe Balbi <balbi@ti.com>
-rw-r--r--drivers/usb/musb/musb_cppi41.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/usb/musb/musb_cppi41.c b/drivers/usb/musb/musb_cppi41.c
index a74259ea0306..e64701d15401 100644
--- a/drivers/usb/musb/musb_cppi41.c
+++ b/drivers/usb/musb/musb_cppi41.c
@@ -362,6 +362,9 @@ static int cppi41_is_compatible(struct dma_channel *channel, u16 maxpacket,
WARN_ON(1);
return 1;
}
+ if (cppi41_channel->is_tx)
+ return 1;
+ /* AM335x Advisory 1.0.13. No workaround for device RX mode */
return 0;
}