From: Randy Li <ay...@soulik.info>

The pixel formats used in Synpatics video smart platform
are too many. It is impossible to store them in fourcc
namespace.

Signed-off-by: Randy Li <ay...@soulik.info>
---
 .../media/v4l/pixfmt-synaptics.rst            | 80 +++++++++++++++++++
 .../userspace-api/media/v4l/pixfmt.rst        |  1 +
 2 files changed, 81 insertions(+)
 create mode 100644 Documentation/userspace-api/media/v4l/pixfmt-synaptics.rst

diff --git a/Documentation/userspace-api/media/v4l/pixfmt-synaptics.rst 
b/Documentation/userspace-api/media/v4l/pixfmt-synaptics.rst
new file mode 100644
index 000000000000..bc86737febb7
--- /dev/null
+++ b/Documentation/userspace-api/media/v4l/pixfmt-synaptics.rst
@@ -0,0 +1,80 @@
+.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
+
+.. _pixfmt-synaptics:
+
+***************************
+Synaptics Pixel Format Modifiers
+***************************
+
+The tiled pixel formats in synpatics video smart platform have
+many variants. Here just list the most widely pixel format modifiers
+here. The value here should be the same as the one defined in the
+``drm_fourcc.h`` file.
+
+.. tabularcolumns:: |p{6.6cm}|p{2.2cm}|p{8.5cm}|
+
+.. raw:: latex
+
+       \small
+
+.. _reserved-formats:
+
+.. flat-table:: Synpatics Image Format Modifiers
+       :header-rows:  1
+       :stub-columns: 0
+       :widths:           3 1 4
+
+       * - Identifier
+         - Code
+         - Details
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H1:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H1``
+         - '0x0b00000000000101'
+         - The plain uncompressed 8bits tile format. It sounds similar to
+       Intel's Y-tile. but it won't take any pixel from the next X direction
+       in a tile group. The line stride and image height must be aligned to
+       a multiple of 16. The height of chrominance plane would plus 8.
+       This modifier current would be in conjunction with ``V4L2_PIX_FMT_NV12``
+       or ``V4L2_PIX_FMT_NV12M``.
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H3P8:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H3P8``
+         - '0x0b00000000080301'
+         - The plain uncompressed 10bits tile format. It stores pixel in 2D
+       3x4 tiles with a 8bits padding to each of tiles. Then tile is in a
+       128 bytes cache line. This modifier would be in conjunction with
+       ``V4L2_PIX_FMT_NV15``.
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H1-64L4C:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H1_64L4C``
+         - '0x0b00000026010101'
+         - Compressed ``V4L2_PIX_FMT_MOD_SYNA_V4H1``. It stores 64x4 pixels
+       in 1x4 tiles. Each plane would request a meta plane (MTR plane) for
+       decompression. A MTR plane would have a 32 bytes parameters set.
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H3P8-64L4C:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H3P8_64L4C``
+         - '0x0b00000026090301'
+         - Compressed ``V4L2_PIX_FMT_MOD_SYNA_V4H3``. It stores 64x4 pixels
+       in tiles. Each plane would request a meta plane (MTR plane) for
+       decompression. A MTR plane would have a 32 bytes parameters set.
+
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H1-128L128C:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H1_128L128C``
+         - '0x0b00000077010101'
+         - Compressed ``V4L2_PIX_FMT_MOD_SYNA_V4H1``. It stores 128x128 pixels
+       in 1x4 tiles. Each plane would request a meta plane (MTR plane) for
+       decompression. A MTR plane would have a 32 bytes parameters set.
+       * .. _V4L2-PIX-FMT-MOD-SYNA-V4H3P8-128L128C:
+
+         - ``V4L2_PIX_FMT_MOD_SYNA_V4H3P8_128L128C``
+         - '0x0b00000077090301'
+         - Compressed ``V4L2_PIX_FMT_MOD_SYNA_V4H3``. It stores 128x128 pixels
+       in tiles. Each plane would request a meta plane (MTR plane) for
+       decompression. A MTR plane would have a 32 bytes parameters set.
+
+.. raw:: latex
+
+       \normalsize
diff --git a/Documentation/userspace-api/media/v4l/pixfmt.rst 
b/Documentation/userspace-api/media/v4l/pixfmt.rst
index 11dab4a90630..bfe4fdb52b6b 100644
--- a/Documentation/userspace-api/media/v4l/pixfmt.rst
+++ b/Documentation/userspace-api/media/v4l/pixfmt.rst
@@ -36,3 +36,4 @@ see also :ref:`VIDIOC_G_FBUF <VIDIOC_G_FBUF>`.)
     colorspaces
     colorspaces-defs
     colorspaces-details
+       pixfmt-synaptics 
-- 
2.17.1

Reply via email to