platform/kernel/linux-arm64.git
12 years ago[media] drivers/media/dvb-frontends/dvb_dummy_fe.c: Removes useless kfree()
Peter Senna Tschudin [Wed, 12 Sep 2012 11:56:04 +0000 (08:56 -0300)]
[media] drivers/media/dvb-frontends/dvb_dummy_fe.c: Removes useless kfree()

Remove useless kfree() and clean up code related to the removal.
The semantic patch that finds this problem is as follows:
(http://coccinelle.lip6.fr/)
// <smpl>
@r exists@
position p1,p2;
expression x;
@@
if (x@p1 == NULL) { ... kfree@p2(x); ... return ...; }
@unchanged exists@
position r.p1,r.p2;
expression e <= r.x,x,e1;
iterator I;
statement S;
@@
if (x@p1 == NULL) { ... when != I(x,...) S
                        when != e = e1
                        when != e += e1
                        when != e -= e1
                        when != ++e
                        when != --e
                        when != e++
                        when != e--
                        when != &e
   kfree@p2(x); ... return ...; }
@ok depends on unchanged exists@
position any r.p1;
position r.p2;
expression x;
@@
... when != true x@p1 == NULL
kfree@p2(x);
@depends on !ok && unchanged@
position r.p2;
expression x;
@@
*kfree@p2(x);
// </smpl>

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] rc-core: fix return codes in ir_lirc_ioctl()
Dan Carpenter [Tue, 11 Sep 2012 10:11:53 +0000 (07:11 -0300)]
[media] rc-core: fix return codes in ir_lirc_ioctl()

These should be -ENOSYS because not -EINVAL.

Reported-by: Sean Young <sean@mess.org>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] rc: divide by zero bugs in s_tx_carrier()
Dan Carpenter [Tue, 11 Sep 2012 10:11:24 +0000 (07:11 -0300)]
[media] rc: divide by zero bugs in s_tx_carrier()

"carrier" comes from a get_user() in ir_lirc_ioctl().  We need to test
that it's not zero before using it as a divisor.  It might have been
nice to test for this ir_lirc_ioctl() but the mceusb driver uses zero to
disable carrier modulation.
The bug in redrat3 is a little more subtle.  The ->carrier is passed to
mod_freq_to_val() which uses it as a divisor.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] ov2640: select sensor register bank before applying h/v-flip settings
Frank Schäfer [Sun, 23 Sep 2012 20:16:34 +0000 (17:16 -0300)]
[media] ov2640: select sensor register bank before applying h/v-flip settings

We currently don't select the register bank in ov2640_s_ctrl, so we can end up
writing to DSP register 0x04 instead of sensor register 0x04.
This happens for example when calling ov2640_s_ctrl after ov2640_s_fmt.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/platform/soc_camera/soc_camera.c: fix error return code
Peter Senna Tschudin [Thu, 6 Sep 2012 15:24:00 +0000 (12:24 -0300)]
[media] drivers/media/platform/soc_camera/soc_camera.c: fix error return code

Convert a nonnegative error return code to a negative one, as returned
elsewhere in the function.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)
// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
[g.liakhovetski@gmx.de: follow the soc_camera.c style: check "ret < 0"]
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/platform/soc_camera/mx2_camera.c: fix error return code
Peter Senna Tschudin [Mon, 24 Sep 2012 09:11:03 +0000 (06:11 -0300)]
[media] drivers/media/platform/soc_camera/mx2_camera.c: fix error return code

Convert a nonnegative error return code to a negative one, as returned
elsewhere in the function.
A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)
// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}
// </smpl>

[mchehab@redhat.com: Second hunk removed, as it doesn't apply anymore,
 due to a merge conflict]
Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] soc_camera: Use devm_kzalloc function
Sachin Kamat [Wed, 5 Sep 2012 11:25:26 +0000 (08:25 -0300)]
[media] soc_camera: Use devm_kzalloc function

devm_kzalloc() has been used to simplify error handling.
While at it, the soc_camera_device_register function has been moved to
save a few lines of code and a variable.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
[g.liakhovetski@gmx.de: remove a superfluous empty line]
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] soc_camera: Use module_platform_driver macro
Sachin Kamat [Wed, 5 Sep 2012 11:25:27 +0000 (08:25 -0300)]
[media] soc_camera: Use module_platform_driver macro

module_platform_driver simplifies the code by eliminating
module_init and module_exit calls.

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>
12 years ago[media] media: mx2_camera: Don't modify non volatile parameters in try_fmt
Javier Martin [Mon, 20 Aug 2012 09:49:24 +0000 (06:49 -0300)]
[media] media: mx2_camera: Don't modify non volatile parameters in try_fmt

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
[g.liakhovetski@gmx.de: also don't clear pcdev->resizing in .try_fmt()]
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] soc-camera: Use new selection target definitions
Sylwester Nawrocki [Wed, 22 Aug 2012 21:03:30 +0000 (18:03 -0300)]
[media] soc-camera: Use new selection target definitions

Replace the deprecated V4L2_SEL_TGT_*_ACTIVE selection target
names with their new unified counterparts.
Compatibility definitions are already in linux/v4l2-common.h.

Signed-off-by: Sylwester Nawrocki <sylvester.nawrocki@gmail.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/radio/si4713-i2c.c: removes unnecessary semicolon
Peter Senna Tschudin [Thu, 6 Sep 2012 15:09:11 +0000 (12:09 -0300)]
[media] drivers/media/radio/si4713-i2c.c: removes unnecessary semicolon

removes unnecessary semicolon
Found by Coccinelle: http://coccinelle.lip6.fr/

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/dvb-frontends/sp8870.c: removes unnecessary semicolon
Peter Senna Tschudin [Thu, 6 Sep 2012 15:09:12 +0000 (12:09 -0300)]
[media] drivers/media/dvb-frontends/sp8870.c: removes unnecessary semicolon

