This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch devs/devilhorns/apos
in repository efl.

View the commit online.

commit 16c258adf1448623040166087a7df88921a4ecc0
Author: Christopher Michael <devilho...@comcast.net>
AuthorDate: Wed Oct 9 11:06:49 2024 -0400

    ecore_drm2: Add missing symlinks to drm ioctl functions
    
    We will need to sym some more drm ioctl functions for framebuffer usage
---
 src/lib/ecore_drm2/ecore_drm2.c         | 13 +++++++++++++
 src/lib/ecore_drm2/ecore_drm2_private.h |  6 ++++++
 2 files changed, 19 insertions(+)

diff --git a/src/lib/ecore_drm2/ecore_drm2.c b/src/lib/ecore_drm2/ecore_drm2.c
index f8f81bd31c..93d57e1f0f 100644
--- a/src/lib/ecore_drm2/ecore_drm2.c
+++ b/src/lib/ecore_drm2/ecore_drm2.c
@@ -8,6 +8,7 @@ static void *_drm_lib = NULL;
 int _ecore_drm2_log_dom = -1;
 
 /* external drm function prototypes (for dlopen) */
+int (*sym_drmIoctl)(int fd, unsigned long request, void *arg) = NULL;
 void *(*sym_drmModeGetResources)(int fd) = NULL;
 void (*sym_drmModeFreeResources)(drmModeResPtr ptr) = NULL;
 int (*sym_drmGetCap)(int fd, uint64_t capability, uint64_t *value);
@@ -36,6 +37,11 @@ int (*sym_drmModeAtomicAddProperty)(drmModeAtomicReqPtr req, uint32_t object_id,
 int (*sym_drmModeAtomicCommit)(int fd, drmModeAtomicReqPtr req, uint32_t flags, void *user_data) = NULL;
 void (*sym_drmModeAtomicSetCursor)(drmModeAtomicReqPtr req, int cursor) = NULL;
 int (*sym_drmWaitVBlank)(int fd, drmVBlank *vbl) = NULL;
+int (*sym_drmModeAddFB)(int fd, uint32_t width, uint32_t height, uint8_t depth, uint8_t bpp, uint32_t pitch, uint32_t bo_handle, uint32_t *buf_id);
+int (*sym_drmModeAddFB2)(int fd, uint32_t width, uint32_t height, uint32_t pixel_format, uint32_t bo_handles[4], uint32_t pitches[4], uint32_t offsets[4], uint32_t *buf_id, uint32_t flags);
+int (*sym_drmModeRmFB)(int fd, uint32_t bufferId);
+int (*sym_drmModePageFlip)(int fd, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, void *user_data);
+int (*sym_drmModeDirtyFB)(int fd, uint32_t bufferId, drmModeClipPtr clips, uint32_t num_clips);
 
 EAPI int ECORE_DRM2_EVENT_ACTIVATE = -1;
 
@@ -72,6 +78,7 @@ _ecore_drm2_link(void)
         fail = EINA_FALSE;
 
         /* TODO: Sym needed libdrm functions */
+	SYM(_drm_lib, drmIoctl);
         SYM(_drm_lib, drmModeGetResources);
         SYM(_drm_lib, drmModeFreeResources);
         SYM(_drm_lib, drmGetCap);
@@ -100,6 +107,12 @@ _ecore_drm2_link(void)
         SYM(_drm_lib, drmModeAtomicCommit);
         SYM(_drm_lib, drmModeAtomicSetCursor);
         SYM(_drm_lib, drmWaitVBlank);
+	SYM(_drm_lib, drmModeAddFB);
+	SYM(_drm_lib, drmModeAddFB2);
+	SYM(_drm_lib, drmModeRmFB);
+	SYM(_drm_lib, drmModeAddFB);
+	SYM(_drm_lib, drmModePageFlip);
+	SYM(_drm_lib, drmModeDirtyFB);
 
         if (fail)
           {
diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h
index df644a8c63..714ae9ffe7 100644
--- a/src/lib/ecore_drm2/ecore_drm2_private.h
+++ b/src/lib/ecore_drm2/ecore_drm2_private.h
@@ -375,6 +375,7 @@ void _ecore_drm2_planes_destroy(Ecore_Drm2_Device *dev);
 Ecore_Drm2_Plane *_ecore_drm2_planes_primary_find(Ecore_Drm2_Device *dev, unsigned int crtc_id);
 
 /* external drm function prototypes (for dlopen) */
+extern int (*sym_drmIoctl)(int fd, unsigned long request, void *arg);
 extern void *(*sym_drmModeGetResources)(int fd);
 extern void (*sym_drmModeFreeResources)(drmModeResPtr ptr);
 extern int (*sym_drmGetCap)(int fd, uint64_t capability, uint64_t *value);
@@ -403,5 +404,10 @@ extern int (*sym_drmModeAtomicAddProperty)(drmModeAtomicReqPtr req, uint32_t obj
 extern int (*sym_drmModeAtomicCommit)(int fd, drmModeAtomicReqPtr req, uint32_t flags, void *user_data);
 extern void (*sym_drmModeAtomicSetCursor)(drmModeAtomicReqPtr req, int cursor);
 extern int (*sym_drmWaitVBlank)(int fd, drmVBlank *vbl);
+extern int (*sym_drmModeAddFB)(int fd, uint32_t width, uint32_t height, uint8_t depth, uint8_t bpp, uint32_t pitch, uint32_t bo_handle, uint32_t *buf_id);
+extern int (*sym_drmModeAddFB2)(int fd, uint32_t width, uint32_t height, uint32_t pixel_format, uint32_t bo_handles[4], uint32_t pitches[4], uint32_t offsets[4], uint32_t *buf_id, uint32_t flags);
+extern int (*sym_drmModeRmFB)(int fd, uint32_t bufferId);
+extern int (*sym_drmModePageFlip)(int fd, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, void *user_data);
+extern int (*sym_drmModeDirtyFB)(int fd, uint32_t bufferId, drmModeClipPtr clips, uint32_t num_clips);
 
 #endif

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to