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