From: Felipe Balbi <felipe.balbi@linux.intel.com>
To: yfw <nh26223@gmail.com>, Bin Liu <b-liu@ti.com>
Cc: linux-usb@vger.kernel.org, linux-media@vger.kernel.org,
laurent.pinchart@ideasonboard.com
Subject: Re: g_webcam Isoch high bandwidth transfer
Date: Fri, 23 Sep 2016 11:27:26 +0300 [thread overview]
Message-ID: <87k2e358cx.fsf@linux.intel.com> (raw)
In-Reply-To: <b73898d0-b5ff-d591-0946-acf127453aba@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 3043 bytes --]
Hi,
yfw <nh26223@gmail.com> writes:
>>>>>> Here's one that actually compiles, sorry about that.
>>>>>
>>>>> No worries, I was sleeping ;-)
>>>>>
>>>>> I will test it out early next week. Thanks.
>>>>
>>>> meanwhile, how about some instructions on how to test this out myself?
>>>> How are you using g_webcam and what are you running on host side? Got a
>>>> nice list of commands there I can use? I think I can get to bottom of
>>>> this much quicker if I can reproduce it locally ;-)
>>>
>>> On device side:
>>> - first patch g_webcam as in my first email in this thread to enable
>>> 640x480@30fps;
>>> - # modprobe g_webcam streaming_maxpacket=3072
>>> - then run uvc-gadget to feed the YUV frames;
>>> http://git.ideasonboard.org/uvc-gadget.git
>>
>> as is, g_webcam never enumerates to the host. It's calls to
>> usb_function_active() and usb_function_deactivate() are unbalanced. Do
>> you have any other changes to g_webcam?
> With uvc function gadget driver, user daemon uvc-gadget must be started
> before connect to host. Not sure whether g_webcam has same requirement.
f_uvc.c should be handling that by means for usb_function_deactivate().
I'll try keeping cable disconnected until uvc-gadget is running.
>> Also, uvc-gadget.git doesn't compile, had to modify it a bit:
>>
>> -#include "../drivers/usb/gadget/uvc.h"
>> +#include "../drivers/usb/gadget/function/uvc.h"
>>
>> Also fixed a build warning:
>>
>> @@ -732,6 +732,8 @@ int main(int argc, char *argv[])
>> fd_set wfds = fds;
>>
>> ret = select(dev->fd + 1, NULL, &wfds, &efds, NULL);
>> + if (ret < 0)
>> + return ret;
>> if (FD_ISSET(dev->fd, &efds))
>> uvc_events_process(dev);
>> if (FD_ISSET(dev->fd, &wfds))
>>
>> Laurent, have you tested g_webcam recently? What's the magic to get it
>> working?
>>
>> Here's what I get out of dmesg:
>>
>> [ 58.568380] usb 1-9: new high-speed USB device number 5 using xhci_hcd
>> [ 58.738680] usb 1-9: New USB device found, idVendor=1d6b, idProduct=0102
>> [ 58.738683] usb 1-9: New USB device strings: Mfr=1, Product=2, SerialNumber=0
>> [ 58.738685] usb 1-9: Product: Webcam gadget
>> [ 58.738687] usb 1-9: Manufacturer: Linux Foundation
>> [ 58.739133] g_webcam gadget: high-speed config #1: Video
>> [ 58.739138] g_webcam gadget: uvc_function_set_alt(0, 0)
>> [ 58.739139] g_webcam gadget: reset UVC Control
>> [ 58.739149] g_webcam gadget: uvc_function_set_alt(1, 0)
>> [ 58.804369] uvcvideo: Found UVC 1.00 device Webcam gadget (1d6b:0102)
>> [ 58.804479] g_webcam gadget: uvc_function_set_alt(1, 0)
>> [ 64.188459] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
> Looks like you connect your usb device to your usb host port on same
> board. Nice.
yeah, that helps.
> The GET_DEF is handled by user daemon uvc-gadget. It may be related.
okay.
--
balbi
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 800 bytes --]
next prev parent reply other threads:[~2016-09-23 8:27 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-20 17:04 g_webcam Isoch high bandwidth transfer Bin Liu
2016-09-21 8:01 ` Felipe Balbi
2016-09-21 13:27 ` Bin Liu
2016-09-21 14:58 ` Bin Liu
2016-09-22 7:37 ` Felipe Balbi
2016-09-22 8:08 ` Felipe Balbi
2016-09-22 10:06 ` Felipe Balbi
2016-09-22 13:33 ` Bin Liu
2016-09-22 19:48 ` Felipe Balbi
2016-09-22 20:11 ` Bin Liu
2016-09-23 0:23 ` yfw
2016-09-23 7:49 ` Felipe Balbi
2016-09-23 8:10 ` yfw
2016-09-23 8:27 ` Felipe Balbi [this message]
2016-09-26 16:06 ` Laurent Pinchart
2016-09-27 7:10 ` Felipe Balbi
2016-09-26 14:02 ` Bin Liu
2016-09-27 7:14 ` Felipe Balbi
2016-09-26 16:03 ` Laurent Pinchart
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=87k2e358cx.fsf@linux.intel.com \
--to=felipe.balbi@linux.intel.com \
--cc=b-liu@ti.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=nh26223@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: link
Be 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.