Merge tag 'f2fs-for-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk...
[sfrench/cifs-2.6.git] / Documentation / media / uapi / v4l / pixfmt-srggb10-ipu3.rst
1 .. Permission is granted to copy, distribute and/or modify this
2 .. document under the terms of the GNU Free Documentation License,
3 .. Version 1.1 or any later version published by the Free Software
4 .. Foundation, with no Invariant Sections, no Front-Cover Texts
5 .. and no Back-Cover Texts. A copy of the license is included at
6 .. Documentation/media/uapi/fdl-appendix.rst.
7 ..
8 .. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections
9
10 .. _v4l2-pix-fmt-ipu3-sbggr10:
11 .. _v4l2-pix-fmt-ipu3-sgbrg10:
12 .. _v4l2-pix-fmt-ipu3-sgrbg10:
13 .. _v4l2-pix-fmt-ipu3-srggb10:
14
15 **********************************************************************************************************************************************
16 V4L2_PIX_FMT_IPU3_SBGGR10 ('ip3b'), V4L2_PIX_FMT_IPU3_SGBRG10 ('ip3g'), V4L2_PIX_FMT_IPU3_SGRBG10 ('ip3G'), V4L2_PIX_FMT_IPU3_SRGGB10 ('ip3r')
17 **********************************************************************************************************************************************
18
19 10-bit Bayer formats
20
21 Description
22 ===========
23
24 These four pixel formats are used by Intel IPU3 driver, they are raw
25 sRGB / Bayer formats with 10 bits per sample with every 25 pixels packed
26 to 32 bytes leaving 6 most significant bits padding in the last byte.
27 The format is little endian.
28
29 In other respects this format is similar to :ref:`V4L2-PIX-FMT-SRGGB10`.
30 Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format.
31
32 **Byte Order.**
33 Each cell is one byte.
34
35 .. tabularcolumns:: |p{0.8cm}|p{4.0cm}|p{4.0cm}|p{4.0cm}|p{4.0cm}|
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)