summaryrefslogtreecommitdiffstats
path: root/drivers/usb/dwc3
diff options
context:
space:
mode:
authorManu Gautam <mgautam@codeaurora.org>2017-12-06 08:19:04 +0100
committerFelipe Balbi <felipe.balbi@linux.intel.com>2017-12-11 11:35:37 +0100
commitec5bb87e4e2a1d3a35563a7bcfac9febf67aba9d (patch)
treeeba2d8dc55581c511fced29619cad2b88e48d493 /drivers/usb/dwc3
parentusb: dwc3: of-simple: set dev_pm_ops (diff)
downloadlinux-ec5bb87e4e2a1d3a35563a7bcfac9febf67aba9d.tar.xz
linux-ec5bb87e4e2a1d3a35563a7bcfac9febf67aba9d.zip
usb: dwc3: gadget: Fix PCM1 for ISOC EP with ep->mult less than 3
For isochronous endpoints with ep->mult less than 3, PCM1 value of trb->size in set incorrectly. For ep->mult = 2, this is set to 0/-1 and for ep->mult = 1, this is set to -2. This is because the initial mult is set to ep->mult - 1 instead of 2. Signed-off-by: Manu Gautam <mgautam@codeaurora.org> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Diffstat (limited to 'drivers/usb/dwc3')
-rw-r--r--drivers/usb/dwc3/gadget.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 01e595bb1ff1..639dd1b163a0 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -912,7 +912,7 @@ static void __dwc3_prepare_one_trb(struct dwc3_ep *dep, struct dwc3_trb *trb,
*/
if (speed == USB_SPEED_HIGH) {
struct usb_ep *ep = &dep->endpoint;
- unsigned int mult = ep->mult - 1;
+ unsigned int mult = 2;
unsigned int maxp = usb_endpoint_maxp(ep->desc);
if (length <= (2 * maxp))