[PATCH i-g-t v1] tests/intel/kms_dirty-fb: update modifier based on display version for fbc

Juha-Pekka Heikkilä juhapekka.heikkila at gmail.com
Thu Feb 27 13:50:12 UTC 2025


Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>

On Thu, Feb 20, 2025 at 4:13 PM Vinod Govindapillai
<vinod.govindapillai at intel.com> wrote:
>
> FBC on display version 8 below supports only I915_FORMAT_MOD_X_TILED
> modifier. So update the FBC specific tests based on this restriction,
>
> Signed-off-by: Vinod Govindapillai <vinod.govindapillai at intel.com>
> ---
>  tests/intel/kms_dirtyfb.c | 16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
> index f2bdd4546..e0fd84ade 100644
> --- a/tests/intel/kms_dirtyfb.c
> +++ b/tests/intel/kms_dirtyfb.c
> @@ -58,6 +58,7 @@ typedef struct {
>         int debugfs_fd;
>         igt_display_t display;
>         drmModeModeInfo *mode;
> +       uint64_t modifier;
>         igt_output_t *output;
>         igt_pipe_crc_t *pipe_crc;
>         enum pipe pipe;
> @@ -238,7 +239,7 @@ static void prepare(data_t *data)
>
>         igt_create_color_fb(data->drm_fd, data->mode->hdisplay,
>                             data->mode->vdisplay, DRM_FORMAT_XRGB8888,
> -                           DRM_FORMAT_MOD_LINEAR, 0.0, 1.0, 0.0,
> +                           data->modifier, 0.0, 1.0, 0.0,
>                             &data->fbs[0]);
>
>         igt_draw_rect_fb(data->drm_fd, data->bops, 0, &data->fbs[0],
> @@ -260,7 +261,7 @@ static void prepare(data_t *data)
>
>         igt_create_color_fb(data->drm_fd,  data->mode->hdisplay,
>                             data->mode->vdisplay, DRM_FORMAT_XRGB8888,
> -                           DRM_FORMAT_MOD_LINEAR, 0.0, 1.0, 0.0,
> +                           data->modifier, 0.0, 1.0, 0.0,
>                             &data->fbs[1]);
>         igt_draw_rect_fb(data->drm_fd, data->bops, 0, &data->fbs[1],
>                          data->rendercopy ? IGT_DRAW_RENDER : IGT_DRAW_BLT,
> @@ -268,8 +269,8 @@ static void prepare(data_t *data)
>                          data->fbs[1].height, 0xFF);
>
>         igt_create_color_fb(data->drm_fd, data->mode->hdisplay,
> -                            data->mode->vdisplay, DRM_FORMAT_XRGB8888,
> -                           DRM_FORMAT_MOD_LINEAR, 0.0, 1.0, 0.0,
> +                           data->mode->vdisplay, DRM_FORMAT_XRGB8888,
> +                           data->modifier, 0.0, 1.0, 0.0,
>                             &data->fbs[2]);
>
>         igt_plane_set_fb(primary, &data->fbs[2]);
> @@ -386,6 +387,13 @@ igt_main
>                                         igt_skip_on_f((IS_BATTLEMAGE(data.devid) && data.feature == FEATURE_FBC),
>                                                        "FBC isn't supported on BMG\n");
>
> +                                       /* FBC Disp_ver 8 and below supports only I915_FORMAT_MOD_X_TILED */
> +                                       if (data.feature == FEATURE_FBC &&
> +                                           intel_display_ver(intel_get_drm_devid(data.drm_fd) <= 8))
> +                                               data.modifier = I915_FORMAT_MOD_X_TILED;
> +                                       else
> +                                               data.modifier = DRM_FORMAT_MOD_LINEAR;
> +
>                                         if (!check_support(&data))
>                                                 continue;
>
> --
> 2.43.0
>


More information about the igt-dev mailing list