Skip to content

Commit

Permalink
Merge tag 'media/v4.7-1' of git://git.kernel.org/pub/scm/linux/kernel…
Browse files Browse the repository at this point in the history
…/git/mchehab/linux-media

Pull media updates from Mauro Carvalho Chehab:
 - added support for Intersil/Techwell TW686x-based video capture cards
 - v4l PCI skeleton driver moved to samples directory
 - Documentation cleanups and improvements
 - RC: reduced the memory footprint for IR raw events
 - tpg: Export the tpg code from vivid as a module
 - adv7180: Add device tree binding documentation
 - lots of driver improvements and fixes

* tag 'media/v4.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (173 commits)
  [media] exynos-gsc: avoid build warning without CONFIG_OF
  [media] samples: v4l: from Documentation to samples directory
  [media] dib0700: add USB ID for another STK8096-PVR ref design based card
  [media] tvp5150: propagate I2C write error in .s_register callback
  [media] tvp5150: return I2C write operation failure to callers
  [media] em28xx: add support for Hauppauge WinTV-dualHD DVB tuner
  [media] em28xx: add missing USB IDs
  [media] update cx23885 and em28xx cardlists
  [media] media: au0828 fix au0828_v4l2_device_register() to not unlock and free
  [media] c8sectpfe: Rework firmware loading mechanism
  [media] c8sectpfe: Demote print to dev_dbg
  [media] c8sectpfe: Fix broken circular buffer wp management
  [media] media-device: Simplify compat32 logic
  [media] media: i2c: ths7303: remove redundant assignment on bt
  [media] dvb-usb: hide unused functions
  [media] xilinx-vipp: remove unnecessary of_node_put
  [media] drivers/media/media-devnode: clear private_data before put_device()
  [media] drivers/media/media-device: move debug log before _devnode_unregister()
  [media] drivers/media/rc: postpone kfree(rc_dev)
  [media] media/dvb-core: forward media_create_pad_links() return value
  ...
  • Loading branch information
torvalds committed May 19, 2016
2 parents 675e065 + aff093d commit 19c5abc
Show file tree
Hide file tree
Showing 192 changed files with 6,757 additions and 3,001 deletions.
1 change: 1 addition & 0 deletions Documentation/DocBook/device-drivers.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ X!Isound/sound_firmware.c
!Iinclude/media/v4l2-mediabus.h
!Iinclude/media/v4l2-mem2mem.h
!Iinclude/media/v4l2-of.h
!Iinclude/media/v4l2-rect.h
!Iinclude/media/v4l2-subdev.h
!Iinclude/media/videobuf2-core.h
!Iinclude/media/videobuf2-v4l2.h
Expand Down
2 changes: 1 addition & 1 deletion Documentation/DocBook/media/dvb/net.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
that are present on the transport stream. This is done through
<constant>/dev/dvb/adapter?/net?</constant> device node.
The data will be available via virtual <constant>dvb?_?</constant>
network interfaces, and will be controled/routed via the standard
network interfaces, and will be controlled/routed via the standard
ip tools (like ip, route, netstat, ifconfig, etc).</para>
<para> Data types and and ioctl definitions are defined via
<constant>linux/dvb/net.h</constant> header.</para>
Expand Down
38 changes: 0 additions & 38 deletions Documentation/DocBook/media/v4l/compat.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2685,51 +2685,13 @@ hardware may support both.</para>
and may change in the future.</para>

