diff options
Diffstat (limited to 'include/uapi/drm/radeon_drm.h')
-rw-r--r-- | include/uapi/drm/radeon_drm.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/include/uapi/drm/radeon_drm.h b/include/uapi/drm/radeon_drm.h index 509b2d7a41b7..3a9f20930372 100644 --- a/include/uapi/drm/radeon_drm.h +++ b/include/uapi/drm/radeon_drm.h | |||
@@ -511,6 +511,7 @@ typedef struct { | |||
511 | #define DRM_RADEON_GEM_BUSY 0x2a | 511 | #define DRM_RADEON_GEM_BUSY 0x2a |
512 | #define DRM_RADEON_GEM_VA 0x2b | 512 | #define DRM_RADEON_GEM_VA 0x2b |
513 | #define DRM_RADEON_GEM_OP 0x2c | 513 | #define DRM_RADEON_GEM_OP 0x2c |
514 | #define DRM_RADEON_GEM_USERPTR 0x2d | ||
514 | 515 | ||
515 | #define DRM_IOCTL_RADEON_CP_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_RADEON_CP_INIT, drm_radeon_init_t) | 516 | #define DRM_IOCTL_RADEON_CP_INIT DRM_IOW( DRM_COMMAND_BASE + DRM_RADEON_CP_INIT, drm_radeon_init_t) |
516 | #define DRM_IOCTL_RADEON_CP_START DRM_IO( DRM_COMMAND_BASE + DRM_RADEON_CP_START) | 517 | #define DRM_IOCTL_RADEON_CP_START DRM_IO( DRM_COMMAND_BASE + DRM_RADEON_CP_START) |
@@ -554,6 +555,7 @@ typedef struct { | |||
554 | #define DRM_IOCTL_RADEON_GEM_BUSY DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_BUSY, struct drm_radeon_gem_busy) | 555 | #define DRM_IOCTL_RADEON_GEM_BUSY DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_BUSY, struct drm_radeon_gem_busy) |
555 | #define DRM_IOCTL_RADEON_GEM_VA DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_VA, struct drm_radeon_gem_va) | 556 | #define DRM_IOCTL_RADEON_GEM_VA DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_VA, struct drm_radeon_gem_va) |
556 | #define DRM_IOCTL_RADEON_GEM_OP DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_OP, struct drm_radeon_gem_op) | 557 | #define DRM_IOCTL_RADEON_GEM_OP DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_OP, struct drm_radeon_gem_op) |
558 | #define DRM_IOCTL_RADEON_GEM_USERPTR DRM_IOWR(DRM_COMMAND_BASE + DRM_RADEON_GEM_USERPTR, struct drm_radeon_gem_userptr) | ||
557 | 559 | ||
558 | typedef struct drm_radeon_init { | 560 | typedef struct drm_radeon_init { |
559 | enum { | 561 | enum { |
@@ -808,6 +810,20 @@ struct drm_radeon_gem_create { | |||
808 | uint32_t flags; | 810 | uint32_t flags; |
809 | }; | 811 | }; |
810 | 812 | ||
813 | /* | ||
814 | * This is not a reliable API and you should expect it to fail for any | ||
815 | * number of reasons and have fallback path that do not use userptr to | ||
816 | * perform any operation. | ||
817 | */ | ||
818 | #define RADEON_GEM_USERPTR_READONLY (1 << 0) | ||
819 | |||
820 | struct drm_radeon_gem_userptr { | ||
821 | uint64_t addr; | ||
822 | uint64_t size; | ||
823 | uint32_t flags; | ||
824 | uint32_t handle; | ||
825 | }; | ||
826 | |||
811 | #define RADEON_TILING_MACRO 0x1 | 827 | #define RADEON_TILING_MACRO 0x1 |
812 | #define RADEON_TILING_MICRO 0x2 | 828 | #define RADEON_TILING_MICRO 0x2 |
813 | #define RADEON_TILING_SWAP_16BIT 0x4 | 829 | #define RADEON_TILING_SWAP_16BIT 0x4 |