Hi Greg, Today's linux-next merge of the usb tree got a conflict in drivers/usb/dwc3/gadget.c between commit f4a53c55117b ("usb: dwc3: gadget: fix pending isoc handling") from the usb.current tree and commit 348e026fafe2 ("usb: dwc3: gadget: Fix sparse warnings") from the usb tree. I fixed it up (see below) and can carry the fix as necessary (no action is required). -- Cheers, Stephen Rothwell sfr@xxxxxxxxxxxxxxxx diff --cc drivers/usb/dwc3/gadget.c index c2813c2b,ba444e7..0000000 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@@ -1091,26 -1078,10 +1082,21 @@@ static int __dwc3_gadget_ep_queue(struc * */ if (dep->flags & DWC3_EP_PENDING_REQUEST) { - int ret; - + /* + * If xfernotready is already elapsed and it is a case + * of isoc transfer, then issue END TRANSFER, so that + * you can receive xfernotready again and can have + * notion of current microframe. + */ + if (usb_endpoint_xfer_isoc(dep->endpoint.desc)) { + dwc3_stop_active_transfer(dwc, dep->number); + return 0; + } + ret = __dwc3_gadget_kick_transfer(dep, 0, true); - if (ret && ret != -EBUSY) { - struct dwc3 *dwc = dep->dwc; - + if (ret && ret != -EBUSY) dev_dbg(dwc->dev, "%s: failed to kick transfers\n", dep->name); - } } /*
Attachment:
pgppqflpENZwv.pgp
Description: PGP signature