diff options
author | Cliff Cai <cliff.cai@analog.com> | 2009-12-22 05:18:02 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-12-23 22:34:18 +0300 |
commit | 796a83fa039de50133171221ac102a2310e81ffd (patch) | |
tree | f34ef2ed674f3b9b5dcf65fbb901aa975e5df935 /drivers/usb/musb | |
parent | 17be5c5f5ef99c94374e07f71effa78e93a20eda (diff) | |
download | linux-796a83fa039de50133171221ac102a2310e81ffd.tar.xz |
USB: musb: correct DMA address for tx
Since a DMA transfer may need to be kicked off several times to complete,
the DMA start must include the length that has already been transferred.
Signed-off-by: Cliff Cai <cliff.cai@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Cc: Felipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/musb')
-rw-r--r-- | drivers/usb/musb/musb_gadget.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_gadget.c b/drivers/usb/musb/musb_gadget.c index e164999bd364..ac306985a8a1 100644 --- a/drivers/usb/musb/musb_gadget.c +++ b/drivers/usb/musb/musb_gadget.c @@ -319,7 +319,7 @@ static void txstate(struct musb *musb, struct musb_request *req) use_dma = use_dma && c->channel_program( musb_ep->dma, musb_ep->packet_sz, musb_ep->dma->desired_mode, - request->dma, request_size); + request->dma + request->actual, request_size); if (use_dma) { if (musb_ep->dma->desired_mode == 0) { /* |