All of lore.kernel.org
 help / color / mirror / Atom feed
* [v2,2/2] usb: dwc3: gadget: Report isoc scheduled frame number
@ 2018-11-08  2:47 Thinh Nguyen
  0 siblings, 0 replies; 3+ messages in thread
From: Thinh Nguyen @ 2018-11-08  2:47 UTC (permalink / raw)
  To: Felipe Balbi, Greg Kroah-Hartman, linux-usb; +Cc: John Youn, Thinh Nguyen

Report the scheduled frame number of an isochronous request.

Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
---
Change in v2:
 - Capture frame number at request cleanup

 drivers/usb/dwc3/gadget.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 679c12e14522..5e5e799699de 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -2345,6 +2345,10 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep,
 
 	req->request.actual = req->request.length - req->remaining;
 
+	/* Report scheduled frame number for isoc transfers */
+	if (usb_endpoint_xfer_isoc(dep->endpoint.desc))
+		req->request.start_frame = dep->frame_number;
+
 	if (!dwc3_gadget_ep_request_completed(req) &&
 			req->num_pending_sgs) {
 		__dwc3_gadget_kick_transfer(dep);

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [v2,2/2] usb: dwc3: gadget: Report isoc scheduled frame number
@ 2018-11-08 19:40 Thinh Nguyen
  0 siblings, 0 replies; 3+ messages in thread
From: Thinh Nguyen @ 2018-11-08 19:40 UTC (permalink / raw)
  To: Felipe Balbi, Thinh Nguyen, Greg Kroah-Hartman, linux-usb; +Cc: John Youn

Hi,

On 11/7/2018 11:08 PM, Felipe Balbi wrote:
> Hi,
>
> Thinh Nguyen <thinh.nguyen@synopsys.com> writes:
>> Report the scheduled frame number of an isochronous request.
>>
>> Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
>> ---
>> Change in v2:
>>  - Capture frame number at request cleanup
>>
>>  drivers/usb/dwc3/gadget.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
>> index 679c12e14522..5e5e799699de 100644
>> --- a/drivers/usb/dwc3/gadget.c
>> +++ b/drivers/usb/dwc3/gadget.c
>> @@ -2345,6 +2345,10 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep,
>>  
>>  	req->request.actual = req->request.length - req->remaining;
>>  
>> +	/* Report scheduled frame number for isoc transfers */
>> +	if (usb_endpoint_xfer_isoc(dep->endpoint.desc))
>> +		req->request.start_frame = dep->frame_number;
> yeah, this is really wrong. Since you're setting start_frame when
> cleaning up the request, this means that dep->frame_number was already
> updated due to XferComplete/XferInProgress. This means thart start_frame
> will report frame number of completion event, not start. So your
> debugging will be misleading.
>
You're right. I'll make the fix.

Thinh

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [v2,2/2] usb: dwc3: gadget: Report isoc scheduled frame number
@ 2018-11-08  7:08 Felipe Balbi
  0 siblings, 0 replies; 3+ messages in thread
From: Felipe Balbi @ 2018-11-08  7:08 UTC (permalink / raw)
  To: Thinh Nguyen, Greg Kroah-Hartman, linux-usb; +Cc: John Youn

Hi,

Thinh Nguyen <thinh.nguyen@synopsys.com> writes:
> Report the scheduled frame number of an isochronous request.
>
> Signed-off-by: Thinh Nguyen <thinhn@synopsys.com>
> ---
> Change in v2:
>  - Capture frame number at request cleanup
>
>  drivers/usb/dwc3/gadget.c | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
> index 679c12e14522..5e5e799699de 100644
> --- a/drivers/usb/dwc3/gadget.c
> +++ b/drivers/usb/dwc3/gadget.c
> @@ -2345,6 +2345,10 @@ static int dwc3_gadget_ep_cleanup_completed_request(struct dwc3_ep *dep,
>  
>  	req->request.actual = req->request.length - req->remaining;
>  
> +	/* Report scheduled frame number for isoc transfers */
> +	if (usb_endpoint_xfer_isoc(dep->endpoint.desc))
> +		req->request.start_frame = dep->frame_number;

yeah, this is really wrong. Since you're setting start_frame when
cleaning up the request, this means that dep->frame_number was already
updated due to XferComplete/XferInProgress. This means thart start_frame
will report frame number of completion event, not start. So your
debugging will be misleading.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-11-08 19:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-08  2:47 [v2,2/2] usb: dwc3: gadget: Report isoc scheduled frame number Thinh Nguyen
2018-11-08  7:08 Felipe Balbi
2018-11-08 19:40 Thinh Nguyen

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.