summaryrefslogtreecommitdiffstats
path: root/drivers/cpuidle
diff options
context:
space:
mode:
authorHema Kalliguddi <hemahk@ti.com>2010-11-15 04:24:01 -0600
committerFelipe Balbi <balbi@ti.com>2010-11-22 12:36:48 +0200
commit92d2711f5dc15bf956546923a5718e74853f9912 (patch)
tree40d27b4757171130ccc03106b579f5a4d3425871 /drivers/cpuidle
parent3561d43fd289f590fdae672e5eb831b8d5cf0bf6 (diff)
usb: musb: unmap dma buffer when switching to PIO
Buffer is mapped to dma when dma channel is allocated. If, for some reason, dma channel programming fails, musb code will fallback to PIO mode to transfer that request. In that case, we need to unmap the buffer back to CPU. MUSB RTL1.8 and above cannot handle buffers which are not 32bit aligned. That happens to every request sent by g_ether gadget driver. Since the buffer sent was unaligned, we need to fallback to PIO. Because of that, g_ether was failing due to missing buffer unmapping. With this patch and [1] g_ether works fine with all MUSB revisions. Verified with OMAP3630 board, which has MUSB RTL1.8 using g_ether and g_zero. [1] http://www.spinics.net/lists/linux-usb/msg38400.html Signed-off-by: Hema HK <hemahk@ti.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/cpuidle')
0 files changed, 0 insertions, 0 deletions