Martin Bugge [Wed, 14 Aug 2013 07:58:38 +0000 (04:58 -0300)]
upstream: [media] v4l2-dv-timings: fix CVT calculation
This patch fixes two errors that caused incorrect format detections:
The first bug is in the calculation of the vertical backporch: the combined
period of vsync and backporch must *exceed* a certain minimum value, and not
be equal to it.
The second bug is a rounding error in the reduced blanking calculation:
expand the ideal_duty_cylce to be in parts per ten thousand to avoid
rounding errors.
Signed-off-by: Martin Bugge <marbugge@cisco.com>
Cc: Mats Randgaard <matrandg@cisco.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 29 Jul 2013 11:40:56 +0000 (08:40 -0300)]
upstream: [media] v4l2: move dv-timings related code to v4l2-dv-timings.c
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: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Conflicts:
drivers/media/i2c/ths8200.c
Lubomir Rintel [Tue, 2 Jul 2013 10:56:39 +0000 (07:56 -0300)]
upstream: [media] usbtv: Throw corrupted frames away
Ignore out of order data and mark incomplete buffers as errored.
This gets rid of annoying flicker due to occassional garbage from hardware.
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Cc: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: linux-kernel@vger.kernel.org
Cc: linux-media@vger.kernel.org
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Conflicts:
drivers/media/usb/usbtv/usbtv.c
Lubomir Rintel [Tue, 2 Jul 2013 10:56:38 +0000 (07:56 -0300)]
upstream: [media] usbtv: Fix deinterlacing
The image data is laid out a bit more weirdly and thus needs more work to
properly interlace. What we get from hardware is V4L2_FIELD_ALTERNATE, but
since userspace support for it is practically nonexistent, thus we make
V4L2_FIELD_INTERLACED from it so that it's more easily interpreted.
Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Cc: stable@vger.kernel.org
Hans Verkuil [Wed, 29 May 2013 09:22:02 +0000 (06:22 -0300)]
upstream: cx88: fix register mask
Ensure that the register is aligned to a dword, otherwise the read could
read out-of-range data.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Mauro Carvalho Chehab [Sun, 28 Apr 2013 14:47:50 +0000 (11:47 -0300)]
upstream: [media] drxk_hard: remove needless parenthesis
X-Patchwork-Delegate: mchehab@redhat.com
There are several places where: state->var = (some_var)
The parenthesis there are doing nothing but making it
harder to read and breaking the 80 columns soft limits.
Just get rid of it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Mauro Carvalho Chehab [Sun, 28 Apr 2013 14:47:48 +0000 (11:47 -0300)]
upstream: [media] drxk_hard.h: Remove some alien comment markups
X-Patchwork-Delegate: mchehab@redhat.com
The comments markup language used on Kernel is defined at:
Documentation/kernel-doc-nano-HOWTO.txt
Remove invalid markups from the header file.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Mauro Carvalho Chehab [Sun, 28 Apr 2013 14:47:46 +0000 (11:47 -0300)]
upstream: [media] drxk_hard: don't split strings across lines
X-Patchwork-Delegate: mchehab@redhat.com
WARNING: quoted string split across lines
#5416: FILE: media/dvb-frontends/drxk_hard.c:5416:
+ dprintk(1, "Could not set demodulator parameters. Make "
+ "sure qam_demod_parameter_count (%d) is correct for "
WARNING: quoted string split across lines
#5423: FILE: media/dvb-frontends/drxk_hard.c:5423:
+ dprintk(1, "Auto-probing the correct QAM demodulator command "
+ "parameters was successful - using %d parameters.\n",
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Mauro Carvalho Chehab [Sun, 28 Apr 2013 14:47:44 +0000 (11:47 -0300)]
upstream: [media] drxk_hard: Don't use CamelCase
X-Patchwork-Delegate: mchehab@redhat.com
Thare are lots of CamelCase warnings produced by checkpatch.pl.
This weren't fixed at the time the driver got submitted due
to the lack of manpower do to such cleanup.
Now that I have one script that automates this task, cleans
it. That makes the driver almost checkpatch-compliant,
except for 80 column warnings.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Conflicts:
drivers/media/dvb-frontends/drxk_hard.c
Antti Palosaari [Tue, 4 Jun 2013 22:43:30 +0000 (19:43 -0300)]
upstream: [media] rtl28xxu: correct latest device name
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Alessandro Miceli [Tue, 4 Jun 2013 19:10:34 +0000 (16:10 -0300)]
upstream: [media] Add support for Crypto Redi PC50A device (rtl2832u + FC0012 tuner)
The device has been tested on a MIPSel box with kernel 3.1.1 and backported media_tree drivers
The kernel detects the device with the following output:
usbcore: registered new interface driver dvb_usb_rtl28xxu
usb 1-2: dvb_usb_v2: found a 'Crypto Redi PC50A' in warm state
usb 1-2: dvb_usb_v2: will pass the complete MPEG2 transport stream to the software demuxer
DVB: registering new adapter (Crypto Redi PC50A)
usb 1-2: DVB: registering adapter 1 frontend 0 (Realtek RTL2832 (DVB-T))...
i2c i2c-4: fc0012: Fitipower FC0012 successfully identified
usb 1-2: dvb_usb_v2: 'Crypto Redi PC50A' successfully initialized and connected
[crope@iki.fi: fix trivial merge conflict]
Signed-off-by: Alessandro Miceli <angelofsky1980@gmail.com>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Antti Palosaari [Tue, 4 Jun 2013 21:26:54 +0000 (18:26 -0300)]
upstream: [media] rtl28xxu: use masked reg write where possible
Use masked register write inside rtl2832u_power_ctrl().
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Antti Palosaari [Tue, 4 Jun 2013 12:17:03 +0000 (09:17 -0300)]
upstream: [media] rtl28xxu: reimplement rtl2832u remote controller
Thanks to Rodrigo for original implementation!
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Rodrigo Tartajo [Sat, 20 Apr 2013 23:02:12 +0000 (20:02 -0300)]
upstream: [media] rtl2832u: restore ir remote control support
Hi,
This patch uses the driver from openpli[1] as a template to restore the remote control support.
I had to divert from the original to use the in kernel rc protocol decoder. The key repetition does,
not seem to work but I cant find the problem in the driver. As a raw rc provider, no key table is
hardcoded.
Rodrigo.
[1]: https://aur.archlinux.org/packages/dvb-usb-rtl2832u-openpli/?comments=all
Signed-off-by: Rodrigo Tartajo <rtarty@gmail.com>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Ondrej Zary [Sun, 14 Apr 2013 20:26:21 +0000 (17:26 -0300)]
upstream: [media] bttv: Add CyberVision CV06
Add CyberVision CV06 4-camera card (from CyberVision SV card kit):
http://www.cybervision.com.tw/products-swcard_kits-sv.html
There are some interesting things on the card but they're not supported:
4 LEDs, a connector with 4 IN and 4 OUT pins, RESET IN and RESET OUT
connectors, a relay and CyberVision CV8088-SV16 chip
Signed-off-by: Ondrej Zary <linux@rainbow-software.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Mauro Carvalho Chehab [Wed, 14 May 2014 02:02:14 +0000 (23:02 -0300)]
upstream: saa7134-alsa: include vmalloc.h
Changeset
15e64f0dde77 broke compilation on several archs, as it
forgot to include vmalloc.h.
drivers/media/pci/saa7134/saa7134-alsa.c: In function ‘saa7134_alsa_dma_init’:
CC [M] drivers/media/rc/keymaps/rc-behold-columbus.o
drivers/media/pci/saa7134/saa7134-alsa.c:283:2: error: implicit declaration of function ‘vmalloc_32’ [-Werror=implicit-function-declaration]
dma->vaddr = vmalloc_32(nr_pages << PAGE_SHIFT);
^
drivers/media/pci/saa7134/saa7134-alsa.c:283:13: warning: assignment makes pointer from integer without a cast [enabled by default]
dma->vaddr = vmalloc_32(nr_pages << PAGE_SHIFT);
^
drivers/media/pci/saa7134/saa7134-alsa.c:296:2: error: implicit declaration of function ‘vzalloc’ [-Werror=implicit-function-declaration]
dma->sglist = vzalloc(dma->nr_pages * sizeof(*dma->sglist));
^
drivers/media/pci/saa7134/saa7134-alsa.c:296:14: warning: assignment makes pointer from integer without a cast [enabled by default]
dma->sglist = vzalloc(dma->nr_pages * sizeof(*dma->sglist));
^
drivers/media/pci/saa7134/saa7134-alsa.c:310:2: error: implicit declaration of function ‘vfree’ [-Werror=implicit-function-declaration]
vfree(dma->sglist);
Add it to avoid such breakages.
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 17 Feb 2014 11:44:13 +0000 (08:44 -0300)]
upstream: [media] tw9910: add g_tvnorms video op
Report to soc_camera which standards are supported by tw9910.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 17 Feb 2014 11:44:12 +0000 (08:44 -0300)]
upstream: [media] v4l2-subdev.h: add g_tvnorms video op
While there was already a g_tvnorms_output video op, it's counterpart for
video capture was missing. Add it.
This is necessary for generic bridge drivers like soc-camera to set the
video_device tvnorms field correctly. Otherwise ENUMSTD cannot work.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Tested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Laurent Pinchart [Fri, 17 May 2013 15:32:46 +0000 (12:32 -0300)]
upstream: [media] v4l: Add 12-bit YUV 4:2:2 media bus pixel codes
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Laurent Pinchart [Fri, 17 May 2013 15:32:46 +0000 (12:32 -0300)]
upstream: [media] v4l: Add 12-bit YUV 4:2:0 media bus pixel codes
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Laurent Pinchart [Fri, 17 May 2013 15:32:46 +0000 (12:32 -0300)]
upstream: [media] v4l: Add UYVY10_1X20 and VYUY10_1X20 media bus pixel codes
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Laurent Pinchart [Fri, 17 May 2013 15:32:46 +0000 (12:32 -0300)]
upstream: [media] v4l: Add UYVY10_2X10 and VYUY10_2X10 media bus pixel codes
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Fri, 20 Dec 2013 13:20:26 +0000 (10:20 -0300)]
upstream: [media] v4l: Remove documentation for nonexistend input field in v4l2_buffer
The input field in struct v4l2_buffer no longer exists but has been replaced
by a reserved field. Remove the field documentation.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Wed, 18 Dec 2013 11:40:28 +0000 (08:40 -0300)]
upstream: [media] v4l: V4L2_MBUS_FRAME_DESC_FL_BLOB is about 1D DMA
V4L2_MBUS_FRAME_DESC_FL_BLOB intends to say the receiver must use 1D DMA to
receive the image, as the format does not have line offsets. This typically
includes all compressed formats.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Thu, 12 Dec 2013 12:36:46 +0000 (09:36 -0300)]
upstream: [media] v4l: Only get module if it's different than the driver for v4l2_dev
When the sub-device is registered, increment the use count of the sub-device
owner only if it's different from the owner of the driver for the media
device. This avoids increasing the use count by the module itself and thus
making it possible to unload it when it's not in use.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Thu, 12 Dec 2013 15:38:17 +0000 (12:38 -0300)]
upstream: [media] media: Use a better owner for the media device
mdev->fops->owner is actually the owner of the very same module which
implements media_device_register(), so it can't be unloaded anyway. Instead,
use THIS_MODULE through a macro as does video_register_device().
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Tue, 1 Apr 2014 12:58:19 +0000 (09:58 -0300)]
upstream: [media] smiapp: Use %u for printing u32 value
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Thu, 10 Apr 2014 13:08:59 +0000 (10:08 -0300)]
upstream: [media] smiapp: Define macros for obtaining properties of register definitions
The register address, width and flags are encoded as a 32-bit value. Add
macros for obtaining these separately. Use the macros in register access
functions.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Tue, 1 Apr 2014 11:37:38 +0000 (08:37 -0300)]
upstream: [media] smiapp: Add register diversion quirk
Add a quirk for diverting registers for on some sensors, even the standard
registers are not where they can be expected to be found. Add a quirk to
to help using such sensors.
smiapp_write_no_quirk() and smiapp_read_no_quirk() functions are provided
for the use of quirk implementations.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Tue, 8 Apr 2014 21:18:10 +0000 (18:18 -0300)]
upstream: [media] smiapp: Make PLL (quirk) flags a function
This is more flexible. Quirk flags may be affected by configuration.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Tue, 8 Apr 2014 21:14:42 +0000 (18:14 -0300)]
upstream: [media] smiapp: Make PLL flags unsigned long
No reason to keep this u8, really.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Wed, 12 Feb 2014 13:33:51 +0000 (10:33 -0300)]
upstream: [media] smiapp: Make PLL flags separate from regular quirk flags
It doesn't make sense to just copy the information to the PLL flags. Add a
new fields for the quirks to contain the PLL flags.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Wed, 26 Mar 2014 16:34:29 +0000 (13:34 -0300)]
upstream: [media] smiapp: Use I2C adapter ID and address in the sub-device name
The sub-device names should be unique. Should two identical sensors be
present in the same media device they would be indistinguishable. The names
will change e.g. from "vs6555 pixel array" to "vs6555 1-0010 pixel array".
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Fri, 11 Apr 2014 09:30:18 +0000 (06:30 -0300)]
upstream: [media] smiapp: Add a macro for constructing 8-bit quirk registers
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Sat, 12 Apr 2014 19:41:12 +0000 (16:41 -0300)]
upstream: [media] smiapp: Fix determining the need for 8-bit read access
8-bit reads are needed in some cases; however the condition used was wrong.
Regular access (register width) was used if:
len == SMIAPP_REG_8BIT && !only8
This causes 8-bit read access to be used always. The operator should be ||
instead: regular access can be used for 8-bit reads OR if allowed otherwise.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Fri, 11 Apr 2014 08:47:21 +0000 (05:47 -0300)]
upstream: [media] smiapp: Rename SMIA_REG to SMIAPP_REG for consistency
SMIAPP_REG_ is the common prefix used in the driver for register related
definitions. Use it consistently.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Sakari Ailus [Sat, 12 Apr 2014 17:32:01 +0000 (14:32 -0300)]
upstream: [media] smiapp: Remove unused quirk register functionality
The quirk registers mechanism which allows register to have a static read
access value from the sensor specific quirks, is not used. Remove it. It is
to be replaced by a more generic register diversion quirk soon.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Thu, 17 Apr 2014 06:17:08 +0000 (03:17 -0300)]
upstream: [media] vb2: fix compiler warning
When compiling this for older kernels using the compatibility build
the compiler complains about uninitialized variables:
In file included from include/linux/kernel.h:20:0,
from include/linux/cache.h:4,
from include/linux/time.h:7,
from include/linux/input.h:13,
from /home/hans/work/build/media_build/v4l/compat.h:9,
from <command-line>:0:
/home/hans/work/build/media_build/v4l/videobuf2-core.c: In function 'vb2_mmap':
include/linux/dynamic_debug.h:60:9: warning: 'plane' may be used uninitialized in this function [-Wmaybe-uninitialized]
printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); \
^
/home/hans/work/build/media_build/v4l/videobuf2-core.c:2381:23: note: 'plane' was declared here
unsigned int buffer, plane;
^
In file included from include/linux/kernel.h:20:0,
from include/linux/cache.h:4,
from include/linux/time.h:7,
from include/linux/input.h:13,
from /home/hans/work/build/media_build/v4l/compat.h:9,
from <command-line>:0:
include/linux/dynamic_debug.h:60:9: warning: 'buffer' may be used uninitialized in this function [-Wmaybe-uninitialized]
printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); \
^
/home/hans/work/build/media_build/v4l/videobuf2-core.c:2381:15: note: 'buffer' was declared here
unsigned int buffer, plane;
^
While these warnings are bogus (the call to __find_plane_by_offset will
set buffer and plane), it doesn't hurt to initialize these variables.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 23 Apr 2014 00:36:32 +0000 (21:36 -0300)]
upstream: [media] si2168: relax demod lock checks a little
bit3 was not cleared always leaving driver reporting demod is not
fully locked. Do not check bit0 as it seems to be always 0.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Fri, 11 Apr 2014 01:00:50 +0000 (22:00 -0300)]
upstream: [media] si2168: Silicon Labs Si2168 DVB-T/T2/C demod driver
Silicon Labs Si2168 DVB-T/T2/C demod driver.
That driver version supports only DVB-T.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 7 Apr 2014 12:20:39 +0000 (09:20 -0300)]
upstream: [media] vb2: reject output buffers with V4L2_FIELD_ALTERNATE
This is not allowed by the spec and does in fact not make any sense.
Return -EINVAL if this is the case.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Pawel Osciak <pawel@osciak.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Tue, 8 Apr 2014 08:00:39 +0000 (05:00 -0300)]
upstream: [media] v4l2-dv-timings.h: add CEA-861-F 4K timings
Add the CEA-861-F timings for 3840x2160p24/25/30/50/60 and
4096x2160p24/25/30/50/60.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sun, 23 Mar 2014 06:37:25 +0000 (03:37 -0300)]
upstream: [media] staging: media: davinci: vpfe: release buffers in case start_streaming call back fails
this patch releases the buffer by calling vb2_buffer_done(),
with state marked as VB2_BUF_STATE_QUEUED if start_streaming()
call back fails.
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sun, 23 Mar 2014 06:37:24 +0000 (03:37 -0300)]
upstream: [media] staging: media: davinci: vpfe: use v4l2_fh for priority handling
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Mike Sampson [Mon, 24 Mar 2014 09:04:49 +0000 (06:04 -0300)]
upstream: [media] sn9c102_hv7131r: fix style warnings flagged by checkpatch.pl
Signed-off-by: Mike Sampson <mike@sambodata.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sat, 22 Mar 2014 11:39:24 +0000 (08:39 -0300)]
upstream: [media] media: davinci: vpfe: use v4l2_fh for priority handling
This patch migrates the vpfe driver to use v4l2_fh for
priority handling.
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sat, 22 Mar 2014 10:57:59 +0000 (07:57 -0300)]
upstream: [media] media: davinci: vpbe: use v4l2_fh for priority handling
This patch migrates the vpbe driver to use v4l2_fh for
priority handling. This also fixes v4l2-compliance test.
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 17 Mar 2014 12:54:23 +0000 (09:54 -0300)]
upstream: [media] v4l2-ioctl.c: fix sparse __user-related warnings
Fix the use of __user in the check_array_args() prototype: instead of
using 'void * __user *' you should use 'void __user **' for sparse to
understand this correctly.
This also required the use of __force in the '*kernel_ptr = user_ptr'
assignment.
Also replace a wrong cast (void *) with the correct one (void **)
in check_array_args().
This fixes these sparse warnings:
drivers/media/v4l2-core/v4l2-ioctl.c:2284:35: warning: incorrect type in assignment (different address spaces)
drivers/media/v4l2-core/v4l2-ioctl.c:2301:35: warning: incorrect type in assignment (different address spaces)
drivers/media/v4l2-core/v4l2-ioctl.c:2319:35: warning: incorrect type in assignment (different address spaces)
drivers/media/v4l2-core/v4l2-ioctl.c:2386:57: warning: incorrect type in argument 4 (different address spaces)
drivers/media/v4l2-core/v4l2-ioctl.c:2420:29: warning: incorrect type in assignment (different address spaces)
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 17 Mar 2014 12:54:19 +0000 (09:54 -0300)]
upstream: [media] v4l2-subdev.h: fix sparse error with v4l2_subdev_notify
The notify function is a void function, yet the v4l2_subdev_notify
define uses it in a ? : construction, which causes sparse warnings.
Replace the define by a static inline function and move it to
v4l2-device.h, which is where it belongs since it needs to know the
v4l2_device struct. This wasn't a problem when it was a define, but
as a static inline function this no longer compiles in v4l2-subdev.h.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Ismael Luceno [Fri, 14 Mar 2014 19:43:23 +0000 (16:43 -0300)]
upstream: [media] gspca_gl860: Clean up idxdata structs
Signed-off-by: Ismael Luceno <ismael.luceno@gmail.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Robert Butora [Mon, 24 Mar 2014 22:41:38 +0000 (19:41 -0300)]
upstream: [media] media/usb/gspca: Add support for Scopium astro webcam (0547:7303)
This patch does not modify existing drivers. It adds subdriver
to gspca for DTCS033 (Scopium) webcam for astrophotography.
The patch adds dtcs033.c and modifies Kconfig and Makefile.
Signed-off-by: Robert Butora <robert.butora.fi@gmail.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Jean Delvare [Fri, 11 Apr 2014 07:15:32 +0000 (04:15 -0300)]
upstream: [media] Prefer gspca_sonixb over sn9c102 for all devices
The sn9c102 driver is deprecated. It was moved to staging in
anticipation of its removal in a future kernel version. However, USB
devices 0C45:6024 and 0C45:6025 are still handled by sn9c102 when
both sn9c102 and gspca_sonixb are enabled.
We must migrate all the users of these devices to the gspca_sonixb
driver now, so that it gets sufficient testing before the sn9c102
driver is finally phased out.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sun, 23 Mar 2014 05:44:11 +0000 (02:44 -0300)]
upstream: [media] media: davinci: vpfe: make sure all the buffers unmapped and released
this patch makes sure that it terminates if any IO in
progress and also makes sure that all the buffers are unmapped.
It was observed that with several runs of application the application
sometimes failed to allocate memory, This patch makes sure it
all the buffers are released.
Using kmemleak it was found that buffer were not released, this patch
fixes following issue,
echo scan > /sys/kernel/debug/kmemleak
Kernel message reads:
memleak: 3 new suspected memory leaks (see /sys/kernel/debug/kmemleak)
Then,
cat /sys/kernel/debug/kmemleak
unreferenced object 0xc564a480 (size 192):
comm "mttest", pid 764, jiffies
4294945878 (age 487.160s)
hex dump (first 32 bytes):
00 00 00 00 28 07 07 20 d0 02 00 00 e0 01 00 00 ....(.. ........
00 00 00 00 00 64 05 00 01 00 00 00 01 00 00 00 .....d..........
backtrace:
[<
c00a98dc>] create_object+0x10c/0x28c
[<
c03ba8ec>] kmemleak_alloc+0x3c/0x70
[<
c00a67c0>] __kmalloc+0x11c/0x1d4
[<
c02b6f48>] __videobuf_alloc+0x1c/0x3c
[<
c02b6194>] videobuf_alloc_vb+0x38/0x80
[<
c02b6638>] __videobuf_mmap_setup+0x9c/0x108
[<
c02b6da0>] videobuf_reqbufs.part.10+0x12c/0x1bc
[<
c02b6e9c>] videobuf_reqbufs+0x6c/0x8c
[<
c02be2c4>] vpfe_reqbufs+0xcc/0x130
[<
c02aae90>] v4l_reqbufs+0x50/0x54
[<
c02aab54>] __video_do_ioctl+0x260/0x2c4
[<
c02a9dd4>] video_usercopy+0xf0/0x310
[<
c02aa008>] video_ioctl2+0x14/0x1c
[<
c02a562c>] v4l2_ioctl+0x104/0x14c
[<
c00bd320>] do_vfs_ioctl+0x80/0x2d0
[<
c00bd5b4>] SyS_ioctl+0x44/0x64
unreferenced object 0xc564ac00 (size 192):
comm "mttest", pid 764, jiffies
4294945878 (age 487.160s)
hex dump (first 32 bytes):
01 00 00 00 28 07 07 20 d0 02 00 00 e0 01 00 00 ....(.. ........
00 00 00 00 00 64 05 00 01 00 00 00 01 00 00 00 .....d..........
backtrace:
[<
c00a98dc>] create_object+0x10c/0x28c
[<
c03ba8ec>] kmemleak_alloc+0x3c/0x70
[<
c00a67c0>] __kmalloc+0x11c/0x1d4
[<
c02b6f48>] __videobuf_alloc+0x1c/0x3c
[<
c02b6194>] videobuf_alloc_vb+0x38/0x80
[<
c02b6638>] __videobuf_mmap_setup+0x9c/0x108
[<
c02b6da0>] videobuf_reqbufs.part.10+0x12c/0x1bc
[<
c02b6e9c>] videobuf_reqbufs+0x6c/0x8c
[<
c02be2c4>] vpfe_reqbufs+0xcc/0x130
[<
c02aae90>] v4l_reqbufs+0x50/0x54
[<
c02aab54>] __video_do_ioctl+0x260/0x2c4
[<
c02a9dd4>] video_usercopy+0xf0/0x310
[<
c02aa008>] video_ioctl2+0x14/0x1c
[<
c02a562c>] v4l2_ioctl+0x104/0x14c
[<
c00bd320>] do_vfs_ioctl+0x80/0x2d0
[<
c00bd5b4>] SyS_ioctl+0x44/0x64
unreferenced object 0xc564a180 (size 192):
comm "mttest", pid 764, jiffies
4294945880 (age 487.140s)
hex dump (first 32 bytes):
02 00 00 00 28 07 07 20 d0 02 00 00 e0 01 00 00 ....(.. ........
00 00 00 00 00 64 05 00 01 00 00 00 01 00 00 00 .....d..........
backtrace:
[<
c00a98dc>] create_object+0x10c/0x28c
[<
c03ba8ec>] kmemleak_alloc+0x3c/0x70
[<
c00a67c0>] __kmalloc+0x11c/0x1d4
[<
c02b6f48>] __videobuf_alloc+0x1c/0x3c
[<
c02b6194>] videobuf_alloc_vb+0x38/0x80
[<
c02b6638>] __videobuf_mmap_setup+0x9c/0x108
[<
c02b6da0>] videobuf_reqbufs.part.10+0x12c/0x1bc
[<
c02b6e9c>] videobuf_reqbufs+0x6c/0x8c
[<
c02be2c4>] vpfe_reqbufs+0xcc/0x130
[<
c02aae90>] v4l_reqbufs+0x50/0x54
[<
c02aab54>] __video_do_ioctl+0x260/0x2c4
[<
c02a9dd4>] video_usercopy+0xf0/0x310
[<
c02aa008>] video_ioctl2+0x14/0x1c
[<
c02a562c>] v4l2_ioctl+0x104/0x14c
[<
c00bd320>] do_vfs_ioctl+0x80/0x2d0
[<
c00bd5b4>] SyS_ioctl+0x44/0x64
Reported-by: Jimmy Ho <jimmygge@gmail.com>
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sun, 23 Mar 2014 05:16:46 +0000 (02:16 -0300)]
upstream: [media] staging: media: davinci: vpfe: make sure all the buffers are released
from commit-id:
b3379c6201bb3555298cdbf0aa004af260f2a6a4
"vb2: only call start_streaming if sufficient buffers are queued"
the vb2 framework warns on (WARN_ON()) if all the active buffers
are not released when streaming is stopped, initially the vb2 silently
released the buffer internally if the buffer was not released by
the driver.
This patch fixes following issue:
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:2011 __vb2_queue_cancel+0x1a0/0x218()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpfe_video Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252e0c>] (__vb2_queue_cancel+0x1a0/0x218)
[<
c0252e0c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpfe_release+0x60/0x230)
[<
c025a65c>] (vpfe_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a1 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:1095 vb2_buffer_done+0x1e0/0x224()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpfe_video Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252c28>] (vb2_buffer_done+0x1e0/0x224)
[<
c0252c28>] (vb2_buffer_done) from [<
c0252e3c>] (__vb2_queue_cancel+0x1d0/0x218)
[<
c0252e3c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpfe_release+0x60/0x230)
[<
c025a65c>] (vpfe_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a2 ]---
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sat, 22 Mar 2014 11:03:09 +0000 (08:03 -0300)]
upstream: [media] media: davinci: vpbe_display: fix releasing of active buffers
from commit-id:
b3379c6201bb3555298cdbf0aa004af260f2a6a4
"vb2: only call start_streaming if sufficient buffers are queued"
the vb2 framework warns on (WARN_ON()) if all the active buffers
are not released when streaming is stopped, initially the vb2 silently
released the buffer internally if the buffer was not released by
the driver.
This patch fixes following issue:
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:2011 __vb2_queue_cancel+0x1a0/0x218()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpbe_display Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252e0c>] (__vb2_queue_cancel+0x1a0/0x218)
[<
c0252e0c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpbe_display_release+0x60/0x230)
[<
c025a65c>] (vpbe_display_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a1 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:1095 vb2_buffer_done+0x1e0/0x224()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpbe_display Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252c28>] (vb2_buffer_done+0x1e0/0x224)
[<
c0252c28>] (vb2_buffer_done) from [<
c0252e3c>] (__vb2_queue_cancel+0x1d0/0x218)
[<
c0252e3c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpbe_display_release+0x60/0x230)
[<
c025a65c>] (vpbe_display_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a2 ]---
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sat, 22 Mar 2014 11:03:08 +0000 (08:03 -0300)]
upstream: [media] media: davinci: vpif_display: fix releasing of active buffers
from commit-id:
b3379c6201bb3555298cdbf0aa004af260f2a6a4
"vb2: only call start_streaming if sufficient buffers are queued"
the vb2 framework warns on (WARN_ON()) if all the active buffers
are not released when streaming is stopped, initially the vb2 silently
released the buffer internally if the buffer was not released by
the driver.
Also this patch moves the disabling of interrupts from relase() callback
to stop_streaming() callback as which needs to be done ideally.
This patch fixes following issue:
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:2011 __vb2_queue_cancel+0x1a0/0x218()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpif_display Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252e0c>] (__vb2_queue_cancel+0x1a0/0x218)
[<
c0252e0c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpif_release+0x60/0x230)
[<
c025a65c>] (vpif_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a1 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:1095 vb2_buffer_done+0x1e0/0x224()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpif_display Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252c28>] (vb2_buffer_done+0x1e0/0x224)
[<
c0252c28>] (vb2_buffer_done) from [<
c0252e3c>] (__vb2_queue_cancel+0x1d0/0x218)
[<
c0252e3c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpif_release+0x60/0x230)
[<
c025a65c>] (vpif_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a2 ]---
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Sat, 22 Mar 2014 11:03:07 +0000 (08:03 -0300)]
upstream: [media] media: davinci: vpif_capture: fix releasing of active buffers
from commit-id:
b3379c6201bb3555298cdbf0aa004af260f2a6a4
"vb2: only call start_streaming if sufficient buffers are queued"
the vb2 framework warns on (WARN_ON()) if all the active buffers
are not released when streaming is stopped, initially the vb2 silently
released the buffer internally if the buffer was not released by
the driver.
Also this patch moves the disabling of interrupts from relase() callback
to stop_streaming() callback as which needs to be done ideally.
This patch fixes following issue:
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:2011 __vb2_queue_cancel+0x1a0/0x218()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpif_capture Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252e0c>] (__vb2_queue_cancel+0x1a0/0x218)
[<
c0252e0c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpif_release+0x60/0x230)
[<
c025a65c>] (vpif_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a1 ]---
------------[ cut here ]------------
WARNING: CPU: 0 PID: 2049 at drivers/media/v4l2-core/videobuf2-core.c:1095 vb2_buffer_done+0x1e0/0x224()
Modules linked in:
CPU: 0 PID: 2049 Comm: vpif_capture Tainted: G W 3.14.0-rc5-00414-ged97a6f #89
[<
c000e3f0>] (unwind_backtrace) from [<
c000c618>] (show_stack+0x10/0x14)
[<
c000c618>] (show_stack) from [<
c001adb0>] (warn_slowpath_common+0x68/0x88)
[<
c001adb0>] (warn_slowpath_common) from [<
c001adec>] (warn_slowpath_null+0x1c/0x24)
[<
c001adec>] (warn_slowpath_null) from [<
c0252c28>] (vb2_buffer_done+0x1e0/0x224)
[<
c0252c28>] (vb2_buffer_done) from [<
c0252e3c>] (__vb2_queue_cancel+0x1d0/0x218)
[<
c0252e3c>] (__vb2_queue_cancel) from [<
c02533a4>] (vb2_queue_release+0x14/0x24)
[<
c02533a4>] (vb2_queue_release) from [<
c025a65c>] (vpif_release+0x60/0x230)
[<
c025a65c>] (vpif_release) from [<
c023fe5c>] (v4l2_release+0x34/0x74)
[<
c023fe5c>] (v4l2_release) from [<
c00b4a00>] (__fput+0x80/0x224)
[<
c00b4a00>] (__fput) from [<
c00341e8>] (task_work_run+0xa0/0xd0)
[<
c00341e8>] (task_work_run) from [<
c001cc28>] (do_exit+0x244/0x918)
[<
c001cc28>] (do_exit) from [<
c001d344>] (do_group_exit+0x48/0xdc)
[<
c001d344>] (do_group_exit) from [<
c0029894>] (get_signal_to_deliver+0x2a0/0x5bc)
[<
c0029894>] (get_signal_to_deliver) from [<
c000b888>] (do_signal+0x78/0x3a0)
[<
c000b888>] (do_signal) from [<
c000bc54>] (do_work_pending+0xa4/0xb4)
[<
c000bc54>] (do_work_pending) from [<
c00096dc>] (work_pending+0xc/0x20)
---[ end trace
5faa75e8c2f8a6a2 ]---
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Mauro Carvalho Chehab [Mon, 7 Apr 2014 13:52:43 +0000 (10:52 -0300)]
upstream: [media] gpsca: remove the risk of a division by zero
As reported by Coverity, there's a potential risk of a division
by zero on some calls to jpeg_set_qual(), if quality is zero.
As quality can't be 0 or lower than that, adds an extra clause
to cover this special case.
Coverity reports: CID#
11922280, CID#
11922293, CID#
11922295
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Mon, 10 Mar 2014 06:24:01 +0000 (03:24 -0300)]
upstream: [media] v4l: ti-vpe: Set correct field parameter for output and capture buffers
The vpe driver wasn't setting the correct field parameter for dequed CAPTURE
type buffers for the case where the captured output is progressive.
Set the field to V4L2_FIELD_NONE for the completed destination buffers when
the captured output is progressive.
For OUTPUT type buffers, a queued buffer's field is forced to V4L2_FIELD_NONE
if the pixel format(configured through s_fmt for the buffer type
V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE specifies) the field type isn't interlaced.
If the pixel format specified was V4L2_FIELD_ALTERNATE, and the queued buffer's
field isn't V4L2_FIELD_TOP or V4L2_FIELD_BOTTOM, the vb2 buf_prepare op returns
an error.
This ensures compliance, and that the dequeued output and captured buffers
contain the field type that the driver used internally.
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Thu, 6 Mar 2014 10:07:47 +0000 (07:07 -0300)]
upstream: [media] v4l: ti-vpe: Use correct bus_info name for the device in querycap
The bus_info parameter in v4l2_capabilities expects a 'platform_' prefix. This
wasn't done in the driver and hence was breaking compliance. Update the bus_info
parameter accordingly.
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Wed, 5 Mar 2014 12:52:38 +0000 (09:52 -0300)]
upstream: [media] v4l: ti-vpe: report correct capabilities in querycap
querycap currently returns V4L2_CAP_VIDEO_M2M as a capability, this should be
V4L2_CAP_VIDEO_M2M_MPLANE instead, as the driver supports multiplanar formats.
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Wed, 12 Feb 2014 07:04:22 +0000 (04:04 -0300)]
upstream: [media] v4l: ti-vpe: Allow usage of smaller images
The minimum width and height for VPE input/output was kept as 128 pixels. VPE
doesn't have a constraint on the image height, it requires the image width to
be at least 16 bytes.
Change the minimum supported dimensions to 32x32. This allows us to de-interlace
qcif content. A smaller image size than 32x32 didn't make much sense, so stopped
at this.
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Tue, 18 Feb 2014 13:24:07 +0000 (10:24 -0300)]
upstream: [media] v4l: ti-vpe: Use video_device_release_empty
The video_device struct is currently embedded in the driver data struct vpe_dev.
A vpe_dev instance is allocated by the driver, and the memory for the vfd is a
part of this struct.
The v4l2 core, however, manages the removal of the vfd region, through the
video_device's .release() op, which currently is the helper
video_device_release. This causes memory corruption, and leads to issues when
we try to re-insert the vpe module.
Use the video_device_release_empty helper function instead.
Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Archit Taneja [Wed, 15 Jan 2014 11:31:51 +0000 (08:31 -0300)]
upstream: [media] v4l: ti-vpe: Make sure in job_ready that we have the needed number of dst_bufs
VPE has a ctrl parameter which decides how many mem to mem transactions the
active job from the job queue can perform.
The driver's job_ready() made sure that the number of ready source buffers are
sufficient for the job to execute successfully. But it didn't make sure if
there are sufficient ready destination buffers in the capture queue for the
VPE output.
If the time taken by VPE to process a single frame is really slow, then it's
possible that we don't need to imply such a restriction on the dst queue, but
really fast transactions(small resolution, no de-interlacing) may cause us to
hit the condition where we don't have any free buffers for the VPE to write on.
Add the extra check in job_ready() to make sure we have the sufficient amount
of destination buffers.
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Archit Taneja <archit@ti.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Malcolm Priestley [Tue, 25 Mar 2014 01:31:58 +0000 (22:31 -0300)]
upstream: [media] m88rs2000: fix sparse static warnings
fix the following warnings:
m88rs2000.c:300:16: warning: symbol 'm88rs2000_setup' was not declared. Should it be static?
m88rs2000.c:318:16: warning: symbol 'm88rs2000_shutdown' was not declared. Should it be static?
m88rs2000.c:328:16: warning: symbol 'fe_reset' was not declared. Should it be static?
m88rs2000.c:366:16: warning: symbol 'fe_trigger' was not declared. Should it be static?
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Benjamin Larsson [Mon, 17 Mar 2014 01:41:13 +0000 (22:41 -0300)]
upstream: [media] r820t: fix size and init values
Correct the initialization values at the start of the function
and use proper variable sizes to prevent overflow.
Signed-off-by: Benjamin Larsson <benjamin@southpole.se>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Mauro Carvalho Chehab [Sun, 6 Apr 2014 13:48:31 +0000 (10:48 -0300)]
upstream: [media] v4l2-common: fix warning when used on userpace
As reported by Linus, make headers_check is reporting:
usr/include/linux/v4l2-common.h:72: found __[us]{8,16,32,64} type without #include <linux/types.h>
which seems to have come in through commits
777f4f85b75f1 and
254a47770163f.
That happens because struct v4l2_edid should be visible by both
subdev and V4L2 APIs. So, it was moved to v4l2-common.h.
As Linus pointed, the proper fix is to just add an include for
linux/types.h at v4l2-common.h.
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Sat, 1 Feb 2014 20:28:21 +0000 (17:28 -0300)]
upstream: [media] m88ds3103: fix bug on .set_tone()
Band switching didn't worked always reliably as there was one
register bit set wrong.
Thanks to Robert Schlabbach for pointing this bug and solution.
Reported-by: Robert Schlabbach <Robert.Schlabbach@gmx.net>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Mon, 10 Feb 2014 08:52:54 +0000 (05:52 -0300)]
upstream: [media] si4713: fix Kconfig dependencies
The SI4713 select should be I2C_SI4713 and the USB driver needs to depend on
I2C as well.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reported-by: Paul Bolle <pebolle@tiscali.nl>
Reported-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Arnd Bergmann [Sat, 15 Mar 2014 09:35:39 +0000 (06:35 -0300)]
upstream: [media] Sensoray 2255 uses videobuf2
commit
340a30c514 "s2255drv: upgrade to videobuf2" changed the API
used by the s2255 driver, but did not modify the Kconfig statement,
which can lead to build errors when no other driver already uses
VIDEOBUF2_VMALLOC. This patch does the necessary Kconfig change.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Aybuke Ozdemir [Wed, 19 Mar 2014 18:25:13 +0000 (20:25 +0200)]
upstream: staging/media/davinci_vpfe/vpfe_video.h Unnecessary space after function pointer name
Fix checkpatch.pl issues with Unnecessary space after function pointer
name in vpfe_video.h
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Aybuke Ozdemir [Wed, 19 Mar 2014 18:25:12 +0000 (20:25 +0200)]
upstream: staging/media/davinci_vpfe/vpfe_video.h Fix missing space after return type
Fix checkpatch.pl issues with
missing space after return type in /vpfe_video.h
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Aybuke Ozdemir [Wed, 19 Mar 2014 17:39:52 +0000 (19:39 +0200)]
upstream: staging: as102: as10x_handle.h .Fix Unnecessary space after function pointer name
This patch removes the following checkpatch.pl warning in as10x_handle.h
Warning : Unnecessary space after function pointer name
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Chi Pham [Sun, 9 Mar 2014 13:55:14 +0000 (14:55 +0100)]
upstream: staging:media: Removed assignments from if statements.
The following coccinelle script found the match:
@simple@
expression E1, E2;
statement S1, S2;
@@
+ E1 = E2;
if (
- (E1 = E2)
+ E1
)
S1 else S2
@left@
expression E0, E1, E2;
statement S0, S1;
@@
- if ((E1 = E2) < E0)
+ E1 = E2;
+ if (E1 < E0)
S1
Signed-off-by: Chi Pham <fempsci@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Aybuke Ozdemir [Sat, 15 Mar 2014 17:10:16 +0000 (19:10 +0200)]
upstream: staging: go7007: go7007-v4l2.c Fix line over 80 characters.
Fix checkpatch.pl issues with line over
80 characters in go7007-v4l2.c
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Kristina Martšenko [Fri, 14 Mar 2014 15:20:17 +0000 (17:20 +0200)]
upstream: staging: dt3155v4l: make q_ops static
Since q_ops is only referenced in dt3155v4l.c, mark it as static.
This removes the following sparse warning:
drivers/staging/media/dt3155v4l//dt3155v4l.c:302:22: warning: symbol 'q_ops' was not declared. Should it be static?
Signed-off-by: Kristina Martšenko <kristina.martsenko@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Andreea-Cristina Bernat [Mon, 17 Mar 2014 01:00:01 +0000 (18:00 -0700)]
upstream: Staging: solo6x10: Replace expressions that don't use ALIGN macro
There are some expressions that compute the roundup of a number, but don't use
the existing macro defined in /include/kernel.h. This patch uses the following
Coccinelle semantic patch:
@ haskernel @
@@
@ depends on haskernel @
expression E1, E2;
@@
- (E1 + (E2 - 1)) & ~(E2 - 1)
+ ALIGN(E1, E2)
Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
Acked-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Aybuke Ozdemir [Thu, 13 Mar 2014 00:20:20 +0000 (02:20 +0200)]
upstream: staging: solo6x10: solo6x10-v4l2-enc.c: Fix line over 80 characters.
Fix checkpatch.pl issues with line over 80 characters in solo6x10-v4l2-enc.c
Signed-off-by: Aybuke Ozdemir <aybuke.147@gmail.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Hans Verkuil [Fri, 14 Mar 2014 11:57:07 +0000 (08:57 -0300)]
upstream: [media] DocBook media: clarify v4l2_pix_format and v4l2_pix_format_mplane fields
Be more specific with regards to how some of these fields are interpreted.
In particular the height value and which fields can be set by the application.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
James Hogan [Thu, 13 Mar 2014 10:29:21 +0000 (07:29 -0300)]
upstream: [media] rc: img-ir: hw: Remove unnecessary semi-colon
Fix a coccicheck warning in img-ir driver:
drivers/media/rc/img-ir/img-ir-hw.c:500:2-3: Unneeded semicolon
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Lad, Prabhakar [Fri, 14 Mar 2014 05:25:35 +0000 (02:25 -0300)]
upstream: [media] media: davinci: vpbe: fix build warning
this patch fixes following build warning
drivers/media/platform/davinci/vpbe_display.c: In function 'vpbe_start_streaming':
drivers/media/platform/davinci/vpbe_display.c:344: warning: unused variable 'vpbe_dev'
Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Mon, 10 Mar 2014 18:18:55 +0000 (15:18 -0300)]
upstream: [media] rtl28xxu: depends on I2C_MUX
We need depend on I2C_MUX as rtl2832 demod used requires it.
All error/warnings:
warning: (DVB_USB_RTL28XXU) selects DVB_RTL2832 which has unmet direct dependencies (MEDIA_SUPPORT && DVB_CORE && I2C && I2C_MUX)
ERROR: "i2c_add_mux_adapter" [drivers/media/dvb-frontends/rtl2832.ko] undefined!
ERROR: "i2c_del_mux_adapter" [drivers/media/dvb-frontends/rtl2832.ko] undefined!
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Sun, 13 Oct 2013 02:35:35 +0000 (23:35 -0300)]
upstream: [media] rtl28xxu: constify demod config structs
Optimize a little bit from data to text.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Fri, 7 Feb 2014 05:55:57 +0000 (02:55 -0300)]
upstream: [media] e4000: implement PLL lock v4l control
Implement PLL lock control to get PLL lock flag status from tuner
synthesizer.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Mon, 27 Jan 2014 06:13:19 +0000 (03:13 -0300)]
upstream: [media] e4000: fix PLL calc to allow higher frequencies
There was 32-bit overflow on VCO frequency calculation which blocks
tuning to 1073 - 1104 MHz. Use 64 bit number in order to avoid VCO
frequency overflow.
After that fix device in question tunes to following range:
60 - 1104 MHz
1250 - 2207 MHz
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Mon, 27 Jan 2014 00:02:53 +0000 (21:02 -0300)]
upstream: [media] e4000: implement controls via v4l2 control framework
Implement gain and bandwidth controls using v4l2 control framework.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Tue, 15 Oct 2013 22:22:45 +0000 (19:22 -0300)]
upstream: [media] e4000: convert DVB tuner to I2C driver model
Driver conversion from proprietary DVB tuner model to more
general I2C driver model.
Cc: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Andreea-Cristina Bernat [Wed, 12 Mar 2014 20:50:01 +0000 (22:50 +0200)]
upstream: staging: lirc: Add fallthrough comment
This patch adds fallthrough comments for the cases not preceded by
break or fallthrough comment
Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Andreea-Cristina Bernat [Tue, 11 Mar 2014 16:46:07 +0000 (18:46 +0200)]
upstream: staging/media/solo6x10: Fix coding-style error
This patch fixes the error "space required after that ';'" for
the file /drivers/staging/media/solo6x10/solo6x10-tx28.c
Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Kees Cook [Tue, 11 Mar 2014 20:25:53 +0000 (17:25 -0300)]
upstream: [media] media: rc-core: use %s in rc_map_get() module load
rc_map_get() takes a single string literal for the module to load,
so make sure it cannot be used as a format string in the call to
request_module().
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Hans Verkuil [Sun, 23 Feb 2014 23:12:46 +0000 (20:12 -0300)]
upstream: [media] DocBook: fix incorrect code example
The code said for (i = 0; i > 30; ++i) instead of i < 30.
Fix this and clean it up a bit at the same time.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Fri, 7 Feb 2014 05:46:16 +0000 (02:46 -0300)]
upstream: [media] v4l: add control for RF tuner PLL lock flag
Add volatile boolean control to indicate if tuner frequency synthesizer
is locked to requested frequency. That means tuner is able to receive
given frequency. Control is named as "PLL lock", since frequency
synthesizers are based of phase-locked-loop. Maybe more general name
could be wise still?
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Fri, 7 Feb 2014 06:55:32 +0000 (03:55 -0300)]
upstream: [media] DocBook: media: document PLL lock control
Document PLL lock V4L2 control. It is read only RF tuner control
which is used to inform if tuner is receiving frequency or not.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 5 Feb 2014 05:24:35 +0000 (02:24 -0300)]
upstream: [media] v4l: add enum_freq_bands support to tuner sub-device
Add VIDIOC_ENUM_FREQ_BANDS, enumerate supported frequency bands,
IOCTL support for sub-device tuners too.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 5 Feb 2014 02:55:25 +0000 (23:55 -0300)]
upstream: [media] v4l: uapi: add SDR formats CU8 and CU16LE
V4L2_SDR_FMT_CU8 — Complex unsigned 8-bit IQ sample
V4L2_SDR_FMT_CU16LE — Complex unsigned 16-bit little endian IQ sample
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 26 Feb 2014 23:30:35 +0000 (20:30 -0300)]
upstream: [media] DocBook: media: add some general info about RF tuners
Add some info what is RF tuner in context of V4L RF tuner class.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 5 Feb 2014 01:13:44 +0000 (22:13 -0300)]
upstream: [media] v4l: reorganize RF tuner control ID numbers
It appears that controls are ordered by ID number when enumerating.
That could lead illogical UI as controls are usually enumerated and
drawn by the application at runtime.
Change order of controls by reorganizing assigned IDs now as we can.
It is not reasonable possible after the API is released. Also, leave
some spare space between IDs too for possible future extensions.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Sat, 1 Feb 2014 02:36:13 +0000 (23:36 -0300)]
upstream: [media] v4l: add RF tuner channel bandwidth control
Modern silicon RF tuners has one or more adjustable filters on
signal path, in order to filter noise from desired radio channel.
Add channel bandwidth control to tell the driver which is radio
channel width we want receive. Filters could be then adjusted by
the driver or hardware, using RF frequency and channel bandwidth
as a base of filter calculations.
On automatic mode (normal mode), bandwidth is calculated from sampling
rate or tuning info got from userspace. That new control gives
possibility to set manual mode and let user have more control for
filters.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 12 Mar 2014 17:53:39 +0000 (14:53 -0300)]
upstream: [media] v4l: define unit for V4L2_CID_RF_TUNER_BANDWIDTH
Use Hertz as a unit for radio channel bandwidth.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Antti Palosaari [Wed, 5 Feb 2014 02:15:22 +0000 (23:15 -0300)]
upstream: [media] DocBook: document RF tuner bandwidth controls
Add documentation for RF tuner bandwidth controls. These controls are
used to set filters on tuner signal path.
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>