Documentation/userspace-api/media/v4l/pixfmt-srggb10-ipu3.rst

Source file repositories/reference/linux-study-clean/Documentation/userspace-api/media/v4l/pixfmt-srggb10-ipu3.rst

File Facts

System
Linux kernel
Corpus path
Documentation/userspace-api/media/v4l/pixfmt-srggb10-ipu3.rst
Extension
.rst
Size
9241 bytes
Lines
347
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
.. c:namespace:: V4L

.. _v4l2-pix-fmt-ipu3-sbggr10:
.. _v4l2-pix-fmt-ipu3-sgbrg10:
.. _v4l2-pix-fmt-ipu3-sgrbg10:
.. _v4l2-pix-fmt-ipu3-srggb10:

**********************************************************************************************************************************************
V4L2_PIX_FMT_IPU3_SBGGR10 ('ip3b'), V4L2_PIX_FMT_IPU3_SGBRG10 ('ip3g'), V4L2_PIX_FMT_IPU3_SGRBG10 ('ip3G'), V4L2_PIX_FMT_IPU3_SRGGB10 ('ip3r')
**********************************************************************************************************************************************

====================
10-bit Bayer formats
====================

Description
===========

These four pixel formats are used by Intel IPU3 driver, they are raw
sRGB / Bayer formats with 10 bits per sample with every 25 pixels packed
to 32 bytes leaving 6 most significant bits padding in the last byte.
The format is little endian.

In other respects this format is similar to :ref:`V4L2-PIX-FMT-SRGGB10`.
Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format.

**Byte Order.**
Each cell is one byte.

.. raw:: latex

    \small

.. tabularcolumns:: |p{0.8cm}|p{3.3cm}|p{3.3cm}|p{3.3cm}|p{3.3cm}|

.. flat-table::

    * - start + 0:
      - B\ :sub:`0000low`
      - G\ :sub:`0001low`\ (bits 7--2)

        B\ :sub:`0000high`\ (bits 1--0)
      - B\ :sub:`0002low`\ (bits 7--4)

        G\ :sub:`0001high`\ (bits 3--0)
      - G\ :sub:`0003low`\ (bits 7--6)

        B\ :sub:`0002high`\ (bits 5--0)
    * - start + 4:
      - G\ :sub:`0003high`
      - B\ :sub:`0004low`
      - G\ :sub:`0005low`\ (bits 7--2)

        B\ :sub:`0004high`\ (bits 1--0)
      - B\ :sub:`0006low`\ (bits 7--4)

        G\ :sub:`0005high`\ (bits 3--0)
    * - start + 8:
      - G\ :sub:`0007low`\ (bits 7--6)

        B\ :sub:`0006high`\ (bits 5--0)
      - G\ :sub:`0007high`
      - B\ :sub:`0008low`
      - G\ :sub:`0009low`\ (bits 7--2)

        B\ :sub:`0008high`\ (bits 1--0)
    * - start + 12:
      - B\ :sub:`0010low`\ (bits 7--4)

Annotation

Implementation Notes