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 4202313421dcf55bfebb411652c17db30623898d
Author: Christopher Michael <devilho...@comcast.net>
AuthorDate: Tue Dec 6 10:35:42 2022 -0500

    ecore_drm2: Add symlinks for libdrm functions needed for Atomic support
---
 src/lib/ecore_drm2/ecore_drm2.c         | 10 ++++++++++
 src/lib/ecore_drm2/ecore_drm2_private.h |  8 +++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2.c b/src/lib/ecore_drm2/ecore_drm2.c
index 85a849228a..f0005a1fd1 100644
--- a/src/lib/ecore_drm2/ecore_drm2.c
+++ b/src/lib/ecore_drm2/ecore_drm2.c
@@ -30,6 +30,11 @@ void *(*sym_drmModeGetEncoder)(int fd, uint32_t encoder_id);
 void (*sym_drmModeFreeEncoder)(drmModeEncoderPtr ptr);
 void *(*sym_drmModeGetCrtc)(int fd, uint32_t crtcId);
 void (*sym_drmModeFreeCrtc)(drmModeCrtcPtr ptr);
+void *(*sym_drmModeAtomicAlloc)(void) = NULL;
+void (*sym_drmModeAtomicFree)(drmModeAtomicReqPtr req) = NULL;
+int (*sym_drmModeAtomicAddProperty)(drmModeAtomicReqPtr req, uint32_t object_id, uint32_t property_id, uint64_t value) = NULL;
+int (*sym_drmModeAtomicCommit)(int fd, drmModeAtomicReqPtr req, uint32_t flags, void *user_data) = NULL;
+void (*sym_drmModeAtomicSetCursor)(drmModeAtomicReqPtr req, int cursor) = NULL;
 
 /* local static functions */
 static Eina_Bool
@@ -86,6 +91,11 @@ _ecore_drm2_link(void)
         SYM(_drm_lib, drmModeFreeEncoder);
         SYM(_drm_lib, drmModeGetCrtc);
         SYM(_drm_lib, drmModeFreeCrtc);
+        SYM(_drm_lib, drmModeAtomicAlloc);
+        SYM(_drm_lib, drmModeAtomicFree);
+        SYM(_drm_lib, drmModeAtomicAddProperty);
+        SYM(_drm_lib, drmModeAtomicCommit);
+        SYM(_drm_lib, drmModeAtomicSetCursor);
 
         if (fail)
           {
diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h
index 3934d093ed..f869541047 100644
--- a/src/lib/ecore_drm2/ecore_drm2_private.h
+++ b/src/lib/ecore_drm2/ecore_drm2_private.h
@@ -180,6 +180,7 @@ struct _Ecore_Drm2_Plane
 
 struct _Ecore_Drm2_Display_Mode
 {
+   uint32_t id;
    uint32_t flags, refresh;
    int32_t width, height;
    drmModeModeInfo info;
@@ -290,7 +291,7 @@ void _ecore_drm2_displays_destroy(Ecore_Drm2_Device *dev);
 Eina_Bool _ecore_drm2_planes_create(Ecore_Drm2_Device *dev);
 void _ecore_drm2_planes_destroy(Ecore_Drm2_Device *dev);
 
-void _ecore_drm2_crtc_mode_set(Ecore_Drm2_Crtc *crtc, Ecore_Drm2_Display_Mode *mode, int x, int y);
+Eina_Bool _ecore_drm2_crtc_mode_set(Ecore_Drm2_Crtc *crtc, Ecore_Drm2_Display_Mode *mode, int x, int y);
 
 /* external drm function prototypes (for dlopen) */
 extern void *(*sym_drmModeGetResources)(int fd);
@@ -315,5 +316,10 @@ extern void *(*sym_drmModeGetEncoder)(int fd, uint32_t encoder_id);
 extern void (*sym_drmModeFreeEncoder)(drmModeEncoderPtr ptr);
 extern void *(*sym_drmModeGetCrtc)(int fd, uint32_t crtcId);
 extern void (*sym_drmModeFreeCrtc)(drmModeCrtcPtr ptr);
+extern void *(*sym_drmModeAtomicAlloc)(void);
+extern void (*sym_drmModeAtomicFree)(drmModeAtomicReqPtr req);
+extern int (*sym_drmModeAtomicAddProperty)(drmModeAtomicReqPtr req, uint32_t object_id, uint32_t property_id, uint64_t value);
+extern int (*sym_drmModeAtomicCommit)(int fd, drmModeAtomicReqPtr req, uint32_t flags, void *user_data);
+extern void (*sym_drmModeAtomicSetCursor)(drmModeAtomicReqPtr req, int cursor);
 
 #endif

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

Reply via email to