2.6.1.6. 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

2.6.1.6.1. 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 V4L2_PIX_FMT_SRGGB10 (‘RG10’), V4L2_PIX_FMT_SGRBG10 (‘BA10’), V4L2_PIX_FMT_SGBRG10 (‘GB10’), V4L2_PIX_FMT_SBGGR10 (‘BG10’),. Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format.

Byte Order. Each cell is one byte.

start + 0: B0000low

G0001low(bits 7–2)

B0000high(bits 1–0)

B0002low(bits 7–4)

G0001high(bits 3–0)

G0003low(bits 7–6)

B0002high(bits 5–0)

start + 4: G0003high B0004low

G0005low(bits 7–2)

B0004high(bits 1–0)

B0006low(bits 7–4)

G0005high(bits 3–0)

start + 8:

G0007low(bits 7–6)

B0006high(bits 5–0)

G0007high B0008low

G0009low(bits 7–2)

B0008high(bits 1–0)

start + 12:

B0010low(bits 7–4)

G0009high(bits 3–0)

G0011low(bits 7–6)

B0010high(bits 5–0)

G0011high B0012low
start + 16:

G0013low(bits 7–2)

B0012high(bits 1–0)

B0014low(bits 7–4)

G0013high(bits 3–0)

G0015low(bits 7–6)

B0014high(bits 5–0)

G0015high
start + 20 B0016low

G0017low(bits 7–2)

B0016high(bits 1–0)

B0018low(bits 7–4)

G0017high(bits 3–0)

G0019low(bits 7–6)

B0018high(bits 5–0)

start + 24: G0019high B0020low

G0021low(bits 7–2)

B0020high(bits 1–0)

B0022low(bits 7–4)

G0021high(bits 3–0)

start + 28:

G0023low(bits 7–6)

B0022high(bits 5–0)

G0023high B0024low B0024high(bits 1–0)
start + 32: G0100low

R0101low(bits 7–2)

G0100high(bits 1–0)

G0102low(bits 7–4)

R0101high(bits 3–0)

R0103low(bits 7–6)

G0102high(bits 5–0)

start + 36: R0103high G0104low

R0105low(bits 7–2)

G0104high(bits 1–0)

G0106low(bits 7–4)

R0105high(bits 3–0)

start + 40:

R0107low(bits 7–6)

G0106high(bits 5–0)

R0107high G0108low

R0109low(bits 7–2)

G0108high(bits 1–0)

start + 44:

G0110low(bits 7–4)

R0109high(bits 3–0)

R0111low(bits 7–6)

G0110high(bits 5–0)

R0111high G0112low
start + 48:

R0113low(bits 7–2)

G0112high(bits 1–0)

G0114low(bits 7–4)

R0113high(bits 3–0)

R0115low(bits 7–6)

G0114high(bits 5–0)

R0115high
start + 52: G0116low

R0117low(bits 7–2)

G0116high(bits 1–0)

G0118low(bits 7–4)

R0117high(bits 3–0)

R0119low(bits 7–6)

G0118high(bits 5–0)

start + 56: R0119high G0120low

R0121low(bits 7–2)

G0120high(bits 1–0)

G0122low(bits 7–4)

R0121high(bits 3–0)

start + 60:

R0123low(bits 7–6)

G0122high(bits 5–0)

R0123high G0124low G0124high(bits 1–0)
start + 64: B0200low

G0201low(bits 7–2)

B0200high(bits 1–0)

B0202low(bits 7–4)

G0201high(bits 3–0)

G0203low(bits 7–6)

B0202high(bits 5–0)

start + 68: G0203high B0204low

G0205low(bits 7–2)

B0204high(bits 1–0)

B0206low(bits 7–4)

G0205high(bits 3–0)

start + 72:

G0207low(bits 7–6)

B0206high(bits 5–0)

G0207high B0208low

G0209low(bits 7–2)

B0208high(bits 1–0)

start + 76:

B0210low(bits 7–4)

G0209high(bits 3–0)

G0211low(bits 7–6)

B0210high(bits 5–0)

G0211high B0212low
start + 80:

G0213low(bits 7–2)

B0212high(bits 1–0)

B0214low(bits 7–4)

G0213high(bits 3–0)

G0215low(bits 7–6)

B0214high(bits 5–0)

G0215high
start + 84: B0216low

G0217low(bits 7–2)

B0216high(bits 1–0)

B0218low(bits 7–4)

G0217high(bits 3–0)

G0219low(bits 7–6)

B0218high(bits 5–0)

start + 88: G0219high B0220low

G0221low(bits 7–2)

B0220high(bits 1–0)

B0222low(bits 7–4)

G0221high(bits 3–0)

start + 92:

G0223low(bits 7–6)

B0222high(bits 5–0)

G0223high B0224low B0224high(bits 1–0)
start + 96: G0300low

R0301low(bits 7–2)

G0300high(bits 1–0)

G0302low(bits 7–4)

R0301high(bits 3–0)

R0303low(bits 7–6)

G0302high(bits 5–0)

start + 100: R0303high G0304low

R0305low(bits 7–2)

G0304high(bits 1–0)

G0306low(bits 7–4)

R0305high(bits 3–0)

start + 104:

R0307low(bits 7–6)

G0306high(bits 5–0)

R0307high G0308low

R0309low(bits 7–2)

G0308high(bits 1–0)

start + 108:

G0310low(bits 7–4)

R0309high(bits 3–0)

R0311low(bits 7–6)

G0310high(bits 5–0)

R0311high G0312low
start + 112:

R0313low(bits 7–2)

G0312high(bits 1–0)

G0314low(bits 7–4)

R0313high(bits 3–0)

R0315low(bits 7–6)

G0314high(bits 5–0)

R0315high
start + 116: G0316low

R0317low(bits 7–2)

G0316high(bits 1–0)

G0318low(bits 7–4)

R0317high(bits 3–0)

R0319low(bits 7–6)

G0318high(bits 5–0)

start + 120: R0319high G0320low

R0321low(bits 7–2)

G0320high(bits 1–0)

G0322low(bits 7–4)

R0321high(bits 3–0)

start + 124:

R0323low(bits 7–6)

G0322high(bits 5–0)

R0323high G0324low G0324high(bits 1–0)