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 #endif
     24 #define QXL_GEM_DOMAIN_CPU 0
     25 #define QXL_GEM_DOMAIN_VRAM 1
     26 #define QXL_GEM_DOMAIN_SURFACE 2
     27 #define DRM_QXL_ALLOC 0x00
     28 #define DRM_QXL_MAP 0x01
     29 #define DRM_QXL_EXECBUFFER 0x02
     30 #define DRM_QXL_UPDATE_AREA 0x03
     31 #define DRM_QXL_GETPARAM 0x04
     32 #define DRM_QXL_CLIENTCAP 0x05
     33 #define DRM_QXL_ALLOC_SURF 0x06
     34 struct drm_qxl_alloc {
     35   __u32 size;
     36   __u32 handle;
     37 };
     38 struct drm_qxl_map {
     39   __u64 offset;
     40   __u32 handle;
     41   __u32 pad;
     42 };
     43 #define QXL_RELOC_TYPE_BO 1
     44 #define QXL_RELOC_TYPE_SURF 2
     45 struct drm_qxl_reloc {
     46   __u64 src_offset;
     47   __u64 dst_offset;
     48   __u32 src_handle;
     49   __u32 dst_handle;
     50   __u32 reloc_type;
     51   __u32 pad;
     52 };
     53 struct drm_qxl_command {
     54   __u64 __user command;
     55   __u64 __user relocs;
     56   __u32 type;
     57   __u32 command_size;
     58   __u32 relocs_num;
     59   __u32 pad;
     60 };
     61 struct drm_qxl_execbuffer {
     62   __u32 flags;
     63   __u32 commands_num;
     64   __u64 __user commands;
     65 };
     66 struct drm_qxl_update_area {
     67   __u32 handle;
     68   __u32 top;
     69   __u32 left;
     70   __u32 bottom;
     71   __u32 right;
     72   __u32 pad;
     73 };
     74 #define QXL_PARAM_NUM_SURFACES 1
     75 #define QXL_PARAM_MAX_RELOCS 2
     76 struct drm_qxl_getparam {
     77   __u64 param;
     78   __u64 value;
     79 };
     80 struct drm_qxl_clientcap {
     81   __u32 index;
     82   __u32 pad;
     83 };
     84 struct drm_qxl_alloc_surf {
     85   __u32 format;
     86   __u32 width;
     87   __u32 height;
     88   __s32 stride;
     89   __u32 handle;
     90   __u32 pad;
     91 };
     92 #define DRM_IOCTL_QXL_ALLOC DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_ALLOC, struct drm_qxl_alloc)
     93 #define DRM_IOCTL_QXL_MAP DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_MAP, struct drm_qxl_map)
     94 #define DRM_IOCTL_QXL_EXECBUFFER DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_EXECBUFFER, struct drm_qxl_execbuffer)
     95 #define DRM_IOCTL_QXL_UPDATE_AREA DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_UPDATE_AREA, struct drm_qxl_update_area)
     96 #define DRM_IOCTL_QXL_GETPARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_GETPARAM, struct drm_qxl_getparam)
     97 #define DRM_IOCTL_QXL_CLIENTCAP DRM_IOW(DRM_COMMAND_BASE + DRM_QXL_CLIENTCAP, struct drm_qxl_clientcap)
     98 #define DRM_IOCTL_QXL_ALLOC_SURF DRM_IOWR(DRM_COMMAND_BASE + DRM_QXL_ALLOC_SURF, struct drm_qxl_alloc_surf)
     99 #ifdef __cplusplus
    100 #endif
    101 #endif
    102