Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1018b4e4 authored by Ming Lei's avatar Ming Lei Committed by Greg Kroah-Hartman
Browse files

usb: musb: gadget: fix DMA length for OUT transfer



DMA length should not go beyond the availabe space of request buffer,
so fix it.

Signed-off-by: default avatarMing Lei <tom.leiming@gmail.com>
Acked-by: default avatarAnand Gadiyar <gadiyar@ti.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: default avatarFelipe Balbi <balbi@ti.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 490e5fbe
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -659,10 +659,11 @@ static void rxstate(struct musb *musb, struct musb_request *req)
				if (request->actual < request->length) {
					int transfer_size = 0;
#ifdef USE_MODE1
					transfer_size = min(request->length,
					transfer_size = min(request->length - request->actual,
							channel->max_len);
#else
					transfer_size = len;
					transfer_size = min(request->length - request->actual,
							(unsigned)len);
#endif
					if (transfer_size <= musb_ep->packet_sz)
						musb_ep->dma->desired_mode = 0;