]> git.karo-electronics.de Git - linux-beck.git/log
linux-beck.git
11 years ago[media] stb0899: restore minimal rate to 5Mbauds
Mauro Carvalho Chehab [Fri, 5 Jul 2013 13:31:43 +0000 (10:31 -0300)]
[media] stb0899: restore minimal rate to 5Mbauds

According with Manu Abraham, stb0899 seek algorithm is broken
for symbol rates bellow to 5Mbauds. So, revert those patches:

55b3318 [media] stb0899: allow minimum symbol rate of 2000000
2eeed77 [media] stb0899: allow minimum symbol rate of 1000000

Requested-by: Manu Abraham <abraham.manu@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Correct colorspace handling at FIMC-LITE
Sylwester Nawrocki [Thu, 20 Jun 2013 13:49:09 +0000 (10:49 -0300)]
[media] exynos4-is: Correct colorspace handling at FIMC-LITE

Ensure the colorspace is properly adjusted by the driver for YUV
and Bayer image formats. The subdev try_fmt helper is simplified.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Set valid initial format on FIMC.n subdevs
Sylwester Nawrocki [Tue, 18 Jun 2013 17:56:11 +0000 (14:56 -0300)]
[media] exynos4-is: Set valid initial format on FIMC.n subdevs

Ensure there are valid initial image formats on the FIMC.n subdev pads.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Set valid initial format on FIMC-IS-ISP subdev pads
Sylwester Nawrocki [Tue, 18 Jun 2013 17:50:50 +0000 (14:50 -0300)]
[media] exynos4-is: Set valid initial format on FIMC-IS-ISP subdev pads

Ensure there is a valid initial resolution and pixel format set
at the FIMC-IS-ISP subdev pads.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Fix format propagation on FIMC-IS-ISP subdev
Sylwester Nawrocki [Tue, 18 Jun 2013 16:42:30 +0000 (13:42 -0300)]
[media] exynos4-is: Fix format propagation on FIMC-IS-ISP subdev

Ensure TRY formats are propagated from the sink pad to the source pads
of the FIMC-IS-ISP subdev and the TRY and ACTIVE formats are separated.

[mchehab@redhat.com: Whitespace cleanup]
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Set valid initial format at FIMC-LITE
Sylwester Nawrocki [Tue, 18 Jun 2013 11:00:42 +0000 (08:00 -0300)]
[media] exynos4-is: Set valid initial format at FIMC-LITE

Ensure the image resolution and crop rectangle on the FIMC-LITE.n
subdevs and fimc-lite.n.capture video nodes is properly configured
upon the driver's initialization.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Fix format propagation on FIMC-LITE.n subdevs
Sylwester Nawrocki [Thu, 20 Jun 2013 13:57:47 +0000 (10:57 -0300)]
[media] exynos4-is: Fix format propagation on FIMC-LITE.n subdevs

FIMC-LITE subdevs have one sink pad and two source pads on which the image
formats are always same. This patch implements missing format propagation
from the sink pad to the source pads, to allow user space to negotiate TRY
format on whole media pipeline involving FIMC-LITE.n subdevs. The subdev
try_fmt helper is simplified.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] MAINTAINERS: Update S5P/Exynos FIMC driver entry
Sylwester Nawrocki [Tue, 28 May 2013 21:26:20 +0000 (18:26 -0300)]
[media] MAINTAINERS: Update S5P/Exynos FIMC driver entry

This change is mainly to update the driver's path changed from
drivers/media/platform/s5p-fimc to drivers/media/platform/exynos4-is/.
While at it, remove non-existent files rule, move the whole entry to
the Samsung drivers section and add the patch tracking system site URL.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] Documentation: Update driver's directory in video4linux/fimc.txt
Sylwester Nawrocki [Fri, 14 Jun 2013 22:28:40 +0000 (19:28 -0300)]
[media] Documentation: Update driver's directory in video4linux/fimc.txt

Update the documentation with the driver's path changed in
commit 56fa1a6a6a7da91e7ece8b01b0ae8adb2926e434
[media] s5p-fimc: Change the driver directory to exynos4-is

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Change fimc-is firmware file names
Sylwester Nawrocki [Fri, 31 May 2013 13:36:19 +0000 (10:36 -0300)]
[media] exynos4-is: Change fimc-is firmware file names

This patch changes the firmware file names of the FIMC-IS subsystem.
It is needed since there are different firmwares used across various
SoC series, e.g. Exynos4 and Exynos5.
Also the sensor specific "setfile" name is changed, to account for
it depends on an image sensor and is also specific to the FIMC-IS
and the SoC.
This is a change for a driver merged in 3.10.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Add support for Exynos5250 MIPI-CSIS
Sylwester Nawrocki [Fri, 31 May 2013 13:38:23 +0000 (10:38 -0300)]
[media] exynos4-is: Add support for Exynos5250 MIPI-CSIS