removes unnecessary semicolon
Found by Coccinelle: http://coccinelle.lip6.fr/

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/dvb-frontends/itd1000.c: removes unnecessary semicolon
Peter Senna Tschudin [Thu, 6 Sep 2012 15:09:13 +0000 (12:09 -0300)]
[media] drivers/media/dvb-frontends/itd1000.c: removes unnecessary semicolon

removes unnecessary semicolon
Found by Coccinelle: http://coccinelle.lip6.fr/

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] drivers/media/pci/cx88/cx88-blackbird.c: removes unnecessary semicolon
Peter Senna Tschudin [Thu, 6 Sep 2012 15:09:14 +0000 (12:09 -0300)]
[media] drivers/media/pci/cx88/cx88-blackbird.c: removes unnecessary semicolon

removes unnecessary semicolon
Found by Coccinelle: http://coccinelle.lip6.fr/

Signed-off-by: Peter Senna Tschudin <peter.senna@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] Mygica X8507 audio for YPbPr, AV and S-Video
Alfredo Jesús Delaiti [Fri, 21 Sep 2012 13:33:51 +0000 (10:33 -0300)]
[media] Mygica X8507 audio for YPbPr, AV and S-Video

Adds audio support for input YPbPr, AV and S-Video on Mygica X8507 card.

Remains to be done: IR, FM and ISDBT

Signed-off-by: Alfredo J. Delaiti <alfredodelaiti@netscape.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] cxd2820r: silence compiler warning
Antti Palosaari [Fri, 5 Oct 2012 21:50:12 +0000 (18:50 -0300)]
[media] cxd2820r: silence compiler warning

drivers/media/dvb-frontends/cxd2820r_core.c: In function 'cxd2820r_attach':
drivers/media/dvb-frontends/cxd2820r_core.c:691:10: warning: unused variable 'gpio' [-Wunused-variable]

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: s5p-hdmi: add HPD GPIO to platform data
Tomasz Stanislawski [Thu, 4 Oct 2012 15:42:39 +0000 (12:42 -0300)]
[media] media: s5p-hdmi: add HPD GPIO to platform data

This patch extends s5p-hdmi platform data by a GPIO identifier for
Hot-Plug-Detection pin.

Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: Set vfl_dir for encoder
Arun Kumar K [Thu, 4 Oct 2012 19:14:56 +0000 (16:14 -0300)]
[media] s5p-mfc: Set vfl_dir for encoder

The vfl_dir flag is presently set to VFL_DIR_M2M only for decoder.
The encoder is not working because of this. So adding this flag
to the encoder part also.

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: Update MFC v4l2 driver to support MFC6.x
Jeongtae Park [Thu, 4 Oct 2012 01:19:11 +0000 (22:19 -0300)]
[media] s5p-mfc: Update MFC v4l2 driver to support MFC6.x

Multi Format Codec 6.x is a hardware video coding acceleration
module present in new Exynos5 SoC series. It is capable of
handling several new video codecs for decoding and encoding.

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
Signed-off-by: Janghyuck Kim <janghyuck.kim@samsung.com>
Signed-off-by: Jaeryul Oh <jaeryul.oh@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: MFCv6 register definitions
Jeongtae Park [Thu, 4 Oct 2012 01:19:10 +0000 (22:19 -0300)]
[media] s5p-mfc: MFCv6 register definitions

Adds register definitions for MFC v6.x firmware

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
Signed-off-by: Janghyuck Kim <janghyuck.kim@samsung.com>
Signed-off-by: Jaeryul Oh <jaeryul.oh@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: Add MFC variant data to device context
Arun Kumar K [Thu, 4 Oct 2012 01:19:09 +0000 (22:19 -0300)]
[media] s5p-mfc: Add MFC variant data to device context

MFC variant data replaces various macros used in the driver
which will change in a different version of MFC hardware.
Also does a cleanup of MFC context structure and common files.

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
Signed-off-by: Janghyuck Kim <janghyuck.kim@samsung.com>
Signed-off-by: Jaeryul Oh <jaeryul.oh@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: Update MFCv5 driver for callback based architecture
Arun Kumar K [Thu, 4 Oct 2012 01:19:08 +0000 (22:19 -0300)]
[media] s5p-mfc: Update MFCv5 driver for callback based architecture

Modifies the driver to use a callback based architecture
for hardware dependent calls. This architecture is suitable
for supporting co-existence with newer versions of MFC hardware.

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: Prepare driver for callback based re-architecture
Arun Kumar K [Thu, 4 Oct 2012 01:19:07 +0000 (22:19 -0300)]
[media] s5p-mfc: Prepare driver for callback based re-architecture

The patch renames hardware specific opr and cmd files to
opr_v5 and cmd_v5 respectively. This is done for accomodating
firmware v6. Also the shared memory management files are removed
and the functionality is added to the opr_v5 file.

Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] v4l: Add control definitions for new H264 encoder features
Arun Kumar K [Thu, 4 Oct 2012 01:19:06 +0000 (22:19 -0300)]
[media] v4l: Add control definitions for new H264 encoder features

New controls are added for supporting H264 encoding features like:
 - MVC frame packing,
 - flexible macroblock ordering,
 - arbitrary slice ordering,
 - hierarchical coding.

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] v4l: Add fourcc definitions for new formats
Arun Kumar K [Thu, 4 Oct 2012 01:19:05 +0000 (22:19 -0300)]
[media] v4l: Add fourcc definitions for new formats

Add the following new fourcc definitions, for multiplanar YCbCr:
V4L2_PIX_FMT_NV21M, V4L2_PIX_FMT_NV12MT_16X16 and compressed formats:
V4L2_PIX_FMT_H264_MVC, V4L2_PIX_FMT_VP8.

Signed-off-by: Jeongtae Park <jtp.park@samsung.com>
Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com>
Signed-off-by: Arun Kumar K <arun.kk@samsung.com>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-csis: Allow to specify pixel clock's source through platform data
Sylwester Nawrocki [Mon, 17 Sep 2012 09:03:38 +0000 (06:03 -0300)]
[media] s5p-csis: Allow to specify pixel clock's source through platform data

Depending on the sensor configuration it might be required to adjust
the CSIS's output pixel clock so it is greater than its input pixel
clock, in order to avoid the input data FIFO overflow.
Use platform data to select SCLK_CSIS clock from CMU as a source, rather
than CSI APB clock.

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>
12 years ago[media] s5p-fimc: Remove unused platform data structure fields
Sylwester Nawrocki [Mon, 17 Sep 2012 09:03:25 +0000 (06:03 -0300)]
[media] s5p-fimc: Remove unused platform data structure fields

alignment, fixed_phy_vdd and phy_enable fields are now unused
so removed them. The data alignment is now derived directly
from media bus pixel code, phy_enable callback has been replaced
with direct function call and fixed_phy_vdd was dropped in commit
438df3ebe5f0ce408490a777a758d5905f0dd58f
"[media] s5p-csis: Handle all available power supplies".

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>
12 years ago[media] s5p-csis: Replace phy_enable platform data callback with direct call
Sylwester Nawrocki [Mon, 17 Sep 2012 09:03:10 +0000 (06:03 -0300)]
[media] s5p-csis: Replace phy_enable platform data callback with direct call

The phy_enable callback is common for all Samsung SoC platforms,
replace it with direct function call so the MIPI-CSI2 DPHY control
is also possible on device tree instantiated platforms.

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>
12 years agoMerge branch 'samsung_platform_data' into staging/for_v3.7
Mauro Carvalho Chehab [Sat, 6 Oct 2012 01:32:05 +0000 (22:32 -0300)]
Merge branch 'samsung_platform_data' into staging/for_v3.7

* samsung_platform_data:
  ARM: samsung: move platform_data definitions
  ARM: orion: move platform_data definitions
  ARM: nomadik: move platform_data definitions
  ARM: w90x900: move platform_data definitions
  ARM: vt8500: move platform_data definitions
  ARM: tegra: move sdhci platform_data definition
  ARM: sa1100: move platform_data definitions
  ARM: pxa: move platform_data definitions
  ARM: netx: move platform_data definitions
  ARM: msm: move platform_data definitions
  ARM: imx: move platform_data definitions
  ARM: ep93xx: move platform_data definitions
  ARM: davinci: move platform_data definitions
  ARM: at91: move platform_data definitions

12 years ago[media] ARM: EXYNOS: Change MIPI-CSIS device regulator supply names
Sylwester Nawrocki [Mon, 17 Sep 2012 09:04:12 +0000 (06:04 -0300)]
[media] ARM: EXYNOS: Change MIPI-CSIS device regulator supply names

Rename MIPI-CSIS regulator supply names to match definitions in
the driver after commit "s5p-csis: Change regulator supply names".

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-csis: Change regulator supply names
Sylwester Nawrocki [Mon, 17 Sep 2012 09:03:50 +0000 (06:03 -0300)]
[media] s5p-csis: Change regulator supply names

Rename the regulator supply names to more meaningful ones.
It's a prerequisite for adding device tree support.

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>
12 years ago[media] ARM: samsung: Change __s5p_mipi_phy_control() function signature
Sylwester Nawrocki [Mon, 17 Sep 2012 09:02:48 +0000 (06:02 -0300)]
[media] ARM: samsung: Change __s5p_mipi_phy_control() function signature

Replace pdev argument __s5p_mipi_phy_control() helper with plain int
so MIPI-CSIS hardware instance index can be passed directly making
the function usable on platforms instantiated from device tree.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] ARM: samsung: Remove unused fields from FIMC and CSIS platform data
Sylwester Nawrocki [Mon, 17 Sep 2012 09:02:31 +0000 (06:02 -0300)]
[media] ARM: samsung: Remove unused fields from FIMC and CSIS platform data

The MIPI-CSI2 bus data alignment is now being derived from the media
bus pixel code, the drivers don't use the corresponding structure
fields, so remove them. Also remove the s5p_csis_phy_enable callback
which is now used directly by s5p-csis driver.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] DocBook: various updates w.r.t. v4l2_buffer and multiplanar
Hans Verkuil [Wed, 19 Sep 2012 14:14:39 +0000 (11:14 -0300)]
[media] DocBook: various updates w.r.t. v4l2_buffer and multiplanar

Clarify the behavior of v4l2_buffer in the multiplanar case,
including fixing a false statement: you can't set m.planes to NULL
when calling DQBUF.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] v4l2-ioctl.c: handle PREPARE_BUF like QUERYBUF
Hans Verkuil [Wed, 19 Sep 2012 13:14:41 +0000 (10:14 -0300)]
[media] v4l2-ioctl.c: handle PREPARE_BUF like QUERYBUF

The core code for PREPARE_BUF didn't take the multiplanar case into account,
which might cause page faults. Handle PREPARE_BUF just like QUERYBUF and
QBUF/DQBUF.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] videobuf2-core: fill in length field for multiplanar buffers
Hans Verkuil [Fri, 28 Sep 2012 09:24:18 +0000 (06:24 -0300)]
[media] videobuf2-core: fill in length field for multiplanar buffers

length should be set to num_planes in __fill_v4l2_buffer(). That way the
caller knows how many planes there are in the buffer.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] videobuf2-core: move plane verification out of __fill_v4l2/vb_buffer
Hans Verkuil [Fri, 28 Sep 2012 09:12:53 +0000 (06:12 -0300)]
[media] videobuf2-core: move plane verification out of __fill_v4l2/vb_buffer

The plane verification should be done before actually queuing or
dequeuing buffers, so move it out of __fill_v4l2_buffer and __fill_vb_buffer
and call it as a separate step.
This also makes it possible to change the return type of __fill_v4l2/vb_buffer
to void.
The dqbuf case took some special care: before removing a buffer from the
done_list you have to verify that the receiving v4l2_buffer has enough room
for all the planes. The number of planes can differ between buffers due to the
fact that buffers for other formats can be prepared using VIDIOC_PREPARE_BUF.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Tested-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpif: set device capabilities
Lad, Prabhakar [Tue, 25 Sep 2012 14:21:55 +0000 (11:21 -0300)]
[media] media: davinci: vpif: set device capabilities

set device_caps and also change the driver and
bus_info to proper values as per standard.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpif: Add return code check at vb2_queue_init()
Lad, Prabhakar [Wed, 3 Oct 2012 13:01:07 +0000 (10:01 -0300)]
[media] media: davinci: vpif: Add return code check at vb2_queue_init()

from commit with id 896f38f582730a19eb49677105b4fe4c0270b82e
it's mandatory to check the return code of vb2_queue_init().

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpif: display: separate out subdev from output
Lad, Prabhakar [Tue, 25 Sep 2012 11:11:49 +0000 (08:11 -0300)]
[media] media: davinci: vpif: display: separate out subdev from output

vpif_display relied on a 1-1 mapping of output and subdev. This is not
necessarily the case. Separate the two. So there is a list of subdevs
and a list of outputs. Each output refers to a subdev and has routing
information. An output does not have to have a subdev.
The initial output for each channel is set to the fist output.
Currently missing is support for associating multiple subdevs with
an output.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] tvp514x: s_routing should just change routing, not try to detect a signal
Hans Verkuil [Thu, 20 Sep 2012 12:06:33 +0000 (09:06 -0300)]
[media] tvp514x: s_routing should just change routing, not try to detect a signal

The s_routing function should not try to detect a signal. It is a really
bad idea to try to detect a valid video signal and return an error if
you can't. Changing input should do just that and nothing more.
Also don't power on the ADCs on s_routing, instead do that on querystd.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] davinci: move struct vpif_interface to chan_cfg
Hans Verkuil [Thu, 20 Sep 2012 12:06:32 +0000 (09:06 -0300)]
[media] davinci: move struct vpif_interface to chan_cfg

struct vpif_interface is channel specific, not subdev specific.
Move it to the channel config.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_display: use a v4l2_subdev pointer to call a subdev
Hans Verkuil [Thu, 20 Sep 2012 12:06:31 +0000 (09:06 -0300)]
[media] vpif_display: use a v4l2_subdev pointer to call a subdev

This makes it easier to have outputs without subdevs.
This needs more work. The way the outputs are configured should be identical
to how inputs are configured.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: separate subdev from input
Hans Verkuil [Thu, 20 Sep 2012 12:06:30 +0000 (09:06 -0300)]
[media] vpif_capture: separate subdev from input

vpif_capture relied on a 1-1 mapping of input and subdev. This is not
necessarily the case. Separate the two. So there is a list of subdevs
and a list of inputs. Each input refers to a subdev and has routing
information. An input does not have to have a subdev.
The initial input for each channel is set to the fist input.
Currently missing is support for associating multiple subdevs with
an input.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: fix cleanup code
Hans Verkuil [Thu, 20 Sep 2012 12:06:29 +0000 (09:06 -0300)]
[media] vpif_capture: fix cleanup code

The cleanup sequence was incorrect and could cause a kernel oops.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_display: fix cleanup code
Hans Verkuil [Thu, 20 Sep 2012 12:06:28 +0000 (09:06 -0300)]
[media] vpif_display: fix cleanup code

The cleanup sequence was incorrect and could cause a kernel oops.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_display: first init subdevs, then register device nodes
Hans Verkuil [Thu, 20 Sep 2012 12:06:27 +0000 (09:06 -0300)]
[media] vpif_display: first init subdevs, then register device nodes

When device nodes are registered they must be ready for use
immediately, so make sure the subdevs are loaded first.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: first init subdevs, then register device nodes
Hans Verkuil [Thu, 20 Sep 2012 12:06:26 +0000 (09:06 -0300)]
[media] vpif_capture: first init subdevs, then register device nodes

When device nodes are registered they must be ready for use
immediately, so make sure the subdevs are loaded first.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: move routing info from subdev to input
Hans Verkuil [Thu, 20 Sep 2012 12:06:25 +0000 (09:06 -0300)]
[media] vpif_capture: move routing info from subdev to input

Routing information is a property of the input, not of the subdev.
One subdev may provide multiple inputs, each with its own routing
information.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: remove unnecessary can_route flag
Hans Verkuil [Thu, 20 Sep 2012 12:06:24 +0000 (09:06 -0300)]
[media] vpif_capture: remove unnecessary can_route flag

Calling a subdev op that isn't implemented will just return -ENOIOCTLCMD
No need to have a flag for that.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_display: move output_id to channel_obj
Hans Verkuil [Thu, 20 Sep 2012 12:06:23 +0000 (09:06 -0300)]
[media] vpif_display: move output_id to channel_obj

The output index does not belong to video_obj, it belongs to
channel_obj. Also rename to output_idx to be consistent with
the input_idx name used in vpif_capture.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: move input_idx to channel_obj
Hans Verkuil [Thu, 20 Sep 2012 12:06:22 +0000 (09:06 -0300)]
[media] vpif_capture: move input_idx to channel_obj

input_idx does not belong to video_obj. Move it where it belongs.
Also remove the bogus code in the open() function that suddenly
changes the input to 0 for no reason.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_display: remove unused data structures
Hans Verkuil [Thu, 20 Sep 2012 12:06:21 +0000 (09:06 -0300)]
[media] vpif_display: remove unused data structures

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] vpif_capture: remove unused data structure
Hans Verkuil [Thu, 20 Sep 2012 12:06:20 +0000 (09:06 -0300)]
[media] vpif_capture: remove unused data structure

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Tested-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] ARM: davinci: da850 evm: Add EVM specific code for VPIF to work
Manjunath Hadli [Mon, 23 Jul 2012 11:00:58 +0000 (08:00 -0300)]
[media] ARM: davinci: da850 evm: Add EVM specific code for VPIF to work

