1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef __UAPI_MSM_SDE_ROTATOR_H__
20 #define __UAPI_MSM_SDE_ROTATOR_H__
21 #include <linux/videodev2.h>
22 #include <linux/types.h>
23 #include <linux/ioctl.h>
24 #define SDE_PIX_FMT_XRGB_8888 V4L2_PIX_FMT_XBGR32
25 #define SDE_PIX_FMT_ARGB_8888 V4L2_PIX_FMT_ABGR32
26 #define SDE_PIX_FMT_ABGR_8888 v4l2_fourcc('R', 'A', '2', '4')
27 #define SDE_PIX_FMT_RGBA_8888 v4l2_fourcc('A', 'B', '2', '4')
28 #define SDE_PIX_FMT_BGRA_8888 V4L2_PIX_FMT_ARGB32
29 #define SDE_PIX_FMT_RGBX_8888 v4l2_fourcc('X', 'B', '2', '4')
30 #define SDE_PIX_FMT_BGRX_8888 V4L2_PIX_FMT_XRGB32
31 #define SDE_PIX_FMT_RGBA_5551 v4l2_fourcc('R', 'A', '1', '5')
32 #define SDE_PIX_FMT_ARGB_4444 V4L2_PIX_FMT_ARGB444
33 #define SDE_PIX_FMT_RGBA_4444 v4l2_fourcc('R', 'A', '1', '2')
34 #define SDE_PIX_FMT_RGB_888 V4L2_PIX_FMT_RGB24
35 #define SDE_PIX_FMT_BGR_888 V4L2_PIX_FMT_BGR24
36 #define SDE_PIX_FMT_RGB_565 V4L2_PIX_FMT_RGB565
37 #define SDE_PIX_FMT_BGR_565 v4l2_fourcc('B', 'G', '1', '6')
38 #define SDE_PIX_FMT_Y_CB_CR_H2V2 V4L2_PIX_FMT_YUV420
39 #define SDE_PIX_FMT_Y_CR_CB_H2V2 V4L2_PIX_FMT_YVU420
40 #define SDE_PIX_FMT_Y_CR_CB_GH2V2 v4l2_fourcc('Y', 'U', '4', '2')
41 #define SDE_PIX_FMT_Y_CBCR_H2V2 V4L2_PIX_FMT_NV12
42 #define SDE_PIX_FMT_Y_CRCB_H2V2 V4L2_PIX_FMT_NV21
43 #define SDE_PIX_FMT_Y_CBCR_H1V2 v4l2_fourcc('N', 'H', '1', '6')
44 #define SDE_PIX_FMT_Y_CRCB_H1V2 v4l2_fourcc('N', 'H', '6', '1')
45 #define SDE_PIX_FMT_Y_CBCR_H2V1 V4L2_PIX_FMT_NV16
46 #define SDE_PIX_FMT_Y_CRCB_H2V1 V4L2_PIX_FMT_NV61
47 #define SDE_PIX_FMT_YCBYCR_H2V1 V4L2_PIX_FMT_YUYV
48 #define SDE_PIX_FMT_Y_CBCR_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '2')
49 #define SDE_PIX_FMT_Y_CRCB_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '1')
50 #define SDE_PIX_FMT_RGBA_8888_UBWC V4L2_PIX_FMT_RGBA8888_UBWC
51 #define SDE_PIX_FMT_RGBX_8888_UBWC v4l2_fourcc('Q', 'X', 'B', '4')
52 #define SDE_PIX_FMT_RGB_565_UBWC v4l2_fourcc('Q', 'R', 'G', '6')
53 #define SDE_PIX_FMT_Y_CBCR_H2V2_UBWC V4L2_PIX_FMT_NV12_UBWC
54 #define SDE_PIX_FMT_RGBA_1010102 v4l2_fourcc('A', 'B', '3', '0')
55 #define SDE_PIX_FMT_RGBX_1010102 v4l2_fourcc('X', 'B', '3', '0')
56 #define SDE_PIX_FMT_ARGB_2101010 v4l2_fourcc('A', 'R', '3', '0')
57 #define SDE_PIX_FMT_XRGB_2101010 v4l2_fourcc('X', 'R', '3', '0')
58 #define SDE_PIX_FMT_BGRA_1010102 v4l2_fourcc('B', 'A', '3', '0')
59 #define SDE_PIX_FMT_BGRX_1010102 v4l2_fourcc('B', 'X', '3', '0')
60 #define SDE_PIX_FMT_ABGR_2101010 v4l2_fourcc('R', 'A', '3', '0')
61 #define SDE_PIX_FMT_XBGR_2101010 v4l2_fourcc('R', 'X', '3', '0')
62 #define SDE_PIX_FMT_RGBA_1010102_UBWC v4l2_fourcc('Q', 'R', 'B', 'A')
63 #define SDE_PIX_FMT_RGBX_1010102_UBWC v4l2_fourcc('Q', 'X', 'B', 'A')
64 #define SDE_PIX_FMT_Y_CBCR_H2V2_P010 v4l2_fourcc('P', '0', '1', '0')
65 #define SDE_PIX_FMT_Y_CBCR_H2V2_TP10_UBWC V4L2_PIX_FMT_NV12_TP10_UBWC
66 struct msm_sde_rotator_fence {
67   __u32 index;
68   __u32 type;
69   __s32 fd;
70   __u32 reserved[5];
71 };
72 #define VIDIOC_G_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_sde_rotator_fence)
73 #define VIDIOC_S_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_sde_rotator_fence)
74 #define V4L2_CID_SDE_ROTATOR_SECURE (V4L2_CID_USER_BASE + 0x1000)
75 #endif
76 
77