Re: [PATCH V6 1/2] usb: gadget/uvc: Port UVC webcam gadget to use videobuf2 framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Bhupesh,

On Thursday 28 March 2013 18:39:54 Bhupesh SHARMA wrote:
> > On Thursday 28 March 2013 15:11:52 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 MMAP 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.
> > >
> > > This patch also addresses one issue found out while porting the UVC
> > > 
> > > gadget to videobuf2 framework:
> > > 	- In case the usb requests queued by the gadget get completed
> > > 	
> > > 	  with a status of -ESHUTDOWN (disconnected from host),
> > > 	  the queue of videobuf2 should be cancelled to ensure that the
> > > 	  application space daemon is not left in a state waiting for
> > > 	  a vb2 to be successfully absorbed at the USB side.
> > > 
> > > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@xxxxxx>
> > 
> > Finally,
> > 
> > Acked-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>
> > 
> > :-)
> 
> Thanks for your time in reviewing this and previous patchsets :).

You're welcome.

> If you can apply these 2 patches to your git tree
> (git://linuxtv.org/pinchartl/uvcvideo.git),

Done. They're in the uvc-gadget branch, based on Felipe's master branch.

> I want to prepare and send out two more UVC patches:
> - One that supports UVC Bulk endpoint implementation.
> - Second that supports MEMCPY less implementation for adding UVC header to
> the UVC payload for UDC controllers which support SG implementation.
> 
> In the meantime, probably we can request Felipe to pull UVC gadget related
> patches from your git repo.

Felipe, can you pull from

	git://linuxtv.org/pinchartl/uvcvideo.git uvc-gadget branch

or do you want a proper pull request ?

-- 
Regards,

Laurent Pinchart

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux