From 1f1da58ed180bf173e73903e0bf0e2232febd081 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Wed, 4 May 2022 17:11:59 -0400 Subject: [PATCH] panfrost: Gate tiled AFBC on GPUs that support it Introduced with v7. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/gallium/drivers/panfrost/pan_screen.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost/pan_screen.c index deb1f392f1c..b584c9f2257 100644 --- a/src/gallium/drivers/panfrost/pan_screen.c +++ b/src/gallium/drivers/panfrost/pan_screen.c @@ -587,6 +587,7 @@ panfrost_walk_dmabuf_modifiers(struct pipe_screen *screen, struct panfrost_device *dev = pan_device(screen); bool afbc = dev->has_afbc && panfrost_format_supports_afbc(dev, format); bool ytr = panfrost_afbc_can_ytr(format); + bool tiled_afbc = panfrost_afbc_can_tile(dev); unsigned count = 0; @@ -597,6 +598,9 @@ panfrost_walk_dmabuf_modifiers(struct pipe_screen *screen, if ((pan_best_modifiers[i] & AFBC_FORMAT_MOD_YTR) && !ytr) continue; + if ((pan_best_modifiers[i] & AFBC_FORMAT_MOD_TILED) && !tiled_afbc) + continue; + if (test_modifier != DRM_FORMAT_MOD_INVALID && test_modifier != pan_best_modifiers[i]) continue;