Add compatible property for the Exynos5250 and enable the frame start
and frame end interrupts. These interrupts are needed for the Exynos5
FIMC-IS firmware. The driver enables those interrupt only where available,
depending on the 'compatible' property. This can be optimized further,
by exposing some API at the subdev driver, so the host driver can enable
extra interrupts only for the image processing chains involving FIMC-IS.

Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Add Exynos5250 SoC support to fimc-lite driver
Sylwester Nawrocki [Fri, 14 Jun 2013 15:38:15 +0000 (12:38 -0300)]
[media] exynos4-is: Add Exynos5250 SoC support to fimc-lite driver

This patch adds support for the Exynos5250 SoC variant of the FIMC-LITE
IP. A 'compatible' string is added for Exynos5250 compatible devices
and the capture DMA handling is reworked to use the FLITE_REG_CIFCNTSEQ
register, masking output DMA buffer address slots. The frame interrupt
is enabled so there are now 2 interrupts per frame. This likely can be
optimized in future by using any status registers that allow to figure
out what the last and the currently written frame buffer is. It would
also be more reliable in cases where there are high interrupt service
latencies.

Signed-off-by: Shaik Ameer Basha <shaik.ameer@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] exynos4-is: Drop drvdata handling in fimc-lite for non-dt platforms
Sylwester Nawrocki [Tue, 11 Jun 2013 13:44:38 +0000 (10:44 -0300)]
[media] exynos4-is: Drop drvdata handling in fimc-lite for non-dt platforms

The FIMC-LITE IP block is available only on platforms instantiated
from device tree.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: i2c: tvp514x: remove manual setting of subdev name
Lad, Prabhakar [Mon, 24 Jun 2013 14:47:26 +0000 (11:47 -0300)]
[media] media: i2c: tvp514x: remove manual setting of subdev name

This patch removes manual setting of subdev name in the
probe, ideally subdev names must be unique.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: i2c: tvp7002: remove manual setting of subdev name
Lad, Prabhakar [Mon, 24 Jun 2013 14:47:25 +0000 (11:47 -0300)]
[media] media: i2c: tvp7002: remove manual setting of subdev name

This patch removes manual setting of subdev name in the
probe, ideally subdev names must be unique.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Cc: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] mem2mem: set missing v4l2_dev pointer
Hans Verkuil [Thu, 27 Jun 2013 05:44:04 +0000 (02:44 -0300)]
[media] mem2mem: set missing v4l2_dev pointer

The m2m-deinterlace, mem2mem_testdev and mx2_emmaprp drivers didn't set
the v4l2_dev pointer in struct video_device, even though a v4l2_device was
registered correctly. These days this v4l2_dev pointer must be set correctly,
so this patch adds that for these three drivers.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] wl128x: add missing struct v4l2_device
Hans Verkuil [Sat, 22 Jun 2013 05:38:37 +0000 (02:38 -0300)]
[media] wl128x: add missing struct v4l2_device

This struct is now required for all video device nodes, but it was missing
in this driver.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] tvp514x: Fix init seqeunce
Lars-Peter Clausen [Sun, 23 Jun 2013 13:01:35 +0000 (10:01 -0300)]
[media] tvp514x: Fix init seqeunce

client->driver->id_table will always point to the first entry in the device id
table. So all devices will use the same init sequence. Use the id table entry
that gets passed to the driver's probe() function to get the right init
sequence.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] saa7134: Fix sparse warnings by adding __user annotation
Emil Goode [Sat, 22 Jun 2013 11:02:52 +0000 (08:02 -0300)]
[media] saa7134: Fix sparse warnings by adding __user annotation

Adding a __user annotation fixes the following sparse warnings.
drivers/media/pci/saa7134/saa7134-video.c:1578:45: warning:
        incorrect type in initializer (different address spaces)
        drivers/media/pci/saa7134/saa7134-video.c:1578:45:
        expected struct v4l2_clip *clips
        drivers/media/pci/saa7134/saa7134-video.c:1578:45:
        got struct v4l2_clip [noderef] <asn:1>*clips
drivers/media/pci/saa7134/saa7134-video.c:1589:26: warning:
        incorrect type in assignment (different address spaces)
        drivers/media/pci/saa7134/saa7134-video.c:1589:26:
        expected struct v4l2_clip [noderef] <asn:1>*clips
        drivers/media/pci/saa7134/saa7134-video.c:1589:26:
        got struct v4l2_clip *clips

Signed-off-by: Emil Goode <emilgoode@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] saa7164: fix compiler warning
Hans Verkuil [Fri, 21 Jun 2013 19:16:47 +0000 (16:16 -0300)]
[media] saa7164: fix compiler warning

build/media_build/v4l/saa7164-core.c: In function 'saa7164_initdev':
build/media_build/v4l/saa7164-core.c:1192:6: warning: 'err' may be used uninitialized in this function [-Wmaybe-uninitialized]
  int err, i;
        ^

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] v4l2-controls.h: fix copy-and-paste error in comment
Hans Verkuil [Fri, 21 Jun 2013 05:05:34 +0000 (02:05 -0300)]
[media] v4l2-controls.h: fix copy-and-paste error in comment

The comment for the FM_RX class was copied from the DV class unchanged.
Fixed.
Also made the FM_TX comment consistent with the others.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] omap_vout: fix compiler warning
Hans Verkuil [Thu, 20 Jun 2013 19:28:16 +0000 (16:28 -0300)]
[media] omap_vout: fix compiler warning

media-git/drivers/media/platform/omap/omap_vout.c: In function ‘omapvid_init’:
media-git/drivers/media/platform/omap/omap_vout.c:382:17: warning: ‘mode’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  vout->dss_mode = video_mode_to_dss_mode(vout);
                 ^
media-git/drivers/media/platform/omap/omap_vout.c:332:23: note: ‘mode’ was declared here
  enum omap_color_mode mode;
                       ^

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Prabhakar Lad <prabhakar.lad@ti.com>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] bfin_capture: fix compiler warning
Hans Verkuil [Thu, 20 Jun 2013 19:28:15 +0000 (16:28 -0300)]
[media] bfin_capture: fix compiler warning

media-git/drivers/media/platform/blackfin/bfin_capture.c: In function ‘bcap_probe’:
media-git/drivers/media/platform/blackfin/bfin_capture.c:1007:16: warning: ignoring return value of ‘vb2_queue_init’, declared with attribute warn_unused_result [-Wunused-result]
  vb2_queue_init(q);
                  ^

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Scott Jiang <scott.jiang.linux@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] ml86v7667: fix compiler warning
Hans Verkuil [Thu, 20 Jun 2013 19:28:14 +0000 (16:28 -0300)]
[media] ml86v7667: fix compiler warning

build/media_build/v4l/ml86v7667.c: In function 'ml86v7667_s_ctrl':
build/media_build/v4l/ml86v7667.c:120:6: warning: variable 'ret' set but not used [-Wunused-but-set-variable]
  int ret = 0;
        ^

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Vladimir Barinov <source@cogentembedded.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: soc-camera: remove several CEU references in the generic scaler
Guennadi Liakhovetski [Tue, 25 Jun 2013 08:59:23 +0000 (05:59 -0300)]
[media] V4L2: soc-camera: remove several CEU references in the generic scaler

The scaling / cropping library, that has been extracted from the CEU
driver still contained a couple of references to the original hardware.
Clean them up.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: soc-camera: move generic functions into a separate file
Guennadi Liakhovetski [Thu, 25 Apr 2013 11:18:45 +0000 (08:18 -0300)]
[media] V4L2: soc-camera: move generic functions into a separate file

The sh_mobile_ceu_camera driver implements a generic algorithm for setting
up an optimal client and host scaling and cropping configuration. This
patch makes those functions available for all drivers.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: sh_mobile_ceu_camera: remove CEU specific data from generic functions
Guennadi Liakhovetski [Wed, 24 Apr 2013 14:15:30 +0000 (11:15 -0300)]
[media] V4L2: sh_mobile_ceu_camera: remove CEU specific data from generic functions

Several functions in the sh_mobile_ceu_camera driver implement generic
algorithms and can be re-used by other V4L2 camera host drivers too. These
functions attempt to optimise scaling and cropping functions of the
subdevice, e.g. a camera sensor. This patch makes those functions generic
for future re-use by other camera host drivers.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: add documentation for V4L2 clock helpers and asynchronous probing
Guennadi Liakhovetski [Mon, 17 Jun 2013 05:50:33 +0000 (02:50 -0300)]
[media] V4L2: add documentation for V4L2 clock helpers and asynchronous probing

Add documentation for the V4L2 clock and V4L2 asynchronous probing APIs
to v4l2-framework.txt.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: soc-camera: fix uninitialised use compiler warning
Guennadi Liakhovetski [Mon, 24 Jun 2013 08:19:19 +0000 (05:19 -0300)]
[media] V4L2: soc-camera: fix uninitialised use compiler warning

In scan_async_group() if the size parameter is negative, the sasd pointer
will be used uninitialised:
drivers/media/platform/soc_camera/soc_camera.c: In function "soc_camera_host_register":
drivers/media/platform/soc_camera/soc_camera.c:1514:55: warning: "sasd" may
be used uninitialized in this function [-Wmaybe-uninitialized]
    sasd->asd.match.i2c.adapter_id, sasd->asd.match.i2c.address);
                                                       ^
drivers/media/platform/soc_camera/soc_camera.c:1464:34: note: "sasd" was
declared here
  struct soc_camera_async_subdev *sasd;
Fix this by making "size" and the array, from which it is assigned unsigned.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: fix compilation if CONFIG_I2C is undefined
Guennadi Liakhovetski [Mon, 24 Jun 2013 08:13:51 +0000 (05:13 -0300)]
[media] V4L2: fix compilation if CONFIG_I2C is undefined

