[PATCH i-g-t v4 8/8] XE3: tests/intel/kms_frontbuffer_tracking: platform based handling of x-tile cases
Clint Taylor
clinton.a.taylor at intel.com
Fri Dec 6 21:27:48 UTC 2024
From: Vinod Govindapillai <vinod.govindapillai at intel.com>
x-tile is not supported from xe3 onwards. Handle this conclusively
in all the kms_frontbuffer_tracking subtest options.
Signed-off-by: Vinod Govindapillai <vinod.govindapillai at intel.com>
Signed-off-by: Clint Taylor <Clinton.A.Taylor at intel.com>
---
tests/intel/kms_frontbuffer_tracking.c | 29 +++++++++++---------------
1 file changed, 12 insertions(+), 17 deletions(-)
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index c5b3fd46f..ba564fafa 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -1031,7 +1031,7 @@ struct test_mode {
TILING_Y,
TILING_4,
TILING_COUNT,
- TILING_DEFAULT = TILING_X,
+ TILING_AUTOSELECT,
} tiling;
enum igt_draw_method method;
@@ -1154,7 +1154,7 @@ struct {
.only_pipes = PIPE_COUNT,
.shared_fb_x_offset = 248,
.shared_fb_y_offset = 500,
- .tiling = TILING_DEFAULT,
+ .tiling = TILING_AUTOSELECT,
};
struct modeset_params {
@@ -2182,11 +2182,7 @@ static void setup_modeset(void)
offscreen_fb.w = 1024;
offscreen_fb.h = 1024;
- /* Xe3 remove x-tile from display + */
- if (drm.display_ver < 30)
- create_fbs(FORMAT_DEFAULT, opt.tiling);
- else
- create_fbs(FORMAT_DEFAULT, TILING_4);
+ create_fbs(FORMAT_DEFAULT, opt.tiling);
}
static void teardown_modeset(void)
@@ -4234,6 +4230,14 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
setup_drm();
drm.devid = intel_get_drm_devid(drm.fd);
drm.display_ver = intel_display_ver(drm.devid);
+
+ /* TILING_X is not supported from Xe3 onwards. If the tiling
+ * is not set explicitly using the commandline parameter,
+ * handle the default tiling based on the platform.
+ */
+ if (opt.tiling == TILING_AUTOSELECT)
+ opt.tiling = drm.display_ver >= 30 ? TILING_4 : TILING_X;
+
setup_environment();
}
@@ -4543,10 +4547,6 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
if (t.tiling == TILING_4)
igt_require(intel_get_device_info(drm.devid)->has_4tile);
- /* Xe3 remove x-tile from display + */
- if (t.tiling == TILING_X) {
- igt_require(drm.display_ver < 30);
- }
if (tiling_is_valid(t.feature, t.tiling))
draw_subtest(&t);
@@ -4579,12 +4579,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
t.format = FORMAT_DEFAULT;
t.flip = FLIP_PAGEFLIP;
t.method = IGT_DRAW_BLT;
-
- /* Xe3 remove x-tile from display + */
- if (drm.display_ver < 30)
- t.tiling = opt.tiling;
- else
- t.tiling = TILING_4;
+ t.tiling = opt.tiling;
igt_subtest("basic") {
if (!is_xe_device(drm.fd))
--
2.25.1
More information about the igt-dev
mailing list