public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/4] uvcvideo: asynchronous control reporting
@ 2017-02-07 16:29 Guennadi Liakhovetski
  2017-02-07 16:29 ` [PATCH v2 1/4] uvcvideo: prepare to support compound controls Guennadi Liakhovetski
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Guennadi Liakhovetski @ 2017-02-07 16:29 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Hans Verkuil

The UVC standard defines a way to implement controls, that take a
relatively long time to process. Such controls can deliver a status
update once their processing has completed. This patch implements
such asynchronous control completion reporting, using V4L2 events.

Support is also added for compound controls, however, V4L2 events
for them will not deliver updated data, since V4L2 events only
support integer (up to 64 bits) controls.

Asynchronous control processing also includes more advanced protocol
STALL handling, which can be caused by racing controls.

Guennadi Liakhovetski (4):
  uvcvideo: prepare to support compound controls
  uvcvideo: send a control event when a Control Change interrupt arrives
  uvcvideo: handle control pipe protocol STALLs
  uvcvideo: support compound controls

 drivers/media/usb/uvc/uvc_ctrl.c   | 397 ++++++++++++++++++++++++++++++-------
 drivers/media/usb/uvc/uvc_status.c | 112 ++++++++++-
 drivers/media/usb/uvc/uvc_v4l2.c   |  10 +-
 drivers/media/usb/uvc/uvc_video.c  |  59 +++++-
 drivers/media/usb/uvc/uvcvideo.h   |  25 ++-
 include/uapi/linux/uvcvideo.h      |   2 +
 6 files changed, 503 insertions(+), 102 deletions(-)

-- 
1.9.3

Thanks
Guennadi


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-02-13  2:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-07 16:29 [PATCH v2 0/4] uvcvideo: asynchronous control reporting Guennadi Liakhovetski
2017-02-07 16:29 ` [PATCH v2 1/4] uvcvideo: prepare to support compound controls Guennadi Liakhovetski
2017-02-07 16:29 ` [PATCH v2 2/4] uvcvideo: send a control event when a Control Change interrupt arrives Guennadi Liakhovetski
2017-02-13  2:47   ` [lkp-robot] [uvcvideo] 918bab1b4b: uvcvideo: Failed to query (GET_INFO) UVC control 11 on unit 1: -32 (exp. 1) kernel test robot
2017-02-07 16:29 ` [PATCH v2 3/4] uvcvideo: handle control pipe protocol STALLs Guennadi Liakhovetski
2017-02-07 16:29 ` [PATCH v2 4/4] uvcvideo: support compound controls Guennadi Liakhovetski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox