include/drm-uapi: bump headers
From drm-next at the following commit: commit 2a7005c8a3982ba27fab237d85c27da446484e9c (HEAD) Merge: 0666cba1f5b2b 47c65b3853f88 Author: Dave Airlie <airlied@redhat.com> Date: Fri Jun 11 13:34:42 2021 +1000 Merge tag 'drm-intel-gt-next-2021-06-10' of... Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5599>
This commit is contained in:

committed by
Marge Bot

parent
2fe2eb1911
commit
8dc3c91a5c
@@ -1,11 +1,10 @@
|
||||
/**
|
||||
* \file drm.h
|
||||
/*
|
||||
* Header for the Direct Rendering Manager
|
||||
*
|
||||
* \author Rickard E. (Rik) Faith <faith@valinux.com>
|
||||
* Author: Rickard E. (Rik) Faith <faith@valinux.com>
|
||||
*
|
||||
* \par Acknowledgments:
|
||||
* Dec 1999, Richard Henderson <rth@twiddle.net>, move to generic \c cmpxchg.
|
||||
* Acknowledgments:
|
||||
* Dec 1999, Richard Henderson <rth@twiddle.net>, move to generic cmpxchg.
|
||||
*/
|
||||
|
||||
/*
|
||||
@@ -79,7 +78,7 @@ typedef unsigned int drm_context_t;
|
||||
typedef unsigned int drm_drawable_t;
|
||||
typedef unsigned int drm_magic_t;
|
||||
|
||||
/**
|
||||
/*
|
||||
* Cliprect.
|
||||
*
|
||||
* \warning: If you change this structure, make sure you change
|
||||
@@ -95,7 +94,7 @@ struct drm_clip_rect {
|
||||
unsigned short y2;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Drawable information.
|
||||
*/
|
||||
struct drm_drawable_info {
|
||||
@@ -103,7 +102,7 @@ struct drm_drawable_info {
|
||||
struct drm_clip_rect *rects;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Texture region,
|
||||
*/
|
||||
struct drm_tex_region {
|
||||
@@ -114,7 +113,7 @@ struct drm_tex_region {
|
||||
unsigned int age;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Hardware lock.
|
||||
*
|
||||
* The lock structure is a simple cache-line aligned integer. To avoid
|
||||
@@ -126,7 +125,7 @@ struct drm_hw_lock {
|
||||
char padding[60]; /**< Pad to cache line */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_VERSION ioctl argument type.
|
||||
*
|
||||
* \sa drmGetVersion().
|
||||
@@ -143,7 +142,7 @@ struct drm_version {
|
||||
char *desc; /**< User-space buffer to hold desc */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_GET_UNIQUE ioctl argument type.
|
||||
*
|
||||
* \sa drmGetBusid() and drmSetBusId().
|
||||
@@ -162,7 +161,7 @@ struct drm_block {
|
||||
int unused;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_CONTROL ioctl argument type.
|
||||
*
|
||||
* \sa drmCtlInstHandler() and drmCtlUninstHandler().
|
||||
@@ -177,7 +176,7 @@ struct drm_control {
|
||||
int irq;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Type of memory to map.
|
||||
*/
|
||||
enum drm_map_type {
|
||||
@@ -189,7 +188,7 @@ enum drm_map_type {
|
||||
_DRM_CONSISTENT = 5 /**< Consistent memory for PCI DMA */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Memory mapping flags.
|
||||
*/
|
||||
enum drm_map_flags {
|
||||
@@ -208,7 +207,7 @@ struct drm_ctx_priv_map {
|
||||
void *handle; /**< Handle of map */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_GET_MAP, DRM_IOCTL_ADD_MAP and DRM_IOCTL_RM_MAP ioctls
|
||||
* argument type.
|
||||
*
|
||||
@@ -225,7 +224,7 @@ struct drm_map {
|
||||
/* Private data */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_GET_CLIENT ioctl argument type.
|
||||
*/
|
||||
struct drm_client {
|
||||
@@ -257,7 +256,7 @@ enum drm_stat_type {
|
||||
/* Add to the *END* of the list */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_GET_STATS ioctl argument type.
|
||||
*/
|
||||
struct drm_stats {
|
||||
@@ -268,7 +267,7 @@ struct drm_stats {
|
||||
} data[15];
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Hardware locking flags.
|
||||
*/
|
||||
enum drm_lock_flags {
|
||||
@@ -283,7 +282,7 @@ enum drm_lock_flags {
|
||||
_DRM_HALT_CUR_QUEUES = 0x20 /**< Halt all current queues */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_LOCK, DRM_IOCTL_UNLOCK and DRM_IOCTL_FINISH ioctl argument type.
|
||||
*
|
||||
* \sa drmGetLock() and drmUnlock().
|
||||
@@ -293,7 +292,7 @@ struct drm_lock {
|
||||
enum drm_lock_flags flags;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DMA flags
|
||||
*
|
||||
* \warning
|
||||
@@ -322,7 +321,7 @@ enum drm_dma_flags {
|
||||
_DRM_DMA_LARGER_OK = 0x40 /**< Larger-than-requested buffers OK */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_ADD_BUFS and DRM_IOCTL_MARK_BUFS ioctl argument type.
|
||||
*
|
||||
* \sa drmAddBufs().
|
||||
@@ -345,7 +344,7 @@ struct drm_buf_desc {
|
||||
*/
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_INFO_BUFS ioctl argument type.
|
||||
*/
|
||||
struct drm_buf_info {
|
||||
@@ -353,7 +352,7 @@ struct drm_buf_info {
|
||||
struct drm_buf_desc *list;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_FREE_BUFS ioctl argument type.
|
||||
*/
|
||||
struct drm_buf_free {
|
||||
@@ -361,7 +360,7 @@ struct drm_buf_free {
|
||||
int *list;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* Buffer information
|
||||
*
|
||||
* \sa drm_buf_map.
|
||||
@@ -373,7 +372,7 @@ struct drm_buf_pub {
|
||||
void *address; /**< Address of buffer */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_MAP_BUFS ioctl argument type.
|
||||
*/
|
||||
struct drm_buf_map {
|
||||
@@ -386,7 +385,7 @@ struct drm_buf_map {
|
||||
struct drm_buf_pub *list; /**< Buffer information */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_DMA ioctl argument type.
|
||||
*
|
||||
* Indices here refer to the offset into the buffer list in drm_buf_get.
|
||||
@@ -411,7 +410,7 @@ enum drm_ctx_flags {
|
||||
_DRM_CONTEXT_2DONLY = 0x02
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_ADD_CTX ioctl argument type.
|
||||
*
|
||||
* \sa drmCreateContext() and drmDestroyContext().
|
||||
@@ -421,7 +420,7 @@ struct drm_ctx {
|
||||
enum drm_ctx_flags flags;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_RES_CTX ioctl argument type.
|
||||
*/
|
||||
struct drm_ctx_res {
|
||||
@@ -429,14 +428,14 @@ struct drm_ctx_res {
|
||||
struct drm_ctx *contexts;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_ADD_DRAW and DRM_IOCTL_RM_DRAW ioctl argument type.
|
||||
*/
|
||||
struct drm_draw {
|
||||
drm_drawable_t handle;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_UPDATE_DRAW ioctl argument type.
|
||||
*/
|
||||
typedef enum {
|
||||
@@ -450,14 +449,14 @@ struct drm_update_draw {
|
||||
unsigned long long data;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_GET_MAGIC and DRM_IOCTL_AUTH_MAGIC ioctl argument type.
|
||||
*/
|
||||
struct drm_auth {
|
||||
drm_magic_t magic;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_IRQ_BUSID ioctl argument type.
|
||||
*
|
||||
* \sa drmGetInterruptFromBusID().
|
||||
@@ -499,7 +498,7 @@ struct drm_wait_vblank_reply {
|
||||
long tval_usec;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_WAIT_VBLANK ioctl argument type.
|
||||
*
|
||||
* \sa drmWaitVBlank().
|
||||
@@ -512,7 +511,7 @@ union drm_wait_vblank {
|
||||
#define _DRM_PRE_MODESET 1
|
||||
#define _DRM_POST_MODESET 2
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_MODESET_CTL ioctl argument type
|
||||
*
|
||||
* \sa drmModesetCtl().
|
||||
@@ -522,7 +521,7 @@ struct drm_modeset_ctl {
|
||||
__u32 cmd;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_AGP_ENABLE ioctl argument type.
|
||||
*
|
||||
* \sa drmAgpEnable().
|
||||
@@ -531,7 +530,7 @@ struct drm_agp_mode {
|
||||
unsigned long mode; /**< AGP mode */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_AGP_ALLOC and DRM_IOCTL_AGP_FREE ioctls argument type.
|
||||
*
|
||||
* \sa drmAgpAlloc() and drmAgpFree().
|
||||
@@ -543,7 +542,7 @@ struct drm_agp_buffer {
|
||||
unsigned long physical; /**< Physical used by i810 */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_AGP_BIND and DRM_IOCTL_AGP_UNBIND ioctls argument type.
|
||||
*
|
||||
* \sa drmAgpBind() and drmAgpUnbind().
|
||||
@@ -553,7 +552,7 @@ struct drm_agp_binding {
|
||||
unsigned long offset; /**< In bytes -- will round to page boundary */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_AGP_INFO ioctl argument type.
|
||||
*
|
||||
* \sa drmAgpVersionMajor(), drmAgpVersionMinor(), drmAgpGetMode(),
|
||||
@@ -574,7 +573,7 @@ struct drm_agp_info {
|
||||
unsigned short id_device;
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_SG_ALLOC ioctl argument type.
|
||||
*/
|
||||
struct drm_scatter_gather {
|
||||
@@ -582,7 +581,7 @@ struct drm_scatter_gather {
|
||||
unsigned long handle; /**< Used for mapping / unmapping */
|
||||
};
|
||||
|
||||
/**
|
||||
/*
|
||||
* DRM_IOCTL_SET_VERSION ioctl argument type.
|
||||
*/
|
||||
struct drm_set_version {
|
||||
@@ -592,14 +591,14 @@ struct drm_set_version {
|
||||
int drm_dd_minor;
|
||||
};
|
||||
|
||||
/** DRM_IOCTL_GEM_CLOSE ioctl argument type */
|
||||
/* DRM_IOCTL_GEM_CLOSE ioctl argument type */
|
||||
struct drm_gem_close {
|
||||
/** Handle of the object to be closed. */
|
||||
__u32 handle;
|
||||
__u32 pad;
|
||||
};
|
||||
|
||||
/** DRM_IOCTL_GEM_FLINK ioctl argument type */
|
||||
/* DRM_IOCTL_GEM_FLINK ioctl argument type */
|
||||
struct drm_gem_flink {
|
||||
/** Handle for the object being named */
|
||||
__u32 handle;
|
||||
@@ -608,7 +607,7 @@ struct drm_gem_flink {
|
||||
__u32 name;
|
||||
};
|
||||
|
||||
/** DRM_IOCTL_GEM_OPEN ioctl argument type */
|
||||
/* DRM_IOCTL_GEM_OPEN ioctl argument type */
|
||||
struct drm_gem_open {
|
||||
/** Name of object being opened */
|
||||
__u32 name;
|
||||
@@ -620,33 +619,150 @@ struct drm_gem_open {
|
||||
__u64 size;
|
||||
};
|
||||
|
||||
/**
|
||||
* DRM_CAP_DUMB_BUFFER
|
||||
*
|
||||
* If set to 1, the driver supports creating dumb buffers via the
|
||||
* &DRM_IOCTL_MODE_CREATE_DUMB ioctl.
|
||||
*/
|
||||
#define DRM_CAP_DUMB_BUFFER 0x1
|
||||
/**
|
||||
* DRM_CAP_VBLANK_HIGH_CRTC
|
||||
*
|
||||
* If set to 1, the kernel supports specifying a CRTC index in the high bits of
|
||||
* &drm_wait_vblank_request.type.
|
||||
*
|
||||
* Starting kernel version 2.6.39, this capability is always set to 1.
|
||||
*/
|
||||
#define DRM_CAP_VBLANK_HIGH_CRTC 0x2
|
||||
/**
|
||||
* DRM_CAP_DUMB_PREFERRED_DEPTH
|
||||
*
|
||||
* The preferred bit depth for dumb buffers.
|
||||
*
|
||||
* The bit depth is the number of bits used to indicate the color of a single
|
||||
* pixel excluding any padding. This is different from the number of bits per
|
||||
* pixel. For instance, XRGB8888 has a bit depth of 24 but has 32 bits per
|
||||
* pixel.
|
||||
*
|
||||
* Note that this preference only applies to dumb buffers, it's irrelevant for
|
||||
* other types of buffers.
|
||||
*/
|
||||
#define DRM_CAP_DUMB_PREFERRED_DEPTH 0x3
|
||||
/**
|
||||
* DRM_CAP_DUMB_PREFER_SHADOW
|
||||
*
|
||||
* If set to 1, the driver prefers userspace to render to a shadow buffer
|
||||
* instead of directly rendering to a dumb buffer. For best speed, userspace
|
||||
* should do streaming ordered memory copies into the dumb buffer and never
|
||||
* read from it.
|
||||
*
|
||||
* Note that this preference only applies to dumb buffers, it's irrelevant for
|
||||
* other types of buffers.
|
||||
*/
|
||||
#define DRM_CAP_DUMB_PREFER_SHADOW 0x4
|
||||
/**
|
||||
* DRM_CAP_PRIME
|
||||
*
|
||||
* Bitfield of supported PRIME sharing capabilities. See &DRM_PRIME_CAP_IMPORT
|
||||
* and &DRM_PRIME_CAP_EXPORT.
|
||||
*
|
||||
* PRIME buffers are exposed as dma-buf file descriptors. See
|
||||
* Documentation/gpu/drm-mm.rst, section "PRIME Buffer Sharing".
|
||||
*/
|
||||
#define DRM_CAP_PRIME 0x5
|
||||
/**
|
||||
* DRM_PRIME_CAP_IMPORT
|
||||
*
|
||||
* If this bit is set in &DRM_CAP_PRIME, the driver supports importing PRIME
|
||||
* buffers via the &DRM_IOCTL_PRIME_FD_TO_HANDLE ioctl.
|
||||
*/
|
||||
#define DRM_PRIME_CAP_IMPORT 0x1
|
||||
/**
|
||||
* DRM_PRIME_CAP_EXPORT
|
||||
*
|
||||
* If this bit is set in &DRM_CAP_PRIME, the driver supports exporting PRIME
|
||||
* buffers via the &DRM_IOCTL_PRIME_HANDLE_TO_FD ioctl.
|
||||
*/
|
||||
#define DRM_PRIME_CAP_EXPORT 0x2
|
||||
/**
|
||||
* DRM_CAP_TIMESTAMP_MONOTONIC
|
||||
*
|
||||
* If set to 0, the kernel will report timestamps with ``CLOCK_REALTIME`` in
|
||||
* struct drm_event_vblank. If set to 1, the kernel will report timestamps with
|
||||
* ``CLOCK_MONOTONIC``. See ``clock_gettime(2)`` for the definition of these
|
||||
* clocks.
|
||||
*
|
||||
* Starting from kernel version 2.6.39, the default value for this capability
|
||||
* is 1. Starting kernel version 4.15, this capability is always set to 1.
|
||||
*/
|
||||
#define DRM_CAP_TIMESTAMP_MONOTONIC 0x6
|
||||
/**
|
||||
* DRM_CAP_ASYNC_PAGE_FLIP
|
||||
*
|
||||
* If set to 1, the driver supports &DRM_MODE_PAGE_FLIP_ASYNC.
|
||||
*/
|
||||
#define DRM_CAP_ASYNC_PAGE_FLIP 0x7
|
||||
/*
|
||||
* The CURSOR_WIDTH and CURSOR_HEIGHT capabilities return a valid widthxheight
|
||||
* combination for the hardware cursor. The intention is that a hardware
|
||||
* agnostic userspace can query a cursor plane size to use.
|
||||
/**
|
||||
* DRM_CAP_CURSOR_WIDTH
|
||||
*
|
||||
* The ``CURSOR_WIDTH`` and ``CURSOR_HEIGHT`` capabilities return a valid
|
||||
* width x height combination for the hardware cursor. The intention is that a
|
||||
* hardware agnostic userspace can query a cursor plane size to use.
|
||||
*
|
||||
* Note that the cross-driver contract is to merely return a valid size;
|
||||
* drivers are free to attach another meaning on top, eg. i915 returns the
|
||||
* maximum plane size.
|
||||
*/
|
||||
#define DRM_CAP_CURSOR_WIDTH 0x8
|
||||
/**
|
||||
* DRM_CAP_CURSOR_HEIGHT
|
||||
*
|
||||
* See &DRM_CAP_CURSOR_WIDTH.
|
||||
*/
|
||||
#define DRM_CAP_CURSOR_HEIGHT 0x9
|
||||
/**
|
||||
* DRM_CAP_ADDFB2_MODIFIERS
|
||||
*
|
||||
* If set to 1, the driver supports supplying modifiers in the
|
||||
* &DRM_IOCTL_MODE_ADDFB2 ioctl.
|
||||
*/
|
||||
#define DRM_CAP_ADDFB2_MODIFIERS 0x10
|
||||
/**
|
||||
* DRM_CAP_PAGE_FLIP_TARGET
|
||||
*
|
||||
* If set to 1, the driver supports the &DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE and
|
||||
* &DRM_MODE_PAGE_FLIP_TARGET_RELATIVE flags in
|
||||
* &drm_mode_crtc_page_flip_target.flags for the &DRM_IOCTL_MODE_PAGE_FLIP
|
||||
* ioctl.
|
||||
*/
|
||||
#define DRM_CAP_PAGE_FLIP_TARGET 0x11
|
||||
/**
|
||||
* DRM_CAP_CRTC_IN_VBLANK_EVENT
|
||||
*
|
||||
* If set to 1, the kernel supports reporting the CRTC ID in
|
||||
* &drm_event_vblank.crtc_id for the &DRM_EVENT_VBLANK and
|
||||
* &DRM_EVENT_FLIP_COMPLETE events.
|
||||
*
|
||||
* Starting kernel version 4.12, this capability is always set to 1.
|
||||
*/
|
||||
#define DRM_CAP_CRTC_IN_VBLANK_EVENT 0x12
|
||||
/**
|
||||
* DRM_CAP_SYNCOBJ
|
||||
*
|
||||
* If set to 1, the driver supports sync objects. See
|
||||
* Documentation/gpu/drm-mm.rst, section "DRM Sync Objects".
|
||||
*/
|
||||
#define DRM_CAP_SYNCOBJ 0x13
|
||||
/**
|
||||
* DRM_CAP_SYNCOBJ_TIMELINE
|
||||
*
|
||||
* If set to 1, the driver supports timeline operations on sync objects. See
|
||||
* Documentation/gpu/drm-mm.rst, section "DRM Sync Objects".
|
||||
*/
|
||||
#define DRM_CAP_SYNCOBJ_TIMELINE 0x14
|
||||
|
||||
/** DRM_IOCTL_GET_CAP ioctl argument type */
|
||||
/* DRM_IOCTL_GET_CAP ioctl argument type */
|
||||
struct drm_get_cap {
|
||||
__u64 capability;
|
||||
__u64 value;
|
||||
@@ -655,9 +771,12 @@ struct drm_get_cap {
|
||||
/**
|
||||
* DRM_CLIENT_CAP_STEREO_3D
|
||||
*
|
||||
* if set to 1, the DRM core will expose the stereo 3D capabilities of the
|
||||
* If set to 1, the DRM core will expose the stereo 3D capabilities of the
|
||||
* monitor by advertising the supported 3D layouts in the flags of struct
|
||||
* drm_mode_modeinfo.
|
||||
* drm_mode_modeinfo. See ``DRM_MODE_FLAG_3D_*``.
|
||||
*
|
||||
* This capability is always supported for all drivers starting from kernel
|
||||
* version 3.13.
|
||||
*/
|
||||
#define DRM_CLIENT_CAP_STEREO_3D 1
|
||||
|
||||
@@ -666,13 +785,25 @@ struct drm_get_cap {
|
||||
*
|
||||
* If set to 1, the DRM core will expose all planes (overlay, primary, and
|
||||
* cursor) to userspace.
|
||||
*
|
||||
* This capability has been introduced in kernel version 3.15. Starting from
|
||||
* kernel version 3.17, this capability is always supported for all drivers.
|
||||
*/
|
||||
#define DRM_CLIENT_CAP_UNIVERSAL_PLANES 2
|
||||
|
||||
/**
|
||||
* DRM_CLIENT_CAP_ATOMIC
|
||||
*
|
||||
* If set to 1, the DRM core will expose atomic properties to userspace
|
||||
* If set to 1, the DRM core will expose atomic properties to userspace. This
|
||||
* implicitly enables &DRM_CLIENT_CAP_UNIVERSAL_PLANES and
|
||||
* &DRM_CLIENT_CAP_ASPECT_RATIO.
|
||||
*
|
||||
* If the driver doesn't support atomic mode-setting, enabling this capability
|
||||
* will fail with -EOPNOTSUPP.
|
||||
*
|
||||
* This capability has been introduced in kernel version 4.0. Starting from
|
||||
* kernel version 4.2, this capability is always supported for atomic-capable
|
||||
* drivers.
|
||||
*/
|
||||
#define DRM_CLIENT_CAP_ATOMIC 3
|
||||
|
||||
@@ -680,6 +811,10 @@ struct drm_get_cap {
|
||||
* DRM_CLIENT_CAP_ASPECT_RATIO
|
||||
*
|
||||
* If set to 1, the DRM core will provide aspect ratio information in modes.
|
||||
* See ``DRM_MODE_FLAG_PIC_AR_*``.
|
||||
*
|
||||
* This capability is always supported for all drivers starting from kernel
|
||||
* version 4.18.
|
||||
*/
|
||||
#define DRM_CLIENT_CAP_ASPECT_RATIO 4
|
||||
|
||||
@@ -687,12 +822,15 @@ struct drm_get_cap {
|
||||
* DRM_CLIENT_CAP_WRITEBACK_CONNECTORS
|
||||
*
|
||||
* If set to 1, the DRM core will expose special connectors to be used for
|
||||
* writing back to memory the scene setup in the commit. Depends on client
|
||||
* also supporting DRM_CLIENT_CAP_ATOMIC
|
||||
* writing back to memory the scene setup in the commit. The client must enable
|
||||
* &DRM_CLIENT_CAP_ATOMIC first.
|
||||
*
|
||||
* This capability is always supported for atomic-capable drivers starting from
|
||||
* kernel version 4.19.
|
||||
*/
|
||||
#define DRM_CLIENT_CAP_WRITEBACK_CONNECTORS 5
|
||||
|
||||
/** DRM_IOCTL_SET_CLIENT_CAP ioctl argument type */
|
||||
/* DRM_IOCTL_SET_CLIENT_CAP ioctl argument type */
|
||||
struct drm_set_client_cap {
|
||||
__u64 capability;
|
||||
__u64 value;
|
||||
@@ -944,7 +1082,7 @@ extern "C" {
|
||||
|
||||
#define DRM_IOCTL_MODE_GETFB2 DRM_IOWR(0xCE, struct drm_mode_fb_cmd2)
|
||||
|
||||
/**
|
||||
/*
|
||||
* Device specific ioctls should only be in their respective headers
|
||||
* The device specific ioctl range is from 0x40 to 0x9f.
|
||||
* Generic IOCTLS restart at 0xA0.
|
||||
@@ -955,7 +1093,7 @@ extern "C" {
|
||||
#define DRM_COMMAND_BASE 0x40
|
||||
#define DRM_COMMAND_END 0xA0
|
||||
|
||||
/**
|
||||
/*
|
||||
* Header for events written back to userspace on the drm fd. The
|
||||
* type defines the type of event, the length specifies the total
|
||||
* length of the event (including the header), and user_data is
|
||||
|
Reference in New Issue
Block a user