<itemizedlist>
<listitem>
<para>Video Output Overlay (OSD) Interface, <xref
linkend="osd" />.</para>
</listitem>
<listitem>
<para>&VIDIOC-DBG-G-REGISTER; and &VIDIOC-DBG-S-REGISTER;
ioctls.</para>
</listitem>
<listitem>
<para>&VIDIOC-DBG-G-CHIP-INFO; ioctl.</para>
</listitem>
<listitem>
<para>&VIDIOC-ENUM-DV-TIMINGS;, &VIDIOC-QUERY-DV-TIMINGS; and
&VIDIOC-DV-TIMINGS-CAP; ioctls.</para>
</listitem>
<listitem>
<para>Flash API. <xref linkend="flash-controls" /></para>
</listitem>
<listitem>
<para>&VIDIOC-CREATE-BUFS; and &VIDIOC-PREPARE-BUF; ioctls.</para>
</listitem>
<listitem>
<para>Selection API. <xref linkend="selection-api" /></para>
</listitem>
<listitem>
<para>Sub-device selection API: &VIDIOC-SUBDEV-G-SELECTION;
and &VIDIOC-SUBDEV-S-SELECTION; ioctls.</para>
</listitem>
<listitem>
<para>Support for frequency band enumeration: &VIDIOC-ENUM-FREQ-BANDS; ioctl.</para>
</listitem>
<listitem>
<para>Vendor and device specific media bus pixel formats.
<xref linkend="v4l2-mbus-vendor-spec-fmts" />.</para>
</listitem>
<listitem>
<para>Importing DMABUF file descriptors as a new IO method described
in <xref linkend="dmabuf" />.</para>
</listitem>
<listitem>
<para>Exporting DMABUF files using &VIDIOC-EXPBUF; ioctl.</para>
</listitem>
<listitem>
<para>Software Defined Radio (SDR) Interface, <xref linkend="sdr" />.</para>
</listitem>
</itemizedlist>
</section>

Expand Down
31 changes: 0 additions & 31 deletions Documentation/DocBook/media/v4l/controls.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4272,13 +4272,6 @@ manually or automatically if set to zero. Unit, range and step are driver-specif
<section id="flash-controls">
<title>Flash Control Reference</title>

<note>
<title>Experimental</title>

<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>

<para>
The V4L2 flash controls are intended to provide generic access
to flash controller devices. Flash controller devices are
Expand Down Expand Up @@ -4743,14 +4736,6 @@ interface and may change in the future.</para>
<section id="image-source-controls">
<title>Image Source Control Reference</title>

<note>
<title>Experimental</title>

<para>This is an <link
linkend="experimental">experimental</link> interface and may
change in the future.</para>
</note>

<para>
The Image Source control class is intended for low-level
control of image source devices such as image sensors. The
Expand Down Expand Up @@ -4862,14 +4847,6 @@ interface and may change in the future.</para>
<section id="image-process-controls">
<title>Image Process Control Reference</title>

<note>
<title>Experimental</title>

<para>This is an <link
linkend="experimental">experimental</link> interface and may
change in the future.</para>
</note>

<para>
The Image Process control class is intended for low-level control of
image processing functions. Unlike
Expand Down Expand Up @@ -4955,14 +4932,6 @@ interface and may change in the future.</para>
<section id="dv-controls">
<title>Digital Video Control Reference</title>

<note>
<title>Experimental</title>

<para>This is an <link
linkend="experimental">experimental</link> interface and may
change in the future.</para>
</note>

<para>
The Digital Video control class is intended to control receivers
and transmitters for <ulink url="http://en.wikipedia.org/wiki/Vga">VGA</ulink>,
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/dev-sdr.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
<title>Software Defined Radio Interface (SDR)</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>
SDR is an abbreviation of Software Defined Radio, the radio device
which uses application software for modulation or demodulation. This interface
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/dev-subdev.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
<title>Sub-device Interface</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>

<para>The complex nature of V4L2 devices, where hardware is often made of
several integrated circuits that need to interact with each other in a
controlled way, leads to complex V4L2 drivers. The drivers usually reflect
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/io.xml
Original file line number Diff line number Diff line change
Expand Up @@ -475,12 +475,6 @@ rest should be evident.</para>
<section id="dmabuf">
<title>Streaming I/O (DMA buffer importing)</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>

<para>The DMABUF framework provides a generic method for sharing buffers
between multiple devices. Device drivers that support DMABUF can export a DMA
buffer to userspace as a file descriptor (known as the exporter role), import a
Expand Down
9 changes: 1 addition & 8 deletions Documentation/DocBook/media/v4l/selection-api.xml
Original file line number Diff line number Diff line change
@@ -1,13 +1,6 @@
<section id="selection-api">

