SDL_kmsdrmsym.h (6537B)
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 47 SDL_KMSDRM_SYM(int,drmModeAddFB,(int fd, uint32_t width, uint32_t height, uint8_t depth, 48 uint8_t bpp, uint32_t pitch, uint32_t bo_handle, 49 uint32_t *buf_id)) 50 51 SDL_KMSDRM_SYM(int,drmModeAddFB2,(int fd, uint32_t width, uint32_t height, 52 uint32_t pixel_format, const uint32_t bo_handles[4], 53 const uint32_t pitches[4], const uint32_t offsets[4], 54 uint32_t *buf_id, uint32_t flags)) 55 56 SDL_KMSDRM_SYM(int,drmModeAddFB2WithModifiers,(int fd, uint32_t width, uint32_t height, 57 uint32_t pixel_format, const uint32_t bo_handles[4], 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 89 SDL_KMSDRM_MODULE(GBM) 90 SDL_KMSDRM_SYM(int,gbm_device_get_fd,(struct gbm_device *gbm)) 91 SDL_KMSDRM_SYM(int,gbm_device_is_format_supported,(struct gbm_device *gbm, 92 uint32_t format, uint32_t usage)) 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, 111 uint32_t width, uint32_t height, 112 uint32_t format, uint32_t usage)) 113 SDL_KMSDRM_SYM(struct gbm_surface *,gbm_surface_create,(struct gbm_device *gbm, 114 uint32_t width, uint32_t height, 115 uint32_t format, uint32_t flags)) 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: */