Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0041ee4d authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge branch 'drm/next/du' of git://linuxtv.org/pinchartl/fbdev into drm-next

rcar-du updates.

* 'drm/next/du' of git://linuxtv.org/pinchartl/fbdev: (281 commits)
  drm: rcar-du: Add tri-planar memory formats support
  drm: rcar-du: Add probe deferral debug messages
  drm: rcar-du: lvds: Add R-Car Gen3 support
  drm: rcar-du: lvds: Rename PLLEN bit to PLLON
  drm: rcar-du: lvds: Fix PLL frequency-related configuration
  drm: rcar-du: lvds: Avoid duplication of clock clamp code
  drm: rcar-du: Add R8A7795 device support
  drm: rcar-du: Output the DISP signal on the ODDF pin
  drm: rcar-du: Output the DISP signal on the DISP pin
  drm: rcar-du: Support up to 4 CRTCs
  drm: rcar-du: Drop LVDS double dependency on OF
  drm: rcar-du: Enable compilation on ARM64
  drm: rcar-du: Fix compile warning on 64-bit platforms
  drm: rcar-du: Expose the VSP1 compositor through KMS planes
  drm: rcar-du: Move plane allocator to rcar_du_plane.c
  drm: rcar-du: Restart the DU group when a plane source changes
  drm: rcar-du: Add VSP1 compositor support
  drm: rcar-du: Add VSP1 support to the planes allocator
  drm: rcar-du: Refactor plane setup
  drm: rcar-du: Compute plane DDCR4 register value directly
  ...
parents d2eaa590 7863ac50
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -229,6 +229,7 @@ X!Isound/sound_firmware.c
!Iinclude/media/v4l2-dv-timings.h
!Iinclude/media/v4l2-event.h
!Iinclude/media/v4l2-flash-led-class.h
!Iinclude/media/v4l2-mc.h
!Iinclude/media/v4l2-mediabus.h
!Iinclude/media/v4l2-mem2mem.h
!Iinclude/media/v4l2-of.h
+58 −0
Original line number Diff line number Diff line
@@ -2329,6 +2329,14 @@ to search and match for the present Macroblock (MB) in the reference picture. Th
vertical search range for motion estimation module in video encoder.</entry>
	      </row>

	      <row><entry></entry></row>
	      <row id="v4l2-mpeg-video-force-key-frame">
		<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME</constant>&nbsp;</entry>
		<entry>button</entry>
	      </row><row><entry spanname="descr">Force a key frame for the next queued buffer. Applicable to encoders.
This is a general, codec-agnostic keyframe control.</entry>
	      </row>

	      <row><entry></entry></row>
	      <row>
		<entry spanname="id"><constant>V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE</constant>&nbsp;</entry>
@@ -5069,6 +5077,46 @@ interface and may change in the future.</para>
	    This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
	    </entry>
	  </row>
	  <row>
	    <entry spanname="id"><constant>V4L2_CID_DV_TX_IT_CONTENT_TYPE</constant></entry>
	    <entry id="v4l2-dv-content-type">enum v4l2_dv_it_content_type</entry>
	  </row>
	  <row><entry spanname="descr">Configures the IT Content Type
	    of the transmitted video. This information is sent over HDMI and DisplayPort connectors
	    as part of the AVI InfoFrame. The term 'IT Content' is used for content that originates
	    from a computer as opposed to content from a TV broadcast or an analog source. The
	    enum&nbsp;v4l2_dv_it_content_type defines the possible content types:</entry>
	  </row>
	  <row>
	    <entrytbl spanname="descr" cols="2">
	      <tbody valign="top">
	        <row>
	          <entry><constant>V4L2_DV_IT_CONTENT_TYPE_GRAPHICS</constant>&nbsp;</entry>
		  <entry>Graphics content. Pixel data should be passed unfiltered and without
		  analog reconstruction.</entry>
		</row>
	        <row>
	          <entry><constant>V4L2_DV_IT_CONTENT_TYPE_PHOTO</constant>&nbsp;</entry>
		  <entry>Photo content. The content is derived from digital still pictures.
		  The content should be passed through with minimal scaling and picture
		  enhancements.</entry>
		</row>
	        <row>
	          <entry><constant>V4L2_DV_IT_CONTENT_TYPE_CINEMA</constant>&nbsp;</entry>
		  <entry>Cinema content.</entry>
		</row>
	        <row>
	          <entry><constant>V4L2_DV_IT_CONTENT_TYPE_GAME</constant>&nbsp;</entry>
		  <entry>Game content. Audio and video latency should be minimized.</entry>
		</row>
	        <row>
	          <entry><constant>V4L2_DV_IT_CONTENT_TYPE_NO_ITC</constant>&nbsp;</entry>
		  <entry>No IT Content information is available and the ITC bit in the AVI
		  InfoFrame is set to 0.</entry>
		</row>
	      </tbody>
	    </entrytbl>
	  </row>
	  <row>
	    <entry spanname="id"><constant>V4L2_CID_DV_RX_POWER_PRESENT</constant></entry>
	    <entry>bitmask</entry>
@@ -5098,6 +5146,16 @@ interface and may change in the future.</para>
	    This control is applicable to VGA, DVI-A/D, HDMI and DisplayPort connectors.
	    </entry>
	  </row>
	  <row>
	    <entry spanname="id"><constant>V4L2_CID_DV_RX_IT_CONTENT_TYPE</constant></entry>
	    <entry>enum v4l2_dv_it_content_type</entry>
	  </row>
	  <row><entry spanname="descr">Reads the IT Content Type
	    of the received video. This information is sent over HDMI and DisplayPort connectors
	    as part of the AVI InfoFrame. The term 'IT Content' is used for content that originates
	    from a computer as opposed to content from a TV broadcast or an analog source. See
	    <constant>V4L2_CID_DV_TX_IT_CONTENT_TYPE</constant> for the available content types.</entry>
	  </row>
	  <row><entry></entry></row>
	</tbody>
      </tgroup>
