|
@@ -1038,7 +1038,7 @@ static int usb3_write_pipe(struct renesas_usb3_ep *usb3_ep,
|
|
|
usb3_ep->ep.maxpacket);
|
|
|
u8 *buf = usb3_req->req.buf + usb3_req->req.actual;
|
|
|
u32 tmp = 0;
|
|
|
- bool is_last;
|
|
|
+ bool is_last = !len ? true : false;
|
|
|
|
|
|
if (usb3_wait_pipe_status(usb3_ep, PX_STA_BUFSTS) < 0)
|
|
|
return -EBUSY;
|
|
@@ -1059,7 +1059,8 @@ static int usb3_write_pipe(struct renesas_usb3_ep *usb3_ep,
|
|
|
usb3_write(usb3, tmp, fifo_reg);
|
|
|
}
|
|
|
|
|
|
- is_last = usb3_is_transfer_complete(usb3_ep, usb3_req);
|
|
|
+ if (!is_last)
|
|
|
+ is_last = usb3_is_transfer_complete(usb3_ep, usb3_req);
|
|
|
/* Send the data */
|
|
|
usb3_set_px_con_send(usb3_ep, len, is_last);
|
|
|
|