1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 3.. _v4l2-pix-fmt-ipu3-sbggr10: 4.. _v4l2-pix-fmt-ipu3-sgbrg10: 5.. _v4l2-pix-fmt-ipu3-sgrbg10: 6.. _v4l2-pix-fmt-ipu3-srggb10: 7 8********************************************************************************************************************************************** 9V4L2_PIX_FMT_IPU3_SBGGR10 ('ip3b'), V4L2_PIX_FMT_IPU3_SGBRG10 ('ip3g'), V4L2_PIX_FMT_IPU3_SGRBG10 ('ip3G'), V4L2_PIX_FMT_IPU3_SRGGB10 ('ip3r') 10********************************************************************************************************************************************** 11 12==================== 1310-bit Bayer formats 14==================== 15 16Description 17=========== 18 19These four pixel formats are used by Intel IPU3 driver, they are raw 20sRGB / Bayer formats with 10 bits per sample with every 25 pixels packed 21to 32 bytes leaving 6 most significant bits padding in the last byte. 22The format is little endian. 23 24In other respects this format is similar to :ref:`V4L2-PIX-FMT-SRGGB10`. 25Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format. 26 27**Byte Order.** 28Each cell is one byte. 29 30.. raw:: latex 31 32 \small 33 34.. tabularcolumns:: |p{0.8cm}|p{3.3cm}|p{3.3cm}|p{3.3cm}|p{3.3cm}| 35 36.. flat-table:: 37 38 * - start + 0: 39 - B\ :sub:`0000low` 40 - G\ :sub:`0001low`\ (bits 7--2) 41 42 B\ :sub:`0000high`\ (bits 1--0) 43 - B\ :sub:`0002low`\ (bits 7--4) 44 45 G\ :sub:`0001high`\ (bits 3--0) 46 - G\ :sub:`0003low`\ (bits 7--6) 47 48 B\ :sub:`0002high`\ (bits 5--0) 49 * - start + 4: 50 - G\ :sub:`0003high` 51 - B\ :sub:`0004low` 52 - G\ :sub:`0005low`\ (bits 7--2) 53 54 B\ :sub:`0004high`\ (bits 1--0) 55 - B\ :sub:`0006low`\ (bits 7--4) 56 57 G\ :sub:`0005high`\ (bits 3--0) 58 * - start + 8: 59 - G\ :sub:`0007low`\ (bits 7--6) 60 61 B\ :sub:`0006high`\ (bits 5--0) 62 - G\ :sub:`0007high` 63 - B\ :sub:`0008low` 64 - G\ :sub:`0009low`\ (bits 7--2) 65 66 B\ :sub:`0008high`\ (bits 1--0) 67 * - start + 12: 68 - B\ :sub:`0010low`\ (bits 7--4) 69 70 G\ :sub:`0009high`\ (bits 3--0) 71 - G\ :sub:`0011low`\ (bits 7--6) 72 73 B\ :sub:`0010high`\ (bits 5--0) 74 - G\ :sub:`0011high` 75 - B\ :sub:`0012low` 76 * - start + 16: 77 - G\ :sub:`0013low`\ (bits 7--2) 78 79 B\ :sub:`0012high`\ (bits 1--0) 80 - B\ :sub:`0014low`\ (bits 7--4) 81 82 G\ :sub:`0013high`\ (bits 3--0) 83 - G\ :sub:`0015low`\ (bits 7--6) 84 85 B\ :sub:`0014high`\ (bits 5--0) 86 - G\ :sub:`0015high` 87 * - start + 20 88 - B\ :sub:`0016low` 89 - G\ :sub:`0017low`\ (bits 7--2) 90 91 B\ :sub:`0016high`\ (bits 1--0) 92 - B\ :sub:`0018low`\ (bits 7--4) 93 94 G\ :sub:`0017high`\ (bits 3--0) 95 - G\ :sub:`0019low`\ (bits 7--6) 96 97 B\ :sub:`0018high`\ (bits 5--0) 98 * - start + 24: 99 - G\ :sub:`0019high` 100 - B\ :sub:`0020low` 101 - G\ :sub:`0021low`\ (bits 7--2) 102 103 B\ :sub:`0020high`\ (bits 1--0) 104 - B\ :sub:`0022low`\ (bits 7--4) 105 106 G\ :sub:`0021high`\ (bits 3--0) 107 * - start + 28: 108 - G\ :sub:`0023low`\ (bits 7--6) 109 110 B\ :sub:`0022high`\ (bits 5--0) 111 - G\ :sub:`0023high` 112 - B\ :sub:`0024low` 113 - B\ :sub:`0024high`\ (bits 1--0) 114 * - start + 32: 115 - G\ :sub:`0100low` 116 - R\ :sub:`0101low`\ (bits 7--2) 117 118 G\ :sub:`0100high`\ (bits 1--0) 119 - G\ :sub:`0102low`\ (bits 7--4) 120 121 R\ :sub:`0101high`\ (bits 3--0) 122 - R\ :sub:`0103low`\ (bits 7--6) 123 124 G\ :sub:`0102high`\ (bits 5--0) 125 * - start + 36: 126 - R\ :sub:`0103high` 127 - G\ :sub:`0104low` 128 - R\ :sub:`0105low`\ (bits 7--2) 129 130 G\ :sub:`0104high`\ (bits 1--0) 131 - G\ :sub:`0106low`\ (bits 7--4) 132 133 R\ :sub:`0105high`\ (bits 3--0) 134 * - start + 40: 135 - R\ :sub:`0107low`\ (bits 7--6) 136 137 G\ :sub:`0106high`\ (bits 5--0) 138 - R\ :sub:`0107high` 139 - G\ :sub:`0108low` 140 - R\ :sub:`0109low`\ (bits 7--2) 141 142 G\ :sub:`0108high`\ (bits 1--0) 143 * - start + 44: 144 - G\ :sub:`0110low`\ (bits 7--4) 145 146 R\ :sub:`0109high`\ (bits 3--0) 147 - R\ :sub:`0111low`\ (bits 7--6) 148 149 G\ :sub:`0110high`\ (bits 5--0) 150 - R\ :sub:`0111high` 151 - G\ :sub:`0112low` 152 * - start + 48: 153 - R\ :sub:`0113low`\ (bits 7--2) 154 155 G\ :sub:`0112high`\ (bits 1--0) 156 - G\ :sub:`0114low`\ (bits 7--4) 157 158 R\ :sub:`0113high`\ (bits 3--0) 159 - R\ :sub:`0115low`\ (bits 7--6) 160 161 G\ :sub:`0114high`\ (bits 5--0) 162 - R\ :sub:`0115high` 163 * - start + 52: 164 - G\ :sub:`0116low` 165 - R\ :sub:`0117low`\ (bits 7--2) 166 167 G\ :sub:`0116high`\ (bits 1--0) 168 - G\ :sub:`0118low`\ (bits 7--4) 169 170 R\ :sub:`0117high`\ (bits 3--0) 171 - R\ :sub:`0119low`\ (bits 7--6) 172 173 G\ :sub:`0118high`\ (bits 5--0) 174 * - start + 56: 175 - R\ :sub:`0119high` 176 - G\ :sub:`0120low` 177 - R\ :sub:`0121low`\ (bits 7--2) 178 179 G\ :sub:`0120high`\ (bits 1--0) 180 - G\ :sub:`0122low`\ (bits 7--4) 181 182 R\ :sub:`0121high`\ (bits 3--0) 183 * - start + 60: 184 - R\ :sub:`0123low`\ (bits 7--6) 185 186 G\ :sub:`0122high`\ (bits 5--0) 187 - R\ :sub:`0123high` 188 - G\ :sub:`0124low` 189 - G\ :sub:`0124high`\ (bits 1--0) 190 * - start + 64: 191 - B\ :sub:`0200low` 192 - G\ :sub:`0201low`\ (bits 7--2) 193 194 B\ :sub:`0200high`\ (bits 1--0) 195 - B\ :sub:`0202low`\ (bits 7--4) 196 197 G\ :sub:`0201high`\ (bits 3--0) 198 - G\ :sub:`0203low`\ (bits 7--6) 199 200 B\ :sub:`0202high`\ (bits 5--0) 201 * - start + 68: 202 - G\ :sub:`0203high` 203 - B\ :sub:`0204low` 204 - G\ :sub:`0205low`\ (bits 7--2) 205 206 B\ :sub:`0204high`\ (bits 1--0) 207 - B\ :sub:`0206low`\ (bits 7--4) 208 209 G\ :sub:`0205high`\ (bits 3--0) 210 * - start + 72: 211 - G\ :sub:`0207low`\ (bits 7--6) 212 213 B\ :sub:`0206high`\ (bits 5--0) 214 - G\ :sub:`0207high` 215 - B\ :sub:`0208low` 216 - G\ :sub:`0209low`\ (bits 7--2) 217 218 B\ :sub:`0208high`\ (bits 1--0) 219 * - start + 76: 220 - B\ :sub:`0210low`\ (bits 7--4) 221 222 G\ :sub:`0209high`\ (bits 3--0) 223 - G\ :sub:`0211low`\ (bits 7--6) 224 225 B\ :sub:`0210high`\ (bits 5--0) 226 - G\ :sub:`0211high` 227 - B\ :sub:`0212low` 228 * - start + 80: 229 - G\ :sub:`0213low`\ (bits 7--2) 230 231 B\ :sub:`0212high`\ (bits 1--0) 232 - B\ :sub:`0214low`\ (bits 7--4) 233 234 G\ :sub:`0213high`\ (bits 3--0) 235 - G\ :sub:`0215low`\ (bits 7--6) 236 237 B\ :sub:`0214high`\ (bits 5--0) 238 - G\ :sub:`0215high` 239 * - start + 84: 240 - B\ :sub:`0216low` 241 - G\ :sub:`0217low`\ (bits 7--2) 242 243 B\ :sub:`0216high`\ (bits 1--0) 244 - B\ :sub:`0218low`\ (bits 7--4) 245 246 G\ :sub:`0217high`\ (bits 3--0) 247 - G\ :sub:`0219low`\ (bits 7--6) 248 249 B\ :sub:`0218high`\ (bits 5--0) 250 * - start + 88: 251 - G\ :sub:`0219high` 252 - B\ :sub:`0220low` 253 - G\ :sub:`0221low`\ (bits 7--2) 254 255 B\ :sub:`0220high`\ (bits 1--0) 256 - B\ :sub:`0222low`\ (bits 7--4) 257 258 G\ :sub:`0221high`\ (bits 3--0) 259 * - start + 92: 260 - G\ :sub:`0223low`\ (bits 7--6) 261 262 B\ :sub:`0222high`\ (bits 5--0) 263 - G\ :sub:`0223high` 264 - B\ :sub:`0224low` 265 - B\ :sub:`0224high`\ (bits 1--0) 266 * - start + 96: 267 - G\ :sub:`0300low` 268 - R\ :sub:`0301low`\ (bits 7--2) 269 270 G\ :sub:`0300high`\ (bits 1--0) 271 - G\ :sub:`0302low`\ (bits 7--4) 272 273 R\ :sub:`0301high`\ (bits 3--0) 274 - R\ :sub:`0303low`\ (bits 7--6) 275 276 G\ :sub:`0302high`\ (bits 5--0) 277 * - start + 100: 278 - R\ :sub:`0303high` 279 - G\ :sub:`0304low` 280 - R\ :sub:`0305low`\ (bits 7--2) 281 282 G\ :sub:`0304high`\ (bits 1--0) 283 - G\ :sub:`0306low`\ (bits 7--4) 284 285 R\ :sub:`0305high`\ (bits 3--0) 286 * - start + 104: 287 - R\ :sub:`0307low`\ (bits 7--6) 288 289 G\ :sub:`0306high`\ (bits 5--0) 290 - R\ :sub:`0307high` 291 - G\ :sub:`0308low` 292 - R\ :sub:`0309low`\ (bits 7--2) 293 294 G\ :sub:`0308high`\ (bits 1--0) 295 * - start + 108: 296 - G\ :sub:`0310low`\ (bits 7--4) 297 298 R\ :sub:`0309high`\ (bits 3--0) 299 - R\ :sub:`0311low`\ (bits 7--6) 300 301 G\ :sub:`0310high`\ (bits 5--0) 302 - R\ :sub:`0311high` 303 - G\ :sub:`0312low` 304 * - start + 112: 305 - R\ :sub:`0313low`\ (bits 7--2) 306 307 G\ :sub:`0312high`\ (bits 1--0) 308 - G\ :sub:`0314low`\ (bits 7--4) 309 310 R\ :sub:`0313high`\ (bits 3--0) 311 - R\ :sub:`0315low`\ (bits 7--6) 312 313 G\ :sub:`0314high`\ (bits 5--0) 314 - R\ :sub:`0315high` 315 * - start + 116: 316 - G\ :sub:`0316low` 317 - R\ :sub:`0317low`\ (bits 7--2) 318 319 G\ :sub:`0316high`\ (bits 1--0) 320 - G\ :sub:`0318low`\ (bits 7--4) 321 322 R\ :sub:`0317high`\ (bits 3--0) 323 - R\ :sub:`0319low`\ (bits 7--6) 324 325 G\ :sub:`0318high`\ (bits 5--0) 326 * - start + 120: 327 - R\ :sub:`0319high` 328 - G\ :sub:`0320low` 329 - R\ :sub:`0321low`\ (bits 7--2) 330 331 G\ :sub:`0320high`\ (bits 1--0) 332 - G\ :sub:`0322low`\ (bits 7--4) 333 334 R\ :sub:`0321high`\ (bits 3--0) 335 * - start + 124: 336 - R\ :sub:`0323low`\ (bits 7--6) 337 338 G\ :sub:`0322high`\ (bits 5--0) 339 - R\ :sub:`0323high` 340 - G\ :sub:`0324low` 341 - G\ :sub:`0324high`\ (bits 1--0) 342 343.. raw:: latex 344 345 \normalsize 346