The performance impact is slightly mitigated by tiling the render target, but it's undeniably still slow compared to AFBC. Unfortunately, it doesn't look like AFBC and sRGB play nice...
Signed-off-by: Alyssa Rosenzweig <[email protected]> --- src/gallium/drivers/panfrost/pan_afbc.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/panfrost/pan_afbc.c b/src/gallium/drivers/panfrost/pan_afbc.c index 0bb9d2491c6..4bef833f182 100644 --- a/src/gallium/drivers/panfrost/pan_afbc.c +++ b/src/gallium/drivers/panfrost/pan_afbc.c @@ -83,6 +83,13 @@ panfrost_format_supports_afbc(enum pipe_format format) const struct util_format_description *desc = util_format_description(format); + /* sRGB cannot be AFBC, but it can be tiled. TODO: Verify. The blob + * does not do AFBC for SRGB8_ALPHA8, but it's not clear why it + * shouldn't be able to. */ + + if (desc->colorspace == UTIL_FORMAT_COLORSPACE_SRGB) + return false; + if (util_format_is_rgba8_variant(desc)) return true; -- 2.20.1 _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
