Hi Felipe, > -----Original Message----- > From: Felipe Balbi [mailto:balbi@xxxxxx] > Sent: Monday, June 04, 2012 9:11 PM > To: Bhupesh SHARMA > Cc: balbi@xxxxxx; laurent.pinchart@xxxxxxxxxxxxxxxx; linux- > usb@xxxxxxxxxxxxxxx; linux-media@xxxxxxxxxxxxxxx; > gregkh@xxxxxxxxxxxxxxxxxxx > Subject: Re: [PATCH 4/5] usb: gadget/uvc: Port UVC webcam gadget to use > videobuf2 framework > > Hi, > > On Mon, Jun 04, 2012 at 11:37:59PM +0800, Bhupesh SHARMA wrote: > > > -----Original Message----- > > > From: Felipe Balbi [mailto:balbi@xxxxxx] > > > Sent: Monday, June 04, 2012 8:59 PM > > > To: Bhupesh SHARMA > > > Cc: balbi@xxxxxx; laurent.pinchart@xxxxxxxxxxxxxxxx; linux- > > > usb@xxxxxxxxxxxxxxx; linux-media@xxxxxxxxxxxxxxx; > > > gregkh@xxxxxxxxxxxxxxxxxxx > > > Subject: Re: [PATCH 4/5] usb: gadget/uvc: Port UVC webcam gadget to > > > use > > > videobuf2 framework > > > > > > On Mon, Jun 04, 2012 at 11:21:13PM +0800, Bhupesh SHARMA wrote: > > > > Hi Felipe, > > > > > > > > > -----Original Message----- > > > > > From: Felipe Balbi [mailto:balbi@xxxxxx] > > > > > Sent: Monday, June 04, 2012 8:44 PM > > > > > To: Bhupesh SHARMA > > > > > Cc: laurent.pinchart@xxxxxxxxxxxxxxxx; > > > > > linux-usb@xxxxxxxxxxxxxxx; balbi@xxxxxx; > > > > > linux-media@xxxxxxxxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx > > > > > Subject: Re: [PATCH 4/5] usb: gadget/uvc: Port UVC webcam > gadget > > > > > to use > > > > > videobuf2 framework > > > > > > > > > > On Fri, Jun 01, 2012 at 03:08:57PM +0530, Bhupesh Sharma wrote: > > > > > > This patch reworks the videobuffer management logic present > in > > > the > > > > > UVC > > > > > > webcam gadget and ports it to use the "more apt" videobuf2 > > > > > > framework for video buffer management. > > > > > > > > > > > > To support routing video data captured from a real V4L2 video > > > > > > capture device with a "zero copy" operation on videobuffers > > > > > > (as they pass > > > > > from > > > > > > the V4L2 domain to UVC domain via a user-space application), > > > > > > we need to support USER_PTR IO method at the UVC gadget side. > > > > > > > > > > > > So the V4L2 capture device driver can still continue to use > > > > > > MMAO IO method and now the user-space application can just > > > > > > pass a pointer to the video buffers being DeQueued from the > > > > > > V4L2 device side while Queueing them at the UVC gadget end. > > > > > > This ensures that we have a "zero-copy" design as the > > > > > > videobuffers pass from the > > > > > > V4L2 capture > > > > > device to the UVC gadget. > > > > > > > > > > > > Note that there will still be a need to apply UVC specific > > > payload > > > > > > headers on top of each UVC payload data, which will still > > > > > > require a copy operation to be performed in the 'encode' > > > > > > routines of the UVC > > > > > gadget. > > > > > > > > > > > > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@xxxxxx> > > > > > > > > > > this patch doesn't apply. Please refresh on top of v3.5-rc1 or > > > > > my gadget branch which I will update in a while. > > > > > > > > > > > > > I rebased and submitted my changes on your "gadget-for-v3.5" tag. > > > > Should I now refresh my patches on top of your "v3.5-rc1" branch > ? > > > > > > > > I am a bit confused on what is the latest gadget branch to be > used > > > now. > > > > Thanks for helping out. > > > > > > The gadget branch is the branch called gadget on my kernel.org > tree. > > > For some reason this didn't apply. Probably some patches on > > > drivers/usb/gadget/*uvc* went into v3.5 without my knowledge. > > > Possibly because I was out for quite a while and asked Greg to help > > > me out during the merge window. > > > > > > Anyway, I just pushed gadget with a bunch of new patches and part > of > > > your series. > > > > > > > Yes. I had sent two patches some time ago for > drivers/usb/gadget/*uvc*. > > For one of them I received an *applied* message from you: > > that was already applied long ago. ;-) > > > > > > > usb: gadget/uvc: Remove non-required locking from > > > > 'uvc_queue_next_buffer' routine > > > > > > This patch removes the non-required spinlock acquire/release > calls > > > > on 'queue->irqlock' from 'uvc_queue_next_buffer' routine. > > > > > > > > This routine is called from 'video->encode' function (which > > > translates > > > > to either 'uvc_video_encode_bulk' or 'uvc_video_encode_isoc') in > > > 'uvc_video.c'. > > > > As, the 'video->encode' routines are called with 'queue->irqlock' > > > > already held, so acquiring a 'queue->irqlock' again in > > > > 'uvc_queue_next_buffer' routine causes a spin lock recursion. > > > > > > > > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@xxxxxx> > > > > Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > > > > > > applied, thanks > > > > Not sure, if that can cause the merge conflict issue. > > So now, should I send a clean patchset on top of your 3.5-rc1 branch > > to ensure the entire new patchset for drivers/usb/gadget/*uvc* is > pulled properly? > > Yes please, just give kernel.org about 20 minutes to sync all git > servers. > > Just so you know, head on my gadget branch is: > > commit fbcaba0e3dcec8451cccdc1fa92fcddbde2bc3f2 > Author: Bhupesh Sharma <bhupesh.sharma@xxxxxx> > Date: Fri Jun 1 15:08:56 2012 +0530 > > usb: gadget: uvc: Add super-speed support to UVC webcam gadget > > This patch adds super-speed support to UVC webcam gadget. > > Also in this patch: > - We add the configurability to pass bInterval, bMaxBurst, mult > factors for video streaming endpoint (ISOC IN) through module > parameters. > > - We use config_ep_by_speed helper routine to configure video > streaming endpoint. > > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@xxxxxx> > Signed-off-by: Felipe Balbi <balbi@xxxxxx> > > -- Ok. Thanks for your help :) Regards, Bhupesh -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html