341 lines · plain
1.. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later2 3********************************************************************************************************************************************************************************************************************************************************************************4V4L2_META_FMT_GENERIC_8 ('MET8'), V4L2_META_FMT_GENERIC_CSI2_10 ('MC1A'), V4L2_META_FMT_GENERIC_CSI2_12 ('MC1C'), V4L2_META_FMT_GENERIC_CSI2_14 ('MC1E'), V4L2_META_FMT_GENERIC_CSI2_16 ('MC1G'), V4L2_META_FMT_GENERIC_CSI2_20 ('MC1K'), V4L2_META_FMT_GENERIC_CSI2_24 ('MC1O')5********************************************************************************************************************************************************************************************************************************************************************************6 7 8Generic line-based metadata formats9 10 11Description12===========13 14These generic line-based metadata formats define the memory layout of the data15without defining the format or meaning of the metadata itself.16 17.. _v4l2-meta-fmt-generic-8:18 19V4L2_META_FMT_GENERIC_820-----------------------21 22The V4L2_META_FMT_GENERIC_8 format is a plain 8-bit metadata format. This format23is used on CSI-2 for 8 bits per :term:`Data Unit`.24 25Additionally it is used for 16 bits per Data Unit when two bytes of metadata are26packed into one 16-bit Data Unit. Otherwise the 16 bits per pixel dataformat is27:ref:`V4L2_META_FMT_GENERIC_CSI2_16 <v4l2-meta-fmt-generic-csi2-16>`.28 29**Byte Order Of V4L2_META_FMT_GENERIC_8.**30Each cell is one byte. "M" denotes a byte of metadata.31 32.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|33 34.. flat-table:: Sample 4x2 Metadata Frame35 :header-rows: 036 :stub-columns: 037 :widths: 12 8 8 8 838 39 * - start + 0:40 - M\ :sub:`00`41 - M\ :sub:`10`42 - M\ :sub:`20`43 - M\ :sub:`30`44 * - start + 4:45 - M\ :sub:`01`46 - M\ :sub:`11`47 - M\ :sub:`21`48 - M\ :sub:`31`49 50.. _v4l2-meta-fmt-generic-csi2-10:51 52V4L2_META_FMT_GENERIC_CSI2_1053-----------------------------54 55V4L2_META_FMT_GENERIC_CSI2_10 contains 8-bit generic metadata packed in 10-bit56Data Units, with one padding byte after every four bytes of metadata. This57format is typically used by CSI-2 receivers with a source that transmits58MEDIA_BUS_FMT_META_10 and the CSI-2 receiver writes the received data to memory59as-is.60 61The packing of the data follows the MIPI CSI-2 specification and the padding of62the data is defined in the MIPI CCS specification.63 64This format is also used in conjunction with 20 bits per :term:`Data Unit`65formats that pack two bytes of metadata into one Data Unit. Otherwise the6620 bits per pixel dataformat is :ref:`V4L2_META_FMT_GENERIC_CSI2_2067<v4l2-meta-fmt-generic-csi2-20>`.68 69This format is little endian.70 71**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_10.**72Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.73 74.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{.8cm}|75 76.. flat-table:: Sample 4x2 Metadata Frame77 :header-rows: 078 :stub-columns: 079 :widths: 12 8 8 8 8 880 81 * - start + 0:82 - M\ :sub:`00`83 - M\ :sub:`10`84 - M\ :sub:`20`85 - M\ :sub:`30`86 - x87 * - start + 5:88 - M\ :sub:`01`89 - M\ :sub:`11`90 - M\ :sub:`21`91 - M\ :sub:`31`92 - x93 94.. _v4l2-meta-fmt-generic-csi2-12:95 96V4L2_META_FMT_GENERIC_CSI2_1297-----------------------------98 99V4L2_META_FMT_GENERIC_CSI2_12 contains 8-bit generic metadata packed in 12-bit100Data Units, with one padding byte after every two bytes of metadata. This format101is typically used by CSI-2 receivers with a source that transmits102MEDIA_BUS_FMT_META_12 and the CSI-2 receiver writes the received data to memory103as-is.104 105The packing of the data follows the MIPI CSI-2 specification and the padding of106the data is defined in the MIPI CCS specification.107 108This format is also used in conjunction with 24 bits per :term:`Data Unit`109formats that pack two bytes of metadata into one Data Unit. Otherwise the11024 bits per pixel dataformat is :ref:`V4L2_META_FMT_GENERIC_CSI2_24111<v4l2-meta-fmt-generic-csi2-24>`.112 113This format is little endian.114 115**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_12.**116Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.117 118.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{.8cm}|p{.8cm}|119 120.. flat-table:: Sample 4x2 Metadata Frame121 :header-rows: 0122 :stub-columns: 0123 :widths: 12 8 8 8 8 8 8124 125 * - start + 0:126 - M\ :sub:`00`127 - M\ :sub:`10`128 - x129 - M\ :sub:`20`130 - M\ :sub:`30`131 - x132 * - start + 6:133 - M\ :sub:`01`134 - M\ :sub:`11`135 - x136 - M\ :sub:`21`137 - M\ :sub:`31`138 - x139 140.. _v4l2-meta-fmt-generic-csi2-14:141 142V4L2_META_FMT_GENERIC_CSI2_14143-----------------------------144 145V4L2_META_FMT_GENERIC_CSI2_14 contains 8-bit generic metadata packed in 14-bit146Data Units, with three padding bytes after every four bytes of metadata. This147format is typically used by CSI-2 receivers with a source that transmits148MEDIA_BUS_FMT_META_14 and the CSI-2 receiver writes the received data to memory149as-is.150 151The packing of the data follows the MIPI CSI-2 specification and the padding of152the data is defined in the MIPI CCS specification.153 154This format is little endian.155 156**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_14.**157Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.158 159.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{1.2cm}|p{.8cm}|p{.8cm}|p{.8cm}|160 161.. flat-table:: Sample 4x2 Metadata Frame162 :header-rows: 0163 :stub-columns: 0164 :widths: 12 8 8 8 8 8 8 8165 166 * - start + 0:167 - M\ :sub:`00`168 - M\ :sub:`10`169 - M\ :sub:`20`170 - M\ :sub:`30`171 - x172 - x173 - x174 * - start + 7:175 - M\ :sub:`01`176 - M\ :sub:`11`177 - M\ :sub:`21`178 - M\ :sub:`31`179 - x180 - x181 - x182 183.. _v4l2-meta-fmt-generic-csi2-16:184 185V4L2_META_FMT_GENERIC_CSI2_16186-----------------------------187 188V4L2_META_FMT_GENERIC_CSI2_16 contains 8-bit generic metadata packed in 16-bit189Data Units, with one padding byte after every byte of metadata. This format is190typically used by CSI-2 receivers with a source that transmits191MEDIA_BUS_FMT_META_16 and the CSI-2 receiver writes the received data to memory192as-is.193 194The packing of the data follows the MIPI CSI-2 specification and the padding of195the data is defined in the MIPI CCS specification.196 197Some devices support more efficient packing of metadata in conjunction with19816-bit image data. In that case the dataformat is199:ref:`V4L2_META_FMT_GENERIC_8 <v4l2-meta-fmt-generic-8>`.200 201This format is little endian.202 203**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_16.**204Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.205 206.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{1.2cm}|p{.8cm}|207 208.. flat-table:: Sample 4x2 Metadata Frame209 :header-rows: 0210 :stub-columns: 0211 :widths: 12 8 8 8 8 8 8 8 8212 213 * - start + 0:214 - M\ :sub:`00`215 - x216 - M\ :sub:`10`217 - x218 - M\ :sub:`20`219 - x220 - M\ :sub:`30`221 - x222 * - start + 8:223 - M\ :sub:`01`224 - x225 - M\ :sub:`11`226 - x227 - M\ :sub:`21`228 - x229 - M\ :sub:`31`230 - x231 232.. _v4l2-meta-fmt-generic-csi2-20:233 234V4L2_META_FMT_GENERIC_CSI2_20235-----------------------------236 237V4L2_META_FMT_GENERIC_CSI2_20 contains 8-bit generic metadata packed in 20-bit238Data Units, with alternating one or two padding bytes after every byte of239metadata. This format is typically used by CSI-2 receivers with a source that240transmits MEDIA_BUS_FMT_META_20 and the CSI-2 receiver writes the received data241to memory as-is.242 243The packing of the data follows the MIPI CSI-2 specification and the padding of244the data is defined in the MIPI CCS specification.245 246Some devices support more efficient packing of metadata in conjunction with24716-bit image data. In that case the dataformat is248:ref:`V4L2_META_FMT_GENERIC_CSI2_10 <v4l2-meta-fmt-generic-csi2-10>`.249 250This format is little endian.251 252**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_20.**253Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.254 255.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{.8cm}|256 257.. flat-table:: Sample 4x2 Metadata Frame258 :header-rows: 0259 :stub-columns: 0260 :widths: 12 8 8 8 8 8 8 8 8 8 8261 262 * - start + 0:263 - M\ :sub:`00`264 - x265 - M\ :sub:`10`266 - x267 - x268 - M\ :sub:`20`269 - x270 - M\ :sub:`30`271 - x272 - x273 * - start + 10:274 - M\ :sub:`01`275 - x276 - M\ :sub:`11`277 - x278 - x279 - M\ :sub:`21`280 - x281 - M\ :sub:`31`282 - x283 - x284 285.. _v4l2-meta-fmt-generic-csi2-24:286 287V4L2_META_FMT_GENERIC_CSI2_24288-----------------------------289 290V4L2_META_FMT_GENERIC_CSI2_24 contains 8-bit generic metadata packed in 24-bit291Data Units, with two padding bytes after every byte of metadata. This format is292typically used by CSI-2 receivers with a source that transmits293MEDIA_BUS_FMT_META_24 and the CSI-2 receiver writes the received data to memory294as-is.295 296The packing of the data follows the MIPI CSI-2 specification and the padding of297the data is defined in the MIPI CCS specification.298 299Some devices support more efficient packing of metadata in conjunction with30016-bit image data. In that case the dataformat is301:ref:`V4L2_META_FMT_GENERIC_CSI2_12 <v4l2-meta-fmt-generic-csi2-12>`.302 303This format is little endian.304 305**Byte Order Of V4L2_META_FMT_GENERIC_CSI2_24.**306Each cell is one byte. "M" denotes a byte of metadata and "x" a byte of padding.307 308.. tabularcolumns:: |p{2.4cm}|p{1.2cm}|p{.8cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{.8cm}|p{1.2cm}|p{.8cm}|p{.8cm}|309 310.. flat-table:: Sample 4x2 Metadata Frame311 :header-rows: 0312 :stub-columns: 0313 :widths: 12 8 8 8 8 8 8 8 8 8 8 8 8314 315 * - start + 0:316 - M\ :sub:`00`317 - x318 - x319 - M\ :sub:`10`320 - x321 - x322 - M\ :sub:`20`323 - x324 - x325 - M\ :sub:`30`326 - x327 - x328 * - start + 12:329 - M\ :sub:`01`330 - x331 - x332 - M\ :sub:`11`333 - x334 - x335 - M\ :sub:`21`336 - x337 - x338 - M\ :sub:`31`339 - x340 - x341