Commit 54587d99 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-next-20230127' of...

Merge tag 'drm-next-20230127' of git://git.kernel.org/pub/scm/linux/kernel/git/pinchartl/linux

 into drm-next

Renesas R-Car DU fixes and improvements

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/Y9QCw3SkHm6k1bwJ@pendragon.ideasonboard.com
parents 49ed9f39 fd228eb0
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -11,13 +11,14 @@ maintainers:

description: |
  This binding describes the MIPI DSI/CSI-2 encoder embedded in the Renesas
  R-Car V3U SoC. The encoder can operate in either DSI or CSI-2 mode, with up
  R-Car Gen4 SoCs. The encoder can operate in either DSI or CSI-2 mode, with up
  to four data lanes.

properties:
  compatible:
    enum:
      - renesas,r8a779a0-dsi-csi2-tx    # for V3U
      - renesas,r8a779g0-dsi-csi2-tx    # for V4H

  reg:
    maxItems: 1
+2 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ properties:
      - renesas,du-r8a77990 # for R-Car E3 compatible DU
      - renesas,du-r8a77995 # for R-Car D3 compatible DU
      - renesas,du-r8a779a0 # for R-Car V3U compatible DU
      - renesas,du-r8a779g0 # for R-Car V4H compatible DU

  reg:
    maxItems: 1
@@ -762,6 +763,7 @@ allOf:
          contains:
            enum:
              - renesas,du-r8a779a0
              - renesas,du-r8a779g0
    then:
      properties:
        clocks:
+47 −2
Original line number Diff line number Diff line
@@ -262,7 +262,12 @@ the second byte and Y'\ :sub:`7-0` in the third byte.
=================

These formats, commonly referred to as YUYV or YUY2, subsample the chroma
components horizontally by 2, storing 2 pixels in 4 bytes.
components horizontally by 2, storing 2 pixels in a container. The container
is 32-bits for 8-bit formats, and 64-bits for 10+-bit formats.

The packed YUYV formats with more than 8 bits per component are stored as four
16-bit little-endian words. Each word's most significant bits contain one
component, and the least significant bits are zero padding.

.. raw:: latex

@@ -270,7 +275,7 @@ components horizontally by 2, storing 2 pixels in 4 bytes.