i2c_verify_client() is only available, if I2C is enabled. Fix v4l2-async.c
compilation if I2C is disabled.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: sh_vou: add I2C build dependency
Guennadi Liakhovetski [Mon, 24 Jun 2013 08:08:05 +0000 (05:08 -0300)]
[media] V4L2: sh_vou: add I2C build dependency

The sh_vou driver needs CONFIG_I2C or CONFIG_I2C_MODULE to build, add the
respective dependency.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years agoMerge branch 'v4l_for_linus' into patchwork
Mauro Carvalho Chehab [Tue, 25 Jun 2013 10:24:22 +0000 (07:24 -0300)]
Merge branch 'v4l_for_linus' into patchwork

* v4l_for_linus:
  [media] Fix build when drivers are builtin and frontend modules
  [media] s5p makefiles: don't override other selections on obj-[ym]
  [media] exynos4-is: Fix FIMC-IS clocks initialization
  [media] rtl28xxu: fix buffer overflow when probing Rafael Micro r820t tuner

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] uvc: Depend on VIDEO_V4L2
Laurent Pinchart [Sat, 22 Jun 2013 14:23:58 +0000 (11:23 -0300)]
[media] uvc: Depend on VIDEO_V4L2

The uvcvideo driver lost its dependency on VIDEO_V4L2 during the big
media directory reorganization. Add it back.

Reported-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] imx074: support asynchronous probing
Guennadi Liakhovetski [Wed, 26 Dec 2012 16:13:46 +0000 (13:13 -0300)]
[media] imx074: support asynchronous probing

Both synchronous and asynchronous imx074 subdevice probing is supported by
this patch.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] sh_mobile_ceu_camera: add asynchronous subdevice probing support
Guennadi Liakhovetski [Thu, 3 Jan 2013 18:06:35 +0000 (15:06 -0300)]
[media] sh_mobile_ceu_camera: add asynchronous subdevice probing support

Use the v4l2-async API to support asynchronous subdevice probing,
including the CSI2 subdevice. Synchronous probing is still supported too.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: add V4L2-async support
Guennadi Liakhovetski [Wed, 26 Dec 2012 15:44:11 +0000 (12:44 -0300)]
[media] soc-camera: add V4L2-async support

Add support for asynchronous subdevice probing, using the v4l2-async API.
The legacy synchronous mode is still supported too, which allows to
gradually update drivers and platforms. The selected approach adds a
notifier for each struct soc_camera_device instance, i.e. for each video
device node, even when there are multiple such instances registered with a
single soc-camera host simultaneously.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: switch I2C subdevice drivers to use v4l2-clk
Guennadi Liakhovetski [Fri, 21 Dec 2012 16:01:55 +0000 (13:01 -0300)]
[media] soc-camera: switch I2C subdevice drivers to use v4l2-clk

Instead of centrally enabling and disabling subdevice master clocks in
soc-camera core, let subdevice drivers do that themselves, using the
V4L2 clock API and soc-camera convenience wrappers.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: support asynchronous subdevice registration
Guennadi Liakhovetski [Tue, 8 Jan 2013 10:06:31 +0000 (07:06 -0300)]
[media] V4L2: support asynchronous subdevice registration

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: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: add a device pointer to struct v4l2_subdev
Guennadi Liakhovetski [Mon, 10 Jun 2013 18:07:35 +0000 (15:07 -0300)]
[media] V4L2: add a device pointer to struct v4l2_subdev

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: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: add temporary clock helpers
Guennadi Liakhovetski [Tue, 4 Dec 2012 10:42:15 +0000 (07:42 -0300)]
[media] V4L2: add temporary clock helpers

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: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] sh-mobile-ceu-driver: support max width and height in DT
Guennadi Liakhovetski [Mon, 17 Sep 2012 10:48:33 +0000 (07:48 -0300)]
[media] sh-mobile-ceu-driver: support max width and height in DT

Some CEU implementations have non-standard (larger) maximum supported
width and height values. Add two OF properties to specify them.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] sh-mobile-ceu-camera: add primitive OF support
Guennadi Liakhovetski [Mon, 17 Sep 2012 10:42:55 +0000 (07:42 -0300)]
[media] sh-mobile-ceu-camera: add primitive OF support

Add an OF hook to sh_mobile_ceu_camera.c, no properties so far. Booting
with DT also requires platform data to be optional.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: don't attach the client to the host during probing
Guennadi Liakhovetski [Thu, 4 Apr 2013 17:21:54 +0000 (14:21 -0300)]
[media] soc-camera: don't attach the client to the host during probing

During client probing we only have to turn on the host's clock, no need to
actually attach the client to the host.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: make .clock_{start,stop} compulsory, .add / .remove optional
Guennadi Liakhovetski [Thu, 4 Apr 2013 16:19:58 +0000 (13:19 -0300)]
[media] soc-camera: make .clock_{start,stop} compulsory, .add / .remove optional

