exynos_drm.h revision 655a7c081f83b8351ed5f11a6c6accd9458293a8
1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/****************************************************************************
2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   This header was automatically generated from a Linux kernel header
5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   of the same name, to make information necessary for userspace to
6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   call into the kernel available to libc.  It contains only constants,
7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   structures, and macros generated from the original header, and thus,
8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   contains no copyrightable information.
9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   To edit the content of this header, modify the corresponding
11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   source file (e.g. under external/kernel-headers/original/) then
12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   run bionic/libc/kernel/tools/update_all.py
13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   Any manual change here will be lost the next time this script will
15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***   be run. You've been warned!
16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ***
17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************
18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/
19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef _UAPI_EXYNOS_DRM_H_
20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define _UAPI_EXYNOS_DRM_H_
21655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <drm/drm.h>
22655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_create {
23655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t size;
25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int flags;
26655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int handle;
27655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_map_off {
30655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int handle;
31655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int pad;
32655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t offset;
33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_mmap {
36655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int handle;
37655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int pad;
38655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t size;
40655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t mapped;
41655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
42655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_info {
43655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int handle;
45655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int flags;
46655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t size;
47655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
48655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_vidi_connection {
50655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int connection;
51655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned int extensions;
52655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng uint64_t edid;
53655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
55655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum e_drm_exynos_gem_mem_type {
56655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_CONTIG = 0 << 0,
57655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_NONCONTIG = 1 << 0,
58655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_NONCACHABLE = 0 << 1,
60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_CACHABLE = 1 << 1,
61655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_WC = 1 << 2,
62655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_MASK = EXYNOS_BO_NONCONTIG | EXYNOS_BO_CACHABLE |
63655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_BO_WC
65655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
66655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_get_ver {
67655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 major;
68655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 minor;
70655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
71655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_cmd {
72655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 offset;
73655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 data;
75655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
76655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_g2d_buf_type {
77655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng G2D_BUF_USERPTR = 1 << 31,
78655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_g2d_event_type {
81655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng G2D_EVENT_NOT,
82655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng G2D_EVENT_NONSTOP,
83655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng G2D_EVENT_STOP,
85655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
86655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_userptr {
87655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned long userptr;
88655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng unsigned long size;
90655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
91655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_set_cmdlist {
92655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 cmd;
93655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 cmd_buf;
95655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 cmd_nr;
96655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 cmd_buf_nr;
97655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 event_type;
98655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 user_data;
100655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
101655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_exec {
102655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 async;
103655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
105655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ops_id {
106655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_OPS_SRC,
107655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_OPS_DST,
108655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_OPS_MAX,
110655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
111655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_sz {
112655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 hsize;
113655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 vsize;
115655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
116655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_pos {
117655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 x;
118655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 y;
120655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 w;
121655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 h;
122655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
123655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_flip {
125655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_FLIP_NONE = (0 << 0),
126655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_FLIP_VERTICAL = (1 << 0),
127655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_FLIP_HORIZONTAL = (1 << 1),
128655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_FLIP_BOTH = EXYNOS_DRM_FLIP_VERTICAL |
130655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_FLIP_HORIZONTAL,
131655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
132655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_degree {
133655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_DEGREE_0,
135655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_DEGREE_90,
136655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_DEGREE_180,
137655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_DEGREE_270,
138655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
140655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_planer {
141655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_PLANAR_Y,
142655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_PLANAR_CB,
143655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_PLANAR_CR,
145655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng EXYNOS_DRM_PLANAR_MAX,
146655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
147655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_prop_list {
148655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 version;
150655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 ipp_id;
151655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 count;
152655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 writeback;
153655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 flip;
155655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 degree;
156655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 csc;
157655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 crop;
158655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 scale;
160655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 refresh_min;
161655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 refresh_max;
162655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 reserved;
163655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_sz crop_min;
165655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_sz crop_max;
166655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_sz scale_min;
167655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_sz scale_max;
168655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
170655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_config {
171655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_ops_id ops_id;
172655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_flip flip;
173655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_degree degree;
175655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 fmt;
176655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_sz sz;
177655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_pos pos;
178655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
180655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ipp_cmd {
181655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CMD_NONE,
182655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CMD_M2M,
183655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CMD_WB,
185655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CMD_OUTPUT,
186655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CMD_MAX,
187655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
188655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_property {
190655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_exynos_ipp_config config[EXYNOS_DRM_OPS_MAX];
191655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_ipp_cmd cmd;
192655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 ipp_id;
193655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 prop_id;
195655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 refresh_rate;
196655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
197655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ipp_buf_type {
198655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_BUF_ENQUEUE,
200655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_BUF_DEQUEUE,
201655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
202655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_queue_buf {
203655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_ops_id ops_id;
205655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_ipp_buf_type buf_type;
206655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 prop_id;
207655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 buf_id;
208655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 handle[EXYNOS_DRM_PLANAR_MAX];
210655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 reserved;
211655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 user_data;
212655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
213655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ipp_ctrl {
215655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CTRL_PLAY,
216655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CTRL_STOP,
217655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CTRL_PAUSE,
218655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CTRL_RESUME,
220655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng IPP_CTRL_MAX,
221655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
222655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_cmd_ctrl {
223655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 prop_id;
225655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng enum drm_exynos_ipp_ctrl ctrl;
226655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
227655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_GEM_CREATE 0x00
228655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_GEM_MAP_OFFSET 0x01
230655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_GEM_MMAP 0x02
231655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_GEM_GET 0x04
232655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_VIDI_CONNECTION 0x07
233655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_GET_VER 0x20
235655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_SET_CMDLIST 0x21
236655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_EXEC 0x22
237655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_GET_PROPERTY 0x30
238655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_SET_PROPERTY 0x31
240655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_QUEUE_BUF 0x32
241655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_CMD_CTRL 0x33
242655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_GEM_CREATE, struct drm_exynos_gem_create)
243655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_GEM_MAP_OFFSET DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_GEM_MAP_OFFSET, struct drm_exynos_gem_map_off)
245655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_GEM_MMAP DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_GEM_MMAP, struct drm_exynos_gem_mmap)
246655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_GEM_GET DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_GEM_GET, struct drm_exynos_gem_info)
247655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_VIDI_CONNECTION DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_VIDI_CONNECTION, struct drm_exynos_vidi_connection)
248655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_G2D_GET_VER DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_G2D_GET_VER, struct drm_exynos_g2d_get_ver)
250655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_G2D_SET_CMDLIST DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_G2D_SET_CMDLIST, struct drm_exynos_g2d_set_cmdlist)
251655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_G2D_EXEC DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_G2D_EXEC, struct drm_exynos_g2d_exec)
252655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_IPP_GET_PROPERTY DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_IPP_GET_PROPERTY, struct drm_exynos_ipp_prop_list)
253655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_IPP_SET_PROPERTY DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_IPP_SET_PROPERTY, struct drm_exynos_ipp_property)
255655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_IPP_QUEUE_BUF DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_IPP_QUEUE_BUF, struct drm_exynos_ipp_queue_buf)
256655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_IOCTL_EXYNOS_IPP_CMD_CTRL DRM_IOWR(DRM_COMMAND_BASE +   DRM_EXYNOS_IPP_CMD_CTRL, struct drm_exynos_ipp_cmd_ctrl)
257655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_EVENT 0x80000000
258655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_EVENT 0x80000001
260655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_event {
261655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_event base;
262655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 user_data;
263655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 tv_sec;
265655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 tv_usec;
266655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 cmdlist_no;
267655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 reserved;
268655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
270655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_event {
271655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng struct drm_event base;
272655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u64 user_data;
273655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 tv_sec;
275655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 tv_usec;
276655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 prop_id;
277655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 reserved;
278655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng __u32 buf_id[EXYNOS_DRM_OPS_MAX];
280655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng};
281655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif
282