From dfbf1a8e80db2d4eba3dda2ae8c78f21009cfc8f Mon Sep 17 00:00:00 2001 From: Ella Stanforth Date: Wed, 16 Jul 2025 18:42:37 +0100 Subject: [PATCH] v3d: rename msaa resolve The conditions for being able to do msaa resolve and hardware blending are identical. Reviewed-by: Iago Toral Quiroga Part-of: --- src/gallium/drivers/v3d/v3d_blit.c | 2 +- src/gallium/drivers/v3d/v3d_context.h | 4 ++-- src/gallium/drivers/v3d/v3d_formats.c | 8 ++++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/v3d/v3d_blit.c b/src/gallium/drivers/v3d/v3d_blit.c index d425c308738..ba39f0a66e9 100644 --- a/src/gallium/drivers/v3d/v3d_blit.c +++ b/src/gallium/drivers/v3d/v3d_blit.c @@ -354,7 +354,7 @@ check_tlb_blit_ok(struct v3d_device_info *devinfo, struct pipe_blit_info *info) info->dst.resource->nr_samples < 2); if (is_msaa_resolve && - !v3d_format_supports_tlb_msaa_resolve(devinfo, info->src.format)) + !v3d_format_supports_tlb_resolve_and_blend(devinfo, info->src.format)) return false; return true; diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h index 0b8d40042c4..76fc518981f 100644 --- a/src/gallium/drivers/v3d/v3d_context.h +++ b/src/gallium/drivers/v3d/v3d_context.h @@ -844,8 +844,8 @@ uint8_t v3d_get_tex_return_channels(const struct v3d_device_info *devinfo, enum pipe_format f); const uint8_t *v3d_get_format_swizzle(const struct v3d_device_info *devinfo, enum pipe_format f); -bool v3d_format_supports_tlb_msaa_resolve(const struct v3d_device_info *devinfo, - enum pipe_format f); +bool v3d_format_supports_tlb_resolve_and_blend(const struct v3d_device_info *devinfo, + enum pipe_format f); bool v3d_format_needs_tlb_rb_swap(enum pipe_format format); void v3d_format_get_internal_type_and_bpp(const struct v3d_device_info *devinfo, enum pipe_format format, diff --git a/src/gallium/drivers/v3d/v3d_formats.c b/src/gallium/drivers/v3d/v3d_formats.c index 2acfe0ea235..be585bd2a7a 100644 --- a/src/gallium/drivers/v3d/v3d_formats.c +++ b/src/gallium/drivers/v3d/v3d_formats.c @@ -124,9 +124,13 @@ v3d_get_format_swizzle(const struct v3d_device_info *devinfo, enum pipe_format f return vf->swizzle; } +/** + * If our internal type is normalised or a 16bit float we can do real + * operations on the tilebuffer such as msaa resolve or blending. + */ bool -v3d_format_supports_tlb_msaa_resolve(const struct v3d_device_info *devinfo, - enum pipe_format f) +v3d_format_supports_tlb_resolve_and_blend(const struct v3d_device_info *devinfo, + enum pipe_format f) { uint32_t internal_type; uint32_t internal_bpp;