.. tabularcolumns:: |p{3.4cm}|p{1.2cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|

.. flat-table:: Packed YUV 4:2:2 Formats
.. flat-table:: Packed YUV 4:2:2 Formats in 32-bit container
    :header-rows: 1
    :stub-columns: 0

@@ -337,6 +342,46 @@ components horizontally by 2, storing 2 pixels in 4 bytes.
      - Y'\ :sub:`3`
      - Cb\ :sub:`2`

.. tabularcolumns:: |p{3.4cm}|p{1.2cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.8cm}|

.. flat-table:: Packed YUV 4:2:2 Formats in 64-bit container
    :header-rows: 1
    :stub-columns: 0

    * - Identifier
      - Code
      - Word 0
      - Word 1
      - Word 2
      - Word 3
    * .. _V4L2-PIX-FMT-Y210:

      - ``V4L2_PIX_FMT_Y210``
      - 'Y210'

      - Y'\ :sub:`0` (bits 15-6)
      - Cb\ :sub:`0` (bits 15-6)
      - Y'\ :sub:`1` (bits 15-6)
      - Cr\ :sub:`0` (bits 15-6)
    * .. _V4L2-PIX-FMT-Y212:

      - ``V4L2_PIX_FMT_Y212``
      - 'Y212'

      - Y'\ :sub:`0` (bits 15-4)
      - Cb\ :sub:`0` (bits 15-4)
      - Y'\ :sub:`1` (bits 15-4)
      - Cr\ :sub:`0` (bits 15-4)
    * .. _V4L2-PIX-FMT-Y216:

      - ``V4L2_PIX_FMT_Y216``
      - 'Y216'

      - Y'\ :sub:`0` (bits 15-0)
      - Cb\ :sub:`0` (bits 15-0)
      - Y'\ :sub:`1` (bits 15-0)
      - Cr\ :sub:`0` (bits 15-0)

.. raw:: latex

    \normalsize
+194 −0
Original line number Diff line number Diff line
@@ -763,6 +763,200 @@ nomenclature that instead use the order of components as seen in a 24- or
    \normalsize


10 Bits Per Component
=====================

These formats store a 30-bit RGB triplet with an optional 2 bit alpha in four
bytes. They are named based on the order of the RGB components as seen in a
32-bit word, which is then stored in memory in little endian byte order
(unless otherwise noted by the presence of bit 31 in the 4CC value), and on the
number of bits for each component.

.. raw:: latex

    \begingroup
    \tiny
    \setlength{\tabcolsep}{2pt}

.. tabularcolumns:: |p{2.8cm}|p{2.0cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|p{0.22cm}|


.. flat-table:: RGB Formats 10 Bits Per Color Component
    :header-rows:  2
    :stub-columns: 0

    * - Identifier
      - Code
      - :cspan:`7` Byte 0 in memory
      - :cspan:`7` Byte 1
      - :cspan:`7` Byte 2
      - :cspan:`7` Byte 3
    * -
      -
      - 7
      - 6
      - 5
      - 4
      - 3
      - 2
      - 1
      - 0

      - 7
      - 6
      - 5
      - 4
      - 3
      - 2
      - 1
      - 0

      - 7
      - 6
      - 5
      - 4
      - 3
      - 2
      - 1
      - 0

      - 7
      - 6
      - 5
      - 4
      - 3
      - 2
      - 1
      - 0
    * .. _V4L2-PIX-FMT-RGBX1010102:

      - ``V4L2_PIX_FMT_RGBX1010102``
      - 'RX30'

      - b\ :sub:`5`
      - b\ :sub:`4`
      - b\ :sub:`3`
      - b\ :sub:`2`
      - b\ :sub:`1`
      - b\ :sub:`0`
      - x
      - x

      - g\ :sub:`3`
      - g\ :sub:`2`
      - g\ :sub:`1`
      - g\ :sub:`0`
      - b\ :sub:`9`
      - b\ :sub:`8`
      - b\ :sub:`7`
      - b\ :sub:`6`

      - r\ :sub:`1`
      - r\ :sub:`0`
      - g\ :sub:`9`
      - g\ :sub:`8`
      - g\ :sub:`7`
      - g\ :sub:`6`
      - g\ :sub:`5`
      - g\ :sub:`4`

      - r\ :sub:`9`
      - r\ :sub:`8`
      - r\ :sub:`7`
      - r\ :sub:`6`
      - r\ :sub:`5`
      - r\ :sub:`4`
      - r\ :sub:`3`
      - r\ :sub:`2`
      -
    * .. _V4L2-PIX-FMT-RGBA1010102:

      - ``V4L2_PIX_FMT_RGBA1010102``
      - 'RA30'

      - b\ :sub:`5`
      - b\ :sub:`4`
      - b\ :sub:`3`
      - b\ :sub:`2`
      - b\ :sub:`1`
      - b\ :sub:`0`
      - a\ :sub:`1`
      - a\ :sub:`0`

      - g\ :sub:`3`
      - g\ :sub:`2`
      - g\ :sub:`1`
      - g\ :sub:`0`
      - b\ :sub:`9`
      - b\ :sub:`8`
      - b\ :sub:`7`
      - b\ :sub:`6`

      - r\ :sub:`1`
      - r\ :sub:`0`
      - g\ :sub:`9`
      - g\ :sub:`8`
      - g\ :sub:`7`
      - g\ :sub:`6`
      - g\ :sub:`5`
      - g\ :sub:`4`

      - r\ :sub:`9`
      - r\ :sub:`8`
      - r\ :sub:`7`
      - r\ :sub:`6`
      - r\ :sub:`5`
      - r\ :sub:`4`
      - r\ :sub:`3`
      - r\ :sub:`2`
      -
    * .. _V4L2-PIX-FMT-ARGB2101010:

      - ``V4L2_PIX_FMT_ARGB2101010``
      - 'AR30'

      - b\ :sub:`7`
      - b\ :sub:`6`
      - b\ :sub:`5`
      - b\ :sub:`4`
      - b\ :sub:`3`
      - b\ :sub:`2`
      - b\ :sub:`1`
      - b\ :sub:`0`

      - g\ :sub:`5`
      - g\ :sub:`4`
      - g\ :sub:`3`
      - g\ :sub:`2`
      - g\ :sub:`1`
      - g\ :sub:`0`
      - b\ :sub:`9`
      - b\ :sub:`8`

      - r\ :sub:`3`
      - r\ :sub:`2`
      - r\ :sub:`1`
      - r\ :sub:`0`
      - g\ :sub:`9`
      - g\ :sub:`8`
      - g\ :sub:`7`
      - g\ :sub:`6`

      - a\ :sub:`1`
      - a\ :sub:`0`
      - r\ :sub:`9`
      - r\ :sub:`8`
      - r\ :sub:`7`
      - r\ :sub:`6`
      - r\ :sub:`5`
      - r\ :sub:`4`
      -

.. raw:: latex

    \endgroup


Deprecated RGB Formats
======================

+6 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ config DRM_RCAR_CMM
config DRM_RCAR_DW_HDMI
	tristate "R-Car Gen3 and RZ/G2 DU HDMI Encoder Support"
	depends on DRM && OF
	depends on DRM_RCAR_DU || COMPILE_TEST
	select DRM_DW_HDMI
	help
	  Enable support for R-Car Gen3 or RZ/G2 internal HDMI encoder.
@@ -32,6 +33,7 @@ config DRM_RCAR_DW_HDMI
config DRM_RCAR_USE_LVDS
	bool "R-Car DU LVDS Encoder Support"
	depends on DRM_BRIDGE && OF
	depends on DRM_RCAR_DU || COMPILE_TEST
	default DRM_RCAR_DU
	help
	  Enable support for the R-Car Display Unit embedded LVDS encoders.
@@ -39,12 +41,15 @@ config DRM_RCAR_USE_LVDS
config DRM_RCAR_LVDS
	def_tristate DRM_RCAR_DU
	depends on DRM_RCAR_USE_LVDS
	depends on PM
	select DRM_KMS_HELPER
	select DRM_PANEL
	select RESET_CONTROLLER

config DRM_RCAR_USE_MIPI_DSI
	bool "R-Car DU MIPI DSI Encoder Support"
	depends on DRM_BRIDGE && OF
	depends on DRM_RCAR_DU || COMPILE_TEST
	default DRM_RCAR_DU
	help
	  Enable support for the R-Car Display Unit embedded MIPI DSI encoders.
@@ -53,6 +58,7 @@ config DRM_RCAR_MIPI_DSI
	def_tristate DRM_RCAR_DU
	depends on DRM_RCAR_USE_MIPI_DSI
	select DRM_MIPI_DSI
	select RESET_CONTROLLER

config DRM_RZG2L_MIPI_DSI
	tristate "RZ/G2L MIPI DSI Encoder Support"
Loading