Merge tag 'xfs-5.13-merge-5' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
[linux-2.6-microblaze.git] / Documentation / userspace-api / media / v4l / pixfmt-srggb10-ipu3.rst
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 **********************************************************************************************************************************************
9 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 **********************************************************************************************************************************************
11
12 ====================
13 10-bit Bayer formats
14 ====================
15
16 Description
17 ===========
18
19 These four pixel formats are used by Intel IPU3 driver, they are raw
20 sRGB / Bayer formats with 10 bits per sample with every 25 pixels packed
21 to 32 bytes leaving 6 most significant bits padding in the last byte.
22 The format is little endian.
23
24 In other respects this format is similar to :ref:`V4L2-PIX-FMT-SRGGB10`.
25 Below is an example of a small image in V4L2_PIX_FMT_IPU3_SBGGR10 format.
26
27 **Byte Order.**
28 Each 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