media: uvcvideo: Send a control event when a Control Change interrupt arrives
authorGuennadi Liakhovetski <guennadi.liakhovetski@intel.com>
Thu, 26 Jul 2018 08:17:53 +0000 (04:17 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 27 Jul 2018 10:39:57 +0000 (06:39 -0400)
commite5225c820c057537dc780244760e2e24c7d27366
treebf5329cd8cd42d4bf51573a94331c6b12c8887fb
parent8e7a1dbc7b0ae048bf3f4b9707fe1a845e69aab7
media: uvcvideo: Send a control event when a Control Change interrupt arrives

UVC defines a method of handling asynchronous controls, which sends a
USB packet over the interrupt pipe. This patch implements support for
such packets by sending a control event to the user. Since this can
involve USB traffic and, therefore, scheduling, this has to be done
in a work queue.

Signed-off-by: Guennadi Liakhovetski <guennadi.liakhovetski@intel.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/usb/uvc/uvc_ctrl.c
drivers/media/usb/uvc/uvc_status.c
drivers/media/usb/uvc/uvc_v4l2.c
drivers/media/usb/uvc/uvcvideo.h
include/uapi/linux/uvcvideo.h