Include the expander settings to select VPIF peripheral on
UI card and add registration call in EVM init. Also add platform
data to configure display and capture devices.

Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] ARM: davinci: da850: Add SoC related definitions for VPIF
Manjunath Hadli [Mon, 23 Jan 2012 09:17:24 +0000 (06:17 -0300)]
[media] ARM: davinci: da850: Add SoC related definitions for VPIF

Add clock, pin mux definitions and registration function for
VPIF capture and display driver on DA850/OMAP-L138 SoC.

Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpif: add check for NULL handler
Lad, Prabhakar [Thu, 27 Sep 2012 05:33:12 +0000 (02:33 -0300)]
[media] media: davinci: vpif: add check for NULL handler

for da850/omap-l138, there is no need to setup_input_channel_mode()
and set_clock(), to avoid adding dummy code in board file just returning
zero add a check in the driver itself to call the handler only if its
not NULL.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] fsl-viu: fix compiler warning
Hans Verkuil [Tue, 4 Sep 2012 13:26:45 +0000 (10:26 -0300)]
[media] fsl-viu: fix compiler warning

drivers/media/platform/fsl-viu.c: In function 'vidioc_s_fbuf':
drivers/media/platform/fsl-viu.c:867:32: warning: initialization discards 'const' qualifier from pointer target type [enabled by default]
This is fall-out from this commit:
commit e6eb28c2207b9397d0ab56e238865a4ee95b7ef9
Author: Hans Verkuil <hans.verkuil@cisco.com>
    [media] v4l2: make vidioc_s_fbuf const

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: mt9p031/mt9t001/mt9v032: use V4L2_CID_TEST_PATTERN for test pattern...
Lad, Prabhakar [Tue, 25 Sep 2012 12:35:43 +0000 (09:35 -0300)]
[media] media: mt9p031/mt9t001/mt9v032: use V4L2_CID_TEST_PATTERN for test pattern control

V4L2_CID_TEST_PATTERN is now a standard control.
This patch replaces the user defined control for test
pattern to make use of standard control V4L2_CID_TEST_PATTERN.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: v4l2-ctrl: add a helper function to add standard control with driver...
Lad, Prabhakar [Tue, 18 Sep 2012 18:54:38 +0000 (15:54 -0300)]
[media] media: v4l2-ctrl: add a helper function to add standard control with driver specific menu

Add helper function v4l2_ctrl_new_std_menu_items(), which adds
a standard menu control, with driver specific menu.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
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>
12 years ago[media] media: v4l2-ctrls: add control for test pattern
Lad, Prabhakar [Mon, 1 Oct 2012 11:17:36 +0000 (08:17 -0300)]
[media] media: v4l2-ctrls: add control for test pattern

add V4L2_CID_TEST_PATTERN of type menu, which determines
the internal test pattern selected by the device.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Sakari Ailus <sakari.ailus@iki.fi>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] m5mols: Implement .get_frame_desc subdev callback
Sylwester Nawrocki [Tue, 18 Sep 2012 09:18:43 +0000 (06:18 -0300)]
[media] m5mols: Implement .get_frame_desc subdev callback

.get_frame_desc can be used by host interface driver to query
properties of captured frames, e.g. required memory buffer size.

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>
12 years ago[media] s5p-fimc: Add support for V4L2_PIX_FMT_S5C_UYVY_JPG fourcc
Sylwester Nawrocki [Mon, 24 Sep 2012 14:08:45 +0000 (11:08 -0300)]
[media] s5p-fimc: Add support for V4L2_PIX_FMT_S5C_UYVY_JPG fourcc

The V4L2_PIX_FMT_S5C_YUYV_JPG image formats consists of 2 planes, the
first containing interleaved JPEG/YUYV data and the second containing
meta data describing the interleaving method.
The image data is transferred with MIPI-CSI "User Defined Byte-Based
Data 1" type and is captured to memory by FIMC DMA engine.
The meta data is transferred using MIPI-CSI2 "Embedded 8-bit non Image
Data" and it is captured in the MIPI-CSI slave device and copied to
the bridge provided buffer.
To make sure the size of allocated buffers is correct for the subdevs
configuration when VIDIOC_STREAMON ioctl is invoked, an additional
check is added at the video pipeline validation function.
Flag FMT_FLAGS_COMPRESSED indicates the buffer size must be retrieved
from a sensor subdev.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-csis: Add support for non-image data packets capture
Sylwester Nawrocki [Fri, 21 Sep 2012 18:18:41 +0000 (15:18 -0300)]
[media] s5p-csis: Add support for non-image data packets capture

MIPI-CSI has internal memory mapped buffers for the frame embedded
(non-image) data. There are two buffers, for even and odd frames which
need to be saved after an interrupt is raised. The packet data buffers
size is 4 KiB and there is no status register in the hardware where the
actual non-image data size can be read from. Hence the driver copies
whole packet data buffer into a buffer provided by the FIMC driver.
This will form a separate plane in the user buffer.
When FIMC DMA engine is stopped by the driver due the to user space
not keeping up with buffer de-queuing the MIPI-CSIS will still run,
however it must discard data which is not captured by FIMC. Which
frames are actually capture by MIPI-CSIS is determined by means of
the s_tx_buffer subdev callback. When it is not called after a single
embedded data frame has been captured and copied and before next
embedded data frame interrupt occurrs, subsequent embedded data frames
will be dropped.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] V4L: Add V4L2_PIX_FMT_S5C_UYVY_JPG fourcc definition
Sylwester Nawrocki [Wed, 3 Oct 2012 10:44:53 +0000 (07:44 -0300)]
[media] V4L: Add V4L2_PIX_FMT_S5C_UYVY_JPG fourcc definition

This patch adds definition of the Samsung S5C73M3 camera specific
image format. V4L2_PIX_FMT_S5C_UYVY_JPG is a two-planar format,
the  first plane contains interleaved UYVY and JPEG data followed
by meta-data. The second plane contains additional meta-data needed
for extracting JPEG and UYVY data stream from the first plane.

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>
12 years ago[media] V4L: Add V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8 media bus format
Sylwester Nawrocki [Thu, 16 Feb 2012 17:23:54 +0000 (14:23 -0300)]
[media] V4L: Add V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8 media bus format

This patch adds media bus pixel code for the interleaved JPEG/UYVY
image format used by S5C73MX Samsung cameras. This interleaved image
data is transferred on MIPI-CSI2 bus as User Defined Byte-based Data.
It also defines an experimental vendor and device specific media bus
formats section and adds related DocBook documentation.

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>
12 years ago[media] V4L: Add [get/set]_frame_desc subdev callbacks
Sylwester Nawrocki [Thu, 17 May 2012 17:33:30 +0000 (14:33 -0300)]
[media] V4L: Add [get/set]_frame_desc subdev callbacks

Add subdev callbacks for setting up parameters of the frame on media bus
that are not exposed to user space directly. This is just an initial,
mostly stub implementation. struct v4l2_mbus_frame_desc is intended
to be extended with sub-structures specific to a particular hardware media
bus. For now these new callbacks are used only to query or specify maximum
size of a compressed or hybrid (container) media bus frame in octets.

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>
12 years ago[media] V4L: Add s_rx_buffer subdev video operation
Sylwester Nawrocki [Thu, 13 Sep 2012 16:08:19 +0000 (13:08 -0300)]
[media] V4L: Add s_rx_buffer subdev video operation

The s_rx_buffer callback allows the host to set buffer for a data being
received by the subdev, e.g. non-image frame (meta) data. This callback
can be implemented by subdevice like a MIPI CSI2 receiver, allowing the
host driver to gather additional data into frame buffer passed to user
space.

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>
12 years ago[media] s5p-fimc: fix compiler warning
Hans Verkuil [Wed, 5 Sep 2012 08:10:48 +0000 (05:10 -0300)]
[media] s5p-fimc: fix compiler warning

drivers/media/platform/s5p-fimc/fimc-m2m.c:561:2: warning: passing argument 2 of 'fimc_m2m_try_crop' discards 'const' qualifier from pointer target type [enabled by default]
drivers/media/platform/s5p-fimc/fimc-m2m.c:502:12: note: expected 'struct v4l2_crop *' but argument is of type 'const struct v4l2_crop *'
This is fall-out from this commit:
commit 4f996594ceaf6c3f9bc42b40c40b0f7f87b79c86
Author: Hans Verkuil <hans.verkuil@cisco.com>
    [media] v4l2: make vidioc_s_crop const

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-g2d: fix compiler warning
Hans Verkuil [Wed, 5 Sep 2012 08:10:48 +0000 (05:10 -0300)]
[media] s5p-g2d: fix compiler warning

drivers/media/platform/s5p-g2d/g2d.c:535:2: warning: passing argument 3 of 'vidioc_try_crop' discards 'const' qualifier from pointer target type [enabled by default]
drivers/media/platform/s5p-g2d/g2d.c:510:12: note: expected 'struct v4l2_crop *' but argument is of type 'const struct v4l2_crop *'
This is fall-out from this commit:
commit 4f996594ceaf6c3f9bc42b40c40b0f7f87b79c86
Author: Hans Verkuil <hans.verkuil@cisco.com>
    [media] v4l2: make vidioc_s_crop const

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-jpeg: use clk_prepare_enable and clk_disable_unprepare
Thomas Abraham [Tue, 2 Oct 2012 23:55:02 +0000 (20:55 -0300)]
[media] s5p-jpeg: use clk_prepare_enable and clk_disable_unprepare

Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare
calls as required by common clock framework.

Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] technisat-usb2: add a MODULE_DEVICE_TABLE for udev autoload
Patrick Boettcher [Mon, 1 Oct 2012 07:26:15 +0000 (04:26 -0300)]
[media] technisat-usb2: add a MODULE_DEVICE_TABLE for udev autoload

This patch adds a module-device-table-entry to the
technisat-usb2-driver which will help udev to on-demand load the
driver. This was obviously forgotten during initial commit.

Signed-off-by: Patrick Boettcher <pboettcher@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] davinci: vpbe: replace V4L2_OUT_CAP_CUSTOM_TIMINGS with V4L2_OUT_CAP_DV_TIMINGS
Lad, Prabhakar [Wed, 3 Oct 2012 05:25:42 +0000 (02:25 -0300)]
[media] davinci: vpbe: replace V4L2_OUT_CAP_CUSTOM_TIMINGS with V4L2_OUT_CAP_DV_TIMINGS

This patch replaces V4L2_OUT_CAP_CUSTOM_TIMINGS macro with
V4L2_OUT_CAP_DV_TIMINGS. As V4L2_OUT_CAP_CUSTOM_TIMINGS is being phased
out.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpbe: fix build warning
Lad, Prabhakar [Wed, 3 Oct 2012 05:13:28 +0000 (02:13 -0300)]
[media] media: davinci: vpbe: fix build warning

recent patch with commit id 4f996594ceaf6c3f9bc42b40c40b0f7f87b79c86
which makes vidioc_s_crop const, was causing a following build warning,
vpbe_display.c: In function 'vpbe_display_s_crop':
vpbe_display.c:640: warning: initialization discards qualifiers from pointer target type
This patch fixes the above build warning.

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] ths7303: enable THS7303 for HD modes
Manjunath Hadli [Mon, 1 Oct 2012 14:46:35 +0000 (11:46 -0300)]
[media] ths7303: enable THS7303 for HD modes

