From: Khaled Emara Date: Sun, 4 Aug 2019 15:51:24 +0000 (+0200) Subject: freedreno: disable tiling for cubemaps X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2720ad5fd9d858f5bb72046017ba55f63345268b;p=mesa.git freedreno: disable tiling for cubemaps Tiling doesn't work quite well with cubemaps. Revert to linear textures, until it's fixed. --- diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_resource.c b/src/gallium/drivers/freedreno/a3xx/fd3_resource.c index f6b52bd30a1..5bde52c62be 100644 --- a/src/gallium/drivers/freedreno/a3xx/fd3_resource.c +++ b/src/gallium/drivers/freedreno/a3xx/fd3_resource.c @@ -96,13 +96,16 @@ fd3_setup_slices(struct fd_resource *rsc) } static bool -ok_format(enum pipe_format pfmt) +ok_format(enum pipe_format pfmt, const struct pipe_resource * tmpl) { enum a3xx_color_fmt fmt = fd3_pipe2color(pfmt); if (fmt == ~0) return false; + if (tmpl->target == PIPE_TEXTURE_CUBE) + return false; + switch (pfmt) { case PIPE_FORMAT_R8_UINT: case PIPE_FORMAT_R8_SINT: @@ -118,7 +121,7 @@ ok_format(enum pipe_format pfmt) unsigned fd3_tile_mode(const struct pipe_resource *tmpl) { - if (ok_format(tmpl->format)) + if (ok_format(tmpl->format, tmpl)) return TILE_4X4; return LINEAR; }