All existing soc-camera host drivers use .clock_start() and .clock_stop()
callbacks to activate and deactivate their camera interfaces, whereas
.add() and .remove() callbacks are usually dummy. Make the former two
compulsory and the latter two optional.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] sh-mobile-ceu-camera: move interface activation and deactivation to clock...
Guennadi Liakhovetski [Thu, 4 Apr 2013 15:54:20 +0000 (12:54 -0300)]
[media] sh-mobile-ceu-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the sh-mobile-ceu-camera driver activates
and, respectively, deactivates its camera interface and, if necessary, the
CSI2 controller. Only handling of the CSI2 interface is client-specific and
is only needed, when a data-exchange with the client is taking place. Move
the rest to .clock_start() and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] mx1-camera: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 15:06:32 +0000 (12:06 -0300)]
[media] mx1-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the mx1-camera driver only activates
and deactivates its camera interface respectively, which doesn't include
any client-specific actions. Move this functionality into .clock_start()
and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] mx2-camera: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 14:49:13 +0000 (11:49 -0300)]
[media] mx2-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the mx2-camera driver only activates
and deactivates its camera interface respectively, which doesn't include
any client-specific actions. Move this functionality into .clock_start()
and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] mx3-camera: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 14:24:43 +0000 (11:24 -0300)]
[media] mx3-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the mx3-camera driver only activates
and deactivates its camera interface respectively, which doesn't include
any client-specific actions. Move this functionality into .clock_start()
and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] atmel-isi: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 12:56:09 +0000 (09:56 -0300)]
[media] atmel-isi: move interface activation and deactivation to clock callbacks

When adding and removing a client, the atmel-isi camera host driver only
activates and deactivates its camera interface respectively, which doesn't
include any client-specific actions. Move this functionality into
.clock_start() and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] omap1-camera: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 12:38:00 +0000 (09:38 -0300)]
[media] omap1-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the omap1-camera driver only activates
and deactivates its camera interface respectively, which doesn't include
any client-specific actions. Move this functionality into .clock_start()
and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] pxa-camera: move interface activation and deactivation to clock callbacks
Guennadi Liakhovetski [Thu, 4 Apr 2013 11:56:00 +0000 (08:56 -0300)]
[media] pxa-camera: move interface activation and deactivation to clock callbacks

When adding and removing a client, the pxa-camera driver only activates
and deactivates its camera interface respectively, which doesn't include
any client-specific actions. Move this functionality into .clock_start()
and .clock_stop() callbacks.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: add host clock callbacks to start and stop the master clock
Guennadi Liakhovetski [Thu, 4 Apr 2013 11:51:36 +0000 (08:51 -0300)]
[media] soc-camera: add host clock callbacks to start and stop the master clock

Currently soc-camera uses a single camera host callback to activate the
interface master clock and to configure the interface for a specific
client. However, during probing we might not have the information about
a client, we just need to activate the clock. Add new camera host driver
callbacks to only start and stop the clock without and client-specific
configuration.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: move common code to soc_camera.c
Guennadi Liakhovetski [Thu, 4 Apr 2013 11:21:12 +0000 (08:21 -0300)]
[media] soc-camera: move common code to soc_camera.c

All soc-camera host drivers include a pointer to an soc-camera device in
their host private struct to check, that only one client is connected.
Move this common code to soc_camera.c.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] ttusb-budget: fix memory leak in ttusb_probe()
Alexey Khoroshilov [Mon, 10 Jun 2013 19:00:54 +0000 (16:00 -0300)]
[media] ttusb-budget: fix memory leak in ttusb_probe()

If something goes wrong starting from i2c_add_adapter(),
ttusb->iso_urb[] and ttusb itself are not deallocated.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] V4L2: soc-camera: remove unneeded include path
Guennadi Liakhovetski [Thu, 25 Apr 2013 11:05:15 +0000 (08:05 -0300)]
[media] V4L2: soc-camera: remove unneeded include path

soc-camera isn't sufficiently broken to include any files from the
drivers/media/i2c/soc_camera directory in its core or host driver files:-)

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: Cocci spatch "ptr_ret.spatch"
Thomas Meyer [Sat, 1 Jun 2013 09:56:26 +0000 (06:56 -0300)]
[media] media: Cocci spatch "ptr_ret.spatch"

Use the PTR_RET() macro to simplify error processing.

Signed-off-by: Thomas Meyer <thomas@m3y3r.de>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera: tw9910: Remove empty function
Sachin Kamat [Fri, 24 May 2013 11:25:07 +0000 (08:25 -0300)]
[media] soc_camera: tw9910: Remove empty function

After the switch to devm_* functions, the 'remove' function does
not do anything. Delete it.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Cc: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera: mt9t112: Remove empty function
Sachin Kamat [Fri, 24 May 2013 11:25:06 +0000 (08:25 -0300)]
[media] soc_camera: mt9t112: Remove empty function

After the switch to devm_* functions, the 'remove' function does
not do anything. Delete it.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Cc: Kuninori Morimoto <morimoto.kuninori@renesas.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera_platform: Remove redundant platform_set_drvdata()
Sachin Kamat [Mon, 13 May 2013 09:19:21 +0000 (06:19 -0300)]
[media] soc_camera_platform: Remove redundant platform_set_drvdata()

