[PATCH i-g-t 26/37] lib/igt_fb: Assert that we have no clear color when using the bltter
Juha-Pekka Heikkila
juhapekka.heikkila at gmail.com
Tue Aug 27 17:09:53 UTC 2024
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
On 3.7.2024 2.28, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> The blitter code doesn't know how to deal with the clear color
> currently. There is some preliminary code to simply skip the clear
> color buffer for dg2, but that would just result in bogus rendering
> if we even had to deal with fast cleared stuff.
>
> Rip out the dg2 stuff, and just assert that we should never get
> here with a clear color modifier.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
> lib/igt_fb.c | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/lib/igt_fb.c b/lib/igt_fb.c
> index 5a1f3d5d8207..ab04733fef61 100644
> --- a/lib/igt_fb.c
> +++ b/lib/igt_fb.c
> @@ -3027,19 +3027,18 @@ static void blitcopy(const struct igt_fb *dst_fb,
> const intel_ctx_t *ictx = NULL;
> intel_ctx_t *xe_ctx = NULL;
> struct intel_execution_engine2 *e;
> - /* To ignore CC plane */
> - uint32_t src_cc = src_fb->modifier == I915_FORMAT_MOD_4_TILED_DG2_RC_CCS_CC ? 1 : 0;
> - uint32_t dst_cc = dst_fb->modifier == I915_FORMAT_MOD_4_TILED_DG2_RC_CCS_CC ? 1 : 0;
> bool is_xe = is_xe_device(dst_fb->fd);
>
> igt_assert_eq(dst_fb->fd, src_fb->fd);
> - igt_assert_eq(dst_fb->num_planes - dst_cc, src_fb->num_planes - src_cc);
> + igt_assert_eq(dst_fb->num_planes, src_fb->num_planes);
> + igt_assert(!igt_fb_is_gen12_rc_ccs_cc_modifier(src_fb->modifier));
> + igt_assert(!igt_fb_is_gen12_rc_ccs_cc_modifier(dst_fb->modifier));
>
> setup_context_and_memory_region(dst_fb, &ctx, &ahnd, &mem_region,
> &vm, &bb, &bb_size, &ictx,
> &exec_queue, &xe_ctx);
>
> - for (int i = 0; i < dst_fb->num_planes - dst_cc; i++) {
> + for (int i = 0; i < dst_fb->num_planes; i++) {
> igt_assert_eq(dst_fb->plane_bpp[i], src_fb->plane_bpp[i]);
> igt_assert_eq(dst_fb->plane_width[i], src_fb->plane_width[i]);
> igt_assert_eq(dst_fb->plane_height[i], src_fb->plane_height[i]);
More information about the igt-dev
mailing list