+0 −3
Original line number Diff line number Diff line
@@ -48,9 +48,6 @@

  <refsect1>
    <title>Description</title>

    <para><emphasis role="bold">NOTE:</emphasis> This new ioctl is programmed to be added on Kernel 4.6. Its definition/arguments may change until its final version.</para>

    <para>The typical usage of this ioctl is to call it twice.
    On the first call, the structure defined at &media-v2-topology; should
    be zeroed. At return, if no errors happen, this ioctl will return the
+28 −5
Original line number Diff line number Diff line
@@ -56,10 +56,6 @@
	    <entry><constant>MEDIA_ENT_F_CONN_COMPOSITE</constant></entry>
	    <entry>Connector for a RGB composite signal.</entry>
	  </row>
	  <row>
	    <entry><constant>MEDIA_ENT_F_CONN_TEST</constant></entry>
	    <entry>Connector for a test generator.</entry>
	  </row>
	  <row>
	    <entry><constant>MEDIA_ENT_F_CAM_SENSOR</constant></entry>
	    <entry>Camera video sensor entity.</entry>
@@ -84,7 +80,34 @@
	  </row>
	  <row>
	    <entry><constant>MEDIA_ENT_F_TUNER</constant></entry>
	    <entry>Digital TV, analog TV, radio and/or software radio tuner.</entry>
	    <entry>Digital TV, analog TV, radio and/or software radio tuner,
		   with consists on a PLL tuning stage that converts radio
		   frequency (RF) signal into an Intermediate Frequency (IF).
		   Modern tuners have internally IF-PLL decoders for audio
		   and video, but older models have those stages implemented
		   on separate entities.
	    </entry>
	  </row>
	  <row>
	    <entry><constant>MEDIA_ENT_F_IF_VID_DECODER</constant></entry>
	    <entry>IF-PLL video decoder. It receives the IF from a PLL
		   and decodes the analog TV video signal. This is commonly
		   found on some very old analog tuners, like Philips MK3
		   designs. They all contain a tda9887 (or some software
		   compatible similar chip, like tda9885). Those devices
		   use a different I2C address than the tuner PLL.
	    </entry>
	  </row>
	  <row>
	    <entry><constant>MEDIA_ENT_F_IF_AUD_DECODER</constant></entry>
	    <entry>IF-PLL sound decoder. It receives the IF from a PLL
		   and decodes the analog TV audio signal. This is commonly
		   found on some very old analog hardware, like Micronas
		   msp3400, Philips tda9840, tda985x, etc. Those devices
		   use a different I2C address than the tuner PLL and
		   should be controlled together with the IF-PLL video
		   decoder.
	    </entry>
	  </row>
	</tbody>
      </tgroup>
+17 −9
Original line number Diff line number Diff line
    <refentry id="V4L2-PIX-FMT-YUV420M">
    <refentry>
      <refmeta>
	<refentrytitle>V4L2_PIX_FMT_YUV420M ('YM12')</refentrytitle>
	<refentrytitle>V4L2_PIX_FMT_YUV420M ('YM12'), V4L2_PIX_FMT_YVU420M ('YM21')</refentrytitle>
	&manvol;
      </refmeta>
      <refnamediv>
	<refname> <constant>V4L2_PIX_FMT_YUV420M</constant></refname>
	<refpurpose>Variation of <constant>V4L2_PIX_FMT_YUV420</constant>
	  with planes non contiguous in memory. </refpurpose>
	<refname id="V4L2-PIX-FMT-YUV420M"><constant>V4L2_PIX_FMT_YUV420M</constant></refname>
	<refname id="V4L2-PIX-FMT-YVU420M"><constant>V4L2_PIX_FMT_YVU420M</constant></refname>
	<refpurpose>Variation of <constant>V4L2_PIX_FMT_YUV420</constant> and
	  <constant>V4L2_PIX_FMT_YVU420</constant> with planes non contiguous
	  in memory.</refpurpose>
      </refnamediv>

      <refsect1>
	<title>Description</title>

	<para>This is a multi-planar format, as opposed to a packed format.
The three components are separated into three sub- images or planes.
The three components are separated into three sub-images or planes.</para>

The Y plane is first. The Y plane has one byte per pixel. The Cb data
	<para>The Y plane is first. The Y plane has one byte per pixel.
For <constant>V4L2_PIX_FMT_YUV420M</constant> the Cb data
constitutes the second plane which is half the width and half
the height of the Y plane (and of the image). Each Cb belongs to four
pixels, a two-by-two square of the image. For example,
@@ -24,12 +27,17 @@ Y'<subscript>01</subscript>, Y'<subscript>10</subscript>, and
Y'<subscript>11</subscript>. The Cr data, just like the Cb plane, is
in the third plane.</para>

	<para><constant>V4L2_PIX_FMT_YVU420M</constant> is the same except
the Cr data is stored in the second plane and the Cb data in the third plane.
</para>

	<para>If the Y plane has pad bytes after each row, then the Cb
and Cr planes have half as many pad bytes after their rows. In other
words, two Cx rows (including padding) is exactly as long as one Y row
(including padding).</para>

	<para><constant>V4L2_PIX_FMT_YUV420M</constant> is intended to be
	<para><constant>V4L2_PIX_FMT_YUV420M</constant> and
<constant>V4L2_PIX_FMT_YVU420M</constant> are intended to be
used only in drivers and applications that support the multi-planar API,
described in <xref linkend="planar-apis"/>. </para>

Loading