xserver: Branch 'master'

Keith Packard keithp at kemper.freedesktop.org
Fri Sep 16 16:58:52 UTC 2016


 include/scrnintstr.h |   19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

New commits:
commit bd8ecd9be1568b59258b6d2f78530ede345b7c7a
Author: Michel Dänzer <michel.daenzer at amd.com>
Date:   Fri Sep 16 09:51:31 2016 -0700

    Add SyncSharedPixmap ScreenRec hook
    
    Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
    Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
    Signed-off-by: Keith Packard <keithp at keithp.com>

diff --git a/include/scrnintstr.h b/include/scrnintstr.h
index 5330714..52e8382 100644
--- a/include/scrnintstr.h
+++ b/include/scrnintstr.h
@@ -347,6 +347,24 @@ typedef Bool (*SharePixmapBackingProcPtr)(PixmapPtr, ScreenPtr, void **);
 
 typedef Bool (*SetSharedPixmapBackingProcPtr)(PixmapPtr, void *);
 
+#define HAS_SYNC_SHARED_PIXMAP 1
+/* The SyncSharedPixmap hook has two purposes:
+ *
+ * 1. If the master driver has it, the slave driver can use it to
+ * synchronize the shared pixmap contents with the screen pixmap.
+ * 2. If the slave driver has it, the master driver can expect the slave
+ * driver to call the master screen's SyncSharedPixmap hook, so the master
+ * driver doesn't have to synchronize the shared pixmap contents itself,
+ * e.g. from the BlockHandler.
+ *
+ * A driver must only set the hook if it handles both cases correctly.
+ *
+ * The argument is the slave screen's pixmap_dirty_list entry, the hook is
+ * responsible for finding the corresponding entry in the master screen's
+ * pixmap_dirty_list.
+ */
+typedef void (*SyncSharedPixmapProcPtr)(PixmapDirtyUpdatePtr);
+
 typedef Bool (*StartPixmapTrackingProcPtr)(PixmapPtr, PixmapPtr,
                                            int x, int y,
                                            int dst_x, int dst_y,
@@ -616,6 +634,7 @@ typedef struct _Screen {
 
     StartPixmapTrackingProcPtr StartPixmapTracking;
     StopPixmapTrackingProcPtr StopPixmapTracking;
+    SyncSharedPixmapProcPtr SyncSharedPixmap;
 
     SharedPixmapNotifyDamageProcPtr SharedPixmapNotifyDamage;
     RequestSharedPixmapNotifyDamageProcPtr RequestSharedPixmapNotifyDamage;


More information about the xorg-commit mailing list