[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-xorg-devel
Subject:    [PATCH xserver v2 04/22] present: Add flip mode API hooks for several functions
From:       Roman Gilg <subdiff () gmail ! com>
Date:       2018-02-28 16:36:46
Message-ID: 1519835824-10067-5-git-send-email-subdiff () gmail ! com
[Download RAW message or body]

Add 'queue_vblank', 'flush' and 're_execute' hooks, that
are supposed to be shared with other flip modes.

Signed-off-by: Roman Gilg <subdiff@gmail.com>
---
 present/present_priv.h | 12 ++++++++++++
 present/present_scmd.c |  3 +++
 2 files changed, 15 insertions(+)

diff --git a/present/present_priv.h b/present/present_priv.h
index 077a823..017e204 100644
--- a/present/present_priv.h
+++ b/present/present_priv.h
@@ -97,6 +97,13 @@ typedef void (*present_priv_check_flip_window_ptr)(WindowPtr window);
 
 typedef void (*present_priv_create_event_id_ptr)(present_vblank_ptr vblank);
 
+typedef int (*present_priv_queue_vblank_ptr)(ScreenPtr screen,
+                                             RRCrtcPtr crtc,
+                                             uint64_t event_id,
+                                             uint64_t msc);
+typedef void (*present_priv_flush_ptr)(WindowPtr window);
+typedef void (*present_priv_re_execute_ptr)(present_vblank_ptr vblank);
+
 typedef struct present_screen_priv {
     CloseScreenProcPtr          CloseScreen;
     ConfigNotifyProcPtr         ConfigNotify;
@@ -123,6 +130,11 @@ typedef struct present_screen_priv {
     present_priv_check_flip_window_ptr  check_flip_window;
 
     present_priv_create_event_id_ptr    create_event_id;
+
+    present_priv_queue_vblank_ptr       queue_vblank;
+    present_priv_flush_ptr              flush;
+    present_priv_re_execute_ptr         re_execute;
+
 } present_screen_priv_rec, *present_screen_priv_ptr;
 
 #define wrap(priv,real,mem,func) {\
diff --git a/present/present_scmd.c b/present/present_scmd.c
index 86b2508..6f5e733 100644
--- a/present/present_scmd.c
+++ b/present/present_scmd.c
@@ -877,6 +877,9 @@ present_scmd_init_mode_hooks(present_screen_priv_ptr screen_priv)
     screen_priv->check_flip_window  =   &present_check_flip_window;
 
     screen_priv->create_event_id    =   &present_scmd_create_event_id;
+    screen_priv->queue_vblank       =   &present_queue_vblank;
+    screen_priv->flush              =   &present_flush;
+    screen_priv->re_execute         =   &present_re_execute;
 }
 
 Bool
-- 
2.7.4

_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic