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_ 21106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#include "drm.h" 22106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#ifdef __cplusplus 23106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#endif 24655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_create { 25106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u64 size; 26106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 flags; 27106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 handle; 28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 29106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisstruct drm_exynos_gem_map { 30106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 handle; 31106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 reserved; 32106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u64 offset; 33106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_gem_info { 35106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 handle; 36106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 flags; 37106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u64 size; 3882d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 39655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_vidi_connection { 40106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 connection; 41106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 extensions; 42106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u64 edid; 43655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 44655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum e_drm_exynos_gem_mem_type { 45d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_CONTIG = 0 << 0, 46d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_NONCONTIG = 1 << 0, 47d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_NONCACHABLE = 0 << 1, 48d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_CACHABLE = 1 << 1, 49d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_WC = 1 << 2, 50d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_BO_MASK = EXYNOS_BO_NONCONTIG | EXYNOS_BO_CACHABLE | EXYNOS_BO_WC 51655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 52655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_get_ver { 53d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 major; 54d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 minor; 55655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 56655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_cmd { 57d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 offset; 58d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 data; 59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_g2d_buf_type { 61d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao G2D_BUF_USERPTR = 1 << 31, 62655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 63655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_g2d_event_type { 64d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao G2D_EVENT_NOT, 65d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao G2D_EVENT_NONSTOP, 66d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao G2D_EVENT_STOP, 67655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 68655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_userptr { 69d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao unsigned long userptr; 70d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao unsigned long size; 71655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 72655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_set_cmdlist { 73d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 cmd; 74d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 cmd_buf; 75d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 cmd_nr; 76d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 cmd_buf_nr; 77d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 event_type; 78d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 user_data; 79655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_g2d_exec { 81d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 async; 82655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 83655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ops_id { 84d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_OPS_SRC, 85d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_OPS_DST, 86d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_OPS_MAX, 87655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 88655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_sz { 89d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 hsize; 90d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 vsize; 91655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 92655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_pos { 93d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 x; 94d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 y; 95d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 w; 96d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 h; 9782d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 98655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_flip { 99d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_FLIP_NONE = (0 << 0), 100d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_FLIP_VERTICAL = (1 << 0), 101d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_FLIP_HORIZONTAL = (1 << 1), 102d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_FLIP_BOTH = EXYNOS_DRM_FLIP_VERTICAL | EXYNOS_DRM_FLIP_HORIZONTAL, 103655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 10482d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisenum drm_exynos_degree { 105d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_DEGREE_0, 106d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_DEGREE_90, 107d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_DEGREE_180, 108d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_DEGREE_270, 109655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 110655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_planer { 111d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_PLANAR_Y, 112d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_PLANAR_CB, 113d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_PLANAR_CR, 114d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao EXYNOS_DRM_PLANAR_MAX, 115655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 11682d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisstruct drm_exynos_ipp_prop_list { 117d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 version; 118d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 ipp_id; 119d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 count; 120d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 writeback; 121d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 flip; 122d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 degree; 123d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 csc; 124d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 crop; 125d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 scale; 126d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 refresh_min; 127d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 refresh_max; 128d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 reserved; 129d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_sz crop_min; 130d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_sz crop_max; 131d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_sz scale_min; 132d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_sz scale_max; 133655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 134d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct drm_exynos_ipp_config { 135106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 ops_id; 136106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 flip; 137106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 degree; 138d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 fmt; 139d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_sz sz; 140d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_pos pos; 141655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 142d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baoenum drm_exynos_ipp_cmd { 143d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CMD_NONE, 144d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CMD_M2M, 145d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CMD_WB, 146d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CMD_OUTPUT, 147d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CMD_MAX, 14882d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 149655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_property { 150d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_exynos_ipp_config config[EXYNOS_DRM_OPS_MAX]; 151106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 cmd; 152d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 ipp_id; 153d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 prop_id; 154d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 refresh_rate; 155655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 156d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baoenum drm_exynos_ipp_buf_type { 157d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_BUF_ENQUEUE, 158d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_BUF_DEQUEUE, 159d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao}; 16082d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferrisstruct drm_exynos_ipp_queue_buf { 161106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 ops_id; 162106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 buf_type; 163d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 prop_id; 164d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 buf_id; 165d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 handle[EXYNOS_DRM_PLANAR_MAX]; 166d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 reserved; 167d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 user_data; 16882d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris}; 169655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum drm_exynos_ipp_ctrl { 170d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CTRL_PLAY, 171d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CTRL_STOP, 172d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CTRL_PAUSE, 173d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CTRL_RESUME, 174d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao IPP_CTRL_MAX, 175655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 176d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct drm_exynos_ipp_cmd_ctrl { 177d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 prop_id; 178106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 ctrl; 179d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao}; 18082d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris#define DRM_EXYNOS_GEM_CREATE 0x00 181106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define DRM_EXYNOS_GEM_MAP 0x01 182655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_GEM_GET 0x04 183655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_VIDI_CONNECTION 0x07 184655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_GET_VER 0x20 185655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_SET_CMDLIST 0x21 186655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_G2D_EXEC 0x22 187655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_GET_PROPERTY 0x30 188655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_SET_PROPERTY 0x31 189655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_QUEUE_BUF 0x32 190655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define DRM_EXYNOS_IPP_CMD_CTRL 0x33 191d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_GEM_CREATE, struct drm_exynos_gem_create) 192106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define DRM_IOCTL_EXYNOS_GEM_MAP DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_GEM_MAP, struct drm_exynos_gem_map) 193d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_GEM_GET DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_GEM_GET, struct drm_exynos_gem_info) 194d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_VIDI_CONNECTION DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_VIDI_CONNECTION, struct drm_exynos_vidi_connection) 195106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define DRM_IOCTL_EXYNOS_G2D_GET_VER DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_G2D_GET_VER, struct drm_exynos_g2d_get_ver) 196d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_G2D_SET_CMDLIST DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_G2D_SET_CMDLIST, struct drm_exynos_g2d_set_cmdlist) 197d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_G2D_EXEC DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_G2D_EXEC, struct drm_exynos_g2d_exec) 198d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_IPP_GET_PROPERTY DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_IPP_GET_PROPERTY, struct drm_exynos_ipp_prop_list) 199106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define DRM_IOCTL_EXYNOS_IPP_SET_PROPERTY DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_IPP_SET_PROPERTY, struct drm_exynos_ipp_property) 200d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_IPP_QUEUE_BUF DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_IPP_QUEUE_BUF, struct drm_exynos_ipp_queue_buf) 201d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define DRM_IOCTL_EXYNOS_IPP_CMD_CTRL DRM_IOWR(DRM_COMMAND_BASE + DRM_EXYNOS_IPP_CMD_CTRL, struct drm_exynos_ipp_cmd_ctrl) 20282d7504cd7d5c8d2175fb3b1a4ee3518cad6aa0fChristopher Ferris#define DRM_EXYNOS_G2D_EVENT 0x80000000 203106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define DRM_EXYNOS_IPP_EVENT 0x80000001 204d7db594b8d1dab36b711bd887a9dd21675c87243Tao Baostruct drm_exynos_g2d_event { 205d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_event base; 206d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 user_data; 207106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 tv_sec; 208d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 tv_usec; 209d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 cmdlist_no; 210d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 reserved; 211106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 212655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct drm_exynos_ipp_event { 213d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct drm_event base; 214d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 user_data; 215106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 tv_sec; 216d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 tv_usec; 217d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 prop_id; 218d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 reserved; 219106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __u32 buf_id[EXYNOS_DRM_OPS_MAX]; 220655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 221106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#ifdef __cplusplus 222106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#endif 223655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif 224