summaryrefslogtreecommitdiffstats
path: root/drivers/usb/musb/cppi_dma.c
diff options
context:
space:
mode:
authorMing Lei2010-09-20 09:32:06 +0200
committerGreg Kroah-Hartman2010-09-24 20:05:01 +0200
commit66af83ddf7b5a4ea94e79cbeadaa0aeed4def5f7 (patch)
tree06cc6046c4db50bc9dd1b165e9c02095bc12d57f /drivers/usb/musb/cppi_dma.c
parentusb: musb: gadget: complete request only if data is transfered over (diff)
downloadkernel-qcow2-linux-66af83ddf7b5a4ea94e79cbeadaa0aeed4def5f7.tar.gz
kernel-qcow2-linux-66af83ddf7b5a4ea94e79cbeadaa0aeed4def5f7.tar.xz
kernel-qcow2-linux-66af83ddf7b5a4ea94e79cbeadaa0aeed4def5f7.zip
usb: musb: gadget: fix dma length in txstate
DMA length should not go beyond the availabe space of request buffer, so fix it. Also set max_len of cppi dma channel as max size of int type, so make musb dma handling happier. Signed-off-by: Ming Lei <tom.leiming@gmail.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Anand Gadiyar <gadiyar@ti.com> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb/cppi_dma.c')
-rw-r--r--drivers/usb/musb/cppi_dma.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/musb/cppi_dma.c b/drivers/usb/musb/cppi_dma.c
index 59dc3d351b60..5ab5bb89bae3 100644
--- a/drivers/usb/musb/cppi_dma.c
+++ b/drivers/usb/musb/cppi_dma.c
@@ -322,6 +322,7 @@ cppi_channel_allocate(struct dma_controller *c,
index, transmit ? 'T' : 'R', cppi_ch);
cppi_ch->hw_ep = ep;
cppi_ch->channel.status = MUSB_DMA_STATUS_FREE;
+ cppi_ch->channel.max_len = 0x7fffffff;
DBG(4, "Allocate CPPI%d %cX\n", index, transmit ? 'T' : 'R');
return &cppi_ch->channel;