1 | // Automatically generated by build.rs |
2 | use crate::consts; |
3 | #[derive (Copy, Clone, Eq, PartialEq, Hash)] |
4 | #[cfg_attr (feature = "serde" , derive(serde::Serialize, serde::Deserialize))] |
5 | #[repr (u32)] |
6 | pub enum DrmFourcc { |
7 | Abgr1555 = consts::DRM_FOURCC_ABGR1555, |
8 | Abgr16161616f = consts::DRM_FOURCC_ABGR16161616F, |
9 | Abgr2101010 = consts::DRM_FOURCC_ABGR2101010, |
10 | Abgr4444 = consts::DRM_FOURCC_ABGR4444, |
11 | Abgr8888 = consts::DRM_FOURCC_ABGR8888, |
12 | Argb1555 = consts::DRM_FOURCC_ARGB1555, |
13 | Argb16161616f = consts::DRM_FOURCC_ARGB16161616F, |
14 | Argb2101010 = consts::DRM_FOURCC_ARGB2101010, |
15 | Argb4444 = consts::DRM_FOURCC_ARGB4444, |
16 | Argb8888 = consts::DRM_FOURCC_ARGB8888, |
17 | Axbxgxrx106106106106 = consts::DRM_FOURCC_AXBXGXRX106106106106, |
18 | Ayuv = consts::DRM_FOURCC_AYUV, |
19 | Bgr233 = consts::DRM_FOURCC_BGR233, |
20 | Bgr565 = consts::DRM_FOURCC_BGR565, |
21 | Bgr565_a8 = consts::DRM_FOURCC_BGR565_A8, |
22 | Bgr888 = consts::DRM_FOURCC_BGR888, |
23 | Bgr888_a8 = consts::DRM_FOURCC_BGR888_A8, |
24 | Bgra1010102 = consts::DRM_FOURCC_BGRA1010102, |
25 | Bgra4444 = consts::DRM_FOURCC_BGRA4444, |
26 | Bgra5551 = consts::DRM_FOURCC_BGRA5551, |
27 | Bgra8888 = consts::DRM_FOURCC_BGRA8888, |
28 | Bgrx1010102 = consts::DRM_FOURCC_BGRX1010102, |
29 | Bgrx4444 = consts::DRM_FOURCC_BGRX4444, |
30 | Bgrx5551 = consts::DRM_FOURCC_BGRX5551, |
31 | Bgrx8888 = consts::DRM_FOURCC_BGRX8888, |
32 | Bgrx8888_a8 = consts::DRM_FOURCC_BGRX8888_A8, |
33 | Big_endian = consts::DRM_FOURCC_BIG_ENDIAN, |
34 | C8 = consts::DRM_FOURCC_C8, |
35 | Gr1616 = consts::DRM_FOURCC_GR1616, |
36 | Gr88 = consts::DRM_FOURCC_GR88, |
37 | Nv12 = consts::DRM_FOURCC_NV12, |
38 | Nv15 = consts::DRM_FOURCC_NV15, |
39 | Nv16 = consts::DRM_FOURCC_NV16, |
40 | Nv21 = consts::DRM_FOURCC_NV21, |
41 | Nv24 = consts::DRM_FOURCC_NV24, |
42 | Nv42 = consts::DRM_FOURCC_NV42, |
43 | Nv61 = consts::DRM_FOURCC_NV61, |
44 | P010 = consts::DRM_FOURCC_P010, |
45 | P012 = consts::DRM_FOURCC_P012, |
46 | P016 = consts::DRM_FOURCC_P016, |
47 | P210 = consts::DRM_FOURCC_P210, |
48 | Q401 = consts::DRM_FOURCC_Q401, |
49 | Q410 = consts::DRM_FOURCC_Q410, |
50 | R16 = consts::DRM_FOURCC_R16, |
51 | R8 = consts::DRM_FOURCC_R8, |
52 | Rg1616 = consts::DRM_FOURCC_RG1616, |
53 | Rg88 = consts::DRM_FOURCC_RG88, |
54 | Rgb332 = consts::DRM_FOURCC_RGB332, |
55 | Rgb565 = consts::DRM_FOURCC_RGB565, |
56 | Rgb565_a8 = consts::DRM_FOURCC_RGB565_A8, |
57 | Rgb888 = consts::DRM_FOURCC_RGB888, |
58 | Rgb888_a8 = consts::DRM_FOURCC_RGB888_A8, |
59 | Rgba1010102 = consts::DRM_FOURCC_RGBA1010102, |
60 | Rgba4444 = consts::DRM_FOURCC_RGBA4444, |
61 | Rgba5551 = consts::DRM_FOURCC_RGBA5551, |
62 | Rgba8888 = consts::DRM_FOURCC_RGBA8888, |
63 | Rgbx1010102 = consts::DRM_FOURCC_RGBX1010102, |
64 | Rgbx4444 = consts::DRM_FOURCC_RGBX4444, |
65 | Rgbx5551 = consts::DRM_FOURCC_RGBX5551, |
66 | Rgbx8888 = consts::DRM_FOURCC_RGBX8888, |
67 | Rgbx8888_a8 = consts::DRM_FOURCC_RGBX8888_A8, |
68 | Uyvy = consts::DRM_FOURCC_UYVY, |
69 | Vuy101010 = consts::DRM_FOURCC_VUY101010, |
70 | Vuy888 = consts::DRM_FOURCC_VUY888, |
71 | Vyuy = consts::DRM_FOURCC_VYUY, |
72 | X0l0 = consts::DRM_FOURCC_X0L0, |
73 | X0l2 = consts::DRM_FOURCC_X0L2, |
74 | Xbgr1555 = consts::DRM_FOURCC_XBGR1555, |
75 | Xbgr16161616f = consts::DRM_FOURCC_XBGR16161616F, |
76 | Xbgr2101010 = consts::DRM_FOURCC_XBGR2101010, |
77 | Xbgr4444 = consts::DRM_FOURCC_XBGR4444, |
78 | Xbgr8888 = consts::DRM_FOURCC_XBGR8888, |
79 | Xbgr8888_a8 = consts::DRM_FOURCC_XBGR8888_A8, |
80 | Xrgb1555 = consts::DRM_FOURCC_XRGB1555, |
81 | Xrgb16161616f = consts::DRM_FOURCC_XRGB16161616F, |
82 | Xrgb2101010 = consts::DRM_FOURCC_XRGB2101010, |
83 | Xrgb4444 = consts::DRM_FOURCC_XRGB4444, |
84 | Xrgb8888 = consts::DRM_FOURCC_XRGB8888, |
85 | Xrgb8888_a8 = consts::DRM_FOURCC_XRGB8888_A8, |
86 | Xvyu12_16161616 = consts::DRM_FOURCC_XVYU12_16161616, |
87 | Xvyu16161616 = consts::DRM_FOURCC_XVYU16161616, |
88 | Xvyu2101010 = consts::DRM_FOURCC_XVYU2101010, |
89 | Xyuv8888 = consts::DRM_FOURCC_XYUV8888, |
90 | Y0l0 = consts::DRM_FOURCC_Y0L0, |
91 | Y0l2 = consts::DRM_FOURCC_Y0L2, |
92 | Y210 = consts::DRM_FOURCC_Y210, |
93 | Y212 = consts::DRM_FOURCC_Y212, |
94 | Y216 = consts::DRM_FOURCC_Y216, |
95 | Y410 = consts::DRM_FOURCC_Y410, |
96 | Y412 = consts::DRM_FOURCC_Y412, |
97 | Y416 = consts::DRM_FOURCC_Y416, |
98 | Yuv410 = consts::DRM_FOURCC_YUV410, |
99 | Yuv411 = consts::DRM_FOURCC_YUV411, |
100 | Yuv420 = consts::DRM_FOURCC_YUV420, |
101 | Yuv420_10bit = consts::DRM_FOURCC_YUV420_10BIT, |
102 | Yuv420_8bit = consts::DRM_FOURCC_YUV420_8BIT, |
103 | Yuv422 = consts::DRM_FOURCC_YUV422, |
104 | Yuv444 = consts::DRM_FOURCC_YUV444, |
105 | Yuyv = consts::DRM_FOURCC_YUYV, |
106 | Yvu410 = consts::DRM_FOURCC_YVU410, |
107 | Yvu411 = consts::DRM_FOURCC_YVU411, |
108 | Yvu420 = consts::DRM_FOURCC_YVU420, |
109 | Yvu422 = consts::DRM_FOURCC_YVU422, |
110 | Yvu444 = consts::DRM_FOURCC_YVU444, |
111 | Yvyu = consts::DRM_FOURCC_YVYU, |
112 | } |
113 | impl DrmFourcc { |
114 | pub(crate) fn from_u32(n: u32) -> Option<Self> { |
115 | match n { |
116 | consts::DRM_FOURCC_ABGR1555 => Some(Self::Abgr1555), |
117 | consts::DRM_FOURCC_ABGR16161616F => Some(Self::Abgr16161616f), |
118 | consts::DRM_FOURCC_ABGR2101010 => Some(Self::Abgr2101010), |
119 | consts::DRM_FOURCC_ABGR4444 => Some(Self::Abgr4444), |
120 | consts::DRM_FOURCC_ABGR8888 => Some(Self::Abgr8888), |
121 | consts::DRM_FOURCC_ARGB1555 => Some(Self::Argb1555), |
122 | consts::DRM_FOURCC_ARGB16161616F => Some(Self::Argb16161616f), |
123 | consts::DRM_FOURCC_ARGB2101010 => Some(Self::Argb2101010), |
124 | consts::DRM_FOURCC_ARGB4444 => Some(Self::Argb4444), |
125 | consts::DRM_FOURCC_ARGB8888 => Some(Self::Argb8888), |
126 | consts::DRM_FOURCC_AXBXGXRX106106106106 => Some(Self::Axbxgxrx106106106106), |
127 | consts::DRM_FOURCC_AYUV => Some(Self::Ayuv), |
128 | consts::DRM_FOURCC_BGR233 => Some(Self::Bgr233), |
129 | consts::DRM_FOURCC_BGR565 => Some(Self::Bgr565), |
130 | consts::DRM_FOURCC_BGR565_A8 => Some(Self::Bgr565_a8), |
131 | consts::DRM_FOURCC_BGR888 => Some(Self::Bgr888), |
132 | consts::DRM_FOURCC_BGR888_A8 => Some(Self::Bgr888_a8), |
133 | consts::DRM_FOURCC_BGRA1010102 => Some(Self::Bgra1010102), |
134 | consts::DRM_FOURCC_BGRA4444 => Some(Self::Bgra4444), |
135 | consts::DRM_FOURCC_BGRA5551 => Some(Self::Bgra5551), |
136 | consts::DRM_FOURCC_BGRA8888 => Some(Self::Bgra8888), |
137 | consts::DRM_FOURCC_BGRX1010102 => Some(Self::Bgrx1010102), |
138 | consts::DRM_FOURCC_BGRX4444 => Some(Self::Bgrx4444), |
139 | consts::DRM_FOURCC_BGRX5551 => Some(Self::Bgrx5551), |
140 | consts::DRM_FOURCC_BGRX8888 => Some(Self::Bgrx8888), |
141 | consts::DRM_FOURCC_BGRX8888_A8 => Some(Self::Bgrx8888_a8), |
142 | consts::DRM_FOURCC_BIG_ENDIAN => Some(Self::Big_endian), |
143 | consts::DRM_FOURCC_C8 => Some(Self::C8), |
144 | consts::DRM_FOURCC_GR1616 => Some(Self::Gr1616), |
145 | consts::DRM_FOURCC_GR88 => Some(Self::Gr88), |
146 | consts::DRM_FOURCC_NV12 => Some(Self::Nv12), |
147 | consts::DRM_FOURCC_NV15 => Some(Self::Nv15), |
148 | consts::DRM_FOURCC_NV16 => Some(Self::Nv16), |
149 | consts::DRM_FOURCC_NV21 => Some(Self::Nv21), |
150 | consts::DRM_FOURCC_NV24 => Some(Self::Nv24), |
151 | consts::DRM_FOURCC_NV42 => Some(Self::Nv42), |
152 | consts::DRM_FOURCC_NV61 => Some(Self::Nv61), |
153 | consts::DRM_FOURCC_P010 => Some(Self::P010), |
154 | consts::DRM_FOURCC_P012 => Some(Self::P012), |
155 | consts::DRM_FOURCC_P016 => Some(Self::P016), |
156 | consts::DRM_FOURCC_P210 => Some(Self::P210), |
157 | consts::DRM_FOURCC_Q401 => Some(Self::Q401), |
158 | consts::DRM_FOURCC_Q410 => Some(Self::Q410), |
159 | consts::DRM_FOURCC_R16 => Some(Self::R16), |
160 | consts::DRM_FOURCC_R8 => Some(Self::R8), |
161 | consts::DRM_FOURCC_RG1616 => Some(Self::Rg1616), |
162 | consts::DRM_FOURCC_RG88 => Some(Self::Rg88), |
163 | consts::DRM_FOURCC_RGB332 => Some(Self::Rgb332), |
164 | consts::DRM_FOURCC_RGB565 => Some(Self::Rgb565), |
165 | consts::DRM_FOURCC_RGB565_A8 => Some(Self::Rgb565_a8), |
166 | consts::DRM_FOURCC_RGB888 => Some(Self::Rgb888), |
167 | consts::DRM_FOURCC_RGB888_A8 => Some(Self::Rgb888_a8), |
168 | consts::DRM_FOURCC_RGBA1010102 => Some(Self::Rgba1010102), |
169 | consts::DRM_FOURCC_RGBA4444 => Some(Self::Rgba4444), |
170 | consts::DRM_FOURCC_RGBA5551 => Some(Self::Rgba5551), |
171 | consts::DRM_FOURCC_RGBA8888 => Some(Self::Rgba8888), |
172 | consts::DRM_FOURCC_RGBX1010102 => Some(Self::Rgbx1010102), |
173 | consts::DRM_FOURCC_RGBX4444 => Some(Self::Rgbx4444), |
174 | consts::DRM_FOURCC_RGBX5551 => Some(Self::Rgbx5551), |
175 | consts::DRM_FOURCC_RGBX8888 => Some(Self::Rgbx8888), |
176 | consts::DRM_FOURCC_RGBX8888_A8 => Some(Self::Rgbx8888_a8), |
177 | consts::DRM_FOURCC_UYVY => Some(Self::Uyvy), |
178 | consts::DRM_FOURCC_VUY101010 => Some(Self::Vuy101010), |
179 | consts::DRM_FOURCC_VUY888 => Some(Self::Vuy888), |
180 | consts::DRM_FOURCC_VYUY => Some(Self::Vyuy), |
181 | consts::DRM_FOURCC_X0L0 => Some(Self::X0l0), |
182 | consts::DRM_FOURCC_X0L2 => Some(Self::X0l2), |
183 | consts::DRM_FOURCC_XBGR1555 => Some(Self::Xbgr1555), |
184 | consts::DRM_FOURCC_XBGR16161616F => Some(Self::Xbgr16161616f), |
185 | consts::DRM_FOURCC_XBGR2101010 => Some(Self::Xbgr2101010), |
186 | consts::DRM_FOURCC_XBGR4444 => Some(Self::Xbgr4444), |
187 | consts::DRM_FOURCC_XBGR8888 => Some(Self::Xbgr8888), |
188 | consts::DRM_FOURCC_XBGR8888_A8 => Some(Self::Xbgr8888_a8), |
189 | consts::DRM_FOURCC_XRGB1555 => Some(Self::Xrgb1555), |
190 | consts::DRM_FOURCC_XRGB16161616F => Some(Self::Xrgb16161616f), |
191 | consts::DRM_FOURCC_XRGB2101010 => Some(Self::Xrgb2101010), |
192 | consts::DRM_FOURCC_XRGB4444 => Some(Self::Xrgb4444), |
193 | consts::DRM_FOURCC_XRGB8888 => Some(Self::Xrgb8888), |
194 | consts::DRM_FOURCC_XRGB8888_A8 => Some(Self::Xrgb8888_a8), |
195 | consts::DRM_FOURCC_XVYU12_16161616 => Some(Self::Xvyu12_16161616), |
196 | consts::DRM_FOURCC_XVYU16161616 => Some(Self::Xvyu16161616), |
197 | consts::DRM_FOURCC_XVYU2101010 => Some(Self::Xvyu2101010), |
198 | consts::DRM_FOURCC_XYUV8888 => Some(Self::Xyuv8888), |
199 | consts::DRM_FOURCC_Y0L0 => Some(Self::Y0l0), |
200 | consts::DRM_FOURCC_Y0L2 => Some(Self::Y0l2), |
201 | consts::DRM_FOURCC_Y210 => Some(Self::Y210), |
202 | consts::DRM_FOURCC_Y212 => Some(Self::Y212), |
203 | consts::DRM_FOURCC_Y216 => Some(Self::Y216), |
204 | consts::DRM_FOURCC_Y410 => Some(Self::Y410), |
205 | consts::DRM_FOURCC_Y412 => Some(Self::Y412), |
206 | consts::DRM_FOURCC_Y416 => Some(Self::Y416), |
207 | consts::DRM_FOURCC_YUV410 => Some(Self::Yuv410), |
208 | consts::DRM_FOURCC_YUV411 => Some(Self::Yuv411), |
209 | consts::DRM_FOURCC_YUV420 => Some(Self::Yuv420), |
210 | consts::DRM_FOURCC_YUV420_10BIT => Some(Self::Yuv420_10bit), |
211 | consts::DRM_FOURCC_YUV420_8BIT => Some(Self::Yuv420_8bit), |
212 | consts::DRM_FOURCC_YUV422 => Some(Self::Yuv422), |
213 | consts::DRM_FOURCC_YUV444 => Some(Self::Yuv444), |
214 | consts::DRM_FOURCC_YUYV => Some(Self::Yuyv), |
215 | consts::DRM_FOURCC_YVU410 => Some(Self::Yvu410), |
216 | consts::DRM_FOURCC_YVU411 => Some(Self::Yvu411), |
217 | consts::DRM_FOURCC_YVU420 => Some(Self::Yvu420), |
218 | consts::DRM_FOURCC_YVU422 => Some(Self::Yvu422), |
219 | consts::DRM_FOURCC_YVU444 => Some(Self::Yvu444), |
220 | consts::DRM_FOURCC_YVYU => Some(Self::Yvyu), |
221 | _ => None, |
222 | } |
223 | } |
224 | } |
225 | #[derive (Debug, Copy, Clone, Eq, PartialEq, Hash)] |
226 | #[cfg_attr (feature = "serde" , derive(serde::Serialize, serde::Deserialize))] |
227 | #[repr (u8)] |
228 | pub enum DrmVendor { |
229 | Allwinner = consts::DRM_FOURCC_ALLWINNER, |
230 | Amd = consts::DRM_FOURCC_AMD, |
231 | Amlogic = consts::DRM_FOURCC_AMLOGIC, |
232 | Arm = consts::DRM_FOURCC_ARM, |
233 | Broadcom = consts::DRM_FOURCC_BROADCOM, |
234 | Intel = consts::DRM_FOURCC_INTEL, |
235 | Nvidia = consts::DRM_FOURCC_NVIDIA, |
236 | Qcom = consts::DRM_FOURCC_QCOM, |
237 | Samsung = consts::DRM_FOURCC_SAMSUNG, |
238 | Vivante = consts::DRM_FOURCC_VIVANTE, |
239 | } |
240 | impl DrmVendor { |
241 | pub(crate) fn from_u8(n: u8) -> Option<Self> { |
242 | match n { |
243 | consts::DRM_FOURCC_ALLWINNER => Some(Self::Allwinner), |
244 | consts::DRM_FOURCC_AMD => Some(Self::Amd), |
245 | consts::DRM_FOURCC_AMLOGIC => Some(Self::Amlogic), |
246 | consts::DRM_FOURCC_ARM => Some(Self::Arm), |
247 | consts::DRM_FOURCC_BROADCOM => Some(Self::Broadcom), |
248 | consts::DRM_FOURCC_INTEL => Some(Self::Intel), |
249 | consts::DRM_FOURCC_NVIDIA => Some(Self::Nvidia), |
250 | consts::DRM_FOURCC_QCOM => Some(Self::Qcom), |
251 | consts::DRM_FOURCC_SAMSUNG => Some(Self::Samsung), |
252 | consts::DRM_FOURCC_VIVANTE => Some(Self::Vivante), |
253 | _ => None, |
254 | } |
255 | } |
256 | } |
257 | #[derive (Debug, Copy, Clone)] |
258 | #[cfg_attr (feature = "serde" , derive(serde::Serialize, serde::Deserialize))] |
259 | pub enum DrmModifier { |
260 | Allwinner_tiled, |
261 | Broadcom_sand128, |
262 | Broadcom_sand256, |
263 | Broadcom_sand32, |
264 | Broadcom_sand64, |
265 | Broadcom_uif, |
266 | Broadcom_vc4_t_tiled, |
267 | Generic_16_16_tile, |
268 | Invalid, |
269 | Linear, |
270 | Nvidia_16bx2_block_eight_gob, |
271 | Nvidia_16bx2_block_four_gob, |
272 | Nvidia_16bx2_block_one_gob, |
273 | Nvidia_16bx2_block_sixteen_gob, |
274 | Nvidia_16bx2_block_thirtytwo_gob, |
275 | Nvidia_16bx2_block_two_gob, |
276 | Nvidia_tegra_tiled, |
277 | Qcom_compressed, |
278 | Samsung_16_16_tile, |
279 | Samsung_64_32_tile, |
280 | Vivante_split_super_tiled, |
281 | Vivante_split_tiled, |
282 | Vivante_super_tiled, |
283 | Vivante_tiled, |
284 | I915_x_tiled, |
285 | I915_y_tiled, |
286 | I915_y_tiled_ccs, |
287 | I915_y_tiled_gen12_mc_ccs, |
288 | I915_y_tiled_gen12_rc_ccs, |
289 | Unrecognized(u64), |
290 | } |
291 | impl DrmModifier { |
292 | pub(crate) fn from_u64(n: u64) -> Self { |
293 | #[allow (unreachable_patterns)] |
294 | match n { |
295 | consts::DRM_FOURCC_ALLWINNER_TILED => Self::Allwinner_tiled, |
296 | consts::DRM_FOURCC_BROADCOM_SAND128 => Self::Broadcom_sand128, |
297 | consts::DRM_FOURCC_BROADCOM_SAND256 => Self::Broadcom_sand256, |
298 | consts::DRM_FOURCC_BROADCOM_SAND32 => Self::Broadcom_sand32, |
299 | consts::DRM_FOURCC_BROADCOM_SAND64 => Self::Broadcom_sand64, |
300 | consts::DRM_FOURCC_BROADCOM_UIF => Self::Broadcom_uif, |
301 | consts::DRM_FOURCC_BROADCOM_VC4_T_TILED => Self::Broadcom_vc4_t_tiled, |
302 | consts::DRM_FOURCC_GENERIC_16_16_TILE => Self::Generic_16_16_tile, |
303 | consts::DRM_FOURCC_INVALID => Self::Invalid, |
304 | consts::DRM_FOURCC_LINEAR => Self::Linear, |
305 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_EIGHT_GOB => Self::Nvidia_16bx2_block_eight_gob, |
306 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_FOUR_GOB => Self::Nvidia_16bx2_block_four_gob, |
307 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_ONE_GOB => Self::Nvidia_16bx2_block_one_gob, |
308 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_SIXTEEN_GOB => { |
309 | Self::Nvidia_16bx2_block_sixteen_gob |
310 | } |
311 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_THIRTYTWO_GOB => { |
312 | Self::Nvidia_16bx2_block_thirtytwo_gob |
313 | } |
314 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_TWO_GOB => Self::Nvidia_16bx2_block_two_gob, |
315 | consts::DRM_FOURCC_NVIDIA_TEGRA_TILED => Self::Nvidia_tegra_tiled, |
316 | consts::DRM_FOURCC_QCOM_COMPRESSED => Self::Qcom_compressed, |
317 | consts::DRM_FOURCC_SAMSUNG_16_16_TILE => Self::Samsung_16_16_tile, |
318 | consts::DRM_FOURCC_SAMSUNG_64_32_TILE => Self::Samsung_64_32_tile, |
319 | consts::DRM_FOURCC_VIVANTE_SPLIT_SUPER_TILED => Self::Vivante_split_super_tiled, |
320 | consts::DRM_FOURCC_VIVANTE_SPLIT_TILED => Self::Vivante_split_tiled, |
321 | consts::DRM_FOURCC_VIVANTE_SUPER_TILED => Self::Vivante_super_tiled, |
322 | consts::DRM_FOURCC_VIVANTE_TILED => Self::Vivante_tiled, |
323 | consts::DRM_FOURCC_I915_X_TILED => Self::I915_x_tiled, |
324 | consts::DRM_FOURCC_I915_Y_TILED => Self::I915_y_tiled, |
325 | consts::DRM_FOURCC_I915_Y_TILED_CCS => Self::I915_y_tiled_ccs, |
326 | consts::DRM_FOURCC_I915_Y_TILED_GEN12_MC_CCS => Self::I915_y_tiled_gen12_mc_ccs, |
327 | consts::DRM_FOURCC_I915_Y_TILED_GEN12_RC_CCS => Self::I915_y_tiled_gen12_rc_ccs, |
328 | x => Self::Unrecognized(x), |
329 | } |
330 | } |
331 | pub(crate) fn into_u64(self) -> u64 { |
332 | match self { |
333 | Self::Allwinner_tiled => consts::DRM_FOURCC_ALLWINNER_TILED, |
334 | Self::Broadcom_sand128 => consts::DRM_FOURCC_BROADCOM_SAND128, |
335 | Self::Broadcom_sand256 => consts::DRM_FOURCC_BROADCOM_SAND256, |
336 | Self::Broadcom_sand32 => consts::DRM_FOURCC_BROADCOM_SAND32, |
337 | Self::Broadcom_sand64 => consts::DRM_FOURCC_BROADCOM_SAND64, |
338 | Self::Broadcom_uif => consts::DRM_FOURCC_BROADCOM_UIF, |
339 | Self::Broadcom_vc4_t_tiled => consts::DRM_FOURCC_BROADCOM_VC4_T_TILED, |
340 | Self::Generic_16_16_tile => consts::DRM_FOURCC_GENERIC_16_16_TILE, |
341 | Self::Invalid => consts::DRM_FOURCC_INVALID, |
342 | Self::Linear => consts::DRM_FOURCC_LINEAR, |
343 | Self::Nvidia_16bx2_block_eight_gob => consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_EIGHT_GOB, |
344 | Self::Nvidia_16bx2_block_four_gob => consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_FOUR_GOB, |
345 | Self::Nvidia_16bx2_block_one_gob => consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_ONE_GOB, |
346 | Self::Nvidia_16bx2_block_sixteen_gob => { |
347 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_SIXTEEN_GOB |
348 | } |
349 | Self::Nvidia_16bx2_block_thirtytwo_gob => { |
350 | consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_THIRTYTWO_GOB |
351 | } |
352 | Self::Nvidia_16bx2_block_two_gob => consts::DRM_FOURCC_NVIDIA_16BX2_BLOCK_TWO_GOB, |
353 | Self::Nvidia_tegra_tiled => consts::DRM_FOURCC_NVIDIA_TEGRA_TILED, |
354 | Self::Qcom_compressed => consts::DRM_FOURCC_QCOM_COMPRESSED, |
355 | Self::Samsung_16_16_tile => consts::DRM_FOURCC_SAMSUNG_16_16_TILE, |
356 | Self::Samsung_64_32_tile => consts::DRM_FOURCC_SAMSUNG_64_32_TILE, |
357 | Self::Vivante_split_super_tiled => consts::DRM_FOURCC_VIVANTE_SPLIT_SUPER_TILED, |
358 | Self::Vivante_split_tiled => consts::DRM_FOURCC_VIVANTE_SPLIT_TILED, |
359 | Self::Vivante_super_tiled => consts::DRM_FOURCC_VIVANTE_SUPER_TILED, |
360 | Self::Vivante_tiled => consts::DRM_FOURCC_VIVANTE_TILED, |
361 | Self::I915_x_tiled => consts::DRM_FOURCC_I915_X_TILED, |
362 | Self::I915_y_tiled => consts::DRM_FOURCC_I915_Y_TILED, |
363 | Self::I915_y_tiled_ccs => consts::DRM_FOURCC_I915_Y_TILED_CCS, |
364 | Self::I915_y_tiled_gen12_mc_ccs => consts::DRM_FOURCC_I915_Y_TILED_GEN12_MC_CCS, |
365 | Self::I915_y_tiled_gen12_rc_ccs => consts::DRM_FOURCC_I915_Y_TILED_GEN12_RC_CCS, |
366 | Self::Unrecognized(x) => x, |
367 | } |
368 | } |
369 | } |
370 | |