summaryrefslogtreecommitdiffstats
path: root/src/amd
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2018-11-29 18:34:01 +0100
committerNicolai Hähnle <[email protected]>2018-12-19 12:01:22 +0100
commit0ef263d62f450b5a064b7acd2252a3c7fe6838d0 (patch)
tree828c0749e4ee87de6fcbf5aee479e589db8859dd /src/amd
parent8efaffa8932d113e5d0c753286d368ae053132f1 (diff)
ac/surface: 3D and cube surfaces are never displayable
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/amd')
-rw-r--r--src/amd/common/ac_surface.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/amd/common/ac_surface.c b/src/amd/common/ac_surface.c
index d8d927ee1c5..aeba5e161c9 100644
--- a/src/amd/common/ac_surface.c
+++ b/src/amd/common/ac_surface.c
@@ -1516,10 +1516,12 @@ static int gfx9_compute_surface(ADDR_HANDLE addrlib,
/* Query whether the surface is displayable. */
bool displayable = false;
- r = Addr2IsValidDisplaySwizzleMode(addrlib, surf->u.gfx9.surf.swizzle_mode,
+ if (!config->is_3d && !config->is_cube) {
+ r = Addr2IsValidDisplaySwizzleMode(addrlib, surf->u.gfx9.surf.swizzle_mode,
surf->bpe * 8, &displayable);
- if (r)
- return r;
+ if (r)
+ return r;
+ }
surf->is_displayable = displayable;
switch (surf->u.gfx9.surf.swizzle_mode) {