From: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> To: Felipe Balbi <balbi@kernel.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Alan Stern <stern@rowland.harvard.edu>, Johan Hovold <johan@kernel.org>, Jaejoong Kim <climbbb.kim@gmail.com>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Roger Quadros <rogerq@ti.com> Cc: <linux-usb@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <v.anuragkumar@gmail.com>, Thinh Nguyen <thinhn@synopsys.com>, Tejas Joglekar <tejas.joglekar@synopsys.com>, Ajay Yugalkishore Pandey <APANDEY@xilinx.com>, Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> Subject: [PATCH V6 07/10] usb: dwc3: check for requests in started list for stream capable endpoints Date: Sat, 13 Oct 2018 18:44:54 +0530 [thread overview] Message-ID: <1539436498-24892-8-git-send-email-anurag.kumar.vulisha@xilinx.com> (raw) In-Reply-To: <1539436498-24892-1-git-send-email-anurag.kumar.vulisha@xilinx.com> For stream capable endpoints, uas layer can queue mulpile requests on single ep with different stream ids. So, there can be multiple pending requests waiting to be transferred. This patch changes the code to check for any pending requests waiting to be transferred on ep started_list and calls __dwc3_gadget_kick_transfer() if any. Signed-off-by: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> --- Changes in v6: 1. Replaced dep->stream_capable with dep->endpoint.stream_caapable Changes in v5: 1. None Changes in v4: 1. None Changes in v3: 1. None Changes in v2: 1. None --- drivers/usb/dwc3/gadget.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 89df030..9bf1688 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -2420,6 +2420,9 @@ static void dwc3_gadget_endpoint_transfer_in_progress(struct dwc3_ep *dep, dwc3_gadget_ep_cleanup_completed_requests(dep, event, status); + if (dep->endpoint.stream_capable && !list_empty(&dep->started_list)) + __dwc3_gadget_kick_transfer(dep); + if (stop) { dwc3_stop_active_transfer(dep, true); dep->flags = DWC3_EP_ENABLED; -- 2.1.1
WARNING: multiple messages have this Message-ID (diff)
From: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> To: Felipe Balbi <balbi@kernel.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Alan Stern <stern@rowland.harvard.edu>, Johan Hovold <johan@kernel.org>, Jaejoong Kim <climbbb.kim@gmail.com>, Benjamin Herrenschmidt <benh@kernel.crashing.org>, Roger Quadros <rogerq@ti.com> Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, v.anuragkumar@gmail.com, Thinh Nguyen <thinhn@synopsys.com>, Tejas Joglekar <tejas.joglekar@synopsys.com>, Ajay Yugalkishore Pandey <APANDEY@xilinx.com>, Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> Subject: [V6,07/10] usb: dwc3: check for requests in started list for stream capable endpoints Date: Sat, 13 Oct 2018 18:44:54 +0530 [thread overview] Message-ID: <1539436498-24892-8-git-send-email-anurag.kumar.vulisha@xilinx.com> (raw) For stream capable endpoints, uas layer can queue mulpile requests on single ep with different stream ids. So, there can be multiple pending requests waiting to be transferred. This patch changes the code to check for any pending requests waiting to be transferred on ep started_list and calls __dwc3_gadget_kick_transfer() if any. Signed-off-by: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com> --- Changes in v6: 1. Replaced dep->stream_capable with dep->endpoint.stream_caapable Changes in v5: 1. None Changes in v4: 1. None Changes in v3: 1. None Changes in v2: 1. None --- drivers/usb/dwc3/gadget.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 89df030..9bf1688 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c @@ -2420,6 +2420,9 @@ static void dwc3_gadget_endpoint_transfer_in_progress(struct dwc3_ep *dep, dwc3_gadget_ep_cleanup_completed_requests(dep, event, status); + if (dep->endpoint.stream_capable && !list_empty(&dep->started_list)) + __dwc3_gadget_kick_transfer(dep); + if (stop) { dwc3_stop_active_transfer(dep, true); dep->flags = DWC3_EP_ENABLED;
next prev parent reply other threads:[~2018-10-13 13:15 UTC|newest] Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-10-13 13:14 [PATCH V6 00/10] usb: dwc3: Fix broken BULK stream support to dwc3 gadget driver Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 01/10] usb: gadget: udc: Add timer for stream capable endpoints Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,01/10] " Anurag Kumar Vulisha 2018-11-14 13:57 ` [PATCH V6 01/10] " Felipe Balbi 2018-11-14 13:57 ` [V6,01/10] " Felipe Balbi 2018-11-28 16:15 ` [PATCH V6 01/10] " Anurag Kumar Vulisha 2018-11-28 16:15 ` [V6,01/10] " Anurag Kumar Vulisha 2018-11-29 12:51 ` [PATCH V6 01/10] " Felipe Balbi 2018-11-29 12:51 ` [V6,01/10] " Felipe Balbi 2018-11-29 15:51 ` [PATCH V6 01/10] " Anurag Kumar Vulisha 2018-11-29 15:51 ` [V6,01/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 02/10] usb: dwc3: gadget: Add stream timeout handler for avoiding deadlock Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,02/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 03/10] usb: dwc3: gadget: Remove references to dep->stream_capable Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,03/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 04/10] usb: dwc3: update stream id in depcmd Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,04/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 05/10] usb: dwc3: make controller clear transfer resources after complete Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,05/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 06/10] usb: dwc3: don't issue no-op trb for stream capable endpoints Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,06/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` Anurag Kumar Vulisha [this message] 2018-10-13 13:14 ` [V6,07/10] usb: dwc3: check for requests in started list " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 08/10] usb: dwc3: Correct the logic for checking TRB full in __dwc3_prepare_one_trb() Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,08/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 08/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,08/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 09/10] usb: dwc3: Check for IOC/LST bit in both event->status and TRB->ctrl fields Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,09/10] " Anurag Kumar Vulisha 2018-10-13 13:14 ` [PATCH V6 10/10] usb: dwc3: Check MISSED ISOC bit only for ISOC endpoints Anurag Kumar Vulisha 2018-10-13 13:14 ` [V6,10/10] " Anurag Kumar Vulisha 2018-11-11 8:48 ` [PATCH V6 00/10] usb: dwc3: Fix broken BULK stream support to dwc3 gadget driver Anurag Kumar Vulisha
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1539436498-24892-8-git-send-email-anurag.kumar.vulisha@xilinx.com \ --to=anurag.kumar.vulisha@xilinx.com \ --cc=APANDEY@xilinx.com \ --cc=balbi@kernel.org \ --cc=benh@kernel.crashing.org \ --cc=climbbb.kim@gmail.com \ --cc=gregkh@linuxfoundation.org \ --cc=johan@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-usb@vger.kernel.org \ --cc=rogerq@ti.com \ --cc=stern@rowland.harvard.edu \ --cc=tejas.joglekar@synopsys.com \ --cc=thinhn@synopsys.com \ --cc=v.anuragkumar@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.