linux/drivers/media/v4l2-core
Steve Longerbeam b47d7ff1ae media: v4l2: async: Add v4l2_async_notifier_add_subdev
v4l2_async_notifier_add_subdev() adds an asd to the notifier. It checks
that no other equivalent asd's have already been added to this notifier's
asd list, or to other registered notifier's waiting or done lists, and
increments num_subdevs.

v4l2_async_notifier_add_subdev() does not make use of the notifier subdevs
array, otherwise it would have to re-allocate the array every time the
function was called. In place of the subdevs array, the function adds
the newly allocated asd to a new master asd_list. The function will
return error with a WARN() if it is ever called with the subdevs array
allocated.

Drivers are now required to call a v4l2_async_notifier_init(), before the
first call to v4l2_async_notifier_add_subdev(), in order to initialize
the asd_list.

In v4l2_async_notifier_has_async_subdev(), __v4l2_async_notifier_register(),
and v4l2_async_notifier_cleanup(), maintain backward compatibility with
the subdevs array, by alternatively operate on the subdevs array or a
non-empty notifier->asd_list.

Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
2018-10-04 15:17:33 -04:00
..
Kconfig media: Remove depends on HAS_DMA in case of platform dependency 2018-05-28 16:17:08 -04:00
Makefile media: v4l2-core: get rid of videobuf-dvb 2018-05-04 10:57:31 -04:00
tuner-core.c media: v4l2-mc: get rid of global pad indexes 2018-09-17 13:16:19 -04:00
v4l2-async.c media: v4l2: async: Add v4l2_async_notifier_add_subdev 2018-10-04 15:17:33 -04:00
v4l2-clk.c media: Convert to using %pOF instead of full_name 2017-08-20 08:20:20 -04:00
v4l2-common.c media: v4l: subdev: Add a function to set an I²C sub-device's name 2018-09-17 15:17:22 -04:00
v4l2-compat-ioctl32.c media: v4l2-compat-ioctl32: better document the code 2018-04-20 08:24:13 -04:00
v4l2-ctrls.c media: use strscpy() instead of strlcpy() 2018-09-11 13:32:17 -04:00
v4l2-dev.c media: add helpers for memory-to-memory media controller 2018-07-04 08:43:47 -04:00
v4l2-device.c media: use strscpy() instead of strlcpy() 2018-09-11 13:32:17 -04:00
v4l2-dv-timings.c media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC 2018-09-24 09:28:41 -04:00
v4l2-event.c Convert v4l2 event to struct_size 2018-06-12 16:19:22 -07:00
v4l2-fh.c [media] media: Drop FSF's postal address from the source code files 2017-01-27 11:38:09 -02:00
v4l2-flash-led-class.c media: use strscpy() instead of strlcpy() 2018-09-11 13:32:17 -04:00
v4l2-fwnode.c media: v4l2-fwnode: ignore endpoints that have no remote port parent 2018-10-04 14:53:20 -04:00
v4l2-ioctl.c media: use strscpy() instead of strlcpy() 2018-09-11 13:32:17 -04:00
v4l2-mc.c media: v4l2-mc: add print messages when media graph fails 2018-09-17 13:16:19 -04:00
v4l2-mem2mem.c media: v4l2-mem2mem: add descriptions to MC fields 2018-08-07 06:10:16 -04:00
v4l2-subdev.c media: use strscpy() instead of strlcpy() 2018-09-11 13:32:17 -04:00
v4l2-trace.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
videobuf-core.c MAINTAINERS & files: Canonize the e-mails I use at files 2018-05-04 06:21:06 -04:00
videobuf-dma-contig.c MAINTAINERS & files: Canonize the e-mails I use at files 2018-05-04 06:21:06 -04:00
videobuf-dma-sg.c treewide: Use array_size() in vzalloc() 2018-06-12 16:19:22 -07:00
videobuf-vmalloc.c MAINTAINERS & files: Canonize the e-mails I use at files 2018-05-04 06:21:06 -04:00