20#define DRM_IOCTL_BASE 'd'
23#define _DRM_LOCK_HELD 0x80000000U
24#define _DRM_LOCK_CONT 0x40000000U
192#define DRM_CAP_DUMB_BUFFER 0x1
193#define DRM_CAP_VBLANK_HIGH_CRTC 0x2
194#define DRM_CAP_DUMB_PREFERRED_DEPTH 0x3
195#define DRM_CAP_DUMB_PREFER_SHADOW 0x4
196#define DRM_CAP_PRIME 0x5
197#define DRM_PRIME_CAP_IMPORT 0x1
198#define DRM_PRIME_CAP_EXPORT 0x2
199#define DRM_CAP_TIMESTAMP_MONOTONIC 0x6
200#define DRM_CAP_ASYNC_PAGE_FLIP 0x7
201#define DRM_CAP_CURSOR_WIDTH 0x8
202#define DRM_CAP_CURSOR_HEIGHT 0x9
203#define DRM_CAP_ADDFB2_MODIFIERS 0x10
204#define DRM_CAP_PAGE_FLIP_TARGET 0x11
205#define DRM_CAP_CRTC_IN_VBLANK_EVENT 0x12
206#define DRM_CAP_SYNCOBJ 0x13
207#define DRM_CAP_SYNCOBJ_TIMELINE 0x14
215#define DRM_CLIENT_CAP_STEREO_3D 1
216#define DRM_CLIENT_CAP_UNIVERSAL_PLANES 2
217#define DRM_CLIENT_CAP_ATOMIC 3
218#define DRM_CLIENT_CAP_ASPECT_RATIO 4
219#define DRM_CLIENT_CAP_WRITEBACK_CONNECTORS 5
222#define DRM_IO(nr) _IO(DRM_IOCTL_BASE, nr)
223#define DRM_IOR(nr, type) _IOR(DRM_IOCTL_BASE, nr, type)
224#define DRM_IOW(nr, type) _IOW(DRM_IOCTL_BASE, nr, type)
225#define DRM_IOWR(nr, type) _IOWR(DRM_IOCTL_BASE, nr, type)
228#define DRM_IOCTL_VERSION DRM_IOWR(0x00, struct drm_version)
229#define DRM_IOCTL_GET_UNIQUE DRM_IOWR(0x01, struct drm_unique)
230#define DRM_IOCTL_GET_MAGIC DRM_IOR(0x02, struct drm_auth)
231#define DRM_IOCTL_IRQ_BUSID DRM_IOWR(0x03, struct drm_irq_busid)
232#define DRM_IOCTL_GET_MAP DRM_IOWR(0x04, struct drm_map)
233#define DRM_IOCTL_GET_CLIENT DRM_IOWR(0x05, struct drm_client)
234#define DRM_IOCTL_GET_STATS DRM_IOR(0x06, struct drm_stats)
235#define DRM_IOCTL_SET_VERSION DRM_IOWR(0x07, struct drm_set_version)
236#define DRM_IOCTL_MODESET_CTL DRM_IOW(0x08, struct drm_modeset_ctl)
237#define DRM_IOCTL_GEM_CLOSE DRM_IOW(0x09, struct drm_gem_close)
238#define DRM_IOCTL_GEM_FLINK DRM_IOWR(0x0a, struct drm_gem_flink)
239#define DRM_IOCTL_GEM_OPEN DRM_IOWR(0x0b, struct drm_gem_open)
240#define DRM_IOCTL_GET_CAP DRM_IOWR(0x0c, struct drm_get_cap)
241#define DRM_IOCTL_SET_CLIENT_CAP DRM_IOW(0x0d, struct drm_set_client_cap)
243#define DRM_IOCTL_SET_MASTER DRM_IO(0x0e)
244#define DRM_IOCTL_DROP_MASTER DRM_IO(0x0f)
246#define DRM_IOCTL_PRIME_HANDLE_TO_FD DRM_IOWR(0x12, struct drm_prime_handle)
247#define DRM_IOCTL_PRIME_FD_TO_HANDLE DRM_IOWR(0x13, struct drm_prime_handle)
uint32_t drm_magic_t
Definition drm.h:30
uint32_t drm_context_t
Definition drm.h:28
drm_dma_flags
Definition drm.h:152
@ DRM_DMA_LARGER_OK
Definition drm.h:158
@ DRM_DMA_WAIT
Definition drm.h:156
@ DRM_DMA_PRIORITY
Definition drm.h:155
@ DRM_DMA_SMALLER_OK
Definition drm.h:157
@ DRM_DMA_WHILE_LOCKED
Definition drm.h:154
@ DRM_DMA_BLOCK
Definition drm.h:153
uint32_t drm_drawable_t
Definition drm.h:29
drm_ctx_flags
Definition drm.h:141
@ DRM_CONTEXT_PRESERVED
Definition drm.h:142
@ DRM_CONTEXT_2DONLY
Definition drm.h:143
uint32_t drm_handle_t
Definition drm.h:27
drm_map_type
Definition drm.h:33
@ DRM_SCATTER_GATHER
Definition drm.h:38
@ DRM_AGP
Definition drm.h:37
@ DRM_FRAME_BUFFER
Definition drm.h:34
@ DRM_CONSISTENT
Definition drm.h:39
@ DRM_GEM
Definition drm.h:40
@ DRM_SHM
Definition drm.h:36
@ DRM_REGISTERS
Definition drm.h:35
drm_map_flags
Definition drm.h:44
@ DRM_KERNEL
Definition drm.h:48
@ DRM_REMOVABLE
Definition drm.h:51
@ DRM_LOCKED
Definition drm.h:47
@ DRM_WRITE_COMBINING
Definition drm.h:49
@ DRM_RESTRICTED
Definition drm.h:45
@ DRM_CONTAINS_LOCK
Definition drm.h:50
@ DRM_READ_ONLY
Definition drm.h:46
unsigned uint32_t
Definition stdint.h:9
int int32_t
Definition stdint.h:8
unsigned long long uint64_t
Definition stdint.h:11
drm_magic_t magic
Definition drm.h:137
int idx
Definition drm.h:97
unsigned long magic
Definition drm.h:101
unsigned long iocs
Definition drm.h:102
unsigned long pid
Definition drm.h:99
unsigned long uid
Definition drm.h:100
int auth
Definition drm.h:98
enum drm_ctx_flags flags
Definition drm.h:147
int handle
Definition drm.h:148
uint32_t handle
Definition drm.h:163
uint32_t pad
Definition drm.h:164
uint32_t name
Definition drm.h:169
uint32_t handle
Definition drm.h:168
uint32_t name
Definition drm.h:173
uint32_t handle
Definition drm.h:174
uint64_t size
Definition drm.h:175
uint64_t capability
Definition drm.h:188
uint64_t value
Definition drm.h:189
int context
Definition drm.h:56
@ DRM_KERNEL_CONTEXT
Definition drm.h:62
@ DRM_LOCK_FLUSH
Definition drm.h:60
@ DRM_LOCK_FLUSH_ALL
Definition drm.h:61
@ DRM_LOCK_READY
Definition drm.h:58
@ DRM_LOCK_QUIESCENT
Definition drm.h:59
enum drm_lock::@1150 lock
unsigned long size
Definition drm.h:88
enum drm_map_flags flags
Definition drm.h:90
drm_handle_t handle
Definition drm.h:91
unsigned long offset
Definition drm.h:87
enum drm_map_type type
Definition drm.h:89
int mtrr
Definition drm.h:92
uint32_t handle
Definition drm.h:180
uint32_t flags
Definition drm.h:181
int32_t fd
Definition drm.h:182
uint32_t pad
Definition drm.h:183
uint64_t value
Definition drm.h:212
uint64_t capability
Definition drm.h:211
int drm_dd_major
Definition drm.h:131
int drm_di_minor
Definition drm.h:130
int drm_di_major
Definition drm.h:129
int drm_dd_minor
Definition drm.h:132
enum drm_stats::@1151::@1152 type
struct drm_stats::@1151 data[15]
@ DRM_STAT_SPECIAL
Definition drm.h:121
unsigned long value
Definition drm.h:109
@ DRM_STAT_DMA
Definition drm.h:120
unsigned long count
Definition drm.h:107
@ DRM_STAT_LOCKS
Definition drm.h:115
@ DRM_STAT_MISSED
Definition drm.h:122
@ DRM_STAT_CLOSES
Definition drm.h:113
@ DRM_STAT_PRIMARY
Definition drm.h:118
@ DRM_STAT_UNLOCKS
Definition drm.h:116
@ DRM_STAT_LOCK
Definition drm.h:111
@ DRM_STAT_SECONDARY
Definition drm.h:119
@ DRM_STAT_IOCTLS
Definition drm.h:114
@ DRM_STAT_IRQ
Definition drm.h:117
@ DRM_STAT_OPENS
Definition drm.h:112
size_t unique_len
Definition drm.h:81
char * unique
Definition drm.h:82
char * date
Definition drm.h:74
char * name
Definition drm.h:72
int version_patchlevel
Definition drm.h:70
size_t date_len
Definition drm.h:73
int version_minor
Definition drm.h:69
char * desc
Definition drm.h:76
size_t desc_len
Definition drm.h:75
int version_major
Definition drm.h:68
size_t name_len
Definition drm.h:71