xf86-video-amdgpu: Branch 'master'
Michel Dänzer
daenzer at kemper.freedesktop.org
Fri Dec 1 14:44:10 UTC 2017
src/amdgpu_drv.h | 18 +++++++++---------
src/amdgpu_kms.c | 7 ++-----
2 files changed, 11 insertions(+), 14 deletions(-)
New commits:
commit 1d65ac395971571094df21ca0408d5972c6b56ec
Author: Michel Dänzer <michel.daenzer at amd.com>
Date: Wed Nov 15 18:22:27 2017 +0100
Add amdgpu_dirty_src_drawable helper
Allows tidying up amdgpu_dirty_src_equals and redisplay_dirty slightly.
v2:
* Different approach for amdgpu_dirty_master
Acked-by: Alex Deucher <alexander.deucher at amd.com>
diff --git a/src/amdgpu_drv.h b/src/amdgpu_drv.h
index 4ee13e1..055c3c3 100644
--- a/src/amdgpu_drv.h
+++ b/src/amdgpu_drv.h
@@ -178,23 +178,23 @@ amdgpu_master_screen(ScreenPtr screen)
static inline ScreenPtr
amdgpu_dirty_master(PixmapDirtyUpdatePtr dirty)
{
+ return amdgpu_master_screen(dirty->slave_dst->drawable.pScreen);
+}
+
+static inline DrawablePtr
+amdgpu_dirty_src_drawable(PixmapDirtyUpdatePtr dirty)
+{
#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC
- ScreenPtr screen = dirty->src->pScreen;
+ return dirty->src;
#else
- ScreenPtr screen = dirty->src->drawable.pScreen;
+ return &dirty->src->drawable;
#endif
-
- return amdgpu_master_screen(screen);
}
static inline Bool
amdgpu_dirty_src_equals(PixmapDirtyUpdatePtr dirty, PixmapPtr pixmap)
{
-#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC
- return dirty->src == &pixmap->drawable;
-#else
- return dirty->src == pixmap;
-#endif
+ return amdgpu_dirty_src_drawable(dirty) == &pixmap->drawable;
}
diff --git a/src/amdgpu_kms.c b/src/amdgpu_kms.c
index a5f2040..c157112 100644
--- a/src/amdgpu_kms.c
+++ b/src/amdgpu_kms.c
@@ -479,11 +479,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
static void
redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
{
-#ifdef HAS_DIRTYTRACKING_DRAWABLE_SRC
- ScrnInfoPtr src_scrn = xf86ScreenToScrn(dirty->src->pScreen);
-#else
- ScrnInfoPtr src_scrn = xf86ScreenToScrn(dirty->src->drawable.pScreen);
-#endif
+ ScrnInfoPtr src_scrn =
+ xf86ScreenToScrn(amdgpu_dirty_src_drawable(dirty)->pScreen);
if (RegionNil(region))
goto out;
More information about the xorg-commit
mailing list