SDL  2.0
SDL_kmsdrmsym.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2020 Sam Lantinga <slouken@libsdl.org>
4 
5  This software is provided 'as-is', without any express or implied
6  warranty. In no event will the authors be held liable for any damages
7  arising from the use of this software.
8 
9  Permission is granted to anyone to use this software for any purpose,
10  including commercial applications, and to alter it and redistribute it
11  freely, subject to the following restrictions:
12 
13  1. The origin of this software must not be misrepresented; you must not
14  claim that you wrote the original software. If you use this software
15  in a product, an acknowledgment in the product documentation would be
16  appreciated but is not required.
17  2. Altered source versions must be plainly marked as such, and must not be
18  misrepresented as being the original software.
19  3. This notice may not be removed or altered from any source distribution.
20 */
21 
22 /* *INDENT-OFF* */
23 
24 #ifndef SDL_KMSDRM_MODULE
25 #define SDL_KMSDRM_MODULE(modname)
26 #endif
27 
28 #ifndef SDL_KMSDRM_SYM
29 #define SDL_KMSDRM_SYM(rc,fn,params)
30 #endif
31 
32 #ifndef SDL_KMSDRM_SYM_CONST
33 #define SDL_KMSDRM_SYM_CONST(type, name)
34 #endif
35 
36 
37 SDL_KMSDRM_MODULE(LIBDRM)
38 SDL_KMSDRM_SYM(void,drmModeFreeResources,(drmModeResPtr ptr))
39 SDL_KMSDRM_SYM(void,drmModeFreeFB,(drmModeFBPtr ptr))
40 SDL_KMSDRM_SYM(void,drmModeFreeCrtc,(drmModeCrtcPtr ptr))
41 SDL_KMSDRM_SYM(void,drmModeFreeConnector,(drmModeConnectorPtr ptr))
42 SDL_KMSDRM_SYM(void,drmModeFreeEncoder,(drmModeEncoderPtr ptr))
43 SDL_KMSDRM_SYM(int,drmGetCap,(int fd, uint64_t capability, uint64_t *value))
44 SDL_KMSDRM_SYM(int,drmIoctl,(int fd, unsigned long request, void *arg))
45 SDL_KMSDRM_SYM(drmModeResPtr,drmModeGetResources,(int fd))
46 
49  uint32_t *buf_id))
50 
53  const uint32_t pitches[4], const uint32_t offsets[4],
55 
56 SDL_KMSDRM_SYM(int,drmModeAddFB2WithModifiers,(int fd, uint32_t width, uint32_t height,
58  const uint32_t pitches[4], const uint32_t offsets[4],
59  const uint64_t modifier[4], uint32_t *buf_id,
60  uint32_t flags))
61 
62 SDL_KMSDRM_SYM(int,drmModeRmFB,(int fd, uint32_t bufferId))
63 SDL_KMSDRM_SYM(drmModeFBPtr,drmModeGetFB,(int fd, uint32_t buf))
64 SDL_KMSDRM_SYM(drmModeCrtcPtr,drmModeGetCrtc,(int fd, uint32_t crtcId))
65 SDL_KMSDRM_SYM(drmModeEncoderPtr,drmModeGetEncoder,(int fd, uint32_t encoder_id))
66 SDL_KMSDRM_SYM(drmModeConnectorPtr,drmModeGetConnector,(int fd, uint32_t connector_id))
67 
68 /* Atomic functions */
69 
70 SDL_KMSDRM_SYM(int,drmSetClientCap,(int fd, uint64_t capability, uint64_t value))
71 SDL_KMSDRM_SYM(drmModePlaneResPtr,drmModeGetPlaneResources,(int fd))
72 SDL_KMSDRM_SYM(drmModePlanePtr,drmModeGetPlane,(int fd, uint32_t plane_id))
73 SDL_KMSDRM_SYM(drmModeObjectPropertiesPtr,drmModeObjectGetProperties,(int fd,uint32_t object_id,uint32_t object_type))
74 SDL_KMSDRM_SYM(drmModePropertyPtr,drmModeGetProperty,(int fd, uint32_t propertyId))
75 
76 SDL_KMSDRM_SYM(void,drmModeFreeProperty,(drmModePropertyPtr ptr))
77 SDL_KMSDRM_SYM(void,drmModeFreeObjectProperties,(drmModeObjectPropertiesPtr ptr))
78 SDL_KMSDRM_SYM(void,drmModeFreePlane,(drmModePlanePtr ptr))
79 SDL_KMSDRM_SYM(void,drmModeFreePlaneResources,(drmModePlaneResPtr ptr))
80 
81 SDL_KMSDRM_SYM(drmModeAtomicReqPtr,drmModeAtomicAlloc,(void))
82 SDL_KMSDRM_SYM(void,drmModeAtomicFree,(drmModeAtomicReqPtr req))
83 SDL_KMSDRM_SYM(int,drmModeAtomicCommit,(int fd,drmModeAtomicReqPtr req,uint32_t flags,void *user_data))
84 SDL_KMSDRM_SYM(int,drmModeAtomicAddProperty,(drmModeAtomicReqPtr req,uint32_t object_id,uint32_t property_id,uint64_t value))
85 SDL_KMSDRM_SYM(int,drmModeCreatePropertyBlob,(int fd,const void *data,size_t size,uint32_t *id))
86 
87 /* End of atomic fns */
88 
90 SDL_KMSDRM_SYM(int,gbm_device_get_fd,(struct gbm_device *gbm))
93 SDL_KMSDRM_SYM(void,gbm_device_destroy,(struct gbm_device *gbm))
94 SDL_KMSDRM_SYM(struct gbm_device *,gbm_create_device,(int fd))
95 SDL_KMSDRM_SYM(unsigned int,gbm_bo_get_width,(struct gbm_bo *bo))
96 SDL_KMSDRM_SYM(unsigned int,gbm_bo_get_height,(struct gbm_bo *bo))
97 SDL_KMSDRM_SYM(uint32_t,gbm_bo_get_stride,(struct gbm_bo *bo))
98 SDL_KMSDRM_SYM(uint32_t,gbm_bo_get_stride_for_plane,(struct gbm_bo *bo,int plane))
99 SDL_KMSDRM_SYM(uint32_t,gbm_bo_get_format,(struct gbm_bo *bo))
100 SDL_KMSDRM_SYM(uint32_t,gbm_bo_get_offset,(struct gbm_bo *bo, int plane))
101 SDL_KMSDRM_SYM(int,gbm_bo_get_plane_count,(struct gbm_bo *bo))
102 
103 SDL_KMSDRM_SYM(union gbm_bo_handle,gbm_bo_get_handle,(struct gbm_bo *bo))
104 SDL_KMSDRM_SYM(int,gbm_bo_write,(struct gbm_bo *bo, const void *buf, size_t count))
105 SDL_KMSDRM_SYM(struct gbm_device *,gbm_bo_get_device,(struct gbm_bo *bo))
106 SDL_KMSDRM_SYM(void,gbm_bo_set_user_data,(struct gbm_bo *bo, void *data,
107  void (*destroy_user_data)(struct gbm_bo *, void *)))
108 SDL_KMSDRM_SYM(void *,gbm_bo_get_user_data,(struct gbm_bo *bo))
109 SDL_KMSDRM_SYM(void,gbm_bo_destroy,(struct gbm_bo *bo))
110 SDL_KMSDRM_SYM(struct gbm_bo *,gbm_bo_create,(struct gbm_device *gbm,
113 SDL_KMSDRM_SYM(struct gbm_surface *,gbm_surface_create,(struct gbm_device *gbm,
116 SDL_KMSDRM_SYM(void,gbm_surface_destroy,(struct gbm_surface *surf))
117 SDL_KMSDRM_SYM(struct gbm_bo *,gbm_surface_lock_front_buffer,(struct gbm_surface *surf))
118 SDL_KMSDRM_SYM(void,gbm_surface_release_buffer,(struct gbm_surface *surf, struct gbm_bo *bo))
119 
120 
121 #undef SDL_KMSDRM_MODULE
122 #undef SDL_KMSDRM_SYM
123 #undef SDL_KMSDRM_SYM_CONST
124 
125 /* *INDENT-ON* */
126 
127 /* vi: set ts=4 sw=4 expandtab: */
unsigned int uint32_t
unsigned long long uint64_t
unsigned char uint8_t
int uint32_t uint32_t bufferId
int uint32_t uint32_t uint32_t uint32_t uint32_t int drmModeModeInfoPtr mode int uint32_t uint32_t bo_handle
int uint32_t crtcId
int uint32_t uint32_t uint32_t const uint32_t const uint32_t pitches[4]
Definition: SDL_kmsdrmsym.h:53
int uint32_t uint32_t uint32_t const uint32_t const uint32_t const uint32_t uint32_t * buf_id
Definition: SDL_kmsdrmsym.h:54
int uint32_t uint32_t uint32_t const uint32_t bo_handles[4]
Definition: SDL_kmsdrmsym.h:52
int uint32_t uint32_t uint32_t const uint32_t const uint32_t const uint32_t uint32_t uint32_t flags struct gbm_device * gbm
Definition: SDL_kmsdrmsym.h:91
#define SDL_KMSDRM_SYM(rc, fn, params)
Definition: SDL_kmsdrmsym.h:29
int uint32_t uint32_t uint32_t const uint32_t const uint32_t const uint32_t uint32_t uint32_t flags struct gbm_device uint32_t uint32_t usage gbm_bo_create
drmModeAddFB2
Definition: SDL_kmsdrmsym.h:51
#define SDL_KMSDRM_MODULE(modname)
Definition: SDL_kmsdrmsym.h:25
int uint32_t uint32_t uint32_t pixel_format
Definition: SDL_kmsdrmsym.h:52
int uint32_t uint32_t uint32_t const uint32_t const uint32_t const uint32_t uint32_t uint32_t flags gbm_device_is_format_supported
Definition: SDL_kmsdrmsym.h:91
GLuint GLuint GLsizei count
Definition: SDL_opengl.h:1571
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974
GLint GLint GLsizei width
Definition: SDL_opengl.h:1572
GLint GLint GLsizei GLsizei GLsizei depth
Definition: SDL_opengl.h:1572
GLint GLint GLsizei GLsizei height
Definition: SDL_opengl.h:1572
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: SDL_opengl.h:1572
GLuint GLsizei const GLuint const GLintptr * offsets
GLsizeiptr size
GLenum GLuint GLenum GLsizei const GLchar * buf
GLbitfield flags
GLsizei const GLfloat * value
GLsizeiptr const void GLenum usage
EGLSurface surf
Definition: eglext.h:1025
GLuint64 GLenum GLint fd
Definition: gl2ext.h:1508
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp
set set set set set set set set set set set set set set set set set set set set *set set set macro pixldst op &r &cond WK op &r &cond WK op &r &cond WK else op &m &cond &ia op &r &cond WK else op &m &cond &ia elseif elseif else error unsupported base if elseif elseif else error unsupported unaligned pixldst unaligned endm macro pixst base base else pixldst base endif endm macro PF ptr