- 18 8月, 2013 10 次提交
-
-
由 Sylwester Nawrocki 提交于
This fixes regression introduced in commit b426b3a6 [media] V4L: Merge struct v4l2_async_subdev_list with struct v4l2_subdev Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Laurent Pinchart 提交于
Calling v4l2_async_notifier_unregister() on a notifier that hasn't been registered leads to a crash. To simplify drivers, make it safe to unregister a notifier that has not been registered. Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Acked-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Laurent Pinchart 提交于
The of_get_child_by_name() function takes a reference to the node it returns. Make sure to drop it when looking for the ports node in v4l2_of_get_next_endpoint(). Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Laurent Pinchart 提交于
Replace a manual loop through child nodes with a call to of_get_child_by_name(). Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Laurent Pinchart 提交于
For output buffers application provide to the kernel the number of bytes they stored in each plane of the buffer. Verify that the value is smaller than or equal to the plane length. Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NPawel Osciak <pawel@osciak.com> Acked-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Hans Verkuil 提交于
v4l2-common.c contained a bunch of dv-timings related functions. Move that to the new v4l2-dv-timings.c which is a more appropriate place for them. There aren't many drivers that do HDTV, so it is a good idea to separate common code related to that into a module of its own. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Hans Verkuil 提交于
This module makes it easy to filter valid timings from the full list of CEA and DMT timings based on the timings capabilities. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Laurent Pinchart 提交于
The vb2_fop_mmap() and vb2_fop_get_unmapped_area() functions are plug-in implementation of the mmap() and get_unmapped_area() file operations that calls vb2_mmap() and vb2_get_unmapped_area() on the queue associated with the video device. Neither the vb2_fop_mmap/vb2_fop_get_unmapped_area nor the v4l2_mmap/vb2_get_unmapped_area functions in the V4L2 core take any lock, leading to race conditions between mmap/get_unmapped_area and other buffer-related ioctls such as VIDIOC_REQBUFS. Fix it by taking the queue or device lock around the vb2_mmap() and vb2_get_unmapped_area() calls. Signed-off-by: NLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Arun Kumar K 提交于
This patch adds new V4L controls for VP8 encoding. Signed-off-by: NKiran AVND <avnd.kiran@samsung.com> Signed-off-by: NArun Kumar K <arun.kk@samsung.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Sylwester Nawrocki 提交于
The patch modifies the helper function v4l2_ctrl_new_std_menu to accept integer menu controls with standard menu items. Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NArun Kumar K <arun.kk@samsung.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 31 7月, 2013 5 次提交
-
-
由 Sylwester Nawrocki 提交于
By integrating the v4l2-async API internals a bit more with the core overall the v4l2-async code becomes a bit simpler and easier to follow. Acked-and-tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Sylwester Nawrocki 提交于
This is a purely cosmetic change. Since the 'subdev' member points to an array of subdevs make it more explicit by renaming to the plural form. Acked-and-tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Sylwester Nawrocki 提交于
Add support for matching by device_node pointer. This allows the notifier user to simply pass a list of device_node pointers corresponding to sub-devices. Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Sylwester Nawrocki 提交于
enum v4l2_async_bus_type also selects a method subdevs are matched in the notification handlers, rename it to v4l2_async_match_type so V4L2_ASYNC_MATCH_OF entry can be further added for matching by device tree node pointer. Acked-and-tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
由 Sylwester Nawrocki 提交于
These match_* functions are internal callbacks and are always invoked only after checking asd->bus_type. So drop redundant checks in match_i2c() and match_platform() functions. Acked-and-tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 26 7月, 2013 1 次提交
-
-
由 Philipp Zabel 提交于
On mem2mem decoders with a hardware bitstream ringbuffer, to drain the buffer at the end of the stream, remaining frames might need to be decoded from the bitstream buffer without additional input buffers being provided. To achieve this, allow a queue to be marked as buffered by the driver, and allow scheduling of device_runs when buffered ready queues are empty. This also allows a driver to copy input buffers into their bitstream ringbuffer and immediately mark them as done to be dequeued. The motivation for this patch is hardware assisted h.264 reordering support in the coda driver. For high profile streams, the coda can hold back out-of-order frames, causing a few mem2mem device runs in the beginning, that don't produce any decompressed buffer at the v4l2 capture side. At the same time, the last few frames can be decoded from the bitstream with mem2mem device runs that don't need a new input buffer at the v4l2 output side. The decoder command ioctl can be used to put the decoder into the ringbuffer draining end-of-stream mode. Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <m.chehab@samsung.com>
-
- 29 6月, 2013 1 次提交
-
-
由 Guennadi Liakhovetski 提交于
i2c_verify_client() is only available, if I2C is enabled. Fix v4l2-async.c compilation if I2C is disabled. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 22 6月, 2013 3 次提交
-
-
由 Guennadi Liakhovetski 提交于
Currently bridge device drivers register devices for all subdevices synchronously, typically, during their probing. E.g. if an I2C CMOS sensor is attached to a video bridge device, the bridge driver will create an I2C device and wait for the respective I2C driver to probe. This makes linking of devices straight forward, but this approach cannot be used with intrinsically asynchronous and unordered device registration systems like the Flattened Device Tree. To support such systems this patch adds an asynchronous subdevice registration framework to V4L2. To use it respective (e.g. I2C) subdevice drivers must register themselves with the framework. A bridge driver on the other hand must register notification callbacks, that will be called upon various related events. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Guennadi Liakhovetski 提交于
It is often useful to have simple means to get from a subdevice to the underlying physical device. This patch adds such a pointer to struct v4l2_subdev and sets it accordingly in the I2C and SPI cases. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: NLad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Guennadi Liakhovetski 提交于
Typical video devices like camera sensors require an external clock source. Many such devices cannot even access their hardware registers without a running clock. These clock sources should be controlled by their consumers. This should be performed, using the generic clock framework. Unfortunately so far only very few systems have been ported to that framework. This patch adds a set of temporary helpers, mimicking the generic clock API, to V4L2. Platforms, adopting the clock API, should switch to using it. Eventually this temporary API should be removed. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 21 6月, 2013 5 次提交
-
-
由 Hans Verkuil 提交于
The last set of drivers still using the parent field of video_device instead of the v4l2_dev field have been converted, so v4l2_dev is now always set. A proper pointer to v4l2_dev is necessary these days otherwise the advanced debugging ioctls will not work when addressing sub-devices. It also ensures that the core can always go from a video_device struct to the top-level v4l2_device struct. There is still one single use case for the parent pointer: if there are multiple busses, each being the parent of one or more video nodes, and if they all share the same v4l2_device struct. In that case one still needs a parent pointer since the v4l2_device struct can only refer to a single parent device. The cx88 driver is one such case. Unfortunately, the cx88 failed to set the parent pointer since 3.6. The next patch will correct this. In order to support this use-case the parent pointer is only renamed to dev_parent, not removed altogether. It has been renamed to ensure that the compiler will catch any (possibly out-of-tree) drivers that were missed during the conversion. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Acked-by: NSakari Ailus <sakari.ailus@iki.fi> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
It was possible to unregister an already unregistered v4l2_device struct. Add a check whether that already happened and just return if that was the case. Also refuse to register a v4l2_device if both the dev and name fields are empty. A warning was already produced in that case, but since the name field is now used to detect whether or not the v4l2_device was already unregistered this particular combination should be rejected. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
This has been replaced by the new and much better VIDIOC_DBG_G_CHIP_INFO. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
This function is no longer needed since it is now the responsibility of the v4l2 core to check if the DBG_G/S_REGISTER and DBG_G_CHIP_INFO ioctls are called for the bridge driver or not. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 19 6月, 2013 1 次提交
-
-
由 Sylwester Nawrocki 提交于
Remove all links of the subdev's media entity after internal_ops 'unregistered' call and right before unregistering the entity from a media device. It is assumed here that an unregistered (orphan) media entity cannot have links to other entities registered to a media device. It is also assumed the media links should be created/removed with the media graph's mutex held. The above implies that the caller of v4l2_device_unregister_subdev() must not hold the graph's mutex. Reviewed-by: NAndrzej Hajda <a.hajda@samsung.com> Signed-off-by: NKyungmin Park <kyungmin.park@samsung.com> Acked-by: NSakari Ailus <sakari.ailus@iki.fi> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NSylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 17 6月, 2013 2 次提交
-
-
由 Hans Verkuil 提交于
Improve the querystd comment. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
The use of current_norm to keep track of the current standard has been deprecated for quite some time. Now that all drivers that were using it have been converted to use g_std we can drop it from the core. It was a bad idea to introduce this at the time: since it is a per-device node field it didn't work for drivers that create multiple nodes, all sharing the same tuner (e.g. video and vbi nodes, or a raw video node and a compressed video node). In addition it was very surprising behavior that g_std was implemented in the core. Often drivers implemented both g_std and current_norm, because they didn't understand how it should be used. Since the benefits were very limited (if they were there at all), it is better to just drop it and require that drivers just implement g_std. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 13 6月, 2013 1 次提交
-
-
由 Hans Verkuil 提交于
Drop support for V4L2_CHIP_MATCH_I2C_DRIVER/ADDR and V4L2_CHIP_MATCH_AC97 types. The following patches will remove support for those in the drivers as well. This means that bridge drivers no longer have to check for the match.type field in their g/s_register implementations. Only if they also implement g_chip_info do they still have to check the match.addr field, otherwise the core will check for that as well. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 09 6月, 2013 2 次提交
-
-
由 Hans Verkuil 提交于
The clips pointer is a userspace pointer, not a kernelspace pointer, so you can't dereference the clips pointer. Also add a few missing commas and newlines. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Hans Verkuil 提交于
The radio filter function that filters controls that are valid for a radio device should also accept V4L2_CTRL_CLASS_FM_RX controls. Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 04 6月, 2013 4 次提交
-
-
由 John Sheu 提交于
Save flags correctly when taking spinlocks in v4l2_m2m_try_schedule. Signed-off-by: NJohn Sheu <sheu@google.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Philipp Zabel 提交于
Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Seung-Woo Kim 提交于
The v4l2_m2m_poll() does not need to wait if there is already a buffer in done_list of source and destination queues, but current v4l2_m2m_poll() always waits. So done_list of each queue is checked before calling poll_wait(). Signed-off-by: NSeung-Woo Kim <sw0312.kim@samsung.com> Acked-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Seung-Woo Kim 提交于
The vb2_poll() does not need to wait next vb_buffer_done() if there is already a buffer in done_list of queue, but current vb2_poll() always waits. So done_list is checked before calling poll_wait(). Signed-off-by: NSeung-Woo Kim <sw0312.kim@samsung.com> Acked-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NKamil Debski <k.debski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 27 5月, 2013 1 次提交
-
-
由 Wei Yongjun 提交于
Fix to return -EINVAL in the get kernel address error handling case instead of 0, as done elsewhere in this function. Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn> Reviewed-by: NSakari Ailus <sakari.ailus@iki.fi> Acked-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 21 5月, 2013 2 次提交
-
-
由 Mauro Carvalho Chehab 提交于
vm_iomap_memory() provides a better end user interface than remap_pfn_range(), as it does the needed tests before doing mmap. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Al Viro 提交于
just use videobuf_queue_lock(map->q) to protect map->count; vm_area_operations ->open() and ->close() are called just under vma->vm_mm->mmap_sem, which doesn't help the drivers at all, since clonal VMAs are normally in different address spaces... Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
- 25 4月, 2013 2 次提交
-
-
由 Mauro Carvalho Chehab 提交于
Memory maps typically require that the buffer size to be page aligned. Currently, two memops drivers do such alignment internally, but videobuf-vmalloc doesn't. Also, the buffer overflow check doesn't take it into account. So, instead of doing it at each memops driver, enforce it at VB2 core. Reported-by: NPrabhakar lad <prabhakar.csengg@gmail.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NMarek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-
由 Mauro Carvalho Chehab 提交于
videobuf_queue_dma_contig_init_cached() is not used anywhere. Drop support for it, cleaning up the code a little bit. Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com> Acked-by: NHans Verkuil <hans.verkuil@cisco.com> Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
-