Commit 0998d06310 (device-core: Ensure drvdata = NULL when no
driver is bound) removes the need to set driver data field to
NULL.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
[g.liakhovetski@gmx.de: further simplified return statement]
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera/sh_mobile_csi2: Remove redundant platform_set_drvdata()
Sachin Kamat [Mon, 13 May 2013 09:19:20 +0000 (06:19 -0300)]
[media] soc_camera/sh_mobile_csi2: Remove redundant platform_set_drvdata()

Commit 0998d06310 (device-core: Ensure drvdata = NULL when no
driver is bound) removes the need to set driver data field to
NULL.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera: Fix checkpatch warning in ov9640.c
Sachin Kamat [Tue, 30 Apr 2013 09:29:09 +0000 (06:29 -0300)]
[media] soc_camera: Fix checkpatch warning in ov9640.c

Silences the following warning:
WARNING: please, no space before tabs

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera: Constify dev_pm_ops in mt9t031.c
Sachin Kamat [Tue, 30 Apr 2013 09:29:08 +0000 (06:29 -0300)]
[media] soc_camera: Constify dev_pm_ops in mt9t031.c

Silences the following warning:
WARNING: struct dev_pm_ops should normally be const

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc-camera: remove two unused configs
Paul Bolle [Tue, 9 Apr 2013 09:15:58 +0000 (06:15 -0300)]
[media] soc-camera: remove two unused configs

The last users of Kconfig symbols MX3_VIDEO and VIDEO_MX2_HOSTSUPPORT
were removed in v3.2. Their Kconfig entries can be removed now.

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] go7007: fix return 0 for unsupported devices in go7007_usb_probe()
Alexey Khoroshilov [Wed, 19 Jun 2013 19:57:40 +0000 (16:57 -0300)]
[media] go7007: fix return 0 for unsupported devices in go7007_usb_probe()

probe() should not return 0 for unsupported devices, but go7007_usb_probe() does.
The patch fixes it to return -ENODEV.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] usbtv: Add driver for Fushicai USBTV007 video frame grabber
Lubomir Rintel [Mon, 17 Jun 2013 13:29:06 +0000 (10:29 -0300)]
[media] usbtv: Add driver for Fushicai USBTV007 video frame grabber

Reverse-engineered driver for cheapo video digitizer, made from observations of
Windows XP driver. The protocol is not yet completely understood, so far we
don't provide any controls, only support a single format out of three and don't
support the audio device.

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: i2c: ths7303: remove unused member driver_data
Lad, Prabhakar [Sat, 15 Jun 2013 15:34:10 +0000 (12:34 -0300)]
[media] media: i2c: ths7303: remove unused member driver_data

This patch removes the driver_data member from ths7303_state structure.
The driver_data member was intended to differentiate between ths7303 and
ths7353 chip and get the g_chip_ident, But as of now g_chip_ident is
obsolete, so there is no need of driver_data.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] radio-sf16fmi: Set frequency during init
Ondrej Zary [Fri, 14 Jun 2013 20:01:39 +0000 (17:01 -0300)]
[media] radio-sf16fmi: Set frequency during init

Set freqency during initialization to fix v4l2-compliance error.
This also fixes VIDIOC_G_FREQUENCY always returning zero (broken by me during LM7000 conversion).

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>
11 years ago[media] radio-sf16fmi: Add module name to bus_info
Ondrej Zary [Fri, 14 Jun 2013 20:01:38 +0000 (17:01 -0300)]
[media] radio-sf16fmi: Add module name to bus_info

Fix v4l2-compliance in VIDIOC_QUERYCAP by changing "ISA" to "ISA:radio-sf16fmi".

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>
11 years ago[media] usbvision-video: fix memory leak of alt_max_pkt_size
Alexey Khoroshilov [Mon, 10 Jun 2013 20:32:29 +0000 (17:32 -0300)]
[media] usbvision-video: fix memory leak of alt_max_pkt_size

1. usbvision->alt_max_pkt_size is not deallocated anywhere.
2. if allocation of usbvision->alt_max_pkt_size fails,
there is no proper deallocation of already acquired resources.
The patch adds kfree(usbvision->alt_max_pkt_size) to
usbvision_release() as soon as other deallocations happen there.
It calls usbvision_release() if allocation of
usbvision->alt_max_pkt_size fails as soon as usbvision_release()
is safe to work with incompletely initialized usbvision structure.
Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: i2c: tvp514x: add OF support
Lad, Prabhakar [Tue, 4 Jun 2013 15:26:23 +0000 (12:26 -0300)]
[media] media: i2c: tvp514x: add OF support

