summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2018-01-26 18:32:32 +0100
committerMichel Dänzer <michel@daenzer.net>2018-01-31 09:53:58 +0100
commit1cf1bf32eff5ffca0b928c0884b0e792207b61b7 (patch)
tree0254494db72c0f960198c8e5768b52b1a5c8e72e
parentef272b161e05e8216f2d1f4df5023f3aed0ae4fa (diff)
winsys/radeon: Compute is_displayable in surf_drm_to_winsys
It was always 0, breaking (at least) DRI3 with Xwayland. Bugzilla: https://bugs.freedesktop.org/104306 Fixes: 5f2073be3282 ("ac/surface: add ac_surface::is_displayable") Reviewed-by: Marek Olšák <marek.olsak@amd.com>
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_drm_surface.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_surface.c b/src/gallium/winsys/radeon/drm/radeon_drm_surface.c
index 5ee01ff90f..77fb7757c2 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_surface.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_surface.c
@@ -215,6 +215,9 @@ static void surf_drm_to_winsys(struct radeon_drm_winsys *ws,
}
set_micro_tile_mode(surf_ws, &ws->info);
+ surf_ws->is_displayable = surf_ws->is_linear ||
+ surf_ws->micro_tile_mode == RADEON_MICRO_MODE_DISPLAY ||
+ surf_ws->micro_tile_mode == RADEON_MICRO_MODE_ROTATED;
}
static int radeon_winsys_surface_init(struct radeon_winsys *rws,