<title>Experimental API for cropping, composing and scaling</title>

<note>
<title>Experimental</title>

<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>
<title>API for cropping, composing and scaling</title>

<section>
<title>Introduction</title>
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/subdev-formats.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4002,12 +4002,6 @@ see <xref linkend="colorspaces" />.</entry>
<section id="v4l2-mbus-vendor-spec-fmts">
<title>Vendor and Device Specific Formats</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>

<para>This section lists complex data formats that are either vendor or
device specific.
</para>
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-create-bufs.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>This ioctl is used to create buffers for <link linkend="mmap">memory
mapped</link> or <link linkend="userp">user pointer</link> or <link
linkend="dmabuf">DMA buffer</link> I/O. It can be used as an alternative or in
Expand Down
18 changes: 7 additions & 11 deletions Documentation/DocBook/media/v4l/vidioc-dv-timings-cap.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,14 +49,9 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>To query the capabilities of the DV receiver/transmitter applications
can call the <constant>VIDIOC_DV_TIMINGS_CAP</constant> ioctl on a video node
<para>To query the capabilities of the DV receiver/transmitter applications initialize the
<structfield>pad</structfield> field to 0, zero the reserved array of &v4l2-dv-timings-cap;
and call the <constant>VIDIOC_DV_TIMINGS_CAP</constant> ioctl on a video node
and the driver will fill in the structure. Note that drivers may return
different values after switching the video input or output.</para>

Expand All @@ -65,8 +60,8 @@ queried by calling the <constant>VIDIOC_SUBDEV_DV_TIMINGS_CAP</constant> ioctl
directly on a subdevice node. The capabilities are specific to inputs (for DV
receivers) or outputs (for DV transmitters), applications must specify the
desired pad number in the &v4l2-dv-timings-cap; <structfield>pad</structfield>
field. Attempts to query capabilities on a pad that doesn't support them will
return an &EINVAL;.</para>
field and zero the <structfield>reserved</structfield> array. Attempts to query
capabilities on a pad that doesn't support them will return an &EINVAL;.</para>

<table pgwide="1" frame="none" id="v4l2-bt-timings-cap">
<title>struct <structname>v4l2_bt_timings_cap</structname></title>
Expand Down Expand Up @@ -145,7 +140,8 @@ return an &EINVAL;.</para>
<row>
<entry>__u32</entry>
<entry><structfield>reserved</structfield>[2]</entry>
<entry>Reserved for future extensions. Drivers must set the array to zero.</entry>
<entry>Reserved for future extensions. Drivers and applications must
set the array to zero.</entry>
</row>
<row>
<entry>union</entry>
Expand Down
11 changes: 3 additions & 8 deletions Documentation/DocBook/media/v4l/vidioc-enum-dv-timings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,20 +49,15 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>While some DV receivers or transmitters support a wide range of timings, others
support only a limited number of timings. With this ioctl applications can enumerate a list
of known supported timings. Call &VIDIOC-DV-TIMINGS-CAP; to check if it also supports other
standards or even custom timings that are not in this list.</para>