add OF support for the tvp514x driver.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Sylwester Nawrocki <s.nawrocki@samsung.com>
Cc: Sakari Ailus <sakari.ailus@iki.fi>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Rob Herring <rob.herring@calxeda.com>
Cc: Rob Landley <rob@landley.net>
Cc: devicetree-discuss@lists.ozlabs.org
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: davinci-linux-open-source@linux.davincidsp.com
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_display: remove unnecessary loop for IRQ resource
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:51 +0000 (11:20 -0300)]
[media] media: davinci: vpif_display: remove unnecessary loop for IRQ resource

For vpif display driver each IRQ resource contains a single IRQ
so drop the second loop.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_display: Convert to devm_* api
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:50 +0000 (11:20 -0300)]
[media] media: davinci: vpif_display: Convert to devm_* api

use devm_request_irq() instead of request_irq(). This ensures
more consistent error values and simplifies error paths.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_display: use module_platform_driver()
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:49 +0000 (11:20 -0300)]
[media] media: davinci: vpif_display: use module_platform_driver()

This patch uses module_platform_driver() to simplify the code.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_display: move the freeing of irq and global variables...
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:48 +0000 (11:20 -0300)]
[media] media: davinci: vpif_display: move the freeing of irq and global variables to remove()

Ideally the freeing of irq's and the global variables needs to be
done in the remove() rather than module_exit(), this patch moves
the freeing up of irq's and freeing the memory allocated to channel
objects to remove() callback of struct platform_driver.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_capture: remove unnecessary loop for IRQ resource
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:47 +0000 (11:20 -0300)]
[media] media: davinci: vpif_capture: remove unnecessary loop for IRQ resource

For vpif capture driver each IRQ resource contains a single IRQ
so drop the second loop.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_capture: Convert to devm_* api
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:46 +0000 (11:20 -0300)]
[media] media: davinci: vpif_capture: Convert to devm_* api

use devm_request_irq() instead of request_irq(). This ensures
more consistent error values and simplifies error paths.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_capture: use module_platform_driver()
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:45 +0000 (11:20 -0300)]
[media] media: davinci: vpif_capture: use module_platform_driver()

This patch uses module_platform_driver() to simplify the code.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif_capture: move the freeing of irq and global variables...
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:44 +0000 (11:20 -0300)]
[media] media: davinci: vpif_capture: move the freeing of irq and global variables to remove()

Ideally the freeing of irq's and the global variables needs to be
done in the remove() rather than module_exit(), this patch moves
the freeing up of irq's and freeing the memory allocated to channel
objects to remove() callback of struct platform_driver.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif: remove unnecessary braces around defines
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:43 +0000 (11:20 -0300)]
[media] media: davinci: vpif: remove unnecessary braces around defines

This patch removes unnecessary braces around defines.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif: Convert to devm_* api
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:42 +0000 (11:20 -0300)]
[media] media: davinci: vpif: Convert to devm_* api

Use devm_ioremap_resource instead of reques_mem_region()/ioremap().
This ensures more consistent error values and simplifies error paths.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] media: davinci: vpif: remove unwanted header mach/hardware.h and sort the...
Lad, Prabhakar [Mon, 17 Jun 2013 14:20:41 +0000 (11:20 -0300)]
[media] media: davinci: vpif: remove unwanted header mach/hardware.h and sort the includes alphabetically

This patch removes unwanted header include of mach/hardware.h
and along side sorts the header inclusion alphabetically.

Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] pvrusb2: Remove unused variable
Mauro Carvalho Chehab [Fri, 21 Jun 2013 14:19:10 +0000 (11:19 -0300)]
[media] pvrusb2: Remove unused variable

drivers/media/usb/pvrusb2/pvrusb2-v4l2.c: In function 'pvr2_v4l2_dev_init':
drivers/media/usb/pvrusb2/pvrusb2-v4l2.c:1268:21: warning: variable 'usbdev' set but not used [-Wunused-but-set-variable]

This warning is due to changeset a28fbd04facb, with removed the
usage of usbdev inside pvr2_v4l2_dev_init().

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Hans Verkuil <hans.verkuil@cisco.com>
Cc: Mike Isely <isely@pobox.com>
11 years ago[media] v4l2-framework: update documentation
Hans Verkuil [Wed, 12 Jun 2013 14:28:08 +0000 (11:28 -0300)]
[media] v4l2-framework: update documentation

'parent' was renamed to 'dev_parent'. Clarify how/when this should be used.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] cx88: set dev_parent to the correct parent PCI bus
Hans Verkuil [Wed, 12 Jun 2013 14:23:44 +0000 (11:23 -0300)]
[media] cx88: set dev_parent to the correct parent PCI bus