add filter settings for high def modes like 1080i,
1080p,720p and others and implementing dv_timings.

Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] dm644x: replace the obsolete preset API by the timings API
Hans Verkuil [Mon, 1 Oct 2012 14:39:46 +0000 (11:39 -0300)]
[media] dm644x: replace the obsolete preset API by the timings API

This patch replaces the preset API by the timings API, and
appropriate changes in board file.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] af9033: prevent unintended underflow
Hans-Frieder Vogt [Wed, 3 Oct 2012 08:25:40 +0000 (05:25 -0300)]
[media] af9033: prevent unintended underflow

As spotted by Dan Carpenter <dan.carpenter@oracle.com> (thanks!), we have
improperly used an unsigned variable in a calculation that may result in a
negative number. This may cause an unintended underflow if the interface
frequency of the tuner is > approx. 40MHz.
This patch should resolve the issue, following an approach similar to what is
used in af9013.c.

[crope@iki.fi: add Reported-by]
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Hans-Frieder Vogt <hfvogt@gmx.net>
Reviewed-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] media: davinci: vpfe: fix build error
Lad, Prabhakar [Mon, 1 Oct 2012 11:52:48 +0000 (08:52 -0300)]
[media] media: davinci: vpfe: fix build error

recent patch with commit id 4f996594ceaf6c3f9bc42b40c40b0f7f87b79c86
which makes vidioc_s_crop const, was causing a following build error.
vpfe_capture.c: In function 'vpfe_s_crop':
vpfe_capture.c:1695: error: assignment of read-only location '*crop'
vpfe_capture.c:1706: warning: passing argument 1 of
'ccdc_dev->hw_ops.set_image_window' discards qualifiers from pointer target type
vpfe_capture.c:1706: note: expected 'struct v4l2_rect *' but argument is of
type 'const struct v4l2_rect *'
make[4]: *** [drivers/media/platform/davinci/vpfe_capture.o] Error 1

Signed-off-by: Lad, Prabhakar <prabhakar.lad@ti.com>
Signed-off-by: Manjunath Hadli <manjunath.hadli@ti.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years agoem28xx: regression fix: use DRX-K sync firmware requests on em28xx
Mauro Carvalho Chehab [Tue, 2 Oct 2012 19:02:57 +0000 (16:02 -0300)]
em28xx: regression fix: use DRX-K sync firmware requests on em28xx

As em28xx-dvb will always be initialized asynchronously, there's
no need anymore for a separate thread to load the DRX-K firmware.

Fixes a known regression with kernel 3.6 with tda18271 driver
and asynchronous DRX-K firmware load.

Antti tested it with the following hardware:
        Hauppauge WinTV HVR 930C
        MaxMedia UB425-TC
        PCTV QuatroStick nano (520e)

Tested-by: Antti Palosaari <crope@iki.fi>
Cc: stable@kernel.org # for Kernel 3.6 - please note that driver location has changed
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years agodrxk: allow loading firmware synchrousnously
Mauro Carvalho Chehab [Tue, 2 Oct 2012 19:01:15 +0000 (16:01 -0300)]
drxk: allow loading firmware synchrousnously

Due to udev-182, the firmware load was changed to be async, as
otherwise udev would give up of loading a firmware.

Add an option to return to the previous behaviour, async firmware
loads cause failures with the tda18271 driver.

Antti tested it with the following hardware:
        Hauppauge WinTV HVR 930C
        MaxMedia UB425-TC
        PCTV QuatroStick nano (520e)

Tested-by: Antti Palosaari <crope@iki.fi>
Cc: stable@kernel.org # for Kernel 3.6 - please note that driver location has changed
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years agoem28xx: Make all em28xx extensions to be initialized asynchronously
Mauro Carvalho Chehab [Tue, 2 Oct 2012 18:35:27 +0000 (15:35 -0300)]
em28xx: Make all em28xx extensions to be initialized asynchronously

em28xx-dvb, em28xx-alsa and em28xx-ir are typically initialized
asyncrhronously. The exception for it is when those modules
are loaded before em28xx (or before an em28xx card insertion) or
when they're built in.

Make the extentions to always load asynchronously. That allows
having all DVB firmwares loaded synchronously with udev-182.

Antti tested it with the following hardware:
Hauppauge WinTV HVR 930C
MaxMedia UB425-TC
PCTV QuatroStick nano (520e)

Tested-by: Antti Palosaari <crope@iki.fi>
Cc: stable@kernel.org # for Kernel 3.6 - please note that driver location has changed
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] tda18271: properly report read errors in tda18271_get_id
Michael Krufky [Tue, 2 Oct 2012 14:04:36 +0000 (11:04 -0300)]
[media] tda18271: properly report read errors in tda18271_get_id

Until now, if there is a read error in tda18271_get_id, the driver
reports "Unknown device..."  Instead, check the return value of
tda18271_read_regs and display the appropriate error message.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] tda18271: delay IR & RF calibration until init() if delay_cal is set
Michael Krufky [Tue, 2 Oct 2012 02:50:37 +0000 (23:50 -0300)]
[media] tda18271: delay IR & RF calibration until init() if delay_cal is set

