Ver código fonte

usb: dwc3: ep0: increment "actual" on bounced ep0 case

due to a HW limitation we have a bounce buffer for ep0
out transfers which are not aligned with MaxPacketSize.

On such case we were not increment r->actual as we should.

This patch fixes that mistake.

Cc: stable@vger.kernel.org
Signed-off-by: Felipe Balbi <balbi@ti.com>
Felipe Balbi 13 anos atrás
pai
commit
cd423dd363
1 arquivos alterados com 2 adições e 1 exclusões
  1. 2 1
      drivers/usb/dwc3/ep0.c

+ 2 - 1
drivers/usb/dwc3/ep0.c

@@ -569,9 +569,10 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc,
 		dwc->ep0_bounced = false;
 	} else {
 		transferred = ur->length - length;
-		ur->actual += transferred;
 	}
 
+	ur->actual += transferred;
+
 	if ((epnum & 1) && ur->actual < ur->length) {
 		/* for some reason we did not get everything out */