Home | History | Annotate | Download | only in drm
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef QXL_DRM_H
     20 #define QXL_DRM_H
     21 #include "drm.h"
     22 #ifdef __cplusplus
     23 extern "C" {
     24 #endif
     25 #define QXL_GEM_DOMAIN_CPU 0
     26 #define QXL_GEM_DOMAIN_VRAM 1
     27 #define QXL_GEM_DOMAIN_SURFACE 2
     28 #define DRM_QXL_ALLOC 0x00
     29 #define DRM_QXL_MAP 0x01
     30 #define DRM_QXL_EXECBUFFER 0x02
     31 #define DRM_QXL_UPDATE_AREA 0x03
     32 #define DRM_QXL_GETPARAM 0x04
     33 #define DRM_QXL_CLIENTCAP 0x05
     34 #define DRM_QXL_ALLOC_SURF 0x06
     35 struct drm_qxl_alloc {
     36   __u32 size;
     37   __u32 handle;
     38 };
     39 struct drm_qxl_map {
     40   __u64 offset;
     41   __u32 handle;
     42   __u32 pad;
     43 };
     44 #define QXL_RELOC_TYPE_BO 1
     45 #define QXL_RELOC_TYPE_SURF 2
     46 struct drm_qxl_reloc {
     47   __u64 src_offset;
     48   __u64 dst_offset;
     49   __u32 src_handle;
     50   __u32 dst_handle;
     51   __u32 reloc_type;
     52   __u32 pad;
     53 };
     54 struct drm_qxl_command {
     55   __u64 command;
     56   __u64 relocs;
     57   __u32 type;
     58   __u32 command_size;
     59   __u32 relocs_num;
     60   __u32 pad;
     61 };
     62 struct drm_qxl_execbuffer {
     63   __u32 flags;
     64   __u32 commands_num;
     65   __u64 commands;
     66 };
     67 struct drm_qxl_update_area {
     68   __u32 handle;
     69   __u32 top;
     70   __u32 left;
     71   __u32 bottom;
     72   __u32 right;
     73   __u32 pad;
     74 };
     75 #define QXL_PARAM_NUM_SURFACES 1
     76 #define QXL_PARAM_MAX_RELOCS 2
     77 struct drm_qxl_getparam {
     78   __u64 param;
     79   __u64 value;
     80 };
     81 struct drm_qxl_clientcap {
     82   __u32 index;
     83   __u32 pad;
     84 };
     85 struct drm_qxl_alloc_surf {
     86   __u32 format;
     87   __u32 width;
     88   __u32 height;
     89   __s32 stride;
     90   __u32 handle;
     91   __u32 pad;
     92 };
     93 #define DRM_IOCTL_QXL_ALLOC DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_ALLOC, struct drm_qxl_alloc)
     94 #define DRM_IOCTL_QXL_MAP DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_MAP, struct drm_qxl_map)
     95 #define DRM_IOCTL_QXL_EXECBUFFER DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_EXECBUFFER, struct drm_qxl_execbuffer)
     96 #define DRM_IOCTL_QXL_UPDATE_AREA DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_UPDATE_AREA, struct drm_qxl_update_area)
     97 #define DRM_IOCTL_QXL_GETPARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_GETPARAM, struct drm_qxl_getparam)
     98 #define DRM_IOCTL_QXL_CLIENTCAP DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_CLIENTCAP, struct drm_qxl_clientcap)
     99 #define DRM_IOCTL_QXL_ALLOC_SURF DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_ALLOC_SURF, struct drm_qxl_alloc_surf)
    100 #ifdef __cplusplus
    101 }
    102 #endif
    103 #endif
    104