1cd8ae19a9
Add backported patched from 5.x from usb related fixes Up kernel version to most recent lts
37 lines
1.2 KiB
Diff
37 lines
1.2 KiB
Diff
From c8006f67ae0371900e601112d9f9cd8fff1c8387 Mon Sep 17 00:00:00 2001
|
|
From: Minas Harutyunyan <minas.harutyunyan@synopsys.com>
|
|
Date: Tue, 12 Mar 2019 13:27:46 +0400
|
|
Subject: [PATCH 40/53] usb: dwc2: Set actual frame number for completed ISOC
|
|
transfer
|
|
|
|
On ISOC transfer completion, in DDMA mode, set actual frame
|
|
number returning to function driver in usb_request.
|
|
|
|
Due to core limitation, returning frame number is 11-bit wide.
|
|
|
|
Signed-off-by: Minas Harutyunyan <hminas@synopsys.com>
|
|
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
|
|
---
|
|
drivers/usb/dwc2/gadget.c | 5 +++++
|
|
1 file changed, 5 insertions(+)
|
|
|
|
diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c
|
|
index fafd9cc9c8b2..a17e444e467b 100644
|
|
--- a/drivers/usb/dwc2/gadget.c
|
|
+++ b/drivers/usb/dwc2/gadget.c
|
|
@@ -2166,6 +2166,11 @@ static void dwc2_gadget_complete_isoc_request_ddma(struct dwc2_hsotg_ep *hs_ep)
|
|
*/
|
|
if (!hs_ep->dir_in && ureq->length & 0x3)
|
|
ureq->actual += 4 - (ureq->length & 0x3);
|
|
+
|
|
+ /* Set actual frame number for completed transfers */
|
|
+ ureq->frame_number =
|
|
+ (desc_sts & DEV_DMA_ISOC_FRNUM_MASK) >>
|
|
+ DEV_DMA_ISOC_FRNUM_SHIFT;
|
|
}
|
|
|
|
dwc2_hsotg_complete_request(hsotg, hs_ep, hs_req, 0);
|
|
--
|
|
2.11.0
|
|
|