if the configuration option 'delay_cal' is set, delay both IR & RF
calibration until init() is called.
both module option 'cal' or configuration option 'rf_cal_on_startup'
will override this delay. it makes no sense to mix 'delay_cal' with
'rf_cal_on_startup' as these options conflict with each other.

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as tda827x maintainer
Michael Krufky [Tue, 2 Oct 2012 03:56:33 +0000 (00:56 -0300)]
[media] MAINTAINERS: add Michael Krufky as tda827x maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as tda8290 maintainer
Michael Krufky [Tue, 2 Oct 2012 03:56:28 +0000 (00:56 -0300)]
[media] MAINTAINERS: add Michael Krufky as tda8290 maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as cxusb maintainer
Michael Krufky [Tue, 2 Oct 2012 03:56:20 +0000 (00:56 -0300)]
[media] MAINTAINERS: add Michael Krufky as cxusb maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as lg2160 maintainer
Michael Krufky [Tue, 2 Oct 2012 03:56:06 +0000 (00:56 -0300)]
[media] MAINTAINERS: add Michael Krufky as lg2160 maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as lgdt3305 maintainer
Michael Krufky [Tue, 2 Oct 2012 03:56:00 +0000 (00:56 -0300)]
[media] MAINTAINERS: add Michael Krufky as lgdt3305 maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as mxl111sf maintainer
Michael Krufky [Tue, 2 Oct 2012 03:55:50 +0000 (00:55 -0300)]
[media] MAINTAINERS: add Michael Krufky as mxl111sf maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as mxl5007t maintainer
Michael Krufky [Tue, 2 Oct 2012 03:55:41 +0000 (00:55 -0300)]
[media] MAINTAINERS: add Michael Krufky as mxl5007t maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] MAINTAINERS: add Michael Krufky as tda18271 maintainer
Michael Krufky [Tue, 2 Oct 2012 03:55:32 +0000 (00:55 -0300)]
[media] MAINTAINERS: add Michael Krufky as tda18271 maintainer

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-tv: Report only multi-plane capabilities in vidioc_querycap
Sylwester Nawrocki [Mon, 24 Sep 2012 09:03:04 +0000 (06:03 -0300)]
[media] s5p-tv: Report only multi-plane capabilities in vidioc_querycap

The mixer video node supports only multi-planar API so the driver
should not be setting V4L2_CAP_VIDEO_OUTPUT flags. Fix this and
also switch to device_caps. Additionally fix the VIDIOC_ENUM_FMT
ioctl handler which now works for V4L2_BUF_TYPE_CAPTURE, rather
than expected V4L2_BUF_TYPE_CAPTURE_MPLANE.

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>
12 years ago[media] s5p-mfc: Fix misplaced return statement in s5p_mfc_suspend()
Sachin Kamat [Fri, 28 Sep 2012 07:01:35 +0000 (04:01 -0300)]
[media] s5p-mfc: Fix misplaced return statement in s5p_mfc_suspend()

return statement was wrongly placed before a code that needs to be
executed. Moved the return statement to the end of the function.
Tested suspend/resume on SMDK4412 board using 3.5-rc6 kernel.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Kamil Debski <k.debski@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] exynos-gsc: Add missing static storage class specifiers
Sachin Kamat [Wed, 26 Sep 2012 07:18:04 +0000 (04:18 -0300)]
[media] exynos-gsc: Add missing static storage class specifiers

Fixes the following warnings:
drivers/media/platform/exynos-gsc/gsc-core.c:313:5: warning:
symbol 'get_plane_info' was not declared. Should it be static?
drivers/media/platform/exynos-gsc/gsc-core.c:746:28: warning:
symbol 'gsc_ctrl_ops' was not declared. Should it be static?
drivers/media/platform/exynos-gsc/gsc-m2m.c:102:5: warning:
symbol 'gsc_fill_addr' was not declared. Should it be static?
drivers/media/platform/exynos-gsc/gsc-m2m.c:252:16: warning:
symbol 'gsc_m2m_qops' was not declared. Should it be static?

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] exynos-gsc: Remove <linux/version.h> header file inclusion
Sachin Kamat [Wed, 26 Sep 2012 07:18:03 +0000 (04:18 -0300)]
[media] exynos-gsc: Remove <linux/version.h> header file inclusion

version.h is not needed for these files.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-fimc: Fix incorrect condition in fimc_lite_reqbufs()
Sachin Kamat [Wed, 26 Sep 2012 08:52:24 +0000 (05:52 -0300)]
[media] s5p-fimc: Fix incorrect condition in fimc_lite_reqbufs()

Fixes a typo in a conditional evaluation.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-tv: Fix potential NULL pointer dereference error
Sachin Kamat [Sat, 22 Sep 2012 06:39:19 +0000 (03:39 -0300)]
[media] s5p-tv: Fix potential NULL pointer dereference error

When mdev is NULL, the error print statement will try to dereference
the NULL pointer.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Acked-by: Tomasz Stanislawski <t.stanislaws@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5k6aa: Fix possible NULL pointer dereference
Sylwester Nawrocki [Wed, 26 Sep 2012 08:45:21 +0000 (05:45 -0300)]
[media] s5k6aa: Fix possible NULL pointer dereference

Make sure __s5k6aa_get_crop_rect() always returns valid pointer,
as it is assumed at the callers.
crop->which is already validated when subdev set_crop and get_crop
callbacks are called from within the v4l2-core. If it ever happens
the crop operations are called directly for some reason in kernel
space, with incorrect crop->which argument, just log it with WARN
and return reference to the TRY crop.

Reported-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Acked-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: optimized code related to working contextes
Andrzej Hajda [Tue, 14 Aug 2012 09:13:40 +0000 (06:13 -0300)]
[media] s5p-mfc: optimized code related to working contextes

All code setting/clearing working context bits has been moved
to separate functions. set_bit/clear_bit have been replaced by
non-atomic variants - variable is already guarded by spin_lock.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
12 years ago[media] s5p-mfc: added support for end of stream handling in MFC encoder
Andrzej Hajda [Tue, 21 Aug 2012 11:05:32 +0000 (08:05 -0300)]
[media] s5p-mfc: added support for end of stream handling in MFC encoder

s5p-mfc encoder after receiving V4L2_ENC_CMD_STOP command
will instruct MFC device to release all encoded frames.
After dequeuing last encoded frame driver will generate
V4L2_EVENT_EOS event.

Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>