1From 7ae2f6ba4cbf29fc3f1b08579b838679a3301cb3 Mon Sep 17 00:00:00 2001
2From: Dave Airlie <airlied@redhat.com>
3Date: Mon, 13 Jul 2020 09:20:15 +1000
4Subject: [PATCH] nouveau: fixup driver for new X server ABI
5
6Upstream-Status: Backport [https://cgit.freedesktop.org/nouveau/xf86-video-nouveau/commit/?id=e80e73ced69b15662103d0fd6837db4ce6c6eb5b]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 src/compat-api.h  | 4 ++++
10 src/nouveau_exa.c | 2 +-
11 src/nv_driver.c   | 6 +++---
12 3 files changed, 8 insertions(+), 4 deletions(-)
13
14diff --git a/src/compat-api.h b/src/compat-api.h
15index fde2f4b..8a1fcf9 100644
16--- a/src/compat-api.h
17+++ b/src/compat-api.h
18@@ -102,4 +102,8 @@
19
20 #endif
21
22+#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
23+#define secondary_dst slave_dst
24+#endif
25+
26 #endif
27diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
28index 55df6f8..db3b112 100644
29--- a/src/nouveau_exa.c
30+++ b/src/nouveau_exa.c
31@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
32
33 #ifdef NOUVEAU_PIXMAP_SHARING
34 static Bool
35-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
36+nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
37 {
38 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
39 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
40diff --git a/src/nv_driver.c b/src/nv_driver.c
41index e72a6b6..f9ab4af 100644
42--- a/src/nv_driver.c
43+++ b/src/nv_driver.c
44@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
45 {
46 	RegionRec pixregion;
47
48-	PixmapRegionInit(&pixregion, dirty->slave_dst);
49+	PixmapRegionInit(&pixregion, dirty->secondary_dst);
50
51-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
52+	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
53 #ifdef HAS_DIRTYTRACKING_ROTATION
54 	PixmapSyncDirtyHelper(dirty);
55 #else
56 	PixmapSyncDirtyHelper(dirty, &pixregion);
57 #endif
58
59-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
60+	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
61 	RegionUninit(&pixregion);
62 }
63
64--
652.33.1
66
67