Pandaboard OMAP4 MUSB short packet hang on UVC gadget

2018-05-15 Thread Kieran Bingham
Hi Bin, Felipe, We have been trying to get a UVC gadget operational on the Pandaboard ES platform, and we believe we've hit an issue with short packets on the MUSB in DMA mode. Using the g_webcam module, I can instantiate a UVC video node, and use the uvc-gadget helper application [0] to handle t

[PATCH] usb: gadget: uvc: Utilise instance name in video name

2018-05-22 Thread Kieran Bingham
From: Kieran Bingham With multiple UVC gadgets on a composite device, the device names become indistinguishable from one another. Extend the gadget video name to incorporate the function instance name, along side the existing UDC controller name. Signed-off-by: Kieran Bingham --- drivers/usb

[PATCH] usb: gadget: f_uvc: Expose configuration name through video node

2018-05-23 Thread Kieran Bingham
From: Kieran Bingham When utilising multiple instantiations of a UVC gadget on a composite device, there is no clear method to link a particular configuration to its respective video node. Provide a means for identifying the correct video node by exposing the name of the function configuration

[PATCH v2] usb: gadget: uvc: Expose configuration name through video node

2018-05-24 Thread Kieran Bingham
From: Kieran Bingham When utilising multiple instantiations of a UVC gadget on a composite device, there is no clear method to link a particular configuration to its respective video node. Provide a means for identifying the correct video node by exposing the name of the function configuration

Re: [PATCH 1/8] usb: gadget: uvc: configfs: Don't wrap groups unnecessarily

2018-08-01 Thread Kieran Bingham
art phew. Well that is some terse reading of macro modifications. But except for the trivial spellings above, I can't see anything wrong. And this definitely moves the right way :D Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/uvc_configfs.c | 302 > +

Re: [PATCH 2/8] usb: gadget: uvc: configfs: Add section header comments

2018-08-01 Thread Kieran Bingham
Hi Laurent, A trivial but nice improvement. On 01/08/18 01:29, Laurent Pinchart wrote: > The UVC configfs implementation is large and difficult to navigate. Add > a bit more air to the code to make it easier to read. > > Signed-off-by: Laurent Pinchart Acked-by: Ki

Re: [PATCH 3/8] usb: gadget: uvc: configfs: Allocate groups dynamically

2018-08-01 Thread Kieran Bingham
Hi Laurent, Thank you for the patch, On 01/08/18 01:29, Laurent Pinchart wrote: > The UVC configfs implementation creates all groups as global static > variables. This prevents creationg of multiple UVC function instances, /creationg/creation/ > as they would all require their own configfs grou

Re: [PATCH 4/8] usb: gadget: uvc: configfs: Add interface number attributes

2018-08-01 Thread Kieran Bingham
Hi Laurent, Thank you for the patch, On 01/08/18 01:29, Laurent Pinchart wrote: > The video control and video streaming interface numbers are needed in > the UVC gadget userspace stack to reply to UVC requests. They are > hardcoded to fixed values at the moment, preventing configurations with > m

Re: [PATCH 6/8] usb: gadget: uvc: configfs: Document the bFormatIndex attribute

2018-08-01 Thread Kieran Bingham
Hi Laurent, On 01/08/18 01:29, Laurent Pinchart wrote: > Document for the bFormatIndex attribute of the format descriptors is > missing. Add it. It might be missing, but only just since the previous patch. Perhaps this should squash into [5/8] ? > Signed-off-by: Laurent Pinchart > --- > Docu

Re: [PATCH v2 3/8] usb: gadget: uvc: configfs: Drop leaked references to config items

2018-09-24 Thread Kieran Bingham
off-by: Laurent Pinchart Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/uvc_configfs.c | 4 > 1 file changed, 4 insertions(+) > > diff --git a/drivers/usb/gadget/function/uvc_configfs.c > b/drivers/usb/gadget/function/uvc_configfs.c > index dbc95c9558de.

Re: [PATCH v2 4/8] usb: gadget: uvc: configfs: Allocate groups dynamically

2018-09-24 Thread Kieran Bingham
nges since v1: > > - Free groups by implementing .release() handler and removing children > explicitly. Great - that resolves my concerns from the previous iteration. Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/f_uvc.c| 8 +-

Re: [PATCH v2 5/8] usb: gadget: uvc: configfs: Add interface number attributes

2018-09-24 Thread Kieran Bingham
ment the new attribute Perfect, Thank you. Reviewed-by: Kieran Bingham > --- > Documentation/ABI/testing/configfs-usb-gadget-uvc | 8 +++ > drivers/usb/gadget/function/f_uvc.c | 2 + > drivers/usb/gadget/function/u_uvc.h | 3 ++ >

Re: [PATCH v2 6/8] usb: gadget: uvc: configfs: Add bFormatIndex attributes

2018-09-24 Thread Kieran Bingham
cation. > > Signed-off-by: Laurent Pinchart > --- > > Changes since v1: > > - Squash patch "usb: gadget: uvc: configfs: Document the bFormatIndex > attribute". Thanks, Reviewed-by: Kieran Bingham > --- > Documentation/ABI/testing/configfs-us

Re: [PATCH v2 8/8] usb: gadget: uvc: configfs: Prevent format changes after linking header

2018-09-24 Thread Kieran Bingham
nvalidating the protections. That explains what's wrong, but not what we do about it. How about adding: "Update the flag as appropriate in the header link calls." > > Signed-off-by: Joel Pepper Missing and S-o-B from Laurent here? (I guess that will be added later?) Oth

Re: [PATCH v2 7/8] usb: gadget: uvc: configfs: Add bFrameIndex attributes

2018-09-24 Thread Kieran Bingham
lare here? Couldn't we move the uvcg_format_set_indices() implementation up ? Or is it preferred to keep that code down in the lower section. With a decision made on that, and the typo fixed in the commit message: Reviewed-by: Kieran Bingham > static int uvcg_streaming_header_allow_l

Re: [PATCH v2 7/8] usb: gadget: uvc: configfs: Add bFrameIndex attributes

2018-09-24 Thread Kieran Bingham
Hi Laurent, On 24/09/18 17:00, Laurent Pinchart wrote: > Hi Kieran, > > On Monday, 24 September 2018 15:22:57 EEST Kieran Bingham wrote: >> On 01/08/18 22:55, Laurent Pinchart wrote: >>> From: Joel Pepper >>> >>> - Add bFrameIndex as a UVCG_FRAME_ATTR_R

Re: [PATCH] usb: gadget: uvc: Remove uvc_set_trace_param() function

2018-09-24 Thread Kieran Bingham
Hi Laurent, On 18/09/18 13:25, Laurent Pinchart wrote: > The function is never called, remove it. It does seem that way :) > Signed-off-by: Laurent Pinchart Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/f_uvc.c | 6 -- > 1 file changed, 6 deletions(-) &g

Re: [PATCH 1/3] usb: gadget: uvc: Factor out video USB request queueing

2018-09-25 Thread Kieran Bingham
ocking. Win win. Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/uvc_video.c | 30 -- > 1 file changed, 20 insertions(+), 10 deletions(-) > > diff --git a/drivers/usb/gadget/function/uvc_video.c > b/drivers/usb/gadget/function

Re: [PATCH 2/3] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode

2018-09-25 Thread Kieran Bingham
d can't thus report a stall. The usb_ep_set_halt() > call returns an error when using isochronous endpoints, which we happily > ignore, but some UDCs complain in the kernel log. Fix this by only > trying to halt the endpoint in bulk mode. > Agreed, > Signed-off-by: Lauren

Re: [PATCH 3/3] usb: gadget: uvc: Replace plain printk() with dev_*()

2018-09-25 Thread Kieran Bingham
k statement and an unused > printk-based macro. > > Signed-off-by: Laurent Pinchart Great - looks good to me. Reviewed-by: Kieran Bingham > --- > drivers/usb/gadget/function/f_uvc.c | 41 > ++--- > drivers/usb/gadget/function/uvc.h