<para>To query the available timings, applications initialize the
<structfield>index</structfield> field and zero the reserved array of &v4l2-enum-dv-timings;
and call the <constant>VIDIOC_ENUM_DV_TIMINGS</constant> ioctl on a video node with a
<structfield>index</structfield> field, set the <structfield>pad</structfield> field to 0,
zero the reserved array of &v4l2-enum-dv-timings; and call the
<constant>VIDIOC_ENUM_DV_TIMINGS</constant> ioctl on a video node with a
pointer to this structure. Drivers fill the rest of the structure or return an
&EINVAL; when the index is out of bounds. To enumerate all supported DV timings,
applications shall begin at index zero, incrementing by one until the
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-enum-freq-bands.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>Enumerates the frequency bands that a tuner or modulator supports.
To do this applications initialize the <structfield>tuner</structfield>,
<structfield>type</structfield> and <structfield>index</structfield> fields,
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-expbuf.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>This ioctl is an extension to the <link linkend="mmap">memory
mapping</link> I/O method, therefore it is available only for
<constant>V4L2_MEMORY_MMAP</constant> buffers. It can be used to export a
Expand Down
10 changes: 6 additions & 4 deletions Documentation/DocBook/media/v4l/vidioc-g-edid.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<refentry id="vidioc-g-edid">
<refmeta>
<refentrytitle>ioctl VIDIOC_G_EDID, VIDIOC_S_EDID</refentrytitle>
<refentrytitle>ioctl VIDIOC_G_EDID, VIDIOC_S_EDID, VIDIOC_SUBDEV_G_EDID, VIDIOC_SUBDEV_S_EDID</refentrytitle>
&manvol;
</refmeta>

Expand Down Expand Up @@ -71,7 +71,8 @@

<para>To get the EDID data the application has to fill in the <structfield>pad</structfield>,
<structfield>start_block</structfield>, <structfield>blocks</structfield> and <structfield>edid</structfield>
fields and call <constant>VIDIOC_G_EDID</constant>. The current EDID from block
fields, zero the <structfield>reserved</structfield> array and call
<constant>VIDIOC_G_EDID</constant>. The current EDID from block
<structfield>start_block</structfield> and of size <structfield>blocks</structfield>
will be placed in the memory <structfield>edid</structfield> points to. The <structfield>edid</structfield>
pointer must point to memory at least <structfield>blocks</structfield>&nbsp;*&nbsp;128 bytes
Expand All @@ -92,8 +93,9 @@
the driver will set <structfield>blocks</structfield> to 0 and it returns 0.</para>

<para>To set the EDID blocks of a receiver the application has to fill in the <structfield>pad</structfield>,
<structfield>blocks</structfield> and <structfield>edid</structfield> fields and set
<structfield>start_block</structfield> to 0. It is not possible to set part of an EDID,
<structfield>blocks</structfield> and <structfield>edid</structfield> fields, set
<structfield>start_block</structfield> to 0 and zero the <structfield>reserved</structfield> array.
It is not possible to set part of an EDID,
it is always all or nothing. Setting the EDID data is only valid for receivers as it makes
no sense for a transmitter.</para>

Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-g-selection.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>The ioctls are used to query and configure selection rectangles.</para>

<para>To query the cropping (composing) rectangle set &v4l2-selection;
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-prepare-buf.xml
Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>Applications can optionally call the
<constant>VIDIOC_PREPARE_BUF</constant> ioctl to pass ownership of the buffer
to the driver before actually enqueuing it, using the
Expand Down
6 changes: 0 additions & 6 deletions Documentation/DocBook/media/v4l/vidioc-query-dv-timings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,6 @@ input</refpurpose>
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental"> experimental </link>
interface and may change in the future.</para>
</note>

<para>The hardware may be able to detect the current DV timings
automatically, similar to sensing the video standard. To do so, applications
call <constant>VIDIOC_QUERY_DV_TIMINGS</constant> with a pointer to a
Expand Down
8 changes: 8 additions & 0 deletions Documentation/DocBook/media/v4l/vidioc-streamon.xml
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,14 @@ synchronize with other events.</para>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><errorcode>ENOLINK</errorcode></term>
<listitem>
<para>The driver implements Media Controller interface and
the pipeline link configuration is invalid.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
</refentry>
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,6 @@
<refsect1>
<title>Description</title>

<note>
<title>Experimental</title>
<para>This is an <link linkend="experimental">experimental</link>
interface and may change in the future.</para>
</note>

<para>This ioctl lets applications enumerate available frame intervals on a
given sub-device pad. Frame intervals only makes sense for sub-devices that
can control the frame period on their own. This includes, for instance,
Expand Down
Loading

0 comments on commit 19c5abc

Please sign in to comment.