linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felipe Balbi <felipe.balbi@linux.intel.com>
To: Roger Quadros <rogerq@ti.com>,
	laurent.pinchart@ideasonboard.com, paul.elder@ideasonboard.com,
	"linux-usb\@vger.kernel.org" <linux-usb@vger.kernel.org>,
	"Bin Liu \[EP\]" <b-liu@ti.com>
Cc: "Nori\, Sekhar" <nsekhar@ti.com>
Subject: Re: how to test g_webcam
Date: Mon, 14 Oct 2019 17:22:30 +0300	[thread overview]
Message-ID: <871rvf8l09.fsf@gmail.com> (raw)
In-Reply-To: <922b2947-2d47-19c4-9116-73c5f281de15@ti.com>


Hi,

Roger Quadros <rogerq@ti.com> writes:
>> Hmm, Link Change is disabled by default upstream, unless you're running
>> on anything older than 2.50a. I don't remember the version you're using,
>> though :-p
>
> 2.02a

Thanks :-)

>>>       irq/170-dwc3-270   [000] d...   173.408918: dwc3_event: event (00000101): Reset [U0]
>>>       irq/170-dwc3-270   [000] d...   173.463787: dwc3_event: event (00000201): Connection Done [U0]
>>>       irq/170-dwc3-270   [000] d...   173.463796: dwc3_gadget_ep_cmd: ep0out: cmd 'Set Endpoint Configuration' [401] params 80000200 00000500 00000000 --> status: Successful
>>>       irq/170-dwc3-270   [000] d...   173.463799: dwc3_gadget_ep_enable: ep0out: mps 64/512 streams 0 burst 1 ring 0/0 flags E:swBp:>
>>>       irq/170-dwc3-270   [000] d...   173.463803: dwc3_gadget_ep_cmd: ep0in: cmd 'Set Endpoint Configuration' [401] params 80000200 02000500 00000000 --> status: Successful
>>>       irq/170-dwc3-270   [000] d...   173.463804: dwc3_gadget_ep_enable: ep0in: mps 64/512 streams 0 burst 1 ring 0/0 flags E:swbp:<
>> 
>> hmm, High speed? Can we get traces for superspeed too?
>
> We can after I figure out the -ENODEV issue I reported above.

cool

>>>         uvc-gadget-275   [001] d...   173.712586: dwc3_prepare_trb: ep0out: trb 4a151d32 buf 00000000ae85b000 size 8 ctrl 00000c23 (HLcs:SC:setup)
>>>         uvc-gadget-275   [001] d...   173.712592: dwc3_gadget_ep_cmd: ep0out: cmd 'Start Transfer' [406] params 00000000 ae85b000 00000000 --> status: Successful
>>>       irq/170-dwc3-270   [000] d...   173.712688: dwc3_event: event (0000c040): ep0out: Transfer Complete (sIL) [Setup Phase]
>>>       irq/170-dwc3-270   [000] d...   173.712690: dwc3_ctrl_req: a1 81 00 02 00 00 01 00
>> 
>> Another one...
>
> 0xa1 GetRequest directed to video data endpoint of a VideoStreaming interface,
> 0x81 GET_CUR (Current setting attribute),
> 0002 CT_AE_MODE_CONTROL (Auto-exposure control selector),
> 0000 interface?,
> length 0001,

Thanks for these :-)

>>>         uvc-gadget-275   [001] d...   215.933842: dwc3_gadget_ep_cmd: ep1in: cmd 'End Transfer' [30c08] params 00000000 00000000 00000000 --> status: Successful
>>>         uvc-gadget-275   [001] .n..   215.933980: dwc3_ep_dequeue: ep2in: req f1fb458c length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.940651: dwc3_ep_dequeue: ep2in: req 5be7fd9f length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.947297: dwc3_ep_dequeue: ep2in: req 996abf23 length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.953954: dwc3_ep_dequeue: ep2in: req d9961026 length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.960615: dwc3_free_request: ep2in: req f1fb458c length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.960617: dwc3_free_request: ep2in: req 5be7fd9f length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.960618: dwc3_free_request: ep2in: req 996abf23 length 0/1024 zsI ==> -11
>>>         uvc-gadget-275   [001] .n..   215.960619: dwc3_free_request: ep2in: req d9961026 length 0/1024 zsI ==> -11
>> 
>> So, first things first:
>> 
>> Let's figure out what those class requests are and why are they *always*
>> stalled. UVC class spec should answer that.
>
> I tried to decipher 2 class specific requests that we get.
>
>> 
>> Then we need to find out why it takes 1.5 seconds for uvc-gadget to
>> queue more data.
>> 
>
> Not sure how to do that.

Look at the source for uvc-gadget. If I were to guess, I'd say
uvc-gadget prepares frames as a function of the requested bandwidth.

It probably goes to sleep periodically until it thinks there's more data
to send.

Best

-- 
balbi

  reply	other threads:[~2019-10-14 14:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-11 13:00 how to test g_webcam Roger Quadros
2019-10-11 13:06 ` Felipe Balbi
2019-10-14 12:02   ` Roger Quadros
2019-10-14 12:38     ` Felipe Balbi
2019-10-14 13:23       ` Roger Quadros
2019-10-14 14:22         ` Felipe Balbi [this message]
2019-10-15 10:44           ` Roger Quadros
2019-10-15 15:26             ` Gopal, Saranya
2019-10-16  9:36               ` Roger Quadros

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=871rvf8l09.fsf@gmail.com \
    --to=felipe.balbi@linux.intel.com \
    --cc=b-liu@ti.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-usb@vger.kernel.org \
    --cc=nsekhar@ti.com \
    --cc=paul.elder@ideasonboard.com \
    --cc=rogerq@ti.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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).