The cx88 driver has one v4l2_device, but the video nodes are owned by two
different PCI busses. So the dev_parent pointer should be set to the correct
parent bus, otherwise sysfs won't show the correct device hierarchy.
This broke starting in 3.6 after a driver change, so this patch resurrects
the correct behavior.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] v4l2: always require v4l2_dev, rename parent to dev_parent
Hans Verkuil [Wed, 12 Jun 2013 14:15:12 +0000 (11:15 -0300)]
[media] v4l2: always require v4l2_dev, rename parent to dev_parent

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: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] saa7134: use v4l2_dev instead of the deprecated parent field
Hans Verkuil [Thu, 20 Jun 2013 13:57:10 +0000 (10:57 -0300)]
[media] saa7134: use v4l2_dev instead of the deprecated parent field

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] omap24xxcam: add v4l2_device and replace parent with v4l2_dev
Hans Verkuil [Wed, 12 Jun 2013 09:03:27 +0000 (06:03 -0300)]
[media] omap24xxcam: add v4l2_device and replace parent with v4l2_dev

This driver did not yet support struct v4l2_device, so add it. This
make it possible to replace the deprecated parent field with the
v4l2_dev field, allowing the eventual removal of the parent field.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] f_uvc: add v4l2_device and replace parent with v4l2_dev
Hans Verkuil [Wed, 12 Jun 2013 09:02:38 +0000 (06:02 -0300)]
[media] f_uvc: add v4l2_device and replace parent with v4l2_dev

This driver did not yet support struct v4l2_device, so add it. This
make it possible to replace the deprecated parent field with the
v4l2_dev field, allowing the eventual removal of the parent field.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] pvrusb2: use v4l2_dev instead of the deprecated parent field
Hans Verkuil [Mon, 10 Jun 2013 12:16:25 +0000 (09:16 -0300)]
[media] pvrusb2: use v4l2_dev instead of the deprecated parent field

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] saa7164: add v4l2_device and replace parent with v4l2_dev
Hans Verkuil [Wed, 12 Jun 2013 08:49:50 +0000 (05:49 -0300)]
[media] saa7164: add v4l2_device and replace parent with v4l2_dev

This driver did not yet support struct v4l2_device, so add it. This
make it possible to replace the deprecated parent field with the
v4l2_dev field, allowing the eventual removal of the parent field.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] sn9c102_core: add v4l2_device and replace parent with v4l2_dev
Hans Verkuil [Wed, 12 Jun 2013 08:46:30 +0000 (05:46 -0300)]
[media] sn9c102_core: add v4l2_device and replace parent with v4l2_dev

This driver did not yet support struct v4l2_device, so add it. This
make it possible to replace the deprecated parent field with the
v4l2_dev field, allowing the eventual removal of the parent field.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] zoran: use v4l2_dev instead of the deprecated parent field
Hans Verkuil [Mon, 10 Jun 2013 10:30:08 +0000 (07:30 -0300)]
[media] zoran: use v4l2_dev instead of the deprecated parent field

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] cx23885-417: use v4l2_dev instead of the deprecated parent field
Hans Verkuil [Mon, 10 Jun 2013 10:27:37 +0000 (07:27 -0300)]
[media] cx23885-417: use v4l2_dev instead of the deprecated parent field

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] soc_camera: replace vdev->parent by vdev->v4l2_dev
Hans Verkuil [Mon, 10 Jun 2013 12:27:41 +0000 (09:27 -0300)]
[media] soc_camera: replace vdev->parent by vdev->v4l2_dev

The parent field will eventually disappear to be replaced by v4l2_dev.
soc_camera does provide a v4l2_device struct but did not point to it in
struct video_device. This is now fixed.
Now the video nodes can be found under the correct platform bus, and
the advanced debug ioctls work correctly as well (the core implementation
of those ioctls requires that v4l2_dev is set correctly).

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] v4l2-device: check if already unregistered
Hans Verkuil [Wed, 12 Jun 2013 09:04:04 +0000 (06:04 -0300)]
[media] v4l2-device: check if already unregistered

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: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] cx88: fix register mask
Hans Verkuil [Wed, 29 May 2013 09:22:02 +0000 (06:22 -0300)]
[media] 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>
11 years ago[media] DocBook: remove obsolete note from the dbg_g_register doc
Hans Verkuil [Sun, 26 May 2013 13:31:01 +0000 (10:31 -0300)]
[media] DocBook: remove obsolete note from the dbg_g_register doc

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] DocBook: remove references to the dropped VIDIOC_DBG_G_CHIP_IDENT ioctl
Hans Verkuil [Sun, 26 May 2013 12:45:23 +0000 (09:45 -0300)]
[media] DocBook: remove references to the dropped VIDIOC_DBG_G_CHIP_IDENT ioctl

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>
11 years ago[media] v4l2-core: remove support for obsolete VIDIOC_DBG_G_CHIP_IDENT
Hans Verkuil [Sun, 26 May 2013 13:03:01 +0000 (10:03 -0300)]
[media] v4l2-core: remove support for obsolete VIDIOC_DBG_G_CHIP_IDENT

This has been replaced by the new and much better VIDIOC_DBG_G_CHIP_INFO.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
11 years ago[media] v4l2-int-device: remove unused chip_ident reference
Hans Verkuil [Sun, 26 May 2013 12:33:00 +0000 (09:33 -0300)]
[media] v4l2-int-device: remove unused chip_ident reference

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>