* [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation
@ 2023-10-19 9:34 Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 1/5] tests/kms/testplan: Move testplan documentation to beginning of the file Bhanuprakash Modem
` (7 more replies)
0 siblings, 8 replies; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
Optimizations:
- Move common stuff to TEST level
- Move documentation to beginning of the file
- Align Mega features to internal tools
- Avoid duplicate names on Mega feature vs Functionality
Bhanuprakash Modem (5):
tests/kms/testplan: Move testplan documentation to beginning of the
file
tests/kms/testplan: Regroup testplan documentation
tests/kms/testplan: Optimize KMS testplan documentation
tests/kms/testplan: Fix Mega Feature in testplan documentation
tests/kms/testplan: Avoid duplicate names on Mega feature vs
Functionality
tests/chamelium/kms_chamelium_audio.c | 68 +-
tests/chamelium/kms_chamelium_color.c | 59 +-
tests/chamelium/kms_chamelium_edid.c | 181 +-
tests/chamelium/kms_chamelium_frames.c | 181 +-
tests/chamelium/kms_chamelium_hpd.c | 362 +-
tests/intel/kms_big_fb.c | 275 +-
tests/intel/kms_big_joiner.c | 42 +-
tests/intel/kms_busy.c | 90 +-
tests/intel/kms_ccs.c | 16 +-
tests/intel/kms_cdclk.c | 41 +-
tests/intel/kms_dirtyfb.c | 18 +-
tests/intel/kms_draw_crc.c | 72 +-
tests/intel/kms_dsc.c | 9 +-
tests/intel/kms_fb_coherency.c | 21 +-
tests/intel/kms_fbcon_fbt.c | 26 +-
tests/intel/kms_fence_pin_leak.c | 11 +-
tests/intel/kms_flip_scaled_crc.c | 71 +-
tests/intel/kms_flip_tiling.c | 11 +-
tests/intel/kms_frontbuffer_tracking.c | 6533 +++++++++++-------------
tests/intel/kms_legacy_colorkey.c | 18 +-
tests/intel/kms_mmap_write_crc.c | 13 +-
tests/intel/kms_pipe_b_c_ivb.c | 29 +-
tests/intel/kms_pm_backlight.c | 33 +-
tests/intel/kms_pm_dc.c | 43 +-
tests/intel/kms_pm_lpsp.c | 20 +-
tests/intel/kms_pm_rpm.c | 4 +
tests/intel/kms_psr.c | 124 +-
tests/intel/kms_psr2_sf.c | 49 +-
tests/intel/kms_psr2_su.c | 20 +-
tests/intel/kms_psr_stress_test.c | 22 +-
tests/intel/kms_pwrite_crc.c | 10 +-
tests/kms_3d.c | 9 +-
tests/kms_addfb_basic.c | 356 +-
tests/kms_async_flips.c | 82 +-
tests/kms_atomic.c | 141 +-
tests/kms_atomic_interruptible.c | 88 +-
tests/kms_atomic_transition.c | 157 +-
tests/kms_bw.c | 19 +-
tests/kms_color.c | 124 +-
tests/kms_concurrent.c | 9 +-
tests/kms_content_protection.c | 120 +-
tests/kms_cursor_crc.c | 131 +-
tests/kms_cursor_edge_walk.c | 20 +-
tests/kms_cursor_legacy.c | 426 +-
tests/kms_display_modes.c | 34 +-
tests/kms_dither.c | 28 +-
tests/kms_dp_aux_dev.c | 11 +-
tests/kms_feature_discovery.c | 45 +-
tests/kms_flip.c | 229 +-
tests/kms_flip_event_leak.c | 10 +-
tests/kms_force_connector_basic.c | 52 +-
tests/kms_getfb.c | 139 +-
tests/kms_hdmi_inject.c | 25 +-
tests/kms_hdr.c | 106 +-
tests/kms_invalid_mode.c | 9 +-
tests/kms_lease.c | 88 +-
tests/kms_multipipe_modeset.c | 7 +-
tests/kms_panel_fitting.c | 23 +-
tests/kms_pipe_crc_basic.c | 120 +-
tests/kms_plane.c | 114 +-
tests/kms_plane_alpha_blend.c | 82 +-
tests/kms_plane_cursor.c | 20 +-
tests/kms_plane_lowres.c | 47 +-
tests/kms_plane_multiple.c | 51 +-
tests/kms_plane_scaling.c | 400 +-
tests/kms_prime.c | 26 +-
tests/kms_prop_blob.c | 84 +-
tests/kms_properties.c | 43 +-
tests/kms_rmfb.c | 25 +-
tests/kms_rotation_crc.c | 202 +-
tests/kms_scaling_modes.c | 13 +-
tests/kms_selftest.c | 13 +-
tests/kms_sequence.c | 56 +-
tests/kms_setmode.c | 41 +-
tests/kms_sysfs_edid_timing.c | 12 +-
tests/kms_tiled_display.c | 10 +-
tests/kms_tv_load_detect.c | 7 +-
tests/kms_universal_plane.c | 33 +-
tests/kms_vblank.c | 61 +-
tests/kms_vrr.c | 33 +-
tests/kms_writeback.c | 43 +-
tests/testdisplay.c | 12 +-
82 files changed, 5418 insertions(+), 7090 deletions(-)
--
2.40.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] [i-g-t V2 1/5] tests/kms/testplan: Move testplan documentation to beginning of the file
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
@ 2023-10-19 9:34 ` Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 2/5] tests/kms/testplan: Regroup testplan documentation Bhanuprakash Modem
` (6 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
To maintain the uniformness, move testplan documentation
to beginning of the file.
Move TEST block to before the #includes, and SUBTEST block
to after the #includes.
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/chamelium/kms_chamelium_audio.c | 74 +-
tests/chamelium/kms_chamelium_color.c | 59 +-
tests/chamelium/kms_chamelium_edid.c | 199 +-
tests/chamelium/kms_chamelium_frames.c | 208 +-
tests/chamelium/kms_chamelium_hpd.c | 425 +-
tests/intel/kms_big_fb.c | 320 +-
tests/intel/kms_big_joiner.c | 50 +-
tests/intel/kms_busy.c | 108 +-
tests/intel/kms_ccs.c | 1 +
tests/intel/kms_cdclk.c | 49 +-
tests/intel/kms_dirtyfb.c | 16 +-
tests/intel/kms_draw_crc.c | 81 +-
tests/intel/kms_dsc.c | 1 +
tests/intel/kms_fb_coherency.c | 21 +-
tests/intel/kms_fbcon_fbt.c | 12 +-
tests/intel/kms_fence_pin_leak.c | 11 +-
tests/intel/kms_flip_scaled_crc.c | 1 +
tests/intel/kms_flip_tiling.c | 11 +-
tests/intel/kms_frontbuffer_tracking.c | 7217 ++++++++++++------------
tests/intel/kms_legacy_colorkey.c | 10 +-
tests/intel/kms_mmap_write_crc.c | 13 +-
tests/intel/kms_pipe_b_c_ivb.c | 7 +-
tests/intel/kms_pm_backlight.c | 11 +-
tests/intel/kms_pm_dc.c | 10 +-
tests/intel/kms_pm_lpsp.c | 11 +-
tests/intel/kms_psr.c | 52 +-
tests/intel/kms_psr2_sf.c | 13 +-
tests/intel/kms_psr2_su.c | 11 +-
tests/intel/kms_psr_stress_test.c | 10 +-
tests/intel/kms_pwrite_crc.c | 10 +-
tests/kms_3d.c | 9 +-
tests/kms_addfb_basic.c | 411 +-
tests/kms_async_flips.c | 100 +-
tests/kms_atomic.c | 176 +-
tests/kms_atomic_interruptible.c | 100 +-
tests/kms_atomic_transition.c | 179 +-
tests/kms_bw.c | 11 +-
tests/kms_color.c | 140 +-
tests/kms_concurrent.c | 9 +-
tests/kms_content_protection.c | 141 +-
tests/kms_cursor_crc.c | 141 +-
tests/kms_cursor_edge_walk.c | 13 +-
tests/kms_cursor_legacy.c | 493 +-
tests/kms_display_modes.c | 37 +-
tests/kms_dither.c | 32 +-
tests/kms_dp_aux_dev.c | 11 +-
tests/kms_feature_discovery.c | 22 +-
tests/kms_flip.c | 93 +-
tests/kms_flip_event_leak.c | 10 +-
tests/kms_force_connector_basic.c | 62 +-
tests/kms_getfb.c | 161 +-
tests/kms_hdmi_inject.c | 14 +-
tests/kms_hdr.c | 127 +-
tests/kms_invalid_mode.c | 1 +
tests/kms_multipipe_modeset.c | 7 +-
tests/kms_panel_fitting.c | 11 +-
tests/kms_pipe_crc_basic.c | 149 +-
tests/kms_plane.c | 131 +-
tests/kms_plane_alpha_blend.c | 94 +-
tests/kms_plane_cursor.c | 8 +-
tests/kms_plane_lowres.c | 50 +-
tests/kms_plane_multiple.c | 54 +-
tests/kms_plane_scaling.c | 476 +-
tests/kms_prime.c | 11 +-
tests/kms_prop_blob.c | 96 +-
tests/kms_properties.c | 39 +-
tests/kms_rmfb.c | 13 +-
tests/kms_rotation_crc.c | 237 +-
tests/kms_scaling_modes.c | 7 +-
tests/kms_selftest.c | 9 +-
tests/kms_sequence.c | 60 +-
tests/kms_setmode.c | 14 +-
tests/kms_sysfs_edid_timing.c | 12 +-
tests/kms_tiled_display.c | 1 +
tests/kms_tv_load_detect.c | 7 +-
tests/kms_universal_plane.c | 14 +-
tests/kms_vblank.c | 31 +-
tests/kms_vrr.c | 11 +-
tests/kms_writeback.c | 17 +-
tests/testdisplay.c | 12 +-
80 files changed, 6620 insertions(+), 6466 deletions(-)
diff --git a/tests/chamelium/kms_chamelium_audio.c b/tests/chamelium/kms_chamelium_audio.c
index 34ba0cb64..f86610861 100644
--- a/tests/chamelium/kms_chamelium_audio.c
+++ b/tests/chamelium/kms_chamelium_audio.c
@@ -24,14 +24,48 @@
* Lyude Paul <lyude@redhat.com>
*/
+/**
+ * TEST: kms chamelium audio
+ * Category: Display
+ * Description: Testing Audio with a Chamelium board
+ */
+
#include "igt_eld.h"
#include "igt_infoframe.h"
#include "kms_chamelium_helper.h"
/**
- * TEST: kms chamelium audio
- * Category: Display
- * Description: Testing Audio with a Chamelium board
+ * SUBTEST: dp-audio
+ * Description: Playback various audio signals with various audio formats/rates,
+ * capture them and check they are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_audio
+ * Mega feature: Audio, DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-audio
+ * Description: Playback various audio signals with various audio formats/rates,
+ * capture them and check they are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hdmi_audio
+ * Mega feature: Audio, HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-audio-edid
+ * Description: Plug a connector with an EDID suitable for audio, check ALSA's
+ * EDID-Like Data reports the correct audio parameters
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_audio
+ * Mega feature: Audio, DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-audio-edid
+ * Description: Plug a connector with an EDID suitable for audio, check ALSA's
+ * EDID-Like Data reports the correct audio parameters
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hdmi_audio
+ * Mega feature: Audio, HDMI
+ * Test category: functionality test
*/
/* Playback parameters control the audio signal we synthesize and send */
@@ -675,23 +709,6 @@ static bool check_audio_configuration(struct alsa *alsa,
return true;
}
-/**
- * SUBTEST: dp-audio
- * Description: Playback various audio signals with various audio formats/rates,
- * capture them and check they are correct
- * Functionality: chamelium, dp_audio
- * Mega feature: Audio, DP
- * Test category: functionality test
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-audio
- * Description: Playback various audio signals with various audio formats/rates,
- * capture them and check they are correct
- * Functionality: chamelium, hdmi_audio
- * Mega feature: Audio, HDMI
- * Test category: functionality test
- * Driver requirement: i915, xe
- */
static const char test_display_audio_desc[] =
"Playback various audio signals with various audio formats/rates, "
"capture them and check they are correct";
@@ -786,23 +803,6 @@ static void test_display_audio(chamelium_data_t *data,
free(alsa);
}
-/**
- * SUBTEST: dp-audio-edid
- * Description: Plug a connector with an EDID suitable for audio, check ALSA's
- * EDID-Like Data reports the correct audio parameters
- * Functionality: chamelium, dp_audio
- * Mega feature: Audio, DP
- * Test category: functionality test
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-audio-edid
- * Description: Plug a connector with an EDID suitable for audio, check ALSA's
- * EDID-Like Data reports the correct audio parameters
- * Functionality: chamelium, hdmi_audio
- * Mega feature: Audio, HDMI
- * Test category: functionality test
- * Driver requirement: i915, xe
- */
static const char test_display_audio_edid_desc[] =
"Plug a connector with an EDID suitable for audio, check ALSA's "
"EDID-Like Data reports the correct audio parameters";
diff --git a/tests/chamelium/kms_chamelium_color.c b/tests/chamelium/kms_chamelium_color.c
index 0a9788214..6123e8a5f 100644
--- a/tests/chamelium/kms_chamelium_color.c
+++ b/tests/chamelium/kms_chamelium_color.c
@@ -30,16 +30,43 @@
#include "kms_color_helper.h"
-IGT_TEST_DESCRIPTION("Test Color Features at Pipe level using Chamelium to verify instead of CRC");
-
/**
* SUBTEST: degamma
* Description: Verify that degamma LUT transformation works correctly
+ * Driver requirement: i915, xe
* Functionality: chamelium, colorspace
* Mega feature: Color mgmt
* Test category: functionality test
+ *
+ * SUBTEST: gamma
+ * Description: Verify that gamma LUT transformation works correctly
* Driver requirement: i915, xe
+ * Functionality: chamelium, colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * SUBTEST: ctm-%s
+ * Description: Check the color transformation %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: for 0.25 transparancy
+ * @0-50: for 0.50 transparancy
+ * @0-75: for 0.75 transparancy
+ * @blue-to-red: from blue to red
+ * @green-to-red: from green to red
+ * @limited-range: with identity matrix
+ * @max: for max transparancy
+ * @negative: for negative transparancy
+ * @red-to-blue: from red to blue
*/
+
+IGT_TEST_DESCRIPTION("Test Color Features at Pipe level using Chamelium to verify instead of CRC");
+
/*
* Draw 3 gradient rectangles in red, green and blue, with a maxed out
* degamma LUT and verify we have the same frame dump as drawing solid color
@@ -129,14 +156,6 @@ static bool test_pipe_degamma(data_t *data,
return ret;
}
-/**
- * SUBTEST: gamma
- * Description: Verify that gamma LUT transformation works correctly
- * Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- * Driver requirement: i915, xe
- */
/*
* Draw 3 gradient rectangles in red, green and blue, with a maxed out
* gamma LUT and verify we have the same frame dump as drawing solid
@@ -487,26 +506,6 @@ run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
igt_assert(test_t(data, data->primary, data->ports[port_idx]));
}
-/**
- * SUBTEST: ctm-%s
- * Description: Check the color transformation %arg[1]
- * Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @0-25: for 0.25 transparancy
- * @0-50: for 0.50 transparancy
- * @0-75: for 0.75 transparancy
- * @blue-to-red: from blue to red
- * @green-to-red: from green to red
- * @limited-range: with identity matrix
- * @max: for max transparancy
- * @negative: for negative transparancy
- * @red-to-blue: from red to blue
- */
static void
run_ctm_tests_for_pipe(data_t *data, enum pipe p,
color_t *expected_colors,
diff --git a/tests/chamelium/kms_chamelium_edid.c b/tests/chamelium/kms_chamelium_edid.c
index de8e51a04..f3f0b1e50 100644
--- a/tests/chamelium/kms_chamelium_edid.c
+++ b/tests/chamelium/kms_chamelium_edid.c
@@ -48,6 +48,106 @@
#include "monitor_edids/hdmi_edids.h"
#include "monitor_edids/monitor_edids_helper.h"
+/**
+ * SUBTEST: dp-edid-read
+ * Description: Make sure the EDID exposed by KMS is the same as the screen's
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ *
+ * SUBTEST: hdmi-edid-read
+ * Description: Make sure the EDID exposed by KMS is the same as the screen's
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: chamelium, hdmi_edid
+ * Mega feature: HDMI
+ *
+ * SUBTEST: vga-edid-read
+ * Description: Make sure the EDID exposed by KMS is the same as the screen's
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: chamelium, vga_edid
+ * Mega feature: VGA
+ *
+ * SUBTEST: dp-edid-resolution-list
+ * Description: Get an EDID with many modes of different configurations, set
+ * them on the screen and check the screen resolution matches the
+ * mode resolution.
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-mode-timings
+ * Description: For each mode of the IGT base EDID, perform a modeset and check
+ * the mode detected by the Chamelium receiver matches the mode we
+ * set
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-mode-timings
+ * Description: For each mode of the IGT base EDID, perform a modeset and check
+ * the mode detected by the Chamelium receiver matches the mode we
+ * set
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: dp-edid-stress-resolution-%s
+ * Description: Stress test the DUT by testing multiple EDIDs, one right after
+ * the other, and ensure their validity by check the real screen
+ * resolution vs the advertised mode (%arg[1]) resolution.
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-edid-stress-resolution-%s
+ * Description: Stress test the DUT by testing multiple EDIDs, one right after
+ * the other, and ensure their validity by check the real screen
+ * resolution vs the advertised mode (%arg[1]) resolution.
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hdmi_edid
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4k: 4K
+ * @non-4k: Non 4K
+ */
+
+/**
+ * SUBTEST: dp-edid-change-during-%s
+ * Description: Simulate a screen being unplugged and another screen being
+ * plugged during suspend, check that a uevent is sent and
+ * connector status is updated during %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-edid-change-during-%s
+ * Description: Simulate a screen being unplugged and another screen being
+ * plugged during suspend, check that a uevent is sent and
+ * connector status is updated during %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, dp_edid
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @hibernate: hibernation
+ * @suspend: suspend
+ */
+
#define MODE_CLOCK_ACCURACY 0.05 /* 5% */
static void get_connectors_link_status_failed(chamelium_data_t *data,
@@ -145,28 +245,6 @@ static void check_mode(struct chamelium *chamelium, struct chamelium_port *port,
igt_assert(video_params.vsync_polarity == mode_vsync_polarity);
}
-/**
- * SUBTEST: dp-edid-read
- * Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-edid-read
- * Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Test category: functionality test
- * Functionality: chamelium, hdmi_edid
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-edid-read
- * Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Test category: functionality test
- * Functionality: chamelium, vga_edid
- * Mega feature: VGA
- * Driver requirement: i915, xe
- */
static const char igt_custom_edid_type_read_desc[] =
"Make sure the EDID exposed by KMS is the same as the screen's";
static void igt_custom_edid_type_read(chamelium_data_t *data,
@@ -206,30 +284,6 @@ static void igt_custom_edid_type_read(chamelium_data_t *data,
drmModeFreeConnector(connector);
}
-/**
- * SUBTEST: dp-edid-stress-resolution-%s
- * Description: Stress test the DUT by testing multiple EDIDs, one right after
- * the other, and ensure their validity by check the real screen
- * resolution vs the advertised mode (%arg[1]) resolution.
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-edid-stress-resolution-%s
- * Description: Stress test the DUT by testing multiple EDIDs, one right after
- * the other, and ensure their validity by check the real screen
- * resolution vs the advertised mode (%arg[1]) resolution.
- * Test category: functionality test
- * Functionality: chamelium, hdmi_edid
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @4k: 4K
- * @non-4k: Non 4K
- */
static const char igt_edid_stress_resolution_desc[] =
"Stress test the DUT by testing multiple EDIDs, one right after the other, "
"and ensure their validity by check the real screen resolution vs the "
@@ -299,16 +353,6 @@ static void edid_stress_resolution(chamelium_data_t *data,
data->ports, data->port_count);
}
-/**
- * SUBTEST: dp-edid-resolution-list
- * Description: Get an EDID with many modes of different configurations, set
- * them on the screen and check the screen resolution matches the
- * mode resolution.
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- */
static const char igt_edid_resolution_list_desc[] =
"Get an EDID with many modes of different configurations, set them on the screen and check the"
" screen resolution matches the mode resolution.";
@@ -372,30 +416,6 @@ static void edid_resolution_list(chamelium_data_t *data,
drmModeFreeConnector(connector);
}
-/**
- * SUBTEST: dp-edid-change-during-%s
- * Description: Simulate a screen being unplugged and another screen being
- * plugged during suspend, check that a uevent is sent and
- * connector status is updated during %arg[1]
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-edid-change-during-%s
- * Description: Simulate a screen being unplugged and another screen being
- * plugged during suspend, check that a uevent is sent and
- * connector status is updated during %arg[1]
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @hibernate: hibernation
- * @suspend: suspend
- */
static const char test_suspend_resume_edid_change_desc[] =
"Simulate a screen being unplugged and another screen being plugged "
"during suspend, check that a uevent is sent and connector status is "
@@ -448,25 +468,6 @@ static void test_suspend_resume_edid_change(chamelium_data_t *data,
link_status_failed[1][p]);
}
-/**
- * SUBTEST: dp-mode-timings
- * Description: For each mode of the IGT base EDID, perform a modeset and check
- * the mode detected by the Chamelium receiver matches the mode we
- * set
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-mode-timings
- * Description: For each mode of the IGT base EDID, perform a modeset and check
- * the mode detected by the Chamelium receiver matches the mode we
- * set
- * Test category: functionality test
- * Functionality: chamelium, dp_edid
- * Mega feature: DP
- * Driver requirement: i915, xe
- */
static const char test_mode_timings_desc[] =
"For each mode of the IGT base EDID, perform a modeset and check the "
"mode detected by the Chamelium receiver matches the mode we set";
diff --git a/tests/chamelium/kms_chamelium_frames.c b/tests/chamelium/kms_chamelium_frames.c
index a313cd433..490ab3fe9 100644
--- a/tests/chamelium/kms_chamelium_frames.c
+++ b/tests/chamelium/kms_chamelium_frames.c
@@ -29,10 +29,114 @@
* Category: Display
* Description: Tests requiring a Chamelium board
*/
+
#include "igt_eld.h"
#include "igt_infoframe.h"
#include "kms_chamelium_helper.h"
+/**
+ * SUBTEST: dp-crc-fast
+ * Description: Pick the first mode of the IGT base EDID, display and capture
+ * a few frames, then check captured frames are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-crc-fast
+ * Description: Pick the first mode of the IGT base EDID, display and capture
+ * a few frames, then check captured frames are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-%s-formats
+ * Description: Pick the first mode of the IGT base EDID, display and capture a
+ * few frames, then check captured frames are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @crc-nonplanar: CRC with non planar formats
+ * @cmp-planar: Compare with planar formats
+ */
+
+/**
+ * SUBTEST: vga-frame-dump
+ * Description: For each mode of the IGT base EDID, display and capture a few
+ * frames, then check captured frames are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-crc-%s
+ * Description: For each mode of the IGT base EDID, display and capture a %arg[1]
+ * frame(s), then check captured frame(s) are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-crc-%s
+ * Description: For each mode of the IGT base EDID, display and capture a %arg[1]
+ * frame(s), then check captured frame(s) are correct
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @single: single
+ * @multiple: multiple
+ */
+
+/**
+ * SUBTEST: dp-frame-dump
+ * Description: For each mode of the IGT base EDID, display and capture a few
+ * frames, then download the captured frames and compare them
+ * bit-by-bit to the sent ones
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-frame-dump
+ * Description: For each mode of the IGT base EDID, display and capture a few
+ * frames, then download the captured frames and compare them
+ * bit-by-bit to the sent ones
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-aspect-ratio
+ * Description: Pick a mode with a picture aspect-ratio, capture AVI InfoFrames
+ * and check they include the relevant fields
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-%s-planes-random
+ * Description: Setup a few overlay planes with random parameters, capture the
+ * frame and check it matches the expected output
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @crc: CRC check
+ * @cmp: Compare
+ */
+
#define connector_dynamic_subtest(name__, type__) \
igt_subtest_with_dynamic(name__) \
for_each_port(p, port) if (chamelium_port_get_type(port) == \
@@ -539,38 +643,6 @@ static void prepare_randomized_plane(chamelium_data_t *data,
igt_remove_fb(data->drm_fd, &pattern_fb);
}
-/**
- * SUBTEST: dp-crc-fast
- * Description: Pick the first mode of the IGT base EDID, display and capture
- * a few frames, then check captured frames are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-crc-fast
- * Description: Pick the first mode of the IGT base EDID, display and capture
- * a few frames, then check captured frames are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- */
-
-/**
- * SUBTEST: hdmi-%s-formats
- * Description: Pick the first mode of the IGT base EDID, display and capture a
- * few frames, then check captured frames are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @crc-nonplanar: CRC with non planar formats
- * @cmp-planar: Compare with planar formats
- */
static const char test_display_one_mode_desc[] =
"Pick the first mode of the IGT base EDID, display and capture a few "
"frames, then check captured frames are correct";
@@ -607,36 +679,6 @@ static void test_display_one_mode(chamelium_data_t *data,
drmModeFreeConnector(connector);
}
-/**
- * SUBTEST: vga-frame-dump
- * Description: For each mode of the IGT base EDID, display and capture a few
- * frames, then check captured frames are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: VGA
- * Driver requirement: i915, xe
- *
- * SUBTEST: dp-crc-%s
- * Description: For each mode of the IGT base EDID, display and capture a %arg[1]
- * frame(s), then check captured frame(s) are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-crc-%s
- * Description: For each mode of the IGT base EDID, display and capture a %arg[1]
- * frame(s), then check captured frame(s) are correct
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @single: single
- * @multiple: multiple
- */
static const char test_display_all_modes_desc[] =
"For each mode of the IGT base EDID, display and capture a few "
"frames, then check captured frames are correct";
@@ -695,25 +737,6 @@ static void test_display_all_modes(chamelium_data_t *data,
} while (++i < count_modes);
}
-/**
- * SUBTEST: dp-frame-dump
- * Description: For each mode of the IGT base EDID, display and capture a few
- * frames, then download the captured frames and compare them
- * bit-by-bit to the sent ones
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-frame-dump
- * Description: For each mode of the IGT base EDID, display and capture a few
- * frames, then download the captured frames and compare them
- * bit-by-bit to the sent ones
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- */
static const char test_display_frame_dump_desc[] =
"For each mode of the IGT base EDID, display and capture a few "
"frames, then download the captured frames and compare them "
@@ -782,15 +805,6 @@ static void test_display_frame_dump(chamelium_data_t *data,
} while (++i < count_modes);
}
-/**
- * SUBTEST: hdmi-aspect-ratio
- * Description: Pick a mode with a picture aspect-ratio, capture AVI InfoFrames
- * and check they include the relevant fields
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- */
static const char test_display_aspect_ratio_desc[] =
"Pick a mode with a picture aspect-ratio, capture AVI InfoFrames and "
"check they include the relevant fields";
@@ -871,20 +885,6 @@ static void test_display_aspect_ratio(chamelium_data_t *data,
drmModeFreeConnector(connector);
}
-/**
- * SUBTEST: hdmi-%s-planes-random
- * Description: Setup a few overlay planes with random parameters, capture the
- * frame and check it matches the expected output
- * Test category: functionality test
- * Functionality: chamelium, frame_integrity
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @crc: CRC check
- * @cmp: Compare
- */
static const char test_display_planes_random_desc[] =
"Setup a few overlay planes with random parameters, capture the frame "
"and check it matches the expected output";
diff --git a/tests/chamelium/kms_chamelium_hpd.c b/tests/chamelium/kms_chamelium_hpd.c
index f7a9422a9..360694c76 100644
--- a/tests/chamelium/kms_chamelium_hpd.c
+++ b/tests/chamelium/kms_chamelium_hpd.c
@@ -32,6 +32,217 @@
#include "kms_chamelium_helper.h"
+/**
+ * SUBTEST: dp-hpd-fast
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-fast
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-fast
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd-%s
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-%s
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-%s
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @enable-disable-mode: Toggle the mode
+ * @with-enabled-mode: Enabling the mode
+ */
+
+/**
+ * SUBTEST: dp-hpd-for-each-pipe
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug for each pipe with valid output
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-for-each-pipe
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug for each pipe with valid output
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-for-each-pipe
+ * Description: Check that we get uevents and updated connector status on
+ * hotplug and unplug for each pipe with valid output
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd-after-hibernate
+ * Description: Toggle HPD during Hibernation, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, hibernation
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-after-hibernate
+ * Description: Toggle HPD during Hibernation, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, hibernation
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-after-hibernate
+ * Description: Toggle HPD during Hibernation, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, hibernation
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd-after-suspend
+ * Description: Toggle HPD during Suspend, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, suspend
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-after-suspend
+ * Description: Toggle HPD during Suspend, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, suspend
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-after-suspend
+ * Description: Toggle HPD during Suspend, check that uevents are sent and
+ * connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, suspend
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: common-hpd-after-suspend
+ * Description: Toggle HPD during suspend on all connectors, check that uevents
+ * are sent and connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: common-hpd-after-hibernate
+ * Description: Toggle HPD during suspend on all connectors, check that uevents
+ * are sent and connector status is updated
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug, hibernation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: vga-hpd-without-ddc
+ * Description: Disable DDC on a VGA connector, check we still get a uevent on
+ * hotplug
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: VGA
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd-storm
+ * Description: Trigger a series of hotplugs in a very small timeframe to
+ * simulate abad cable, check the kernel falls back to polling
+ * to avoid a hotplug storm
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-storm
+ * Description: Trigger a series of hotplugs in a very small timeframe to
+ * simulate abad cable, check the kernel falls back to polling
+ * to avoid a hotplug storm
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ *
+ * SUBTEST: dp-hpd-storm-disable
+ * Description: Disable HPD storm detection, trigger a storm and check the
+ * kernel doesn't detect one
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: DP
+ * Test category: functionality test
+ *
+ * SUBTEST: hdmi-hpd-storm-disable
+ * Description: Disable HPD storm detection, trigger a storm and check the
+ * kernel doesn't detect one
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Mega feature: HDMI
+ * Test category: functionality test
+ */
+
#define HPD_STORM_PULSE_INTERVAL_DP 100 /* ms */
#define HPD_STORM_PULSE_INTERVAL_HDMI 200 /* ms */
@@ -110,84 +321,6 @@ static void try_suspend_resume_hpd(chamelium_data_t *data,
}
}
-/**
- * SUBTEST: dp-hpd-fast
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-fast
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd-fast
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: VGA
- * Driver requirement: i915, xe
- *
- * SUBTEST: dp-hpd
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: VGA
- * Driver requirement: i915, xe
- *
- * SUBTEST: dp-hpd-%s
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-%s
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd-%s
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: VGA
- * Driver requirement: i915, xe
- *
- * arg[1]:
- *
- * @enable-disable-mode: Toggle the mode
- * @with-enabled-mode: Enabling the mode
- */
static const char test_basic_hotplug_desc[] =
"Check that we get uevents and updated connector status on "
"hotplug and unplug";
@@ -254,31 +387,6 @@ static void test_hotplug(chamelium_data_t *data, struct chamelium_port *port,
igt_remove_fb(data->drm_fd, &fb);
}
-/**
- * SUBTEST: dp-hpd-for-each-pipe
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug for each pipe with valid output
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-for-each-pipe
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug for each pipe with valid output
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd-for-each-pipe
- * Description: Check that we get uevents and updated connector status on
- * hotplug and unplug for each pipe with valid output
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: VGA
- * Driver requirement: i915, xe
- */
static const char test_hotplug_for_each_pipe_desc[] =
"Check that we get uevents and updated connector status on "
"hotplug and unplug for each pipe with valid output";
@@ -324,55 +432,6 @@ static void test_hotplug_for_each_pipe(chamelium_data_t *data,
igt_hpd_storm_reset(data->drm_fd);
}
-/**
- * SUBTEST: dp-hpd-after-hibernate
- * Description: Toggle HPD during Hibernation, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, hibernation
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-after-hibernate
- * Description: Toggle HPD during Hibernation, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, hibernation
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd-after-hibernate
- * Description: Toggle HPD during Hibernation, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, hibernation
- * Mega feature: VGA
- * Driver requirement: i915, xe
- *
- * SUBTEST: dp-hpd-after-suspend
- * Description: Toggle HPD during Suspend, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, suspend
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-after-suspend
- * Description: Toggle HPD during Suspend, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, suspend
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- *
- * SUBTEST: vga-hpd-after-suspend
- * Description: Toggle HPD during Suspend, check that uevents are sent and
- * connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, suspend
- * Mega feature: VGA
- * Driver requirement: i915, xe
- */
static const char test_suspend_resume_hpd_desc[] =
"Toggle HPD during suspend, check that uevents are sent and connector "
"status is updated";
@@ -396,23 +455,6 @@ static void test_suspend_resume_hpd(chamelium_data_t *data,
igt_cleanup_uevents(mon);
}
-/**
- * SUBTEST: common-hpd-after-suspend
- * Description: Toggle HPD during suspend on all connectors, check that uevents
- * are sent and connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, suspend
- * Mega feature: General Display Features
- * Driver requirement: i915, xe
- *
- * SUBTEST: common-hpd-after-hibernate
- * Description: Toggle HPD during suspend on all connectors, check that uevents
- * are sent and connector status is updated
- * Test category: functionality test
- * Functionality: chamelium, hotplug, hibernation
- * Mega feature: General Display Features
- * Driver requirement: i915, xe
- */
static const char test_suspend_resume_hpd_common_desc[] =
"Toggle HPD during suspend on all connectors, check that uevents are "
"sent and connector status is updated";
@@ -442,15 +484,6 @@ static void test_suspend_resume_hpd_common(chamelium_data_t *data,
igt_cleanup_uevents(mon);
}
-/**
- * SUBTEST: vga-hpd-without-ddc
- * Description: Disable DDC on a VGA connector, check we still get a uevent on
- * hotplug
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: VGA
- * Driver requirement: i915, xe
- */
static const char test_hpd_without_ddc_desc[] =
"Disable DDC on a VGA connector, check we still get a uevent on hotplug";
static void test_hpd_without_ddc(chamelium_data_t *data,
@@ -477,25 +510,6 @@ static void test_hpd_without_ddc(chamelium_data_t *data,
igt_cleanup_uevents(mon);
}
-/**
- * SUBTEST: dp-hpd-storm
- * Description: Trigger a series of hotplugs in a very small timeframe to
- * simulate abad cable, check the kernel falls back to polling
- * to avoid a hotplug storm
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-storm
- * Description: Trigger a series of hotplugs in a very small timeframe to
- * simulate abad cable, check the kernel falls back to polling
- * to avoid a hotplug storm
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- */
static const char test_hpd_storm_detect_desc[] =
"Trigger a series of hotplugs in a very small timeframe to simulate a"
"bad cable, check the kernel falls back to polling to avoid a hotplug "
@@ -530,23 +544,6 @@ static void test_hpd_storm_detect(chamelium_data_t *data,
igt_hpd_storm_reset(data->drm_fd);
}
-/**
- * SUBTEST: dp-hpd-storm-disable
- * Description: Disable HPD storm detection, trigger a storm and check the
- * kernel doesn't detect one
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: DP
- * Driver requirement: i915, xe
- *
- * SUBTEST: hdmi-hpd-storm-disable
- * Description: Disable HPD storm detection, trigger a storm and check the
- * kernel doesn't detect one
- * Test category: functionality test
- * Functionality: chamelium, hotplug
- * Mega feature: HDMI
- * Driver requirement: i915, xe
- */
static const char test_hpd_storm_disable_desc[] =
"Disable HPD storm detection, trigger a storm and check the kernel "
"doesn't detect one";
diff --git a/tests/intel/kms_big_fb.c b/tests/intel/kms_big_fb.c
index 2c7b24fca..9177f7608 100644
--- a/tests/intel/kms_big_fb.c
+++ b/tests/intel/kms_big_fb.c
@@ -37,6 +37,168 @@
#include "xe/xe_ioctl.h"
#include "xe/xe_query.h"
+/**
+ * SUBTEST: linear-%dbpp-rotate-%d
+ * Description: Sanity check if addfb ioctl works correctly for given combination
+ * of Linear modifier with %arg[1]-bpp & %arg[2]-rotation
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 8, 16, 32, 64
+ * arg[2].values: 0, 90, 180, 270
+ */
+
+/**
+ * SUBTEST: %s-%dbpp-rotate-%d
+ * Description: Sanity check if addfb ioctl works correctly for given combination
+ * of %arg[1] with %arg[2]-bpp & %arg[3]-rotation
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4 modifier
+ * @x-tiled: TILE-X modifier
+ * @y-tiled: TILE-Y modifier
+ * @yf-tiled: TILE-YF modifier
+ *
+ * arg[2].values: 8, 16, 32, 64
+ * arg[3].values: 0, 90, 180, 270
+ */
+
+/**
+ * SUBTEST: linear-max-hw-stride-%dbpp-rotate-%d
+ * Description: Test maximum hardware supported stride length for given combination
+ * of linear modifier with max hardware stride length, %arg[1]-bpp,
+ * and %arg[2]-rotation
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 32, 64
+ * arg[2].values: 0, 180
+ */
+
+/**
+ * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d
+ * Description: Test maximum hardware supported stride length for given combination
+ * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
+ * and %arg[3]-rotation
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4 modifier
+ * @x-tiled: TILE-X modifier
+ * @y-tiled: TILE-Y modifier
+ * @yf-tiled: TILE-YF modifier
+ *
+ * arg[2].values: 32, 64
+ * arg[3].values: 0, 180
+ */
+
+/**
+ * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-hflip
+ * Description: Test maximum hardware supported stride length for given combination
+ * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
+ * and %arg[3]-rotation with H-flip mode
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-%s
+ * Description: Test maximum hardware supported stride length for given combination
+ * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
+ * and %arg[3]-rotation with %arg[4] mode
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, big_fbs, kms_gem_interop, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4 modifier
+ * @x-tiled: TILE-X modifier
+ * @y-tiled: TILE-Y modifier
+ * @yf-tiled: TILE-YF modifier
+ *
+ * arg[2].values: 32, 64
+ * arg[3].values: 0, 180
+ *
+ * arg[4]:
+ *
+ * @async-flip: Async flip
+ * @hflip-async-flip: Async & H-flip
+ */
+
+/**
+ * SUBTEST: %s-addfb-size-overflow
+ * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
+ * with small bo.
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4
+ * @x-tiled: TILE-X
+ * @y-tiled: TILE-Y
+ * @yf-tiled: TILE-YF
+ */
+
+/**
+ * SUBTEST: %s-addfb-size-offset-overflow
+ * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
+ * and offsets with small bo
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4
+ * @x-tiled: TILE-X
+ * @y-tiled: TILE-Y
+ * @yf-tiled: TILE-YF
+ */
+
+/**
+ * SUBTEST: linear-addfb
+ * Description: Sanity check if addfb ioctl works correctly with Linear modifier
+ * for given size and strides of fb
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: %s-addfb
+ * Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
+ * for given size and strides of fb
+ * Driver requirement: i915, xe
+ * Functionality: big_fbs, kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4-tiled: TILE-4
+ * @x-tiled: TILE-X
+ * @y-tiled: TILE-Y
+ * @yf-tiled: TILE-YF
+ */
+
IGT_TEST_DESCRIPTION("Test big framebuffers");
typedef struct {
@@ -588,108 +750,6 @@ max_hw_stride_async_flip_test(data_t *data)
return true;
}
-/**
- * SUBTEST: linear-%dbpp-rotate-%d
- * Description: Sanity check if addfb ioctl works correctly for given combination
- * of Linear modifier with %arg[1]-bpp & %arg[2]-rotation
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 8, 16, 32, 64
- * arg[2].values: 0, 90, 180, 270
- */
-
-/**
- * SUBTEST: %s-%dbpp-rotate-%d
- * Description: Sanity check if addfb ioctl works correctly for given combination
- * of %arg[1] with %arg[2]-bpp & %arg[3]-rotation
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4 modifier
- * @x-tiled: TILE-X modifier
- * @y-tiled: TILE-Y modifier
- * @yf-tiled: TILE-YF modifier
- *
- * arg[2].values: 8, 16, 32, 64
- * arg[3].values: 0, 90, 180, 270
- */
-
-/**
- * SUBTEST: linear-max-hw-stride-%dbpp-rotate-%d
- * Description: Test maximum hardware supported stride length for given combination
- * of linear modifier with max hardware stride length, %arg[1]-bpp,
- * and %arg[2]-rotation
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 32, 64
- * arg[2].values: 0, 180
- */
-
-/**
- * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d
- * Description: Test maximum hardware supported stride length for given combination
- * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
- * and %arg[3]-rotation
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4 modifier
- * @x-tiled: TILE-X modifier
- * @y-tiled: TILE-Y modifier
- * @yf-tiled: TILE-YF modifier
- *
- * arg[2].values: 32, 64
- * arg[3].values: 0, 180
- */
-
-/**
- * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-hflip
- * Description: Test maximum hardware supported stride length for given combination
- * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
- * and %arg[3]-rotation with H-flip mode
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-%s
- * Description: Test maximum hardware supported stride length for given combination
- * of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
- * and %arg[3]-rotation with %arg[4] mode
- * Driver requirement: i915, xe
- * Functionality: async_flips, big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4 modifier
- * @x-tiled: TILE-X modifier
- * @y-tiled: TILE-Y modifier
- * @yf-tiled: TILE-YF modifier
- *
- * arg[2].values: 32, 64
- * arg[3].values: 0, 180
- *
- * arg[4]:
- *
- * @async-flip: Async flip
- * @hflip-async-flip: Async & H-flip
- */
static void test_scanout(data_t *data)
{
igt_output_t *output;
@@ -735,22 +795,6 @@ static void test_scanout(data_t *data)
igt_skip("unsupported configuration\n");
}
-/**
- * SUBTEST: %s-addfb-size-overflow
- * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
- * with small bo.
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4
- * @x-tiled: TILE-X
- * @y-tiled: TILE-Y
- * @yf-tiled: TILE-YF
- */
static void
test_size_overflow(data_t *data)
{
@@ -795,22 +839,6 @@ test_size_overflow(data_t *data)
gem_close(data->drm_fd, bo);
}
-/**
- * SUBTEST: %s-addfb-size-offset-overflow
- * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
- * and offsets with small bo
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4
- * @x-tiled: TILE-X
- * @y-tiled: TILE-Y
- * @yf-tiled: TILE-YF
- */
static void
test_size_offset_overflow(data_t *data)
{
@@ -869,30 +897,6 @@ static int rmfb(int fd, uint32_t id)
return err;
}
-/**
- * SUBTEST: linear-addfb
- * Description: Sanity check if addfb ioctl works correctly with Linear modifier
- * for given size and strides of fb
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: %s-addfb
- * Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
- * for given size and strides of fb
- * Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4-tiled: TILE-4
- * @x-tiled: TILE-X
- * @y-tiled: TILE-Y
- * @yf-tiled: TILE-YF
- */
static void
test_addfb(data_t *data)
{
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index a555ca799..8e6c495fc 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -29,8 +29,33 @@
* Category: Display
* Description: Test big joiner
*/
+
#include "igt.h"
+/**
+ * SUBTEST: invalid-modeset
+ * Description: Verify if the modeset on the adjoining pipe is rejected when
+ * the pipe is active with a big joiner modeset
+ * Driver requirement: i915, xe
+ * Functionality: 2p1p
+ * Mega feature: Bigjoiner
+ * Test category: functionality test
+ *
+ * SUBTEST: basic
+ * Description: Verify the basic modeset on big joiner mode on all pipes
+ * Driver requirement: i915, xe
+ * Functionality: 2p1p
+ * Mega feature: Bigjoiner
+ * Test category: functionality test
+ *
+ * SUBTEST: 2x-modeset
+ * Description: Verify simultaneous modeset on 2 big joiner outputs
+ * Driver requirement: i915, xe
+ * Functionality: 2p1p
+ * Mega feature: Bigjoiner
+ * Test category: functionality test
+ */
+
#define MAX_HDISPLAY_PER_PIPE 5120
IGT_TEST_DESCRIPTION("Test big joiner");
@@ -45,15 +70,6 @@ typedef struct {
uint32_t big_joiner_output[2];
} data_t;
-/**
- * SUBTEST: invalid-modeset
- * Description: Verify if the modeset on the adjoining pipe is rejected when
- * the pipe is active with a big joiner modeset
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
- */
static void test_invalid_modeset(data_t *data)
{
igt_output_t *output;
@@ -94,14 +110,6 @@ static void test_invalid_modeset(data_t *data)
igt_assert_lt(ret, 0);
}
-/**
- * SUBTEST: basic
- * Description: Verify the basic modeset on big joiner mode on all pipes
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
- */
static void test_basic_modeset(data_t *data)
{
drmModeModeInfo *mode;
@@ -140,14 +148,6 @@ static void test_basic_modeset(data_t *data)
igt_display_commit2(display, COMMIT_ATOMIC);
}
-/**
- * SUBTEST: 2x-modeset
- * Description: Verify simultaneous modeset on 2 big joiner outputs
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
- */
static void test_dual_display(data_t *data)
{
drmModeModeInfo *mode;
diff --git a/tests/intel/kms_busy.c b/tests/intel/kms_busy.c
index 50616513c..625b0743f 100644
--- a/tests/intel/kms_busy.c
+++ b/tests/intel/kms_busy.c
@@ -26,6 +26,7 @@
* Category: Display
* Description: Basic check of KMS ABI with busy framebuffers.
*/
+
#include <sys/poll.h>
#include <signal.h>
#include <time.h>
@@ -33,6 +34,61 @@
#include "i915/gem.h"
#include "igt.h"
+/**
+ * SUBTEST: basic
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: basic-hang
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: extended-modeset-hang-%s
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @newfb: New framebuffer
+ * @oldfb: Old framebuffer
+ * @newfb-with-reset: New framebuffer with reset
+ * @oldfb-with-reset: Old framebuffer with reset
+ */
+
+/**
+ * SUBTEST: extended-pageflip-hang-%s
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @newfb: New framebuffer
+ * @oldfb: Old framebuffer
+ */
+
+/**
+ * SUBTEST: extended-pageflip-modeset-hang-oldfb
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers.");
static bool all_pipes = false;
@@ -136,21 +192,6 @@ static void flip_to_fb(igt_display_t *dpy, int pipe,
put_ahnd(ahnd);
}
-/**
- * SUBTEST: basic
- * Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: basic-hang
- * Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_flip(igt_display_t *dpy, int pipe,
igt_output_t *output, bool modeset)
{
@@ -243,35 +284,6 @@ static void test_atomic_commit_hang(igt_display_t *dpy, igt_plane_t *primary,
put_ahnd(ahnd);
}
-/**
- * SUBTEST: extended-modeset-hang-%s
- * Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @newfb: New framebuffer
- * @oldfb: Old framebuffer
- * @newfb-with-reset: New framebuffer with reset
- * @oldfb-with-reset: Old framebuffer with reset
- */
-
-/**
- * SUBTEST: extended-pageflip-hang-%s
- * Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @newfb: New framebuffer
- * @oldfb: Old framebuffer
- */
static void test_hang(igt_display_t *dpy,
enum pipe pipe, igt_output_t *output,
bool modeset, bool hang_newfb)
@@ -319,14 +331,6 @@ static void test_hang(igt_display_t *dpy,
igt_remove_fb(dpy->drm_fd, &fb[0]);
}
-/**
- * SUBTEST: extended-pageflip-modeset-hang-oldfb
- * Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
test_pageflip_modeset_hang(igt_display_t *dpy,
igt_output_t *output, enum pipe pipe)
diff --git a/tests/intel/kms_ccs.c b/tests/intel/kms_ccs.c
index 09b98fbec..813d4e5d6 100644
--- a/tests/intel/kms_ccs.c
+++ b/tests/intel/kms_ccs.c
@@ -29,6 +29,7 @@
* complemented by a color control surface (CCS) that the display
* uses to interpret the compressed data.
*/
+
#include "igt.h"
#include "i915/gem_create.h"
diff --git a/tests/intel/kms_cdclk.c b/tests/intel/kms_cdclk.c
index 71d827dac..2b3913571 100644
--- a/tests/intel/kms_cdclk.c
+++ b/tests/intel/kms_cdclk.c
@@ -29,8 +29,33 @@
* Category: Display
* Description: Test cdclk features : crawling and squashing
*/
+
#include "igt.h"
+/**
+ * SUBTEST: mode-transition-all-outputs
+ * Description: Mode transition (low to high) test to validate cdclk frequency
+ * change by simultaneous modesets on all pipes with valid outputs.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: mode-transition
+ * Description: Mode transition (low to high) test to validate cdclk frequency change.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-scaling
+ * Description: Plane scaling test to validate cdclk frequency change.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
IGT_TEST_DESCRIPTION("Test cdclk features : crawling and squashing");
#define HDISPLAY_4K 3840
@@ -253,15 +278,6 @@ static void test_mode_transition(data_t *data, enum pipe pipe, igt_output_t *out
igt_remove_fb(display->drm_fd, &fb);
}
-/**
- * SUBTEST: mode-transition-all-outputs
- * Description: Mode transition (low to high) test to validate cdclk frequency
- * change by simultaneous modesets on all pipes with valid outputs.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_mode_transition_on_all_outputs(data_t *data)
{
igt_display_t *display = &data->display;
@@ -358,21 +374,6 @@ static void test_mode_transition_on_all_outputs(data_t *data)
igt_remove_fb(data->drm_fd, &fb);
}
-/**
- * SUBTEST: mode-transition
- * Description: Mode transition (low to high) test to validate cdclk frequency change.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-scaling
- * Description: Plane scaling test to validate cdclk frequency change.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void run_cdclk_test(data_t *data, uint32_t flags)
{
igt_display_t *display = &data->display;
diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
index cc9529178..87b86d9aa 100644
--- a/tests/intel/kms_dirtyfb.c
+++ b/tests/intel/kms_dirtyfb.c
@@ -3,6 +3,12 @@
* Copyright © 2023 Intel Corporation
*/
+/**
+ * TEST: kms dirtyfb
+ * Category: Display
+ * Description: Test DIRTYFB ioctl functionality.
+ */
+
#include <sys/types.h>
#include "igt.h"
@@ -13,14 +19,7 @@
#include "xe/xe_query.h"
-IGT_TEST_DESCRIPTION("Test the DIRTYFB ioctl is working properly with "
- "its related features: FBC, PSR and DRRS");
-
/**
- * TEST: kms dirtyfb
- * Category: Display
- * Description: Test DIRTYFB ioctl functionality.
- *
* SUBTEST: dirtyfb-ioctl
* Description: Test DIRTYFB ioctl is working properly using GPU
* frontbuffer rendering with features like FBC, PSR
@@ -31,6 +30,9 @@ IGT_TEST_DESCRIPTION("Test the DIRTYFB ioctl is working properly with "
* Test category: functionality test
*/
+IGT_TEST_DESCRIPTION("Test the DIRTYFB ioctl is working properly with "
+ "its related features: FBC, PSR and DRRS");
+
#ifndef PAGE_ALIGN
#ifndef PAGE_SIZE
#define PAGE_SIZE 4096
diff --git a/tests/intel/kms_draw_crc.c b/tests/intel/kms_draw_crc.c
index 086f64dc8..57b7f0edb 100644
--- a/tests/intel/kms_draw_crc.c
+++ b/tests/intel/kms_draw_crc.c
@@ -27,9 +27,51 @@
* Category: Display
* Description: Tests whether the igt_draw library actually works.
*/
+
#include "i915/gem.h"
#include "igt.h"
+/**
+ * SUBTEST: draw-method-%s
+ * Description: Verify that igt draw library works for the %arg[1] method with
+ * different modifiers & DRM formats.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
+
+/**
+ * SUBTEST: draw-method-%s
+ * Description: Verify that igt draw library works for the %arg[1] method with
+ * different modifiers & DRM formats.
+ * Driver requirement: i915
+ * Functionality: kms_core, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
+
+/**
+ * SUBTEST: fill-fb
+ * Description: This subtest verifies CRC after filling fb with x-tiling or none.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#define MAX_CONNECTORS 32
int drm_fd;
@@ -143,37 +185,6 @@ static void get_method_crc(enum igt_draw_method method, uint32_t drm_format,
igt_remove_fb(drm_fd, &fb);
}
-/**
- * SUBTEST: draw-method-%s
- * Description: Verify that igt draw library works for the %arg[1] method with
- * different modifiers & DRM formats.
- * Driver requirement: i915, xe
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
-
-/**
- * SUBTEST: draw-method-%s
- * Description: Verify that igt draw library works for the %arg[1] method with
- * different modifiers & DRM formats.
- * Driver requirement: i915
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
static void draw_method_subtest(enum igt_draw_method method,
uint32_t format_index, uint64_t modifier)
{
@@ -213,14 +224,6 @@ static void get_fill_crc(uint64_t modifier, igt_crc_t *crc)
igt_remove_fb(drm_fd, &fb);
}
-/**
- * SUBTEST: fill-fb
- * Description: This subtest verifies CRC after filling fb with x-tiling or none.
- * Driver requirement: i915, xe
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void fill_fb_subtest(void)
{
int rc;
diff --git a/tests/intel/kms_dsc.c b/tests/intel/kms_dsc.c
index c7dfb509a..270fd2b44 100644
--- a/tests/intel/kms_dsc.c
+++ b/tests/intel/kms_dsc.c
@@ -35,6 +35,7 @@
* Category: Display
* Description: Test to validate display stream compression
*/
+
#include "kms_dsc_helper.h"
/**
diff --git a/tests/intel/kms_fb_coherency.c b/tests/intel/kms_fb_coherency.c
index d0c0df9ee..735020a94 100644
--- a/tests/intel/kms_fb_coherency.c
+++ b/tests/intel/kms_fb_coherency.c
@@ -17,6 +17,17 @@
#include "igt.h"
+/**
+ * SUBTEST: memset-crc
+ * Description: Use display controller CRC hardware to validate (non)coherency
+ * of memset operations on future scanout buffer objects
+ * mmapped with different mmap methods and different caching modes.
+ * Mega feature: General Display Features
+ * Functionality: kms_core
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ */
+
typedef struct {
int drm_fd;
igt_display_t display;
@@ -239,16 +250,6 @@ igt_main
select_valid_pipe_output_combo(&data);
}
- /**
- * SUBTEST: memset-crc
- * Description: Use display controller CRC hardware to validate (non)coherency
- * of memset operations on future scanout buffer objects
- * mmapped with different mmap methods and different caching modes.
- * Mega feature: General Display Features
- * Functionality: kms_core
- * Driver requirement: i915, xe
- * Test category: functionality test
- */
igt_subtest_with_dynamic("memset-crc") {
if (gem_has_mappable_ggtt(data.drm_fd)) {
igt_dynamic("mmap-gtt")
diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
index 8d6bb3cb6..bba81cdc0 100644
--- a/tests/intel/kms_fbcon_fbt.c
+++ b/tests/intel/kms_fbcon_fbt.c
@@ -24,6 +24,13 @@
*
*/
+/**
+ * TEST: kms fbcon fbt
+ * Category: Display
+ * Description: Test the relationship between fbcon and the frontbuffer tracking
+ * infrastructure.
+ */
+
#include "igt.h"
#include "igt_device.h"
#include "igt_psr.h"
@@ -33,11 +40,6 @@
#include <fcntl.h>
/**
- * TEST: kms fbcon fbt
- * Category: Display
- * Description: Test the relationship between fbcon and the frontbuffer tracking
- * infrastructure.
- *
* SUBTEST: fbc
* Description: Test the relationship between fbcon and the frontbuffer tracking
* infrastructure with fbc enabled.
diff --git a/tests/intel/kms_fence_pin_leak.c b/tests/intel/kms_fence_pin_leak.c
index 03f3990c4..122be554d 100644
--- a/tests/intel/kms_fence_pin_leak.c
+++ b/tests/intel/kms_fence_pin_leak.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms fence pin leak
+ * Category: Display
+ * Description: Exercises full ppgtt fence pin_count leak in the kernel.
+ */
+
#include <errno.h>
#include <limits.h>
#include <stdbool.h>
@@ -30,11 +36,8 @@
#include "i915/gem.h"
#include "igt.h"
+
/**
- * TEST: kms fence pin leak
- * Category: Display
- * Description: Exercises full ppgtt fence pin_count leak in the kernel.
- *
* SUBTEST:
* Description: Along with the modeset, validate fence pin_count leakage.
* Driver requirement: i915
diff --git a/tests/intel/kms_flip_scaled_crc.c b/tests/intel/kms_flip_scaled_crc.c
index 2997b63fa..1b7e536de 100644
--- a/tests/intel/kms_flip_scaled_crc.c
+++ b/tests/intel/kms_flip_scaled_crc.c
@@ -27,6 +27,7 @@
* Category: Display
* Description: Test flipping between scaled/nonscaled framebuffers
*/
+
#include "igt.h"
/**
diff --git a/tests/intel/kms_flip_tiling.c b/tests/intel/kms_flip_tiling.c
index 295f097ec..0655c05fd 100644
--- a/tests/intel/kms_flip_tiling.c
+++ b/tests/intel/kms_flip_tiling.c
@@ -24,17 +24,20 @@
* Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
*/
+/**
+ * TEST: kms flip tiling
+ * Category: Display
+ * Description: Test page flips and tiling scenarios
+ */
+
#include <errno.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
#include "igt.h"
+
/**
- * TEST: kms flip tiling
- * Category: Display
- * Description: Test page flips and tiling scenarios
- *
* SUBTEST: flip-change-tiling
* Description: Check pageflip between modifiers
* Driver requirement: i915, xe
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index f90d09f9f..7a3550347 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -29,6 +29,7 @@
* Category: Display
* Description: Test the Kernel's frontbuffer tracking mechanism and its related features: FBC, PSR and DRRS
*/
+
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
@@ -43,3681 +44,4070 @@
#include "igt_sysfs.h"
#include "igt_psr.h"
-#define TIME SLOW_QUICK(1000, 10000)
-
-IGT_TEST_DESCRIPTION("Test the Kernel's frontbuffer tracking mechanism and "
- "its related features: FBC, PSR and DRRS");
-
-/*
- * One of the aspects of this test is that, for every subtest, we try different
- * combinations of the parameters defined by the struct below. Because of this,
- * a single addition of a new parameter or subtest function can lead to hundreds
- * of new subtests.
+/**
+ * SUBTEST: drrs-%dp-rte
+ * Description: Sanity test to enable DRRS with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbt, drrs
+ * Mega feature: General Display Features
+ * Test category: functionality test
*
- * In order to reduce the number combinations we cut the cases that don't make
- * sense, such as writing on the secondary screen when there is only a single
- * pipe, or flipping when the target is the offscreen buffer. We also hide some
- * combinations that are somewhat redundant and don't add much value to the
- * test. For example, since we already do the offscreen testing with a single
- * pipe enabled, there's no much value in doing it again with dual pipes. If you
- * still want to try these redundant tests, you need to use the --show-hidden
- * option.
+ * SUBTEST: fbc-%dp-rte
+ * Description: Sanity test to enable FBC with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
*
- * The most important hidden thing is the FEATURE_NONE set of tests. Whenever
- * you get a failure on any test, it is important to check whether the same test
- * fails with FEATURE_NONE - replace the feature name for "nop". If the nop test
- * also fails, then it's likely the problem will be on the IGT side instead of
- * the Kernel side. We don't expose this set of tests by default because (i)
- * they take a long time to test; and (ii) if the feature tests work, then it's
- * very likely that the nop tests will also work.
+ * SUBTEST: psr-%dp-rte
+ * Description: Sanity test to enable PSR with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-rte
+ * Description: Sanity test to enable FBC & DRRS with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-rte
+ * Description: Sanity test to enable FBC & PSR with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-rte
+ * Description: Sanity test to enable PSR & DRRS with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbt, drrs, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-rte
+ * Description: Sanity test to enable FBC, PSR & DRRS with %arg[1] panels.
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, drrs, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
*/
-struct test_mode {
- /* Are we going to enable just one monitor, or are we going to setup a
- * dual screen environment for the test? */
- enum {
- PIPE_SINGLE = 0,
- PIPE_DUAL,
- PIPE_COUNT,
- } pipes;
-
- /* The primary screen is the one that's supposed to have the "feature"
- * enabled on, but we have the option to draw on the secondary screen or
- * on some offscreen buffer. We also only theck the CRC of the primary
- * screen. */
- enum {
- SCREEN_PRIM = 0,
- SCREEN_SCND,
- SCREEN_OFFSCREEN,
- SCREEN_COUNT,
- } screen;
-
- /* When we draw, we can draw directly on the primary plane, on the
- * cursor or on the sprite plane. */
- enum {
- PLANE_PRI = 0,
- PLANE_CUR,
- PLANE_SPR,
- PLANE_COUNT,
- } plane;
-
- /* We can organize the screens in a way that each screen has its own
- * framebuffer, or in a way that all screens point to the same
- * framebuffer, but on different places. This includes the offscreen
- * screen. */
- enum {
- FBS_INDIVIDUAL = 0,
- FBS_SHARED,
- FBS_COUNT,
- } fbs;
- /* Which features are we going to test now? This is a mask!
- * FEATURE_DEFAULT is a special value which instruct the test to just
- * keep what's already enabled by default in the Kernel. */
- enum {
- FEATURE_NONE = 0,
- FEATURE_FBC = 1,
- FEATURE_PSR = 2,
- FEATURE_DRRS = 4,
- FEATURE_COUNT = 8,
- FEATURE_DEFAULT = 8,
- } feature;
+/**
+ * SUBTEST: drrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ *
+ * arg[2]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
- /* Possible pixel formats. We just use FORMAT_DEFAULT for most tests and
- * only test a few things on the other formats. */
- enum pixel_format {
- FORMAT_RGB888 = 0,
- FORMAT_RGB565,
- FORMAT_RGB101010,
- FORMAT_COUNT,
- FORMAT_DEFAULT = FORMAT_RGB888,
- } format;
+/**
+ * SUBTEST: drrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ *
+ * arg[2]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
- /* There are multiple APIs where we can do the equivalent of a page flip
- * and they exercise slightly different codepaths inside the Kernel. */
- enum flip_type {
- FLIP_PAGEFLIP,
- FLIP_MODESET,
- FLIP_PLANES,
- FLIP_COUNT,
- } flip;
-
- enum tiling_type {
- TILING_LINEAR = 0,
- TILING_X,
- TILING_Y,
- TILING_4,
- TILING_COUNT,
- TILING_DEFAULT = TILING_X,
- } tiling;
-
- enum igt_draw_method method;
-};
-
-enum color {
- COLOR_RED,
- COLOR_GREEN,
- COLOR_BLUE,
- COLOR_MAGENTA,
- COLOR_CYAN,
- COLOR_SCND_BG,
- COLOR_PRIM_BG = COLOR_BLUE,
- COLOR_OFFSCREEN_BG = COLOR_SCND_BG,
-};
-
-struct rect {
- int x;
- int y;
- int w;
- int h;
- uint32_t color;
-};
-
-struct {
- int fd;
- int debugfs;
- igt_display_t display;
-
- struct buf_ops *bops;
-} drm;
-
-struct {
- bool can_test;
-
- bool supports_last_action;
-
- struct timespec last_action;
-} fbc = {
- .can_test = false,
- .supports_last_action = false,
-};
-
-struct {
- bool can_test;
-} psr = {
- .can_test = false,
-};
-
-#define MAX_DRRS_STATUS_BUF_LEN 256
-
-struct {
- bool can_test;
-} drrs = {
- .can_test = false,
-};
-
-igt_pipe_crc_t *pipe_crc;
-igt_crc_t *wanted_crc;
-struct {
- bool initialized;
- igt_crc_t crc;
-} blue_crcs[FORMAT_COUNT];
-
-/* The goal of this structure is to easily allow us to deal with cases where we
- * have a big framebuffer and the CRTC is just displaying a subregion of this
- * big FB. */
-struct fb_region {
- igt_plane_t *plane;
- struct igt_fb *fb;
- int x;
- int y;
- int w;
- int h;
-};
-
-struct draw_pattern_info {
- bool frames_stack;
- int n_rects;
- struct rect (*get_rect)(struct fb_region *fb, int r);
-
- bool initialized[FORMAT_COUNT];
- igt_crc_t *crcs[FORMAT_COUNT];
-};
-
-/* Draw big rectangles on the screen. */
-struct draw_pattern_info pattern1;
-/* 64x64 rectangles at x:0,y:0, just so we can draw on the cursor and sprite. */
-struct draw_pattern_info pattern2;
-/* 64x64 rectangles at different positions, same color, for the move test. */
-struct draw_pattern_info pattern3;
-/* Just a fullscreen green square. */
-struct draw_pattern_info pattern4;
-
-/* Command line parameters. */
-struct {
- bool check_status;
- bool check_crc;
- bool fbc_check_compression;
- bool fbc_check_last_action;
- bool no_edp;
- bool small_modes;
- bool show_hidden;
- int step;
- int only_pipes;
- int shared_fb_x_offset;
- int shared_fb_y_offset;
- enum tiling_type tiling;
-} opt = {
- .check_status = true,
- .check_crc = true,
- .fbc_check_compression = true,
- .fbc_check_last_action = true,
- .no_edp = false,
- .small_modes = false,
- .show_hidden= false,
- .step = 0,
- .only_pipes = PIPE_COUNT,
- .shared_fb_x_offset = 248,
- .shared_fb_y_offset = 500,
- .tiling = TILING_DEFAULT,
-};
-
-struct modeset_params {
- enum pipe pipe;
- igt_output_t *output;
- drmModeModeInfo mode;
-
- struct fb_region primary;
- struct fb_region cursor;
- struct fb_region sprite;
-};
-
-struct modeset_params prim_mode_params;
-struct modeset_params scnd_mode_params;
-
-struct fb_region offscreen_fb;
-struct screen_fbs {
- bool initialized;
-
- struct igt_fb prim_pri;
- struct igt_fb prim_cur;
- struct igt_fb prim_spr;
-
- struct igt_fb scnd_pri;
- struct igt_fb scnd_cur;
- struct igt_fb scnd_spr;
-
- struct igt_fb offscreen;
- struct igt_fb big;
-} fbs[FORMAT_COUNT];
-
-struct {
- pthread_t thread;
- bool stop;
-
- uint32_t handle;
- uint32_t size;
- uint32_t stride;
- int width;
- int height;
- uint32_t color;
- int bpp;
- uint32_t tiling;
-} busy_thread = {
- .stop = true,
-};
-
-static drmModeModeInfo *get_connector_smallest_mode(igt_output_t *output)
-{
- drmModeConnector *c = output->config.connector;
- const drmModeModeInfo *smallest = NULL;
- int i;
-
- if (c->connector_type == DRM_MODE_CONNECTOR_eDP)
- return igt_std_1024_mode_get(igt_output_preferred_vrefresh(output));
-
- for (i = 0; i < c->count_modes; i++) {
- const drmModeModeInfo *mode = &c->modes[i];
-
- if (!smallest ||
- mode->hdisplay * mode->vdisplay <
- smallest->hdisplay * smallest->vdisplay)
- smallest = mode;
- }
-
- if (smallest)
- return igt_memdup(smallest, sizeof(*smallest));
- else
- return igt_std_1024_mode_get(60);
-}
-
-static drmModeModeInfo *connector_get_mode(igt_output_t *output)
-{
- /* On HSW the CRC WA is so awful that it makes you think everything is
- * bugged. */
- if (IS_HASWELL(intel_get_drm_devid(drm.fd)) &&
- output->config.connector->connector_type == DRM_MODE_CONNECTOR_eDP)
- return igt_std_1024_mode_get(igt_output_preferred_vrefresh(output));
-
- if (opt.small_modes)
- return get_connector_smallest_mode(output);
- else
- return igt_memdup(&output->config.default_mode,
- sizeof(output->config.default_mode));
-}
-
-static void init_mode_params(struct modeset_params *params,
- igt_output_t *output, enum pipe pipe)
-{
- drmModeModeInfo *mode;
-
- igt_output_override_mode(output, NULL);
- mode = connector_get_mode(output);
-
- params->pipe = pipe;
- params->output = output;
- params->mode = *mode;
-
- params->primary.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_PRIMARY);
- params->primary.fb = NULL;
- params->primary.x = 0;
- params->primary.y = 0;
- params->primary.w = mode->hdisplay;
- params->primary.h = mode->vdisplay;
-
- params->cursor.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_CURSOR);
- params->cursor.fb = NULL;
- params->cursor.x = 0;
- params->cursor.y = 0;
- params->cursor.w = 64;
- params->cursor.h = 64;
-
- params->sprite.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_OVERLAY);
- igt_require(params->sprite.plane);
- params->sprite.fb = NULL;
- params->sprite.x = 0;
- params->sprite.y = 0;
- params->sprite.w = 64;
- params->sprite.h = 64;
-
- free(mode);
-}
-
-static bool find_connector(bool edp_only, bool pipe_a,
- igt_output_t *forbidden_output,
- enum pipe forbidden_pipe,
- igt_output_t **ret_output,
- enum pipe *ret_pipe)
-{
- igt_output_t *output;
- enum pipe pipe;
-
- for_each_pipe_with_valid_output(&drm.display, pipe, output) {
- drmModeConnectorPtr c = output->config.connector;
-
- if (edp_only && c->connector_type != DRM_MODE_CONNECTOR_eDP)
- continue;
-
- if (pipe_a && pipe != PIPE_A)
- continue;
-
- if (output == forbidden_output || pipe == forbidden_pipe) {
- igt_output_set_pipe(output, pipe);
- igt_output_override_mode(output, connector_get_mode(output));
-
- continue;
- }
-
- if (c->connector_type == DRM_MODE_CONNECTOR_eDP && opt.no_edp)
- continue;
-
- igt_output_set_pipe(output, pipe);
- igt_output_override_mode(output, connector_get_mode(output));
- if (i915_pipe_output_combo_valid(&drm.display)) {
- *ret_output = output;
- *ret_pipe = pipe;
- return true;
- }
- }
-
- return false;
-}
-
-static bool init_modeset_cached_params(void)
-{
- igt_output_t *prim_output = NULL, *scnd_output = NULL;
- enum pipe prim_pipe, scnd_pipe;
-
- /*
- * We have this problem where PSR is only present on eDP monitors and
- * FBC is only present on pipe A for some platforms. So we search first
- * for the ideal case of eDP supporting pipe A, and try the less optimal
- * configs later, sacrificing one of the features.
- * TODO: refactor the code in a way that allows us to have different
- * sets of prim/scnd structs for different features.
- */
- find_connector(true, true, NULL, PIPE_NONE, &prim_output, &prim_pipe);
- if (!prim_output)
- find_connector(true, false, NULL, PIPE_NONE, &prim_output, &prim_pipe);
- if (!prim_output)
- find_connector(false, true, NULL, PIPE_NONE, &prim_output, &prim_pipe);
- if (!prim_output)
- find_connector(false, false, NULL, PIPE_NONE, &prim_output, &prim_pipe);
-
- if (!prim_output)
- return false;
-
- find_connector(false, false, prim_output, prim_pipe,
- &scnd_output, &scnd_pipe);
-
- init_mode_params(&prim_mode_params, prim_output, prim_pipe);
-
- if (!scnd_output) {
- scnd_mode_params.pipe = PIPE_NONE;
- scnd_mode_params.output = NULL;
- return true;
- }
-
- init_mode_params(&scnd_mode_params, scnd_output, scnd_pipe);
- return true;
-}
-
-static uint64_t tiling_to_modifier(enum tiling_type tiling)
-{
- switch (tiling) {
- case TILING_LINEAR:
- return DRM_FORMAT_MOD_LINEAR;
- case TILING_X:
- return I915_FORMAT_MOD_X_TILED;
- case TILING_Y:
- return I915_FORMAT_MOD_Y_TILED;
- case TILING_4:
- return I915_FORMAT_MOD_4_TILED;
- default:
- igt_assert(false);
- }
-}
-
-static void create_fb(enum pixel_format pformat, int width, int height,
- enum tiling_type tiling, int plane, struct igt_fb *fb)
-{
- uint32_t format;
- uint64_t size, modifier;
- unsigned int stride;
-
- switch (pformat) {
- case FORMAT_RGB888:
- if (plane == PLANE_CUR)
- format = DRM_FORMAT_ARGB8888;
- else
- format = DRM_FORMAT_XRGB8888;
- break;
- case FORMAT_RGB565:
- /* Only the primary plane supports 16bpp! */
- if (plane == PLANE_PRI)
- format = DRM_FORMAT_RGB565;
- else if (plane == PLANE_CUR)
- format = DRM_FORMAT_ARGB8888;
- else
- format = DRM_FORMAT_XRGB8888;
- break;
- case FORMAT_RGB101010:
- if (plane == PLANE_PRI)
- format = DRM_FORMAT_XRGB2101010;
- else if (plane == PLANE_CUR)
- format = DRM_FORMAT_ARGB8888;
- else
- format = DRM_FORMAT_XRGB8888;
- break;
- default:
- igt_assert(false);
- }
-
- modifier = tiling_to_modifier(tiling);
-
- igt_warn_on(plane == PLANE_CUR && tiling != TILING_LINEAR);
-
- igt_calc_fb_size(drm.fd, width, height, format, modifier, &size,
- &stride);
-
- igt_create_fb_with_bo_size(drm.fd, width, height, format, modifier,
- IGT_COLOR_YCBCR_BT709,
- IGT_COLOR_YCBCR_LIMITED_RANGE,
- fb, size, stride);
-}
-
-static uint32_t pick_color(struct igt_fb *fb, enum color ecolor)
-{
- uint32_t color, r, g, b, b2, a;
- bool alpha = false;
-
- switch (fb->drm_format) {
- case DRM_FORMAT_RGB565:
- a = 0x0;
- r = 0x1F << 11;
- g = 0x3F << 5;
- b = 0x1F;
- b2 = 0x10;
- break;
- case DRM_FORMAT_ARGB8888:
- alpha = true;
- case DRM_FORMAT_XRGB8888:
- a = 0xFF << 24;
- r = 0xFF << 16;
- g = 0xFF << 8;
- b = 0xFF;
- b2 = 0x80;
- break;
- case DRM_FORMAT_ARGB2101010:
- alpha = true;
- case DRM_FORMAT_XRGB2101010:
- a = 0x3 << 30;
- r = 0x3FF << 20;
- g = 0x3FF << 10;
- b = 0x3FF;
- b2 = 0x200;
- break;
- default:
- igt_assert(false);
- }
-
- switch (ecolor) {
- case COLOR_RED:
- color = r;
- break;
- case COLOR_GREEN:
- color = g;
- break;
- case COLOR_BLUE:
- color = b;
- break;
- case COLOR_MAGENTA:
- color = r | b;
- break;
- case COLOR_CYAN:
- color = g | b;
- break;
- case COLOR_SCND_BG:
- color = b2;
- break;
- default:
- igt_assert(false);
- }
-
- if (alpha)
- color |= a;
-
- return color;
-}
-
-static void fill_fb(struct igt_fb *fb, enum color ecolor)
-{
- igt_draw_fill_fb(drm.fd, fb, pick_color(fb, ecolor));
-}
+/**
+ * SUBTEST: drrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @cur: Cursor plane
+ * @pri: Primary plane
+ * @spr: Sprite plane
+ *
+ * arg[3]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
-/*
- * This is how the prim, scnd and offscreen FBs should be positioned inside the
- * shared FB. The prim buffer starts at the X and Y offsets defined by
- * opt.shared_fb_{x,y}_offset, then scnd starts at the same X pixel offset,
- * right after prim ends on the Y axis, then the offscreen fb starts after scnd
- * ends. Just like the picture:
+/**
+ * SUBTEST: drrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
*
- * +-------------------------+
- * | shared fb |
- * | +------------------+ |
- * | | prim | |
- * | | | |
- * | | | |
- * | | | |
- * | +------------------+--+
- * | | scnd |
- * | | |
- * | | |
- * | +---------------+-----+
- * | | offscreen | |
- * | | | |
- * | | | |
- * +---+---------------+-----+
+ * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*
- * We do it vertically instead of the more common horizontal case in order to
- * avoid super huge strides not supported by FBC.
+ * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @cur: Cursor plane
+ * @pri: Primary plane
+ * @spr: Sprite plane
+ *
+ * arg[3]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
*/
-static void create_shared_fb(enum pixel_format format, enum tiling_type tiling)
-{
- int prim_w, prim_h, scnd_w, scnd_h, offs_w, offs_h, big_w, big_h;
- struct screen_fbs *s = &fbs[format];
-
- prim_w = prim_mode_params.mode.hdisplay;
- prim_h = prim_mode_params.mode.vdisplay;
-
- if (scnd_mode_params.output) {
- scnd_w = scnd_mode_params.mode.hdisplay;
- scnd_h = scnd_mode_params.mode.vdisplay;
- } else {
- scnd_w = 0;
- scnd_h = 0;
- }
- offs_w = offscreen_fb.w;
- offs_h = offscreen_fb.h;
-
- big_w = prim_w;
- if (scnd_w > big_w)
- big_w = scnd_w;
- if (offs_w > big_w)
- big_w = offs_w;
- big_w += opt.shared_fb_x_offset;
-
- big_h = prim_h + scnd_h + offs_h + opt.shared_fb_y_offset;
-
- create_fb(format, big_w, big_h, tiling, PLANE_PRI, &s->big);
-}
-
-static void destroy_fbs(enum pixel_format format)
-{
- struct screen_fbs *s = &fbs[format];
-
- if (!s->initialized)
- return;
-
- if (scnd_mode_params.output) {
- igt_remove_fb(drm.fd, &s->scnd_pri);
- igt_remove_fb(drm.fd, &s->scnd_cur);
- igt_remove_fb(drm.fd, &s->scnd_spr);
- }
- igt_remove_fb(drm.fd, &s->prim_pri);
- igt_remove_fb(drm.fd, &s->prim_cur);
- igt_remove_fb(drm.fd, &s->prim_spr);
- igt_remove_fb(drm.fd, &s->offscreen);
- igt_remove_fb(drm.fd, &s->big);
-}
-
-static void create_fbs(enum pixel_format format, enum tiling_type tiling)
-{
- struct screen_fbs *s = &fbs[format];
-
- if (s->initialized)
- destroy_fbs(format);
-
- s->initialized = true;
-
- create_fb(format, prim_mode_params.mode.hdisplay,
- prim_mode_params.mode.vdisplay, tiling, PLANE_PRI,
- &s->prim_pri);
- create_fb(format, prim_mode_params.cursor.w,
- prim_mode_params.cursor.h, DRM_FORMAT_MOD_LINEAR,
- PLANE_CUR, &s->prim_cur);
- create_fb(format, prim_mode_params.sprite.w,
- prim_mode_params.sprite.h, tiling, PLANE_SPR, &s->prim_spr);
-
- create_fb(format, offscreen_fb.w, offscreen_fb.h, tiling, PLANE_PRI,
- &s->offscreen);
-
- create_shared_fb(format, tiling);
-
- if (!scnd_mode_params.output)
- return;
-
- create_fb(format, scnd_mode_params.mode.hdisplay,
- scnd_mode_params.mode.vdisplay, tiling, PLANE_PRI,
- &s->scnd_pri);
- create_fb(format, scnd_mode_params.cursor.w, scnd_mode_params.cursor.h,
- DRM_FORMAT_MOD_LINEAR, PLANE_CUR, &s->scnd_cur);
- create_fb(format, scnd_mode_params.sprite.w, scnd_mode_params.sprite.h,
- tiling, PLANE_SPR, &s->scnd_spr);
-}
-
-static void __set_prim_plane_for_params(struct modeset_params *params)
-{
- igt_plane_set_fb(params->primary.plane, params->primary.fb);
- igt_plane_set_position(params->primary.plane, 0, 0);
- igt_plane_set_size(params->primary.plane, params->mode.hdisplay, params->mode.vdisplay);
- igt_fb_set_position(params->primary.fb, params->primary.plane,
- params->primary.x, params->primary.y);
- igt_fb_set_size(params->primary.fb, params->primary.plane,
- params->mode.hdisplay, params->mode.vdisplay);
-}
-
-static void __set_mode_for_params(struct modeset_params *params)
-{
- igt_output_override_mode(params->output, ¶ms->mode);
- igt_output_set_pipe(params->output, params->pipe);
-
- __set_prim_plane_for_params(params);
-}
-
-static void set_mode_for_params(struct modeset_params *params)
-{
- __set_mode_for_params(params);
- igt_display_commit(&drm.display);
-}
-
-static void __debugfs_read_crtc(const char *param, char *buf, int len)
-{
- int dir;
- enum pipe pipe;
-
- pipe = prim_mode_params.pipe;
- dir = igt_debugfs_pipe_dir(drm.fd, pipe, O_DIRECTORY);
- igt_require_fd(dir);
- igt_debugfs_simple_read(dir, param, buf, len);
- close(dir);
-}
-
-#define debugfs_read_crtc(p, arr) __debugfs_read_crtc(p, arr, sizeof(arr))
-#define debugfs_write_crtc(p, arr) __debugfs_write_crtc(p, arr, sizeof(arr))
-#define debugfs_read_connector(p, arr) __debugfs_read_connector(p, arr, sizeof(arr))
-
-static bool is_drrs_high(void)
-{
- char buf[MAX_DRRS_STATUS_BUF_LEN];
-
- debugfs_read_crtc("i915_drrs_status", buf);
- return strstr(buf, "DRRS refresh rate: high");
-}
-
-static bool is_drrs_low(void)
-{
- char buf[MAX_DRRS_STATUS_BUF_LEN];
-
- debugfs_read_crtc("i915_drrs_status", buf);
- return strstr(buf, "DRRS refresh rate: low");
-}
-
-static void drrs_print_status(void)
-{
- char buf[MAX_DRRS_STATUS_BUF_LEN];
-
- debugfs_read_crtc("i915_drrs_status", buf);
- igt_info("DRRS STATUS :\n%s\n", buf);
-}
-static struct timespec fbc_get_last_action(void)
-{
- struct timespec ret = { 0, 0 };
- char buf[128];
- char *action;
- ssize_t n_read;
+/**
+ * SUBTEST: drrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
+/**
+ * SUBTEST: drrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
- debugfs_read_crtc("i915_fbc_status", buf);
- action = strstr(buf, "\nLast action:");
- igt_assert(action);
+/**
+ * SUBTEST: drrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cur: Cursor plane
+ * @pri: Primary plane
+ * @spr: Sprite plane
+ *
+ * arg[2]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
- n_read = sscanf(action, "Last action: %ld.%ld",
- &ret.tv_sec, &ret.tv_nsec);
- igt_assert(n_read == 2);
+/**
+ * SUBTEST: drrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cur: Cursor plane
+ * @pri: Primary plane
+ * @spr: Sprite plane
+ *
+ * arg[2]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
- return ret;
-}
+/**
+ * SUBTEST: drrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
-static bool fbc_last_action_changed(void)
-{
- struct timespec t_new, t_old;
+/**
+ * SUBTEST: drrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
+ * Description: Draw a set of rectangles on the screen using the provided method
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
- t_old = fbc.last_action;
- t_new = fbc_get_last_action();
+/**
+ * SUBTEST: drrs-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-pri-indfb-multidraw
+ * Description: Draw a set of rectangles on the screen using alternated drawing methods
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ */
- fbc.last_action = t_new;
+/**
+ * SUBTEST: drrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @rgb101010: FORMAT_RGB101010
+ * @rgb565: FORMAT_RGB565
+ *
+ * arg[2]:
+ *
+ * @blt: Blitter
+ * @mmap-wc: MMAP-WC
+ * @render: Render
+ */
-#if 0
- igt_info("old: %ld.%ld\n", t_old.tv_sec, t_old.tv_nsec);
- igt_info("new: %ld.%ld\n", t_new.tv_sec, t_new.tv_nsec);
-#endif
+/**
+ * SUBTEST: drrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%s-draw-%s
+ * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @rgb101010: FORMAT_RGB101010
+ * @rgb565: FORMAT_RGB565
+ *
+ * arg[2]:
+ *
+ * @mmap-cpu: MMAP-CPU
+ * @mmap-gtt: MMAP-GTT
+ * @pwrite: PWRITE
+ */
- return t_old.tv_sec != t_new.tv_sec ||
- t_old.tv_nsec != t_new.tv_nsec;
-}
+/**
+ * SUBTEST: drrs-slowdraw
+ * Description: Sleep a little bit between drawing operations with DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-slowdraw
+ * Description: Sleep a little bit between drawing operations with PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-slowdraw
+ * Description: Sleep a little bit between drawing operations with FBC & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-slowdraw
+ * Description: Sleep a little bit between drawing operations with FBC & PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-slowdraw
+ * Description: Sleep a little bit between drawing operations with PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-slowdraw
+ * Description: Sleep a little bit between drawing operations with FBC, PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
-static void fbc_update_last_action(void)
-{
- if (!fbc.supports_last_action)
- return;
+/**
+ * SUBTEST: drrs-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ *
+ * arg[3]:
+ *
+ * @ms: Modeset
+ * @pg: Page flip
+ * @pl: Plane change
+ */
- fbc.last_action = fbc_get_last_action();
+/**
+ * SUBTEST: drrs-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-%sflip-blt
+ * Description: Just exercise page flips with the patterns we have
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ *
+ * arg[2]:
+ *
+ * @ms: Modeset
+ * @pg: Page flip
+ * @pl: Plane change
+ */
-#if 0
- igt_info("Last action: %ld.%ld\n",
- fbc.last_action.tv_sec, fbc.last_action.tv_nsec);
-#endif
-}
+/**
+ * SUBTEST: fbc-%dp-%s-fliptrack-mmap-gtt
+ * Description: Check if the hardware tracking works after page flips
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-%s-fliptrack-mmap-gtt
+ * Description: Check if the hardware tracking works after page flips
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-%s-fliptrack-mmap-gtt
+ * Description: Check if the hardware tracking works after page flips
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-%s-fliptrack-mmap-gtt
+ * Description: Check if the hardware tracking works after page flips
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ */
-static void fbc_setup_last_action(void)
-{
- ssize_t n_read;
- char buf[128];
- char *action;
+/**
+ * SUBTEST: drrs-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-move
+ * Description: Just move the %arg[2] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @spr: Sprite plane
+ * @cur: Cursor plane
+ */
+/**
+ * SUBTEST: drrs-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-move
+ * Description: Just move the %arg[1] around
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @spr: Sprite plane
+ * @cur: Cursor plane
+ */
- debugfs_read_crtc("i915_fbc_status", buf);
- action = strstr(buf, "\nLast action:");
- if (!action) {
- igt_info("FBC last action not supported\n");
- return;
- }
+/**
+ * SUBTEST: drrs-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[2] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ *
+ * arg[2]:
+ *
+ * @spr: Sprite plane
+ * @cur: Cursor plane
+ */
- fbc.supports_last_action = true;
+/**
+ * SUBTEST: drrs-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-onoff
+ * Description: Just enable and disable the %arg[1] a few times
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @spr: Sprite plane
+ * @cur: Cursor plane
+ */
- n_read = sscanf(action, "Last action: %ld.%ld",
- &fbc.last_action.tv_sec, &fbc.last_action.tv_nsec);
- igt_assert(n_read == 2);
-}
+/**
+ * SUBTEST: drrs-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%dp-primscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: drrs-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen
+ * Description: Put a fullscreen plane covering the whole screen
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1].values: 1, 2
+ */
-static bool fbc_is_compressing(void)
-{
- char buf[128];
+/**
+ * SUBTEST: drrs-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-%s-scaledprimary
+ * Description: Try different primary plane scaling strategies
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @indfb: Individual fb
+ * @shrfb: Shared fb
+ */
- debugfs_read_crtc("i915_fbc_status", buf);
- return strstr(buf, "\nCompressing: yes\n") != NULL;
-}
+/**
+ * SUBTEST: drrs-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with FBC
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with FBC & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with FBC & PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-modesetfrombusy
+ * Description: Modeset from a busy buffer to a non-busy buffer with FBC, PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr, scaling
+ * Mega feature: General Display Features
+ */
-static bool fbc_wait_for_compression(void)
-{
- return igt_wait(fbc_is_compressing(), 2000, 1);
-}
+/**
+ * SUBTEST: drrs-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of FBC
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbt, psr, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of FBC & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of FBC & PSR
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbt, psr, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-suspend
+ * Description: Make sure suspend/resume keeps us on the same state of FBC, PSR & DRRS
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
-static bool fbc_not_enough_stolen(void)
-{
- char buf[128];
+/**
+ * SUBTEST: drrs-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbc-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psr-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: psrdrrs-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: drrs, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-farfromfence-mmap-gtt
+ * Description: Test drawing as far from the fence start as possible
+ * Driver requirement: i915
+ * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
- debugfs_read_crtc("i915_fbc_status", buf);
- return strstr(buf, "FBC disabled: not enough stolen memory\n");
-}
+/**
+ * SUBTEST: fbc-stridechange
+ * Description: Change the frontbuffer stride by doing a modeset
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-stridechange
+ * Description: Change the frontbuffer stride by doing a modeset
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-stridechange
+ * Description: Change the frontbuffer stride by doing a modeset
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-stridechange
+ * Description: Change the frontbuffer stride by doing a modeset
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
-static bool fbc_stride_not_supported(void)
-{
- char buf[128];
+/**
+ * SUBTEST: fbc-tiling-%s
+ * Description: Test %arg[1] formats, if the tiling format supports FBC do the
+ * basic drawing test, else set the mode & test if FBC is disabled
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcdrrs-tiling-%s
+ * Description: Test %arg[1] formats, if the tiling format supports FBC do the
+ * basic drawing test, else set the mode & test if FBC is disabled
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsr-tiling-%s
+ * Description: Test %arg[1] formats, if the tiling format supports FBC do the
+ * basic drawing test, else set the mode & test if FBC is disabled
+ * Driver requirement: i915, xe
+ * Functionality: fbc, fbt, psr, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fbcpsrdrrs-tiling-%s
+ * Description: Test %arg[1] formats, if the tiling format supports FBC do the
+ * basic drawing test, else set the mode & test if FBC is disabled
+ * Driver requirement: i915, xe
+ * Functionality: drrs, fbc, fbt, psr, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4: 4 tiling
+ * @linear: Linear tiling
+ * @y: Y tiling
+ */
- debugfs_read_crtc("i915_fbc_status", buf);
- return strstr(buf, "FBC disabled: framebuffer stride not supported\n");
-}
+/**
+ * SUBTEST: basic
+ * Description: Do some basic operations regardless of which features are enabled
+ * Driver requirement: i915, xe
+ * Functionality: fbt
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
-static bool fbc_mode_too_large(void)
-{
- char buf[128];
+#define TIME SLOW_QUICK(1000, 10000)
- debugfs_read_crtc("i915_fbc_status", buf);
- return strstr(buf, "FBC disabled: mode too large for compression\n");
-}
+IGT_TEST_DESCRIPTION("Test the Kernel's frontbuffer tracking mechanism and "
+ "its related features: FBC, PSR and DRRS");
-static bool drrs_wait_until_rr_switch_to_low(void)
-{
- return igt_wait(is_drrs_low(), 5000, 1);
-}
+/*
+ * One of the aspects of this test is that, for every subtest, we try different
+ * combinations of the parameters defined by the struct below. Because of this,
+ * a single addition of a new parameter or subtest function can lead to hundreds
+ * of new subtests.
+ *
+ * In order to reduce the number combinations we cut the cases that don't make
+ * sense, such as writing on the secondary screen when there is only a single
+ * pipe, or flipping when the target is the offscreen buffer. We also hide some
+ * combinations that are somewhat redundant and don't add much value to the
+ * test. For example, since we already do the offscreen testing with a single
+ * pipe enabled, there's no much value in doing it again with dual pipes. If you
+ * still want to try these redundant tests, you need to use the --show-hidden
+ * option.
+ *
+ * The most important hidden thing is the FEATURE_NONE set of tests. Whenever
+ * you get a failure on any test, it is important to check whether the same test
+ * fails with FEATURE_NONE - replace the feature name for "nop". If the nop test
+ * also fails, then it's likely the problem will be on the IGT side instead of
+ * the Kernel side. We don't expose this set of tests by default because (i)
+ * they take a long time to test; and (ii) if the feature tests work, then it's
+ * very likely that the nop tests will also work.
+ */
+struct test_mode {
+ /* Are we going to enable just one monitor, or are we going to setup a
+ * dual screen environment for the test? */
+ enum {
+ PIPE_SINGLE = 0,
+ PIPE_DUAL,
+ PIPE_COUNT,
+ } pipes;
-static struct rect pat1_get_rect(struct fb_region *fb, int r)
-{
- struct rect rect;
+ /* The primary screen is the one that's supposed to have the "feature"
+ * enabled on, but we have the option to draw on the secondary screen or
+ * on some offscreen buffer. We also only theck the CRC of the primary
+ * screen. */
+ enum {
+ SCREEN_PRIM = 0,
+ SCREEN_SCND,
+ SCREEN_OFFSCREEN,
+ SCREEN_COUNT,
+ } screen;
- switch (r) {
- case 0:
- rect.x = 0;
- rect.y = 0;
- rect.w = fb->w / 8;
- rect.h = fb->h / 8;
- rect.color = pick_color(fb->fb, COLOR_GREEN);
- break;
- case 1:
- rect.x = fb->w / 8 * 4;
- rect.y = fb->h / 8 * 4;
- rect.w = fb->w / 8 * 2;
- rect.h = fb->h / 8 * 2;
- rect.color = pick_color(fb->fb, COLOR_RED);
- break;
- case 2:
- rect.x = fb->w / 16 + 1;
- rect.y = fb->h / 16 + 1;
- rect.w = fb->w / 8 + 1;
- rect.h = fb->h / 8 + 1;
- rect.color = pick_color(fb->fb, COLOR_MAGENTA);
- break;
- case 3:
- rect.x = fb->w - 1;
- rect.y = fb->h - 1;
- rect.w = 1;
- rect.h = 1;
- rect.color = pick_color(fb->fb, COLOR_CYAN);
- break;
- default:
- igt_assert(false);
- }
+ /* When we draw, we can draw directly on the primary plane, on the
+ * cursor or on the sprite plane. */
+ enum {
+ PLANE_PRI = 0,
+ PLANE_CUR,
+ PLANE_SPR,
+ PLANE_COUNT,
+ } plane;
- return rect;
-}
+ /* We can organize the screens in a way that each screen has its own
+ * framebuffer, or in a way that all screens point to the same
+ * framebuffer, but on different places. This includes the offscreen
+ * screen. */
+ enum {
+ FBS_INDIVIDUAL = 0,
+ FBS_SHARED,
+ FBS_COUNT,
+ } fbs;
-static struct rect pat2_get_rect(struct fb_region *fb, int r)
-{
- struct rect rect;
+ /* Which features are we going to test now? This is a mask!
+ * FEATURE_DEFAULT is a special value which instruct the test to just
+ * keep what's already enabled by default in the Kernel. */
+ enum {
+ FEATURE_NONE = 0,
+ FEATURE_FBC = 1,
+ FEATURE_PSR = 2,
+ FEATURE_DRRS = 4,
+ FEATURE_COUNT = 8,
+ FEATURE_DEFAULT = 8,
+ } feature;
- rect.x = 0;
- rect.y = 0;
- rect.w = 64;
- rect.h = 64;
+ /* Possible pixel formats. We just use FORMAT_DEFAULT for most tests and
+ * only test a few things on the other formats. */
+ enum pixel_format {
+ FORMAT_RGB888 = 0,
+ FORMAT_RGB565,
+ FORMAT_RGB101010,
+ FORMAT_COUNT,
+ FORMAT_DEFAULT = FORMAT_RGB888,
+ } format;
- switch (r) {
- case 0:
- rect.color = pick_color(fb->fb, COLOR_GREEN);
- break;
- case 1:
- rect.x = 31;
- rect.y = 31;
- rect.w = 31;
- rect.h = 31;
- rect.color = pick_color(fb->fb, COLOR_RED);
- break;
- case 2:
- rect.x = 16;
- rect.y = 16;
- rect.w = 32;
- rect.h = 32;
- rect.color = pick_color(fb->fb, COLOR_MAGENTA);
- break;
- case 3:
- rect.color = pick_color(fb->fb, COLOR_CYAN);
- break;
- default:
- igt_assert(false);
- }
+ /* There are multiple APIs where we can do the equivalent of a page flip
+ * and they exercise slightly different codepaths inside the Kernel. */
+ enum flip_type {
+ FLIP_PAGEFLIP,
+ FLIP_MODESET,
+ FLIP_PLANES,
+ FLIP_COUNT,
+ } flip;
- return rect;
-}
+ enum tiling_type {
+ TILING_LINEAR = 0,
+ TILING_X,
+ TILING_Y,
+ TILING_4,
+ TILING_COUNT,
+ TILING_DEFAULT = TILING_X,
+ } tiling;
-static struct rect pat3_get_rect(struct fb_region *fb, int r)
-{
- struct rect rect;
+ enum igt_draw_method method;
+};
- rect.w = 64;
- rect.h = 64;
- rect.color = pick_color(fb->fb, COLOR_GREEN);
+enum color {
+ COLOR_RED,
+ COLOR_GREEN,
+ COLOR_BLUE,
+ COLOR_MAGENTA,
+ COLOR_CYAN,
+ COLOR_SCND_BG,
+ COLOR_PRIM_BG = COLOR_BLUE,
+ COLOR_OFFSCREEN_BG = COLOR_SCND_BG,
+};
- switch (r) {
- case 0:
- rect.x = 0;
- rect.y = 0;
- break;
- case 1:
- rect.x = 64;
- rect.y = 64;
- break;
- case 2:
- rect.x = 1;
- rect.y = 1;
- break;
- case 3:
- rect.x = fb->w - 64;
- rect.y = fb->h - 64;
- break;
- case 4:
- rect.x = fb->w / 2 - 32;
- rect.y = fb->h / 2 - 32;
- break;
- default:
- igt_assert(false);
- }
+struct rect {
+ int x;
+ int y;
+ int w;
+ int h;
+ uint32_t color;
+};
- return rect;
-}
+struct {
+ int fd;
+ int debugfs;
+ igt_display_t display;
-static struct rect pat4_get_rect(struct fb_region *fb, int r)
-{
- struct rect rect;
+ struct buf_ops *bops;
+} drm;
- igt_assert_eq(r, 0);
+struct {
+ bool can_test;
- rect.x = 0;
- rect.y = 0;
- rect.w = fb->w;
- rect.h = fb->h;
- rect.color = pick_color(fb->fb, COLOR_GREEN);
+ bool supports_last_action;
- return rect;
-}
+ struct timespec last_action;
+} fbc = {
+ .can_test = false,
+ .supports_last_action = false,
+};
-static void fb_dirty_ioctl(struct fb_region *fb, struct rect *rect)
-{
- int rc;
- drmModeClip clip = {
- .x1 = rect->x,
- .x2 = rect->x + rect->w,
- .y1 = rect->y,
- .y2 = rect->y + rect->h,
- };
+struct {
+ bool can_test;
+} psr = {
+ .can_test = false,
+};
- rc = drmModeDirtyFB(drm.fd, fb->fb->fb_id, &clip, 1);
+#define MAX_DRRS_STATUS_BUF_LEN 256
- igt_assert(rc == 0 || rc == -ENOSYS);
-}
+struct {
+ bool can_test;
+} drrs = {
+ .can_test = false,
+};
-static void draw_rect(struct draw_pattern_info *pattern, struct fb_region *fb,
- enum igt_draw_method method, int r)
-{
- struct rect rect = pattern->get_rect(fb, r);
+igt_pipe_crc_t *pipe_crc;
+igt_crc_t *wanted_crc;
+struct {
+ bool initialized;
+ igt_crc_t crc;
+} blue_crcs[FORMAT_COUNT];
- igt_draw_rect_fb(drm.fd, drm.bops, 0, fb->fb, method,
- fb->x + rect.x, fb->y + rect.y,
- rect.w, rect.h, rect.color);
+/* The goal of this structure is to easily allow us to deal with cases where we
+ * have a big framebuffer and the CRTC is just displaying a subregion of this
+ * big FB. */
+struct fb_region {
+ igt_plane_t *plane;
+ struct igt_fb *fb;
+ int x;
+ int y;
+ int w;
+ int h;
+};
- fb_dirty_ioctl(fb, &rect);
-}
+struct draw_pattern_info {
+ bool frames_stack;
+ int n_rects;
+ struct rect (*get_rect)(struct fb_region *fb, int r);
-static void draw_rect_igt_fb(struct draw_pattern_info *pattern,
- struct igt_fb *fb, enum igt_draw_method method,
- int r)
-{
- struct fb_region region = {
- .fb = fb,
- .x = 0,
- .y = 0,
- .w = fb->width,
- .h = fb->height,
- };
+ bool initialized[FORMAT_COUNT];
+ igt_crc_t *crcs[FORMAT_COUNT];
+};
- draw_rect(pattern, ®ion, method, r);
-}
+/* Draw big rectangles on the screen. */
+struct draw_pattern_info pattern1;
+/* 64x64 rectangles at x:0,y:0, just so we can draw on the cursor and sprite. */
+struct draw_pattern_info pattern2;
+/* 64x64 rectangles at different positions, same color, for the move test. */
+struct draw_pattern_info pattern3;
+/* Just a fullscreen green square. */
+struct draw_pattern_info pattern4;
-static void fill_fb_region(struct fb_region *region, enum color ecolor)
-{
- uint32_t color = pick_color(region->fb, ecolor);
+/* Command line parameters. */
+struct {
+ bool check_status;
+ bool check_crc;
+ bool fbc_check_compression;
+ bool fbc_check_last_action;
+ bool no_edp;
+ bool small_modes;
+ bool show_hidden;
+ int step;
+ int only_pipes;
+ int shared_fb_x_offset;
+ int shared_fb_y_offset;
+ enum tiling_type tiling;
+} opt = {
+ .check_status = true,
+ .check_crc = true,
+ .fbc_check_compression = true,
+ .fbc_check_last_action = true,
+ .no_edp = false,
+ .small_modes = false,
+ .show_hidden= false,
+ .step = 0,
+ .only_pipes = PIPE_COUNT,
+ .shared_fb_x_offset = 248,
+ .shared_fb_y_offset = 500,
+ .tiling = TILING_DEFAULT,
+};
- igt_draw_rect_fb(drm.fd, drm.bops, 0, region->fb, IGT_DRAW_BLT,
- region->x, region->y, region->w, region->h,
- color);
-}
+struct modeset_params {
+ enum pipe pipe;
+ igt_output_t *output;
+ drmModeModeInfo mode;
-static void _fb_dirty_ioctl(struct fb_region *region)
-{
- struct rect rect;
+ struct fb_region primary;
+ struct fb_region cursor;
+ struct fb_region sprite;
+};
- rect.x = region->x;
- rect.y = region->y;
- rect.w = region->w;
- rect.h = region->h;
- fb_dirty_ioctl(region, &rect);
-}
+struct modeset_params prim_mode_params;
+struct modeset_params scnd_mode_params;
-static void unset_all_crtcs(void)
-{
- igt_display_reset(&drm.display);
- igt_display_commit(&drm.display);
-}
+struct fb_region offscreen_fb;
+struct screen_fbs {
+ bool initialized;
-static bool disable_features(const struct test_mode *t)
-{
- if (t->feature == FEATURE_DEFAULT)
- return false;
+ struct igt_fb prim_pri;
+ struct igt_fb prim_cur;
+ struct igt_fb prim_spr;
- intel_fbc_disable(drm.fd);
- intel_drrs_disable(drm.fd, prim_mode_params.pipe);
+ struct igt_fb scnd_pri;
+ struct igt_fb scnd_cur;
+ struct igt_fb scnd_spr;
- return psr.can_test ? psr_disable(drm.fd, drm.debugfs) : false;
-}
+ struct igt_fb offscreen;
+ struct igt_fb big;
+} fbs[FORMAT_COUNT];
-static void *busy_thread_func(void *data)
-{
- while (!busy_thread.stop)
- igt_draw_rect(drm.fd, drm.bops, 0, busy_thread.handle,
- busy_thread.size, busy_thread.stride,
- busy_thread.tiling, IGT_DRAW_BLT, 0, 0,
- busy_thread.width, busy_thread.height,
- busy_thread.color, busy_thread.bpp);
+struct {
+ pthread_t thread;
+ bool stop;
- pthread_exit(0);
-}
+ uint32_t handle;
+ uint32_t size;
+ uint32_t stride;
+ int width;
+ int height;
+ uint32_t color;
+ int bpp;
+ uint32_t tiling;
+} busy_thread = {
+ .stop = true,
+};
-static void start_busy_thread(struct igt_fb *fb)
+static drmModeModeInfo *get_connector_smallest_mode(igt_output_t *output)
{
- int rc;
+ drmModeConnector *c = output->config.connector;
+ const drmModeModeInfo *smallest = NULL;
+ int i;
- igt_assert(busy_thread.stop == true);
- busy_thread.stop = false;
- busy_thread.handle = fb->gem_handle;
- busy_thread.size = fb->size;
- busy_thread.stride = fb->strides[0];
- busy_thread.width = fb->width;
- busy_thread.height = fb->height;
- busy_thread.color = pick_color(fb, COLOR_PRIM_BG);
- busy_thread.bpp = igt_drm_format_to_bpp(fb->drm_format);
- busy_thread.tiling = igt_fb_mod_to_tiling(fb->modifier);
+ if (c->connector_type == DRM_MODE_CONNECTOR_eDP)
+ return igt_std_1024_mode_get(igt_output_preferred_vrefresh(output));
- rc = pthread_create(&busy_thread.thread, NULL, busy_thread_func, NULL);
- igt_assert_eq(rc, 0);
+ for (i = 0; i < c->count_modes; i++) {
+ const drmModeModeInfo *mode = &c->modes[i];
+
+ if (!smallest ||
+ mode->hdisplay * mode->vdisplay <
+ smallest->hdisplay * smallest->vdisplay)
+ smallest = mode;
+ }
+
+ if (smallest)
+ return igt_memdup(smallest, sizeof(*smallest));
+ else
+ return igt_std_1024_mode_get(60);
}
-static void stop_busy_thread(void)
+static drmModeModeInfo *connector_get_mode(igt_output_t *output)
{
- if (!busy_thread.stop) {
- busy_thread.stop = true;
- igt_assert(pthread_join(busy_thread.thread, NULL) == 0);
- }
+ /* On HSW the CRC WA is so awful that it makes you think everything is
+ * bugged. */
+ if (IS_HASWELL(intel_get_drm_devid(drm.fd)) &&
+ output->config.connector->connector_type == DRM_MODE_CONNECTOR_eDP)
+ return igt_std_1024_mode_get(igt_output_preferred_vrefresh(output));
+
+ if (opt.small_modes)
+ return get_connector_smallest_mode(output);
+ else
+ return igt_memdup(&output->config.default_mode,
+ sizeof(output->config.default_mode));
}
-static void print_crc(const char *str, igt_crc_t *crc)
+static void init_mode_params(struct modeset_params *params,
+ igt_output_t *output, enum pipe pipe)
{
- char *pipe_str;
+ drmModeModeInfo *mode;
- pipe_str = igt_crc_to_string(crc);
+ igt_output_override_mode(output, NULL);
+ mode = connector_get_mode(output);
- igt_debug("%s pipe:[%s]\n", str, pipe_str);
+ params->pipe = pipe;
+ params->output = output;
+ params->mode = *mode;
- free(pipe_str);
-}
+ params->primary.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_PRIMARY);
+ params->primary.fb = NULL;
+ params->primary.x = 0;
+ params->primary.y = 0;
+ params->primary.w = mode->hdisplay;
+ params->primary.h = mode->vdisplay;
-static void collect_crc(igt_crc_t *crc)
-{
- igt_pipe_crc_collect_crc(pipe_crc, crc);
-}
+ params->cursor.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_CURSOR);
+ params->cursor.fb = NULL;
+ params->cursor.x = 0;
+ params->cursor.y = 0;
+ params->cursor.w = 64;
+ params->cursor.h = 64;
-static void init_blue_crc(enum pixel_format format, enum tiling_type tiling)
-{
- struct igt_fb blue;
+ params->sprite.plane = igt_pipe_get_plane_type(&drm.display.pipes[pipe], DRM_PLANE_TYPE_OVERLAY);
+ igt_require(params->sprite.plane);
+ params->sprite.fb = NULL;
+ params->sprite.x = 0;
+ params->sprite.y = 0;
+ params->sprite.w = 64;
+ params->sprite.h = 64;
- if (blue_crcs[format].initialized)
- return;
+ free(mode);
+}
- create_fb(format, prim_mode_params.mode.hdisplay,
- prim_mode_params.mode.vdisplay, tiling, PLANE_PRI,
- &blue);
+static bool find_connector(bool edp_only, bool pipe_a,
+ igt_output_t *forbidden_output,
+ enum pipe forbidden_pipe,
+ igt_output_t **ret_output,
+ enum pipe *ret_pipe)
+{
+ igt_output_t *output;
+ enum pipe pipe;
- fill_fb(&blue, COLOR_PRIM_BG);
+ for_each_pipe_with_valid_output(&drm.display, pipe, output) {
+ drmModeConnectorPtr c = output->config.connector;
- igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
- igt_output_override_mode(prim_mode_params.output, &prim_mode_params.mode);
- igt_plane_set_fb(prim_mode_params.primary.plane, &blue);
- igt_display_commit(&drm.display);
+ if (edp_only && c->connector_type != DRM_MODE_CONNECTOR_eDP)
+ continue;
- if (!pipe_crc) {
- pipe_crc = igt_pipe_crc_new(drm.fd, prim_mode_params.pipe,
- IGT_PIPE_CRC_SOURCE_AUTO);
- igt_assert(pipe_crc);
- }
+ if (pipe_a && pipe != PIPE_A)
+ continue;
- collect_crc(&blue_crcs[format].crc);
+ if (output == forbidden_output || pipe == forbidden_pipe) {
+ igt_output_set_pipe(output, pipe);
+ igt_output_override_mode(output, connector_get_mode(output));
- print_crc("Blue CRC: ", &blue_crcs[format].crc);
+ continue;
+ }
- igt_display_reset(&drm.display);
+ if (c->connector_type == DRM_MODE_CONNECTOR_eDP && opt.no_edp)
+ continue;
- igt_remove_fb(drm.fd, &blue);
+ igt_output_set_pipe(output, pipe);
+ igt_output_override_mode(output, connector_get_mode(output));
+ if (i915_pipe_output_combo_valid(&drm.display)) {
+ *ret_output = output;
+ *ret_pipe = pipe;
+ return true;
+ }
+ }
- blue_crcs[format].initialized = true;
+ return false;
}
-static void init_crcs(enum pixel_format format, enum tiling_type tiling,
- struct draw_pattern_info *pattern)
+static bool init_modeset_cached_params(void)
{
- int r, r_;
- struct igt_fb tmp_fbs[pattern->n_rects];
+ igt_output_t *prim_output = NULL, *scnd_output = NULL;
+ enum pipe prim_pipe, scnd_pipe;
- if (pattern->initialized[format])
- return;
+ /*
+ * We have this problem where PSR is only present on eDP monitors and
+ * FBC is only present on pipe A for some platforms. So we search first
+ * for the ideal case of eDP supporting pipe A, and try the less optimal
+ * configs later, sacrificing one of the features.
+ * TODO: refactor the code in a way that allows us to have different
+ * sets of prim/scnd structs for different features.
+ */
+ find_connector(true, true, NULL, PIPE_NONE, &prim_output, &prim_pipe);
+ if (!prim_output)
+ find_connector(true, false, NULL, PIPE_NONE, &prim_output, &prim_pipe);
+ if (!prim_output)
+ find_connector(false, true, NULL, PIPE_NONE, &prim_output, &prim_pipe);
+ if (!prim_output)
+ find_connector(false, false, NULL, PIPE_NONE, &prim_output, &prim_pipe);
- pattern->crcs[format] = calloc(pattern->n_rects,
- sizeof(*(pattern->crcs[format])));
+ if (!prim_output)
+ return false;
- for (r = 0; r < pattern->n_rects; r++)
- create_fb(format, prim_mode_params.mode.hdisplay,
- prim_mode_params.mode.vdisplay, tiling,
- PLANE_PRI, &tmp_fbs[r]);
+ find_connector(false, false, prim_output, prim_pipe,
+ &scnd_output, &scnd_pipe);
- for (r = 0; r < pattern->n_rects; r++)
- fill_fb(&tmp_fbs[r], COLOR_PRIM_BG);
+ init_mode_params(&prim_mode_params, prim_output, prim_pipe);
- if (pattern->frames_stack) {
- for (r = 0; r < pattern->n_rects; r++)
- for (r_ = 0; r_ <= r; r_++)
- draw_rect_igt_fb(pattern, &tmp_fbs[r],
- igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
- IGT_DRAW_PWRITE : IGT_DRAW_RENDER,
- r_);
- } else {
- for (r = 0; r < pattern->n_rects; r++)
- draw_rect_igt_fb(pattern, &tmp_fbs[r], igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
- IGT_DRAW_PWRITE : IGT_DRAW_RENDER, r);
+ if (!scnd_output) {
+ scnd_mode_params.pipe = PIPE_NONE;
+ scnd_mode_params.output = NULL;
+ return true;
}
- igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
- igt_output_override_mode(prim_mode_params.output, &prim_mode_params.mode);
- for (r = 0; r < pattern->n_rects; r++) {
- igt_plane_set_fb(prim_mode_params.primary.plane, &tmp_fbs[r]);
- igt_display_commit(&drm.display);
-
- collect_crc(&pattern->crcs[format][r]);
- }
+ init_mode_params(&scnd_mode_params, scnd_output, scnd_pipe);
+ return true;
+}
- for (r = 0; r < pattern->n_rects; r++) {
- igt_debug("Rect %d CRC:", r);
- print_crc("", &pattern->crcs[format][r]);
+static uint64_t tiling_to_modifier(enum tiling_type tiling)
+{
+ switch (tiling) {
+ case TILING_LINEAR:
+ return DRM_FORMAT_MOD_LINEAR;
+ case TILING_X:
+ return I915_FORMAT_MOD_X_TILED;
+ case TILING_Y:
+ return I915_FORMAT_MOD_Y_TILED;
+ case TILING_4:
+ return I915_FORMAT_MOD_4_TILED;
+ default:
+ igt_assert(false);
}
-
- igt_display_reset(&drm.display);
-
- for (r = 0; r < pattern->n_rects; r++)
- igt_remove_fb(drm.fd, &tmp_fbs[r]);
-
- pattern->initialized[format] = true;
}
-static void setup_drm(void)
+static void create_fb(enum pixel_format pformat, int width, int height,
+ enum tiling_type tiling, int plane, struct igt_fb *fb)
{
- drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
- drm.debugfs = igt_debugfs_dir(drm.fd);
-
- kmstest_set_vt_graphics_mode();
- igt_display_require(&drm.display, drm.fd);
+ uint32_t format;
+ uint64_t size, modifier;
+ unsigned int stride;
- drm.bops = buf_ops_create(drm.fd);
-}
+ switch (pformat) {
+ case FORMAT_RGB888:
+ if (plane == PLANE_CUR)
+ format = DRM_FORMAT_ARGB8888;
+ else
+ format = DRM_FORMAT_XRGB8888;
+ break;
+ case FORMAT_RGB565:
+ /* Only the primary plane supports 16bpp! */
+ if (plane == PLANE_PRI)
+ format = DRM_FORMAT_RGB565;
+ else if (plane == PLANE_CUR)
+ format = DRM_FORMAT_ARGB8888;
+ else
+ format = DRM_FORMAT_XRGB8888;
+ break;
+ case FORMAT_RGB101010:
+ if (plane == PLANE_PRI)
+ format = DRM_FORMAT_XRGB2101010;
+ else if (plane == PLANE_CUR)
+ format = DRM_FORMAT_ARGB8888;
+ else
+ format = DRM_FORMAT_XRGB8888;
+ break;
+ default:
+ igt_assert(false);
+ }
-static void teardown_drm(void)
-{
- buf_ops_destroy(drm.bops);
- igt_display_fini(&drm.display);
- drm_close_driver(drm.fd);
-}
+ modifier = tiling_to_modifier(tiling);
-static void setup_modeset(void)
-{
- igt_require(init_modeset_cached_params());
- offscreen_fb.fb = NULL;
- offscreen_fb.w = 1024;
- offscreen_fb.h = 1024;
- create_fbs(FORMAT_DEFAULT, opt.tiling);
-}
+ igt_warn_on(plane == PLANE_CUR && tiling != TILING_LINEAR);
-static void teardown_modeset(void)
-{
- enum pixel_format f;
+ igt_calc_fb_size(drm.fd, width, height, format, modifier, &size,
+ &stride);
- for (f = 0; f < FORMAT_COUNT; f++)
- destroy_fbs(f);
+ igt_create_fb_with_bo_size(drm.fd, width, height, format, modifier,
+ IGT_COLOR_YCBCR_BT709,
+ IGT_COLOR_YCBCR_LIMITED_RANGE,
+ fb, size, stride);
}
-static void setup_crcs(void)
+static uint32_t pick_color(struct igt_fb *fb, enum color ecolor)
{
- enum pixel_format f;
-
- for (f = 0; f < FORMAT_COUNT; f++)
- blue_crcs[f].initialized = false;
+ uint32_t color, r, g, b, b2, a;
+ bool alpha = false;
- pattern1.frames_stack = true;
- pattern1.n_rects = 4;
- pattern1.get_rect = pat1_get_rect;
- for (f = 0; f < FORMAT_COUNT; f++) {
- pattern1.initialized[f] = false;
- pattern1.crcs[f] = NULL;
+ switch (fb->drm_format) {
+ case DRM_FORMAT_RGB565:
+ a = 0x0;
+ r = 0x1F << 11;
+ g = 0x3F << 5;
+ b = 0x1F;
+ b2 = 0x10;
+ break;
+ case DRM_FORMAT_ARGB8888:
+ alpha = true;
+ case DRM_FORMAT_XRGB8888:
+ a = 0xFF << 24;
+ r = 0xFF << 16;
+ g = 0xFF << 8;
+ b = 0xFF;
+ b2 = 0x80;
+ break;
+ case DRM_FORMAT_ARGB2101010:
+ alpha = true;
+ case DRM_FORMAT_XRGB2101010:
+ a = 0x3 << 30;
+ r = 0x3FF << 20;
+ g = 0x3FF << 10;
+ b = 0x3FF;
+ b2 = 0x200;
+ break;
+ default:
+ igt_assert(false);
}
- pattern2.frames_stack = true;
- pattern2.n_rects = 4;
- pattern2.get_rect = pat2_get_rect;
- for (f = 0; f < FORMAT_COUNT; f++) {
- pattern2.initialized[f] = false;
- pattern2.crcs[f] = NULL;
+ switch (ecolor) {
+ case COLOR_RED:
+ color = r;
+ break;
+ case COLOR_GREEN:
+ color = g;
+ break;
+ case COLOR_BLUE:
+ color = b;
+ break;
+ case COLOR_MAGENTA:
+ color = r | b;
+ break;
+ case COLOR_CYAN:
+ color = g | b;
+ break;
+ case COLOR_SCND_BG:
+ color = b2;
+ break;
+ default:
+ igt_assert(false);
}
- pattern3.frames_stack = false;
- pattern3.n_rects = 5;
- pattern3.get_rect = pat3_get_rect;
- for (f = 0; f < FORMAT_COUNT; f++) {
- pattern3.initialized[f] = false;
- pattern3.crcs[f] = NULL;
- }
+ if (alpha)
+ color |= a;
- pattern4.frames_stack = false;
- pattern4.n_rects = 1;
- pattern4.get_rect = pat4_get_rect;
- for (f = 0; f < FORMAT_COUNT; f++) {
- pattern4.initialized[f] = false;
- pattern4.crcs[f] = NULL;
- }
+ return color;
}
-static void teardown_crcs(void)
+static void fill_fb(struct igt_fb *fb, enum color ecolor)
{
- enum pixel_format f;
-
- for (f = 0; f < FORMAT_COUNT; f++) {
- if (pattern1.crcs[f])
- free(pattern1.crcs[f]);
- if (pattern2.crcs[f])
- free(pattern2.crcs[f]);
- if (pattern3.crcs[f])
- free(pattern3.crcs[f]);
- if (pattern4.crcs[f])
- free(pattern4.crcs[f]);
- }
-
- igt_pipe_crc_free(pipe_crc);
+ igt_draw_fill_fb(drm.fd, fb, pick_color(fb, ecolor));
}
-static void setup_fbc(void)
+/*
+ * This is how the prim, scnd and offscreen FBs should be positioned inside the
+ * shared FB. The prim buffer starts at the X and Y offsets defined by
+ * opt.shared_fb_{x,y}_offset, then scnd starts at the same X pixel offset,
+ * right after prim ends on the Y axis, then the offscreen fb starts after scnd
+ * ends. Just like the picture:
+ *
+ * +-------------------------+
+ * | shared fb |
+ * | +------------------+ |
+ * | | prim | |
+ * | | | |
+ * | | | |
+ * | | | |
+ * | +------------------+--+
+ * | | scnd |
+ * | | |
+ * | | |
+ * | +---------------+-----+
+ * | | offscreen | |
+ * | | | |
+ * | | | |
+ * +---+---------------+-----+
+ *
+ * We do it vertically instead of the more common horizontal case in order to
+ * avoid super huge strides not supported by FBC.
+ */
+static void create_shared_fb(enum pixel_format format, enum tiling_type tiling)
{
- if (!intel_fbc_supported_on_chipset(drm.fd, prim_mode_params.pipe)) {
- igt_info("Can't test FBC: not supported on this chipset\n");
- return;
+ int prim_w, prim_h, scnd_w, scnd_h, offs_w, offs_h, big_w, big_h;
+ struct screen_fbs *s = &fbs[format];
+
+ prim_w = prim_mode_params.mode.hdisplay;
+ prim_h = prim_mode_params.mode.vdisplay;
+
+ if (scnd_mode_params.output) {
+ scnd_w = scnd_mode_params.mode.hdisplay;
+ scnd_h = scnd_mode_params.mode.vdisplay;
+ } else {
+ scnd_w = 0;
+ scnd_h = 0;
}
+ offs_w = offscreen_fb.w;
+ offs_h = offscreen_fb.h;
- fbc.can_test = true;
+ big_w = prim_w;
+ if (scnd_w > big_w)
+ big_w = scnd_w;
+ if (offs_w > big_w)
+ big_w = offs_w;
+ big_w += opt.shared_fb_x_offset;
- fbc_setup_last_action();
-}
+ big_h = prim_h + scnd_h + offs_h + opt.shared_fb_y_offset;
-static void teardown_fbc(void)
-{
+ create_fb(format, big_w, big_h, tiling, PLANE_PRI, &s->big);
}
-static void setup_psr(void)
+static void destroy_fbs(enum pixel_format format)
{
- if (prim_mode_params.output->config.connector->connector_type !=
- DRM_MODE_CONNECTOR_eDP) {
- igt_info("Can't test PSR: no usable eDP screen.\n");
- return;
- }
+ struct screen_fbs *s = &fbs[format];
- if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) {
- igt_info("Can't test PSR: not supported by sink.\n");
+ if (!s->initialized)
return;
+
+ if (scnd_mode_params.output) {
+ igt_remove_fb(drm.fd, &s->scnd_pri);
+ igt_remove_fb(drm.fd, &s->scnd_cur);
+ igt_remove_fb(drm.fd, &s->scnd_spr);
}
- psr.can_test = true;
+ igt_remove_fb(drm.fd, &s->prim_pri);
+ igt_remove_fb(drm.fd, &s->prim_cur);
+ igt_remove_fb(drm.fd, &s->prim_spr);
+ igt_remove_fb(drm.fd, &s->offscreen);
+ igt_remove_fb(drm.fd, &s->big);
}
-static void teardown_psr(void)
+static void create_fbs(enum pixel_format format, enum tiling_type tiling)
{
-}
+ struct screen_fbs *s = &fbs[format];
-static void setup_drrs(void)
-{
- if (!intel_output_has_drrs(drm.fd, prim_mode_params.output)) {
- igt_info("Can't test DRRS: no usable screen.\n");
- return;
- }
+ if (s->initialized)
+ destroy_fbs(format);
- if (!intel_is_drrs_supported(drm.fd, prim_mode_params.pipe)) {
- igt_info("Can't test DRRS: Not supported.\n");
- return;
- }
+ s->initialized = true;
- drrs.can_test = true;
-}
+ create_fb(format, prim_mode_params.mode.hdisplay,
+ prim_mode_params.mode.vdisplay, tiling, PLANE_PRI,
+ &s->prim_pri);
+ create_fb(format, prim_mode_params.cursor.w,
+ prim_mode_params.cursor.h, DRM_FORMAT_MOD_LINEAR,
+ PLANE_CUR, &s->prim_cur);
+ create_fb(format, prim_mode_params.sprite.w,
+ prim_mode_params.sprite.h, tiling, PLANE_SPR, &s->prim_spr);
-static void setup_environment(void)
-{
- setup_drm();
- setup_modeset();
+ create_fb(format, offscreen_fb.w, offscreen_fb.h, tiling, PLANE_PRI,
+ &s->offscreen);
- setup_fbc();
- setup_psr();
- setup_drrs();
+ create_shared_fb(format, tiling);
- setup_crcs();
+ if (!scnd_mode_params.output)
+ return;
+
+ create_fb(format, scnd_mode_params.mode.hdisplay,
+ scnd_mode_params.mode.vdisplay, tiling, PLANE_PRI,
+ &s->scnd_pri);
+ create_fb(format, scnd_mode_params.cursor.w, scnd_mode_params.cursor.h,
+ DRM_FORMAT_MOD_LINEAR, PLANE_CUR, &s->scnd_cur);
+ create_fb(format, scnd_mode_params.sprite.w, scnd_mode_params.sprite.h,
+ tiling, PLANE_SPR, &s->scnd_spr);
}
-static void teardown_environment(void)
+static void __set_prim_plane_for_params(struct modeset_params *params)
{
- stop_busy_thread();
-
- teardown_crcs();
- teardown_psr();
- teardown_fbc();
- teardown_modeset();
- teardown_drm();
+ igt_plane_set_fb(params->primary.plane, params->primary.fb);
+ igt_plane_set_position(params->primary.plane, 0, 0);
+ igt_plane_set_size(params->primary.plane, params->mode.hdisplay, params->mode.vdisplay);
+ igt_fb_set_position(params->primary.fb, params->primary.plane,
+ params->primary.x, params->primary.y);
+ igt_fb_set_size(params->primary.fb, params->primary.plane,
+ params->mode.hdisplay, params->mode.vdisplay);
}
-static void wait_user(int step, const char *msg)
+static void __set_mode_for_params(struct modeset_params *params)
{
- if (opt.step < step)
- return;
+ igt_output_override_mode(params->output, ¶ms->mode);
+ igt_output_set_pipe(params->output, params->pipe);
- igt_info("%s Press enter...\n", msg);
- while (getchar() != '\n')
- ;
+ __set_prim_plane_for_params(params);
}
-static struct modeset_params *pick_params(const struct test_mode *t)
+static void set_mode_for_params(struct modeset_params *params)
{
- switch (t->screen) {
- case SCREEN_PRIM:
- return &prim_mode_params;
- case SCREEN_SCND:
- return &scnd_mode_params;
- case SCREEN_OFFSCREEN:
- return NULL;
- default:
- igt_assert(false);
- }
+ __set_mode_for_params(params);
+ igt_display_commit(&drm.display);
}
-static struct fb_region *pick_target(const struct test_mode *t,
- struct modeset_params *params)
+static void __debugfs_read_crtc(const char *param, char *buf, int len)
{
- if (!params)
- return &offscreen_fb;
+ int dir;
+ enum pipe pipe;
- switch (t->plane) {
- case PLANE_PRI:
- return ¶ms->primary;
- case PLANE_CUR:
- return ¶ms->cursor;
- case PLANE_SPR:
- return ¶ms->sprite;
- default:
- igt_assert(false);
- }
+ pipe = prim_mode_params.pipe;
+ dir = igt_debugfs_pipe_dir(drm.fd, pipe, O_DIRECTORY);
+ igt_require_fd(dir);
+ igt_debugfs_simple_read(dir, param, buf, len);
+ close(dir);
}
-static void do_flush(const struct test_mode *t)
+#define debugfs_read_crtc(p, arr) __debugfs_read_crtc(p, arr, sizeof(arr))
+#define debugfs_write_crtc(p, arr) __debugfs_write_crtc(p, arr, sizeof(arr))
+#define debugfs_read_connector(p, arr) __debugfs_read_connector(p, arr, sizeof(arr))
+
+static bool is_drrs_high(void)
{
- struct modeset_params *params = pick_params(t);
- struct fb_region *target = pick_target(t, params);
+ char buf[MAX_DRRS_STATUS_BUF_LEN];
- if (is_i915_device(drm.fd))
- gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);
+ debugfs_read_crtc("i915_drrs_status", buf);
+ return strstr(buf, "DRRS refresh rate: high");
}
-#define DONT_ASSERT_CRC (1 << 0)
-#define DONT_ASSERT_FEATURE_STATUS (1 << 1)
-#define DONT_ASSERT_FBC_STATUS (1 << 12)
-
-#define FBC_ASSERT_FLAGS (0xF << 2)
-#define ASSERT_FBC_ENABLED (1 << 2)
-#define ASSERT_FBC_DISABLED (1 << 3)
-#define ASSERT_LAST_ACTION_CHANGED (1 << 4)
-#define ASSERT_NO_ACTION_CHANGE (1 << 5)
-
-#define PSR_ASSERT_FLAGS (3 << 6)
-#define ASSERT_PSR_ENABLED (1 << 6)
-#define ASSERT_PSR_DISABLED (1 << 7)
-
-#define DRRS_ASSERT_FLAGS (7 << 8)
-#define ASSERT_DRRS_HIGH (1 << 8)
-#define ASSERT_DRRS_LOW (1 << 9)
-#define ASSERT_DRRS_INACTIVE (1 << 10)
+static bool is_drrs_low(void)
+{
+ char buf[MAX_DRRS_STATUS_BUF_LEN];
-#define ASSERT_NO_IDLE_GPU (1 << 11)
+ debugfs_read_crtc("i915_drrs_status", buf);
+ return strstr(buf, "DRRS refresh rate: low");
+}
-static int adjust_assertion_flags(const struct test_mode *t, int flags)
+static void drrs_print_status(void)
{
- if (!(flags & DONT_ASSERT_FEATURE_STATUS)) {
- if (!(flags & ASSERT_FBC_DISABLED))
- flags |= ASSERT_FBC_ENABLED;
- if (!(flags & ASSERT_PSR_DISABLED))
- flags |= ASSERT_PSR_ENABLED;
- if (!((flags & ASSERT_DRRS_LOW) ||
- (flags & ASSERT_DRRS_INACTIVE)))
- flags |= ASSERT_DRRS_HIGH;
- }
-
- if ((t->feature & FEATURE_FBC) == 0 || (flags & DONT_ASSERT_FBC_STATUS))
- flags &= ~FBC_ASSERT_FLAGS;
- if ((t->feature & FEATURE_PSR) == 0)
- flags &= ~PSR_ASSERT_FLAGS;
- if ((t->feature & FEATURE_DRRS) == 0)
- flags &= ~DRRS_ASSERT_FLAGS;
+ char buf[MAX_DRRS_STATUS_BUF_LEN];
- return flags;
+ debugfs_read_crtc("i915_drrs_status", buf);
+ igt_info("DRRS STATUS :\n%s\n", buf);
}
-static void do_crc_assertions(int flags)
+static struct timespec fbc_get_last_action(void)
{
- igt_crc_t crc;
+ struct timespec ret = { 0, 0 };
+ char buf[128];
+ char *action;
+ ssize_t n_read;
- if (!opt.check_crc || (flags & DONT_ASSERT_CRC))
- return;
- collect_crc(&crc);
- print_crc("Calculated CRC:", &crc);
+ debugfs_read_crtc("i915_fbc_status", buf);
+ action = strstr(buf, "\nLast action:");
+ igt_assert(action);
- igt_assert(wanted_crc);
- igt_assert_crc_equal(&crc, wanted_crc);
+ n_read = sscanf(action, "Last action: %ld.%ld",
+ &ret.tv_sec, &ret.tv_nsec);
+ igt_assert(n_read == 2);
+
+ return ret;
}
-static void do_status_assertions(int flags)
+static bool fbc_last_action_changed(void)
{
- if (!opt.check_status) {
- /* Make sure we settle before continuing. */
- sleep(1);
- return;
- }
+ struct timespec t_new, t_old;
- if (flags & ASSERT_DRRS_HIGH) {
- if (!is_drrs_high()) {
- drrs_print_status();
- igt_assert_f(false, "DRRS HIGH\n");
- }
- } else if (flags & ASSERT_DRRS_LOW) {
- if (!drrs_wait_until_rr_switch_to_low()) {
- drrs_print_status();
- igt_assert_f(false, "DRRS LOW\n");
- }
- } else if (flags & ASSERT_DRRS_INACTIVE) {
- if (!intel_is_drrs_inactive(drm.fd, prim_mode_params.pipe)) {
- drrs_print_status();
- igt_assert_f(false, "DRRS INACTIVE\n");
- }
- }
+ t_old = fbc.last_action;
+ t_new = fbc_get_last_action();
- if (flags & ASSERT_FBC_ENABLED) {
- igt_require(!fbc_not_enough_stolen());
- igt_require(!fbc_stride_not_supported());
- igt_require(!fbc_mode_too_large());
- if (!intel_fbc_wait_until_enabled(drm.fd, prim_mode_params.pipe)) {
- igt_assert_f(intel_fbc_is_enabled(drm.fd,
- prim_mode_params.pipe,
- IGT_LOG_WARN),
- "FBC disabled\n");
- }
+ fbc.last_action = t_new;
- if (opt.fbc_check_compression)
- igt_assert(fbc_wait_for_compression());
- } else if (flags & ASSERT_FBC_DISABLED) {
- igt_assert(!intel_fbc_wait_until_enabled(drm.fd,
- prim_mode_params.pipe));
- }
+#if 0
+ igt_info("old: %ld.%ld\n", t_old.tv_sec, t_old.tv_nsec);
+ igt_info("new: %ld.%ld\n", t_new.tv_sec, t_new.tv_nsec);
+#endif
- if (flags & ASSERT_PSR_ENABLED)
- igt_assert_f(psr_wait_entry(drm.debugfs, PSR_MODE_1),
- "PSR still disabled\n");
- else if (flags & ASSERT_PSR_DISABLED)
- igt_assert_f(psr_wait_update(drm.debugfs, PSR_MODE_1),
- "PSR still enabled\n");
+ return t_old.tv_sec != t_new.tv_sec ||
+ t_old.tv_nsec != t_new.tv_nsec;
}
-static void __do_assertions(const struct test_mode *t, int flags,
- int line)
+static void fbc_update_last_action(void)
{
- flags = adjust_assertion_flags(t, flags);
-
- /* Make sure any submitted rendering is now idle. */
- if (!(flags & ASSERT_NO_IDLE_GPU))
- gem_quiescent_gpu(drm.fd);
-
- igt_debug("checking asserts in line %i\n", line);
-
- wait_user(2, "Paused before assertions.");
+ if (!fbc.supports_last_action)
+ return;
- /* Check the CRC to make sure the drawing operations work
- * immediately, independently of the features being enabled. */
- do_crc_assertions(flags);
+ fbc.last_action = fbc_get_last_action();
- /* Now we can flush things to make the test faster. */
- do_flush(t);
+#if 0
+ igt_info("Last action: %ld.%ld\n",
+ fbc.last_action.tv_sec, fbc.last_action.tv_nsec);
+#endif
+}
- do_status_assertions(flags);
+static void fbc_setup_last_action(void)
+{
+ ssize_t n_read;
+ char buf[128];
+ char *action;
- /* Check CRC again to make sure the compressed screen is ok,
- * except if we're not drawing on the primary screen. On this
- * case, the first check should be enough and a new CRC check
- * would only delay the test suite while adding no value to the
- * test suite. */
- if (t->screen == SCREEN_PRIM)
- do_crc_assertions(flags);
- if (fbc.supports_last_action && opt.fbc_check_last_action) {
- if (flags & ASSERT_LAST_ACTION_CHANGED)
- igt_assert(fbc_last_action_changed());
- else if (flags & ASSERT_NO_ACTION_CHANGE)
- igt_assert(!fbc_last_action_changed());
+ debugfs_read_crtc("i915_fbc_status", buf);
+ action = strstr(buf, "\nLast action:");
+ if (!action) {
+ igt_info("FBC last action not supported\n");
+ return;
}
- wait_user(1, "Paused after assertions.");
-}
+ fbc.supports_last_action = true;
-#define do_assertions(__flags) __do_assertions(t, (__flags), __LINE__)
+ n_read = sscanf(action, "Last action: %ld.%ld",
+ &fbc.last_action.tv_sec, &fbc.last_action.tv_nsec);
+ igt_assert(n_read == 2);
+}
-static void enable_prim_screen_and_wait(const struct test_mode *t)
+static bool fbc_is_compressing(void)
{
- fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
- set_mode_for_params(&prim_mode_params);
-
- wanted_crc = &blue_crcs[t->format].crc;
- fbc_update_last_action();
+ char buf[128];
- do_assertions(ASSERT_NO_ACTION_CHANGE);
+ debugfs_read_crtc("i915_fbc_status", buf);
+ return strstr(buf, "\nCompressing: yes\n") != NULL;
}
-static void update_modeset_cached_params(void)
+static bool fbc_wait_for_compression(void)
{
- bool found = false;
+ return igt_wait(fbc_is_compressing(), 2000, 1);
+}
- igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
- igt_output_set_pipe(scnd_mode_params.output, scnd_mode_params.pipe);
+static bool fbc_not_enough_stolen(void)
+{
+ char buf[128];
- found = igt_override_all_active_output_modes_to_fit_bw(&drm.display);
- igt_require_f(found, "No valid mode combo found.\n");
+ debugfs_read_crtc("i915_fbc_status", buf);
+ return strstr(buf, "FBC disabled: not enough stolen memory\n");
+}
- prim_mode_params.mode = *igt_output_get_mode(prim_mode_params.output);
- prim_mode_params.primary.w = prim_mode_params.mode.hdisplay;
- prim_mode_params.primary.h = prim_mode_params.mode.vdisplay;
+static bool fbc_stride_not_supported(void)
+{
+ char buf[128];
- scnd_mode_params.mode = *igt_output_get_mode(scnd_mode_params.output);
- scnd_mode_params.primary.w = scnd_mode_params.mode.hdisplay;
- scnd_mode_params.primary.h = scnd_mode_params.mode.vdisplay;
+ debugfs_read_crtc("i915_fbc_status", buf);
+ return strstr(buf, "FBC disabled: framebuffer stride not supported\n");
+}
- fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
- fill_fb_region(&scnd_mode_params.primary, COLOR_SCND_BG);
+static bool fbc_mode_too_large(void)
+{
+ char buf[128];
- __set_mode_for_params(&prim_mode_params);
- __set_mode_for_params(&scnd_mode_params);
+ debugfs_read_crtc("i915_fbc_status", buf);
+ return strstr(buf, "FBC disabled: mode too large for compression\n");
}
-static void enable_both_screens_and_wait(const struct test_mode *t)
+static bool drrs_wait_until_rr_switch_to_low(void)
{
- int ret;
+ return igt_wait(is_drrs_low(), 5000, 1);
+}
- fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
- fill_fb_region(&scnd_mode_params.primary, COLOR_SCND_BG);
+static struct rect pat1_get_rect(struct fb_region *fb, int r)
+{
+ struct rect rect;
- __set_mode_for_params(&prim_mode_params);
- __set_mode_for_params(&scnd_mode_params);
+ switch (r) {
+ case 0:
+ rect.x = 0;
+ rect.y = 0;
+ rect.w = fb->w / 8;
+ rect.h = fb->h / 8;
+ rect.color = pick_color(fb->fb, COLOR_GREEN);
+ break;
+ case 1:
+ rect.x = fb->w / 8 * 4;
+ rect.y = fb->h / 8 * 4;
+ rect.w = fb->w / 8 * 2;
+ rect.h = fb->h / 8 * 2;
+ rect.color = pick_color(fb->fb, COLOR_RED);
+ break;
+ case 2:
+ rect.x = fb->w / 16 + 1;
+ rect.y = fb->h / 16 + 1;
+ rect.w = fb->w / 8 + 1;
+ rect.h = fb->h / 8 + 1;
+ rect.color = pick_color(fb->fb, COLOR_MAGENTA);
+ break;
+ case 3:
+ rect.x = fb->w - 1;
+ rect.y = fb->h - 1;
+ rect.w = 1;
+ rect.h = 1;
+ rect.color = pick_color(fb->fb, COLOR_CYAN);
+ break;
+ default:
+ igt_assert(false);
+ }
- if (drm.display.is_atomic)
- ret = igt_display_try_commit_atomic(&drm.display,
- DRM_MODE_ATOMIC_TEST_ONLY |
- DRM_MODE_ATOMIC_ALLOW_MODESET,
- NULL);
- else
- ret = igt_display_try_commit2(&drm.display, COMMIT_LEGACY);
+ return rect;
+}
- if (ret)
- update_modeset_cached_params();
+static struct rect pat2_get_rect(struct fb_region *fb, int r)
+{
+ struct rect rect;
- igt_display_commit2(&drm.display, drm.display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
+ rect.x = 0;
+ rect.y = 0;
+ rect.w = 64;
+ rect.h = 64;
- wanted_crc = &blue_crcs[t->format].crc;
- fbc_update_last_action();
+ switch (r) {
+ case 0:
+ rect.color = pick_color(fb->fb, COLOR_GREEN);
+ break;
+ case 1:
+ rect.x = 31;
+ rect.y = 31;
+ rect.w = 31;
+ rect.h = 31;
+ rect.color = pick_color(fb->fb, COLOR_RED);
+ break;
+ case 2:
+ rect.x = 16;
+ rect.y = 16;
+ rect.w = 32;
+ rect.h = 32;
+ rect.color = pick_color(fb->fb, COLOR_MAGENTA);
+ break;
+ case 3:
+ rect.color = pick_color(fb->fb, COLOR_CYAN);
+ break;
+ default:
+ igt_assert(false);
+ }
- do_assertions(ASSERT_NO_ACTION_CHANGE);
+ return rect;
}
-static void set_region_for_test(const struct test_mode *t,
- struct fb_region *reg)
+static struct rect pat3_get_rect(struct fb_region *fb, int r)
{
- fill_fb_region(reg, COLOR_PRIM_BG);
+ struct rect rect;
- igt_plane_set_fb(reg->plane, reg->fb);
- igt_plane_set_position(reg->plane, 0, 0);
- igt_plane_set_size(reg->plane, reg->w, reg->h);
- igt_fb_set_size(reg->fb, reg->plane, reg->w, reg->h);
+ rect.w = 64;
+ rect.h = 64;
+ rect.color = pick_color(fb->fb, COLOR_GREEN);
- igt_display_commit(&drm.display);
- do_assertions(ASSERT_NO_ACTION_CHANGE);
+ switch (r) {
+ case 0:
+ rect.x = 0;
+ rect.y = 0;
+ break;
+ case 1:
+ rect.x = 64;
+ rect.y = 64;
+ break;
+ case 2:
+ rect.x = 1;
+ rect.y = 1;
+ break;
+ case 3:
+ rect.x = fb->w - 64;
+ rect.y = fb->h - 64;
+ break;
+ case 4:
+ rect.x = fb->w / 2 - 32;
+ rect.y = fb->h / 2 - 32;
+ break;
+ default:
+ igt_assert(false);
+ }
+
+ return rect;
}
-static bool enable_features_for_test(const struct test_mode *t)
+static struct rect pat4_get_rect(struct fb_region *fb, int r)
{
- bool ret = false;
+ struct rect rect;
- if (t->feature == FEATURE_DEFAULT)
- return false;
+ igt_assert_eq(r, 0);
- if (t->feature & FEATURE_FBC)
- intel_fbc_enable(drm.fd);
- if (t->feature & FEATURE_PSR)
- ret = psr_enable(drm.fd, drm.debugfs, PSR_MODE_1);
- if (t->feature & FEATURE_DRRS)
- intel_drrs_enable(drm.fd, prim_mode_params.pipe);
+ rect.x = 0;
+ rect.y = 0;
+ rect.w = fb->w;
+ rect.h = fb->h;
+ rect.color = pick_color(fb->fb, COLOR_GREEN);
- return ret;
+ return rect;
}
-static void check_test_requirements(const struct test_mode *t)
+static void fb_dirty_ioctl(struct fb_region *fb, struct rect *rect)
{
- int ver;
+ int rc;
+ drmModeClip clip = {
+ .x1 = rect->x,
+ .x2 = rect->x + rect->w,
+ .y1 = rect->y,
+ .y2 = rect->y + rect->h,
+ };
- if (t->pipes == PIPE_DUAL)
- igt_require_f(scnd_mode_params.output,
- "Can't test dual pipes with the current outputs\n");
+ rc = drmModeDirtyFB(drm.fd, fb->fb->fb_id, &clip, 1);
- if (t->feature & FEATURE_FBC)
- igt_require_f(fbc.can_test,
- "Can't test FBC with this chipset\n");
+ igt_assert(rc == 0 || rc == -ENOSYS);
+}
- if (t->feature & FEATURE_PSR) {
- igt_require_f(psr.can_test,
- "Can't test PSR with the current outputs\n");
- }
+static void draw_rect(struct draw_pattern_info *pattern, struct fb_region *fb,
+ enum igt_draw_method method, int r)
+{
+ struct rect rect = pattern->get_rect(fb, r);
- if (t->feature & FEATURE_DRRS)
- igt_require_f(drrs.can_test,
- "Can't test DRRS with the current outputs\n");
+ igt_draw_rect_fb(drm.fd, drm.bops, 0, fb->fb, method,
+ fb->x + rect.x, fb->y + rect.y,
+ rect.w, rect.h, rect.color);
- /*
- * In kernel, When PSR is enabled, DRRS will be disabled. So If a test
- * case needs DRRS + PSR enabled, that will be skipped.
- */
- igt_require_f(!((t->feature & FEATURE_PSR) &&
- (t->feature & FEATURE_DRRS)),
- "Can't test PSR and DRRS together\n");
+ fb_dirty_ioctl(fb, &rect);
+}
+
+static void draw_rect_igt_fb(struct draw_pattern_info *pattern,
+ struct igt_fb *fb, enum igt_draw_method method,
+ int r)
+{
+ struct fb_region region = {
+ .fb = fb,
+ .x = 0,
+ .y = 0,
+ .w = fb->width,
+ .h = fb->height,
+ };
- if (opt.only_pipes != PIPE_COUNT)
- igt_require(t->pipes == opt.only_pipes);
+ draw_rect(pattern, ®ion, method, r);
+}
- /* Kernel disables fbc for display versions 12 and 13 if psr is enabled. */
- ver = intel_display_ver(intel_get_drm_devid(drm.fd));
- if (ver >= 12 && ver <= 13)
- igt_require_f(!((t->feature & FEATURE_PSR) &&
- (t->feature & FEATURE_FBC)),
- "Can't test PSR and FBC together\n");
+static void fill_fb_region(struct fb_region *region, enum color ecolor)
+{
+ uint32_t color = pick_color(region->fb, ecolor);
+ igt_draw_rect_fb(drm.fd, drm.bops, 0, region->fb, IGT_DRAW_BLT,
+ region->x, region->y, region->w, region->h,
+ color);
}
-static void set_crtc_fbs(const struct test_mode *t)
+static void _fb_dirty_ioctl(struct fb_region *region)
{
- struct screen_fbs *s = &fbs[t->format];
+ struct rect rect;
- create_fbs(t->format, t->tiling);
+ rect.x = region->x;
+ rect.y = region->y;
+ rect.w = region->w;
+ rect.h = region->h;
+ fb_dirty_ioctl(region, &rect);
+}
- switch (t->fbs) {
- case FBS_INDIVIDUAL:
- prim_mode_params.primary.fb = &s->prim_pri;
- scnd_mode_params.primary.fb = &s->scnd_pri;
- offscreen_fb.fb = &s->offscreen;
+static void unset_all_crtcs(void)
+{
+ igt_display_reset(&drm.display);
+ igt_display_commit(&drm.display);
+}
- prim_mode_params.primary.x = 0;
- scnd_mode_params.primary.x = 0;
- offscreen_fb.x = 0;
+static bool disable_features(const struct test_mode *t)
+{
+ if (t->feature == FEATURE_DEFAULT)
+ return false;
- prim_mode_params.primary.y = 0;
- scnd_mode_params.primary.y = 0;
- offscreen_fb.y = 0;
- break;
- case FBS_SHARED:
- /* Please see the comment at the top of create_shared_fb(). */
- prim_mode_params.primary.fb = &s->big;
- scnd_mode_params.primary.fb = &s->big;
- offscreen_fb.fb = &s->big;
+ intel_fbc_disable(drm.fd);
+ intel_drrs_disable(drm.fd, prim_mode_params.pipe);
- prim_mode_params.primary.x = opt.shared_fb_x_offset;
- scnd_mode_params.primary.x = opt.shared_fb_x_offset;
- offscreen_fb.x = opt.shared_fb_x_offset;
+ return psr.can_test ? psr_disable(drm.fd, drm.debugfs) : false;
+}
- prim_mode_params.primary.y = opt.shared_fb_y_offset;
- scnd_mode_params.primary.y = prim_mode_params.primary.y +
- prim_mode_params.primary.h;
- offscreen_fb.y = scnd_mode_params.primary.y + scnd_mode_params.primary.h;
- break;
- default:
- igt_assert(false);
- }
+static void *busy_thread_func(void *data)
+{
+ while (!busy_thread.stop)
+ igt_draw_rect(drm.fd, drm.bops, 0, busy_thread.handle,
+ busy_thread.size, busy_thread.stride,
+ busy_thread.tiling, IGT_DRAW_BLT, 0, 0,
+ busy_thread.width, busy_thread.height,
+ busy_thread.color, busy_thread.bpp);
- prim_mode_params.cursor.fb = &s->prim_cur;
- prim_mode_params.sprite.fb = &s->prim_spr;
- scnd_mode_params.cursor.fb = &s->scnd_cur;
- scnd_mode_params.sprite.fb = &s->scnd_spr;
+ pthread_exit(0);
}
-static void prepare_subtest_data(const struct test_mode *t,
- struct draw_pattern_info *pattern)
+static void start_busy_thread(struct igt_fb *fb)
{
- bool need_modeset;
+ int rc;
- check_test_requirements(t);
+ igt_assert(busy_thread.stop == true);
+ busy_thread.stop = false;
+ busy_thread.handle = fb->gem_handle;
+ busy_thread.size = fb->size;
+ busy_thread.stride = fb->strides[0];
+ busy_thread.width = fb->width;
+ busy_thread.height = fb->height;
+ busy_thread.color = pick_color(fb, COLOR_PRIM_BG);
+ busy_thread.bpp = igt_drm_format_to_bpp(fb->drm_format);
+ busy_thread.tiling = igt_fb_mod_to_tiling(fb->modifier);
- stop_busy_thread();
+ rc = pthread_create(&busy_thread.thread, NULL, busy_thread_func, NULL);
+ igt_assert_eq(rc, 0);
+}
- need_modeset = disable_features(t);
- set_crtc_fbs(t);
+static void stop_busy_thread(void)
+{
+ if (!busy_thread.stop) {
+ busy_thread.stop = true;
+ igt_assert(pthread_join(busy_thread.thread, NULL) == 0);
+ }
+}
- if (t->screen == SCREEN_OFFSCREEN)
- fill_fb_region(&offscreen_fb, COLOR_OFFSCREEN_BG);
+static void print_crc(const char *str, igt_crc_t *crc)
+{
+ char *pipe_str;
- igt_display_reset(&drm.display);
- if (need_modeset)
- igt_display_commit(&drm.display);
+ pipe_str = igt_crc_to_string(crc);
- init_blue_crc(t->format, t->tiling);
- if (pattern)
- init_crcs(t->format, t->tiling, pattern);
+ igt_debug("%s pipe:[%s]\n", str, pipe_str);
- need_modeset = enable_features_for_test(t);
- if (need_modeset)
- igt_display_commit(&drm.display);
+ free(pipe_str);
}
-static void prepare_subtest_screens(const struct test_mode *t)
+static void collect_crc(igt_crc_t *crc)
{
- if (t->pipes == PIPE_DUAL)
- enable_both_screens_and_wait(t);
- else
- enable_prim_screen_and_wait(t);
+ igt_pipe_crc_collect_crc(pipe_crc, crc);
+}
- if (t->screen == SCREEN_PRIM) {
- if (t->plane == PLANE_CUR)
- set_region_for_test(t, &prim_mode_params.cursor);
- if (t->plane == PLANE_SPR)
- set_region_for_test(t, &prim_mode_params.sprite);
- }
+static void init_blue_crc(enum pixel_format format, enum tiling_type tiling)
+{
+ struct igt_fb blue;
- if (t->pipes == PIPE_DUAL && t->screen == SCREEN_SCND) {
- if (t->plane == PLANE_CUR)
- set_region_for_test(t, &scnd_mode_params.cursor);
- if (t->plane == PLANE_SPR)
- set_region_for_test(t, &scnd_mode_params.sprite);
+ if (blue_crcs[format].initialized)
+ return;
+
+ create_fb(format, prim_mode_params.mode.hdisplay,
+ prim_mode_params.mode.vdisplay, tiling, PLANE_PRI,
+ &blue);
+
+ fill_fb(&blue, COLOR_PRIM_BG);
+
+ igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
+ igt_output_override_mode(prim_mode_params.output, &prim_mode_params.mode);
+ igt_plane_set_fb(prim_mode_params.primary.plane, &blue);
+ igt_display_commit(&drm.display);
+
+ if (!pipe_crc) {
+ pipe_crc = igt_pipe_crc_new(drm.fd, prim_mode_params.pipe,
+ IGT_PIPE_CRC_SOURCE_AUTO);
+ igt_assert(pipe_crc);
}
-}
-static void prepare_subtest(const struct test_mode *t,
- struct draw_pattern_info *pattern)
-{
- prepare_subtest_data(t, pattern);
- prepare_subtest_screens(t);
-}
+ collect_crc(&blue_crcs[format].crc);
-/**
- * SUBTEST: drrs-%dp-rte
- * Description: Sanity test to enable DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbt, drrs
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-rte
- * Description: Sanity test to enable FBC with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-rte
- * Description: Sanity test to enable PSR with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-rte
- * Description: Sanity test to enable FBC & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-rte
- * Description: Sanity test to enable FBC & PSR with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-rte
- * Description: Sanity test to enable PSR & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbt, drrs, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-rte
- * Description: Sanity test to enable FBC, PSR & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, drrs, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- */
+ print_crc("Blue CRC: ", &blue_crcs[format].crc);
-/*
- * rte - the basic sanity test
- *
- * METHOD
- * Just disable all screens, assert everything is disabled, then enable all
- * screens - including primary, cursor and sprite planes - and assert that
- * the tested feature is enabled.
- *
- * EXPECTED RESULTS
- * Blue screens and t->feature enabled.
- *
- * FAILURES
- * A failure here means that every other subtest will probably fail too. It
- * probably means that the Kernel is just not enabling the feature we want.
- */
-static void rte_subtest(const struct test_mode *t)
+ igt_display_reset(&drm.display);
+
+ igt_remove_fb(drm.fd, &blue);
+
+ blue_crcs[format].initialized = true;
+}
+
+static void init_crcs(enum pixel_format format, enum tiling_type tiling,
+ struct draw_pattern_info *pattern)
{
- prepare_subtest_data(t, NULL);
+ int r, r_;
+ struct igt_fb tmp_fbs[pattern->n_rects];
- unset_all_crtcs();
- do_assertions(ASSERT_FBC_DISABLED | ASSERT_PSR_DISABLED |
- DONT_ASSERT_CRC | ASSERT_DRRS_INACTIVE);
+ if (pattern->initialized[format])
+ return;
- if (t->pipes == PIPE_SINGLE)
- enable_prim_screen_and_wait(t);
- else
- enable_both_screens_and_wait(t);
+ pattern->crcs[format] = calloc(pattern->n_rects,
+ sizeof(*(pattern->crcs[format])));
- set_region_for_test(t, &prim_mode_params.cursor);
- set_region_for_test(t, &prim_mode_params.sprite);
+ for (r = 0; r < pattern->n_rects; r++)
+ create_fb(format, prim_mode_params.mode.hdisplay,
+ prim_mode_params.mode.vdisplay, tiling,
+ PLANE_PRI, &tmp_fbs[r]);
- if (t->pipes == PIPE_DUAL) {
- set_region_for_test(t, &scnd_mode_params.cursor);
- set_region_for_test(t, &scnd_mode_params.sprite);
+ for (r = 0; r < pattern->n_rects; r++)
+ fill_fb(&tmp_fbs[r], COLOR_PRIM_BG);
+
+ if (pattern->frames_stack) {
+ for (r = 0; r < pattern->n_rects; r++)
+ for (r_ = 0; r_ <= r; r_++)
+ draw_rect_igt_fb(pattern, &tmp_fbs[r],
+ igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
+ IGT_DRAW_PWRITE : IGT_DRAW_RENDER,
+ r_);
+ } else {
+ for (r = 0; r < pattern->n_rects; r++)
+ draw_rect_igt_fb(pattern, &tmp_fbs[r], igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
+ IGT_DRAW_PWRITE : IGT_DRAW_RENDER, r);
+ }
+
+ igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
+ igt_output_override_mode(prim_mode_params.output, &prim_mode_params.mode);
+ for (r = 0; r < pattern->n_rects; r++) {
+ igt_plane_set_fb(prim_mode_params.primary.plane, &tmp_fbs[r]);
+ igt_display_commit(&drm.display);
+
+ collect_crc(&pattern->crcs[format][r]);
+ }
+
+ for (r = 0; r < pattern->n_rects; r++) {
+ igt_debug("Rect %d CRC:", r);
+ print_crc("", &pattern->crcs[format][r]);
}
+
+ igt_display_reset(&drm.display);
+
+ for (r = 0; r < pattern->n_rects; r++)
+ igt_remove_fb(drm.fd, &tmp_fbs[r]);
+
+ pattern->initialized[format] = true;
}
-static void update_wanted_crc(const struct test_mode *t, igt_crc_t *crc)
+static void setup_drm(void)
{
- if (t->screen == SCREEN_PRIM)
- wanted_crc = crc;
+ drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
+ drm.debugfs = igt_debugfs_dir(drm.fd);
+
+ kmstest_set_vt_graphics_mode();
+ igt_display_require(&drm.display, drm.fd);
+
+ drm.bops = buf_ops_create(drm.fd);
}
-static bool op_disables_psr(const struct test_mode *t,
- enum igt_draw_method method)
+static void teardown_drm(void)
{
- if (method != IGT_DRAW_MMAP_GTT)
- return false;
- if (t->screen == SCREEN_PRIM)
- return true;
- /* On FBS_SHARED, even if the target is not the PSR screen
- * (SCREEN_PRIM), all primary planes share the same frontbuffer, so a
- * write to the second screen primary plane - or offscreen plane - will
- * touch the framebuffer that's also used by the primary screen. */
- if (t->fbs == FBS_SHARED && t->plane == PLANE_PRI)
- return true;
+ buf_ops_destroy(drm.bops);
+ igt_display_fini(&drm.display);
+ drm_close_driver(drm.fd);
+}
- return false;
+static void setup_modeset(void)
+{
+ igt_require(init_modeset_cached_params());
+ offscreen_fb.fb = NULL;
+ offscreen_fb.w = 1024;
+ offscreen_fb.h = 1024;
+ create_fbs(FORMAT_DEFAULT, opt.tiling);
}
-/**
- * SUBTEST: drrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @indfb: Individual fb
- * @shrfb: Shared fb
- *
- * arg[2]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+static void teardown_modeset(void)
+{
+ enum pixel_format f;
-/**
- * SUBTEST: drrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @indfb: Individual fb
- * @shrfb: Shared fb
- *
- * arg[2]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ for (f = 0; f < FORMAT_COUNT; f++)
+ destroy_fbs(f);
+}
+
+static void setup_crcs(void)
+{
+ enum pixel_format f;
+
+ for (f = 0; f < FORMAT_COUNT; f++)
+ blue_crcs[f].initialized = false;
+
+ pattern1.frames_stack = true;
+ pattern1.n_rects = 4;
+ pattern1.get_rect = pat1_get_rect;
+ for (f = 0; f < FORMAT_COUNT; f++) {
+ pattern1.initialized[f] = false;
+ pattern1.crcs[f] = NULL;
+ }
+
+ pattern2.frames_stack = true;
+ pattern2.n_rects = 4;
+ pattern2.get_rect = pat2_get_rect;
+ for (f = 0; f < FORMAT_COUNT; f++) {
+ pattern2.initialized[f] = false;
+ pattern2.crcs[f] = NULL;
+ }
+
+ pattern3.frames_stack = false;
+ pattern3.n_rects = 5;
+ pattern3.get_rect = pat3_get_rect;
+ for (f = 0; f < FORMAT_COUNT; f++) {
+ pattern3.initialized[f] = false;
+ pattern3.crcs[f] = NULL;
+ }
-/**
- * SUBTEST: drrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @cur: Cursor plane
- * @pri: Primary plane
- * @spr: Sprite plane
- *
- * arg[3]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ pattern4.frames_stack = false;
+ pattern4.n_rects = 1;
+ pattern4.get_rect = pat4_get_rect;
+ for (f = 0; f < FORMAT_COUNT; f++) {
+ pattern4.initialized[f] = false;
+ pattern4.crcs[f] = NULL;
+ }
+}
-/**
- * SUBTEST: drrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @cur: Cursor plane
- * @pri: Primary plane
- * @spr: Sprite plane
- *
- * arg[3]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+static void teardown_crcs(void)
+{
+ enum pixel_format f;
-/**
- * SUBTEST: drrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+ for (f = 0; f < FORMAT_COUNT; f++) {
+ if (pattern1.crcs[f])
+ free(pattern1.crcs[f]);
+ if (pattern2.crcs[f])
+ free(pattern2.crcs[f]);
+ if (pattern3.crcs[f])
+ free(pattern3.crcs[f]);
+ if (pattern4.crcs[f])
+ free(pattern4.crcs[f]);
+ }
+
+ igt_pipe_crc_free(pipe_crc);
+}
+
+static void setup_fbc(void)
+{
+ if (!intel_fbc_supported_on_chipset(drm.fd, prim_mode_params.pipe)) {
+ igt_info("Can't test FBC: not supported on this chipset\n");
+ return;
+ }
+
+ fbc.can_test = true;
+
+ fbc_setup_last_action();
+}
+
+static void teardown_fbc(void)
+{
+}
+
+static void setup_psr(void)
+{
+ if (prim_mode_params.output->config.connector->connector_type !=
+ DRM_MODE_CONNECTOR_eDP) {
+ igt_info("Can't test PSR: no usable eDP screen.\n");
+ return;
+ }
+
+ if (!psr_sink_support(drm.fd, drm.debugfs, PSR_MODE_1)) {
+ igt_info("Can't test PSR: not supported by sink.\n");
+ return;
+ }
+ psr.can_test = true;
+}
+
+static void teardown_psr(void)
+{
+}
+
+static void setup_drrs(void)
+{
+ if (!intel_output_has_drrs(drm.fd, prim_mode_params.output)) {
+ igt_info("Can't test DRRS: no usable screen.\n");
+ return;
+ }
+
+ if (!intel_is_drrs_supported(drm.fd, prim_mode_params.pipe)) {
+ igt_info("Can't test DRRS: Not supported.\n");
+ return;
+ }
-/**
- * SUBTEST: drrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ drrs.can_test = true;
+}
-/**
- * SUBTEST: drrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @cur: Cursor plane
- * @pri: Primary plane
- * @spr: Sprite plane
- *
- * arg[2]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+static void setup_environment(void)
+{
+ setup_drm();
+ setup_modeset();
-/**
- * SUBTEST: drrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @cur: Cursor plane
- * @pri: Primary plane
- * @spr: Sprite plane
- *
- * arg[2]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ setup_fbc();
+ setup_psr();
+ setup_drrs();
-/**
- * SUBTEST: drrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+ setup_crcs();
+}
+
+static void teardown_environment(void)
+{
+ stop_busy_thread();
-/**
- * SUBTEST: drrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
- * Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ teardown_crcs();
+ teardown_psr();
+ teardown_fbc();
+ teardown_modeset();
+ teardown_drm();
+}
-/*
- * draw - draw a set of rectangles on the screen using the provided method
- *
- * METHOD
- * Just set the screens as appropriate and then start drawing a series of
- * rectangles on the target screen. The important guy here is the drawing
- * method used.
- *
- * EXPECTED RESULTS
- * The feature either stays enabled or gets reenabled after the oprations. You
- * will also see the rectangles on the target screen.
- *
- * FAILURES
- * A failure here indicates a problem somewhere between the Kernel's
- * frontbuffer tracking infrastructure or the feature itself. You need to pay
- * attention to which drawing method is being used.
- */
-static void draw_subtest(const struct test_mode *t)
+static void wait_user(int step, const char *msg)
{
- int r;
- int assertions = 0;
- struct draw_pattern_info *pattern;
- struct modeset_params *params = pick_params(t);
- struct fb_region *target;
+ if (opt.step < step)
+ return;
+
+ igt_info("%s Press enter...\n", msg);
+ while (getchar() != '\n')
+ ;
+}
+static struct modeset_params *pick_params(const struct test_mode *t)
+{
switch (t->screen) {
case SCREEN_PRIM:
- if (t->method != IGT_DRAW_MMAP_GTT && t->plane == PLANE_PRI)
- assertions |= ASSERT_LAST_ACTION_CHANGED;
- else
- assertions |= ASSERT_NO_ACTION_CHANGE;
- break;
+ return &prim_mode_params;
case SCREEN_SCND:
+ return &scnd_mode_params;
case SCREEN_OFFSCREEN:
- assertions |= ASSERT_NO_ACTION_CHANGE;
- break;
+ return NULL;
default:
igt_assert(false);
}
+}
+
+static struct fb_region *pick_target(const struct test_mode *t,
+ struct modeset_params *params)
+{
+ if (!params)
+ return &offscreen_fb;
switch (t->plane) {
case PLANE_PRI:
- pattern = &pattern1;
- break;
+ return ¶ms->primary;
case PLANE_CUR:
+ return ¶ms->cursor;
case PLANE_SPR:
- pattern = &pattern2;
- break;
+ return ¶ms->sprite;
default:
igt_assert(false);
}
-
- if (op_disables_psr(t, t->method))
- assertions |= ASSERT_PSR_DISABLED;
-
- /*
- * On FBS_INDIVIDUAL, write to offscreen plane will not touch the
- * current frambuffer. Hence assert for DRRS_LOW.
- */
- if ((t->fbs == FBS_INDIVIDUAL) && (t->screen == SCREEN_OFFSCREEN))
- assertions |= ASSERT_DRRS_LOW;
-
- prepare_subtest(t, pattern);
- target = pick_target(t, params);
-
- for (r = 0; r < pattern->n_rects; r++) {
- igt_debug("Drawing rect %d\n", r);
- draw_rect(pattern, target, t->method, r);
- update_wanted_crc(t, &pattern->crcs[t->format][r]);
- do_assertions(assertions);
- }
}
-/**
- * SUBTEST: drrs-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-pri-indfb-multidraw
- * Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- */
-
-/*
- * multidraw - draw a set of rectangles on the screen using alternated drawing
- * methods
- *
- * METHOD
- * This is just like the draw subtest, but now we keep alternating between two
- * drawing methods. Each time we run multidraw_subtest we will test all the
- * possible pairs of drawing methods.
- *
- * EXPECTED RESULTS
- * The same as the draw subtest.
- *
- * FAILURES
- * If you get a failure here, first you need to check whether you also get
- * failures on the individual draw subtests. If yes, then go fix every single
- * draw subtest first. If all the draw subtests pass but this one fails, then
- * you have to study how one drawing method is stopping the other from
- * properly working.
- */
-static void multidraw_subtest(const struct test_mode *t)
+static void do_flush(const struct test_mode *t)
{
- int r;
- int assertions = 0;
- struct draw_pattern_info *pattern;
struct modeset_params *params = pick_params(t);
- struct fb_region *target;
- enum igt_draw_method m1, m2, used_method;
- bool wc_used = false;
+ struct fb_region *target = pick_target(t, params);
- switch (t->plane) {
- case PLANE_PRI:
- pattern = &pattern1;
- break;
- case PLANE_CUR:
- case PLANE_SPR:
- pattern = &pattern2;
- break;
- default:
- igt_assert(false);
- }
+ if (is_i915_device(drm.fd))
+ gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);
+}
- prepare_subtest(t, pattern);
- target = pick_target(t, params);
+#define DONT_ASSERT_CRC (1 << 0)
+#define DONT_ASSERT_FEATURE_STATUS (1 << 1)
+#define DONT_ASSERT_FBC_STATUS (1 << 12)
- for (m1 = 0; m1 < IGT_DRAW_METHOD_COUNT; m1++) {
- for (m2 = m1 + 1; m2 < IGT_DRAW_METHOD_COUNT; m2++) {
+#define FBC_ASSERT_FLAGS (0xF << 2)
+#define ASSERT_FBC_ENABLED (1 << 2)
+#define ASSERT_FBC_DISABLED (1 << 3)
+#define ASSERT_LAST_ACTION_CHANGED (1 << 4)
+#define ASSERT_NO_ACTION_CHANGE (1 << 5)
+
+#define PSR_ASSERT_FLAGS (3 << 6)
+#define ASSERT_PSR_ENABLED (1 << 6)
+#define ASSERT_PSR_DISABLED (1 << 7)
+
+#define DRRS_ASSERT_FLAGS (7 << 8)
+#define ASSERT_DRRS_HIGH (1 << 8)
+#define ASSERT_DRRS_LOW (1 << 9)
+#define ASSERT_DRRS_INACTIVE (1 << 10)
- igt_debug("Methods %s and %s\n",
- igt_draw_get_method_name(m1),
- igt_draw_get_method_name(m2));
+#define ASSERT_NO_IDLE_GPU (1 << 11)
- if (!igt_draw_supports_method(drm.fd, m1) ||
- !igt_draw_supports_method(drm.fd, m2))
- continue;
+static int adjust_assertion_flags(const struct test_mode *t, int flags)
+{
+ if (!(flags & DONT_ASSERT_FEATURE_STATUS)) {
+ if (!(flags & ASSERT_FBC_DISABLED))
+ flags |= ASSERT_FBC_ENABLED;
+ if (!(flags & ASSERT_PSR_DISABLED))
+ flags |= ASSERT_PSR_ENABLED;
+ if (!((flags & ASSERT_DRRS_LOW) ||
+ (flags & ASSERT_DRRS_INACTIVE)))
+ flags |= ASSERT_DRRS_HIGH;
+ }
- for (r = 0; r < pattern->n_rects; r++) {
- used_method = (r % 2 == 0) ? m1 : m2;
+ if ((t->feature & FEATURE_FBC) == 0 || (flags & DONT_ASSERT_FBC_STATUS))
+ flags &= ~FBC_ASSERT_FLAGS;
+ if ((t->feature & FEATURE_PSR) == 0)
+ flags &= ~PSR_ASSERT_FLAGS;
+ if ((t->feature & FEATURE_DRRS) == 0)
+ flags &= ~DRRS_ASSERT_FLAGS;
- igt_debug("Used method %s\n",
- igt_draw_get_method_name(used_method));
+ return flags;
+}
- draw_rect(pattern, target, used_method, r);
+static void do_crc_assertions(int flags)
+{
+ igt_crc_t crc;
- if (used_method == IGT_DRAW_MMAP_WC ||
- used_method == IGT_DRAW_MMAP_GTT)
- wc_used = true;
+ if (!opt.check_crc || (flags & DONT_ASSERT_CRC))
+ return;
- update_wanted_crc(t,
- &pattern->crcs[t->format][r]);
+ collect_crc(&crc);
+ print_crc("Calculated CRC:", &crc);
- assertions = used_method != IGT_DRAW_MMAP_GTT ?
- ASSERT_LAST_ACTION_CHANGED :
- ASSERT_NO_ACTION_CHANGE;
- if (op_disables_psr(t, used_method) &&
- !wc_used)
- assertions |= ASSERT_PSR_DISABLED;
+ igt_assert(wanted_crc);
+ igt_assert_crc_equal(&crc, wanted_crc);
+}
- do_assertions(assertions);
- }
+static void do_status_assertions(int flags)
+{
+ if (!opt.check_status) {
+ /* Make sure we settle before continuing. */
+ sleep(1);
+ return;
+ }
- fill_fb_region(target, COLOR_PRIM_BG);
- _fb_dirty_ioctl(target);
+ if (flags & ASSERT_DRRS_HIGH) {
+ if (!is_drrs_high()) {
+ drrs_print_status();
+ igt_assert_f(false, "DRRS HIGH\n");
+ }
+ } else if (flags & ASSERT_DRRS_LOW) {
+ if (!drrs_wait_until_rr_switch_to_low()) {
+ drrs_print_status();
+ igt_assert_f(false, "DRRS LOW\n");
+ }
+ } else if (flags & ASSERT_DRRS_INACTIVE) {
+ if (!intel_is_drrs_inactive(drm.fd, prim_mode_params.pipe)) {
+ drrs_print_status();
+ igt_assert_f(false, "DRRS INACTIVE\n");
+ }
+ }
- update_wanted_crc(t, &blue_crcs[t->format].crc);
- do_assertions(ASSERT_NO_ACTION_CHANGE);
+ if (flags & ASSERT_FBC_ENABLED) {
+ igt_require(!fbc_not_enough_stolen());
+ igt_require(!fbc_stride_not_supported());
+ igt_require(!fbc_mode_too_large());
+ if (!intel_fbc_wait_until_enabled(drm.fd, prim_mode_params.pipe)) {
+ igt_assert_f(intel_fbc_is_enabled(drm.fd,
+ prim_mode_params.pipe,
+ IGT_LOG_WARN),
+ "FBC disabled\n");
}
+
+ if (opt.fbc_check_compression)
+ igt_assert(fbc_wait_for_compression());
+ } else if (flags & ASSERT_FBC_DISABLED) {
+ igt_assert(!intel_fbc_wait_until_enabled(drm.fd,
+ prim_mode_params.pipe));
}
+
+ if (flags & ASSERT_PSR_ENABLED)
+ igt_assert_f(psr_wait_entry(drm.debugfs, PSR_MODE_1),
+ "PSR still disabled\n");
+ else if (flags & ASSERT_PSR_DISABLED)
+ igt_assert_f(psr_wait_update(drm.debugfs, PSR_MODE_1),
+ "PSR still enabled\n");
}
-static bool format_is_valid(int feature_flags,
- enum pixel_format format)
+static void __do_assertions(const struct test_mode *t, int flags,
+ int line)
{
- int devid = intel_get_drm_devid(drm.fd);
+ flags = adjust_assertion_flags(t, flags);
- if (!(feature_flags & FEATURE_FBC))
- return true;
+ /* Make sure any submitted rendering is now idle. */
+ if (!(flags & ASSERT_NO_IDLE_GPU))
+ gem_quiescent_gpu(drm.fd);
- switch (format) {
- case FORMAT_RGB888:
- return true;
- case FORMAT_RGB565:
- if (IS_GEN2(devid) || IS_G4X(devid))
- return false;
- return true;
- case FORMAT_RGB101010:
- return false;
- default:
- igt_assert(false);
+ igt_debug("checking asserts in line %i\n", line);
+
+ wait_user(2, "Paused before assertions.");
+
+ /* Check the CRC to make sure the drawing operations work
+ * immediately, independently of the features being enabled. */
+ do_crc_assertions(flags);
+
+ /* Now we can flush things to make the test faster. */
+ do_flush(t);
+
+ do_status_assertions(flags);
+
+ /* Check CRC again to make sure the compressed screen is ok,
+ * except if we're not drawing on the primary screen. On this
+ * case, the first check should be enough and a new CRC check
+ * would only delay the test suite while adding no value to the
+ * test suite. */
+ if (t->screen == SCREEN_PRIM)
+ do_crc_assertions(flags);
+
+ if (fbc.supports_last_action && opt.fbc_check_last_action) {
+ if (flags & ASSERT_LAST_ACTION_CHANGED)
+ igt_assert(fbc_last_action_changed());
+ else if (flags & ASSERT_NO_ACTION_CHANGE)
+ igt_assert(!fbc_last_action_changed());
}
-}
-/*
- * badformat - test pixel formats that are not supported by at least one feature
- *
- * METHOD
- * We just do a modeset on a buffer with the given pixel format and check the
- * status of the relevant features.
- *
- * EXPECTED RESULTS
- * No assertion failures :)
- *
- * FAILURES
- * If you get a feature enabled/disabled assertion failure, then you should
- * probably check the Kernel code for the feature that checks the pixel
- * formats. If you get a CRC assertion failure, then you should use the
- * appropriate command line arguments that will allow you to look at the
- * screen, then judge what to do based on what you see.
- */
-static void badformat_subtest(const struct test_mode *t)
-{
- bool fbc_valid = format_is_valid(FEATURE_FBC, t->format);
- bool psr_valid = format_is_valid(FEATURE_PSR, t->format);
- int assertions = ASSERT_NO_ACTION_CHANGE;
+ wait_user(1, "Paused after assertions.");
+}
- prepare_subtest_data(t, NULL);
+#define do_assertions(__flags) __do_assertions(t, (__flags), __LINE__)
+static void enable_prim_screen_and_wait(const struct test_mode *t)
+{
fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
set_mode_for_params(&prim_mode_params);
wanted_crc = &blue_crcs[t->format].crc;
+ fbc_update_last_action();
- if (!fbc_valid)
- assertions |= ASSERT_FBC_DISABLED;
- if (!psr_valid)
- assertions |= ASSERT_PSR_DISABLED;
- do_assertions(assertions);
+ do_assertions(ASSERT_NO_ACTION_CHANGE);
}
-/**
- * SUBTEST: drrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @rgb101010: FORMAT_RGB101010
- * @rgb565: FORMAT_RGB565
- *
- * arg[2]:
- *
- * @blt: Blitter
- * @mmap-wc: MMAP-WC
- * @render: Render
- */
+static void update_modeset_cached_params(void)
+{
+ bool found = false;
+
+ igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
+ igt_output_set_pipe(scnd_mode_params.output, scnd_mode_params.pipe);
+
+ found = igt_override_all_active_output_modes_to_fit_bw(&drm.display);
+ igt_require_f(found, "No valid mode combo found.\n");
-/**
- * SUBTEST: drrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%s-draw-%s
- * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @rgb101010: FORMAT_RGB101010
- * @rgb565: FORMAT_RGB565
- *
- * arg[2]:
- *
- * @mmap-cpu: MMAP-CPU
- * @mmap-gtt: MMAP-GTT
- * @pwrite: PWRITE
- */
+ prim_mode_params.mode = *igt_output_get_mode(prim_mode_params.output);
+ prim_mode_params.primary.w = prim_mode_params.mode.hdisplay;
+ prim_mode_params.primary.h = prim_mode_params.mode.vdisplay;
-/*
- * format_draw - test pixel formats that are not FORMAT_DEFAULT
- *
- * METHOD
- * The real subtest to be executed depends on whether the pixel format is
- * supported by the features being tested or not. Check the documentation of
- * each subtest.
- *
- * EXPECTED RESULTS
- * See the documentation for each subtest.
- *
- * FAILURES
- * See the documentation for each subtest.
- */
-static void format_draw_subtest(const struct test_mode *t)
+ scnd_mode_params.mode = *igt_output_get_mode(scnd_mode_params.output);
+ scnd_mode_params.primary.w = scnd_mode_params.mode.hdisplay;
+ scnd_mode_params.primary.h = scnd_mode_params.mode.vdisplay;
+
+ fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
+ fill_fb_region(&scnd_mode_params.primary, COLOR_SCND_BG);
+
+ __set_mode_for_params(&prim_mode_params);
+ __set_mode_for_params(&scnd_mode_params);
+}
+
+static void enable_both_screens_and_wait(const struct test_mode *t)
{
- if (format_is_valid(t->feature, t->format))
- draw_subtest(t);
+ int ret;
+
+ fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
+ fill_fb_region(&scnd_mode_params.primary, COLOR_SCND_BG);
+
+ __set_mode_for_params(&prim_mode_params);
+ __set_mode_for_params(&scnd_mode_params);
+
+ if (drm.display.is_atomic)
+ ret = igt_display_try_commit_atomic(&drm.display,
+ DRM_MODE_ATOMIC_TEST_ONLY |
+ DRM_MODE_ATOMIC_ALLOW_MODESET,
+ NULL);
else
- badformat_subtest(t);
+ ret = igt_display_try_commit2(&drm.display, COMMIT_LEGACY);
+
+ if (ret)
+ update_modeset_cached_params();
+
+ igt_display_commit2(&drm.display, drm.display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
+
+ wanted_crc = &blue_crcs[t->format].crc;
+ fbc_update_last_action();
+
+ do_assertions(ASSERT_NO_ACTION_CHANGE);
}
-static bool tiling_is_valid(int feature_flags, enum tiling_type tiling)
+static void set_region_for_test(const struct test_mode *t,
+ struct fb_region *reg)
{
- int devid = intel_get_drm_devid(drm.fd);
+ fill_fb_region(reg, COLOR_PRIM_BG);
- if (!(feature_flags & FEATURE_FBC))
- return true;
+ igt_plane_set_fb(reg->plane, reg->fb);
+ igt_plane_set_position(reg->plane, 0, 0);
+ igt_plane_set_size(reg->plane, reg->w, reg->h);
+ igt_fb_set_size(reg->fb, reg->plane, reg->w, reg->h);
- switch (tiling) {
- case TILING_LINEAR:
- return AT_LEAST_GEN(devid, 9);
- case TILING_X:
- case TILING_Y:
- return true;
- case TILING_4:
- return AT_LEAST_GEN(devid, 12);
- default:
- igt_assert(false);
- return false;
- }
+ igt_display_commit(&drm.display);
+ do_assertions(ASSERT_NO_ACTION_CHANGE);
}
-/**
- * SUBTEST: drrs-slowdraw
- * Description: Sleep a little bit between drawing operations with DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-slowdraw
- * Description: Sleep a little bit between drawing operations with PSR
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-slowdraw
- * Description: Sleep a little bit between drawing operations with FBC & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-slowdraw
- * Description: Sleep a little bit between drawing operations with FBC & PSR
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-slowdraw
- * Description: Sleep a little bit between drawing operations with PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-slowdraw
- * Description: Sleep a little bit between drawing operations with FBC, PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- */
+static bool enable_features_for_test(const struct test_mode *t)
+{
+ bool ret = false;
-/*
- * slow_draw - sleep a little bit between drawing operations
- *
- * METHOD
- * This test is basically the same as the draw subtest, except that we sleep a
- * little bit after each drawing operation. The goal is to detect problems
- * that can happen in case a drawing operation is done while the machine is in
- * some deep sleep states.
- *
- * EXPECTED RESULTS
- * The pattern appears on the screen as expected.
- *
- * FAILURES
- * I've seen this happen in a SKL machine and still haven't investigated it.
- * My guess would be that preventing deep sleep states fixes the problem.
- */
-static void slow_draw_subtest(const struct test_mode *t)
+ if (t->feature == FEATURE_DEFAULT)
+ return false;
+
+ if (t->feature & FEATURE_FBC)
+ intel_fbc_enable(drm.fd);
+ if (t->feature & FEATURE_PSR)
+ ret = psr_enable(drm.fd, drm.debugfs, PSR_MODE_1);
+ if (t->feature & FEATURE_DRRS)
+ intel_drrs_enable(drm.fd, prim_mode_params.pipe);
+
+ return ret;
+}
+
+static void check_test_requirements(const struct test_mode *t)
{
- int r;
- struct draw_pattern_info *pattern = &pattern1;
- struct modeset_params *params = pick_params(t);
- struct fb_region *target;
+ int ver;
- prepare_subtest(t, pattern);
- sleep(2);
- target = pick_target(t, params);
+ if (t->pipes == PIPE_DUAL)
+ igt_require_f(scnd_mode_params.output,
+ "Can't test dual pipes with the current outputs\n");
- for (r = 0; r < pattern->n_rects; r++) {
- sleep(2);
- draw_rect(pattern, target, t->method, r);
- sleep(2);
+ if (t->feature & FEATURE_FBC)
+ igt_require_f(fbc.can_test,
+ "Can't test FBC with this chipset\n");
+
+ if (t->feature & FEATURE_PSR) {
+ igt_require_f(psr.can_test,
+ "Can't test PSR with the current outputs\n");
+ }
+
+ if (t->feature & FEATURE_DRRS)
+ igt_require_f(drrs.can_test,
+ "Can't test DRRS with the current outputs\n");
+
+ /*
+ * In kernel, When PSR is enabled, DRRS will be disabled. So If a test
+ * case needs DRRS + PSR enabled, that will be skipped.
+ */
+ igt_require_f(!((t->feature & FEATURE_PSR) &&
+ (t->feature & FEATURE_DRRS)),
+ "Can't test PSR and DRRS together\n");
- update_wanted_crc(t, &pattern->crcs[t->format][r]);
+ if (opt.only_pipes != PIPE_COUNT)
+ igt_require(t->pipes == opt.only_pipes);
- if (t->feature & FEATURE_DRRS)
- do_assertions(ASSERT_DRRS_LOW);
- else
- do_assertions(0);
- }
-}
+ /* Kernel disables fbc for display versions 12 and 13 if psr is enabled. */
+ ver = intel_display_ver(intel_get_drm_devid(drm.fd));
+ if (ver >= 12 && ver <= 13)
+ igt_require_f(!((t->feature & FEATURE_PSR) &&
+ (t->feature & FEATURE_FBC)),
+ "Can't test PSR and FBC together\n");
-static void flip_handler(int fd, unsigned int sequence, unsigned int tv_sec,
- unsigned int tv_usec, void *data)
-{
- igt_debug("Flip event received.\n");
}
-static void wait_flip_event(void)
+static void set_crtc_fbs(const struct test_mode *t)
{
- int rc;
- drmEventContext evctx;
- struct pollfd pfd;
+ struct screen_fbs *s = &fbs[t->format];
- evctx.version = 2;
- evctx.vblank_handler = NULL;
- evctx.page_flip_handler = flip_handler;
+ create_fbs(t->format, t->tiling);
- pfd.fd = drm.fd;
- pfd.events = POLLIN;
- pfd.revents = 0;
+ switch (t->fbs) {
+ case FBS_INDIVIDUAL:
+ prim_mode_params.primary.fb = &s->prim_pri;
+ scnd_mode_params.primary.fb = &s->scnd_pri;
+ offscreen_fb.fb = &s->offscreen;
- rc = poll(&pfd, 1, TIME);
- switch (rc) {
- case 0:
- igt_assert_f(false, "Poll timeout\n");
+ prim_mode_params.primary.x = 0;
+ scnd_mode_params.primary.x = 0;
+ offscreen_fb.x = 0;
+
+ prim_mode_params.primary.y = 0;
+ scnd_mode_params.primary.y = 0;
+ offscreen_fb.y = 0;
break;
- case 1:
- rc = drmHandleEvent(drm.fd, &evctx);
- igt_assert_eq(rc, 0);
+ case FBS_SHARED:
+ /* Please see the comment at the top of create_shared_fb(). */
+ prim_mode_params.primary.fb = &s->big;
+ scnd_mode_params.primary.fb = &s->big;
+ offscreen_fb.fb = &s->big;
+
+ prim_mode_params.primary.x = opt.shared_fb_x_offset;
+ scnd_mode_params.primary.x = opt.shared_fb_x_offset;
+ offscreen_fb.x = opt.shared_fb_x_offset;
+
+ prim_mode_params.primary.y = opt.shared_fb_y_offset;
+ scnd_mode_params.primary.y = prim_mode_params.primary.y +
+ prim_mode_params.primary.h;
+ offscreen_fb.y = scnd_mode_params.primary.y + scnd_mode_params.primary.h;
break;
default:
- igt_assert_f(false, "Unexpected poll rc %d\n", rc);
- break;
+ igt_assert(false);
}
+
+ prim_mode_params.cursor.fb = &s->prim_cur;
+ prim_mode_params.sprite.fb = &s->prim_spr;
+ scnd_mode_params.cursor.fb = &s->scnd_cur;
+ scnd_mode_params.sprite.fb = &s->scnd_spr;
}
-static void set_prim_plane_for_params(struct modeset_params *params)
+static void prepare_subtest_data(const struct test_mode *t,
+ struct draw_pattern_info *pattern)
{
- __set_prim_plane_for_params(params);
- igt_display_commit2(&drm.display, COMMIT_UNIVERSAL);
+ bool need_modeset;
+
+ check_test_requirements(t);
+
+ stop_busy_thread();
+
+ need_modeset = disable_features(t);
+ set_crtc_fbs(t);
+
+ if (t->screen == SCREEN_OFFSCREEN)
+ fill_fb_region(&offscreen_fb, COLOR_OFFSCREEN_BG);
+
+ igt_display_reset(&drm.display);
+ if (need_modeset)
+ igt_display_commit(&drm.display);
+
+ init_blue_crc(t->format, t->tiling);
+ if (pattern)
+ init_crcs(t->format, t->tiling, pattern);
+
+ need_modeset = enable_features_for_test(t);
+ if (need_modeset)
+ igt_display_commit(&drm.display);
}
-static void page_flip_for_params(struct modeset_params *params,
- enum flip_type type)
+static void prepare_subtest_screens(const struct test_mode *t)
{
- int rc;
+ if (t->pipes == PIPE_DUAL)
+ enable_both_screens_and_wait(t);
+ else
+ enable_prim_screen_and_wait(t);
- switch (type) {
- case FLIP_PAGEFLIP:
- rc = drmModePageFlip(drm.fd, drm.display.pipes[params->pipe].crtc_id,
- params->primary.fb->fb_id,
- DRM_MODE_PAGE_FLIP_EVENT, NULL);
- igt_assert_eq(rc, 0);
- wait_flip_event();
- break;
- case FLIP_MODESET:
- set_mode_for_params(params);
- break;
- case FLIP_PLANES:
- set_prim_plane_for_params(params);
- break;
- default:
- igt_assert(false);
+ if (t->screen == SCREEN_PRIM) {
+ if (t->plane == PLANE_CUR)
+ set_region_for_test(t, &prim_mode_params.cursor);
+ if (t->plane == PLANE_SPR)
+ set_region_for_test(t, &prim_mode_params.sprite);
}
-}
-/**
- * SUBTEST: drrs-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @indfb: Individual fb
- * @shrfb: Shared fb
- *
- * arg[3]:
- *
- * @ms: Modeset
- * @pg: Page flip
- * @pl: Plane change
- */
+ if (t->pipes == PIPE_DUAL && t->screen == SCREEN_SCND) {
+ if (t->plane == PLANE_CUR)
+ set_region_for_test(t, &scnd_mode_params.cursor);
+ if (t->plane == PLANE_SPR)
+ set_region_for_test(t, &scnd_mode_params.sprite);
+ }
+}
-/**
- * SUBTEST: drrs-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-%sflip-blt
- * Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
+static void prepare_subtest(const struct test_mode *t,
+ struct draw_pattern_info *pattern)
+{
+ prepare_subtest_data(t, pattern);
+ prepare_subtest_screens(t);
+}
+
+/*
+ * rte - the basic sanity test
*
- * @indfb: Individual fb
- * @shrfb: Shared fb
+ * METHOD
+ * Just disable all screens, assert everything is disabled, then enable all
+ * screens - including primary, cursor and sprite planes - and assert that
+ * the tested feature is enabled.
*
- * arg[2]:
+ * EXPECTED RESULTS
+ * Blue screens and t->feature enabled.
*
- * @ms: Modeset
- * @pg: Page flip
- * @pl: Plane change
+ * FAILURES
+ * A failure here means that every other subtest will probably fail too. It
+ * probably means that the Kernel is just not enabling the feature we want.
*/
+static void rte_subtest(const struct test_mode *t)
+{
+ prepare_subtest_data(t, NULL);
+
+ unset_all_crtcs();
+ do_assertions(ASSERT_FBC_DISABLED | ASSERT_PSR_DISABLED |
+ DONT_ASSERT_CRC | ASSERT_DRRS_INACTIVE);
+
+ if (t->pipes == PIPE_SINGLE)
+ enable_prim_screen_and_wait(t);
+ else
+ enable_both_screens_and_wait(t);
+
+ set_region_for_test(t, &prim_mode_params.cursor);
+ set_region_for_test(t, &prim_mode_params.sprite);
+
+ if (t->pipes == PIPE_DUAL) {
+ set_region_for_test(t, &scnd_mode_params.cursor);
+ set_region_for_test(t, &scnd_mode_params.sprite);
+ }
+}
+
+static void update_wanted_crc(const struct test_mode *t, igt_crc_t *crc)
+{
+ if (t->screen == SCREEN_PRIM)
+ wanted_crc = crc;
+}
+
+static bool op_disables_psr(const struct test_mode *t,
+ enum igt_draw_method method)
+{
+ if (method != IGT_DRAW_MMAP_GTT)
+ return false;
+ if (t->screen == SCREEN_PRIM)
+ return true;
+ /* On FBS_SHARED, even if the target is not the PSR screen
+ * (SCREEN_PRIM), all primary planes share the same frontbuffer, so a
+ * write to the second screen primary plane - or offscreen plane - will
+ * touch the framebuffer that's also used by the primary screen. */
+ if (t->fbs == FBS_SHARED && t->plane == PLANE_PRI)
+ return true;
+
+ return false;
+}
/*
- * flip - just exercise page flips with the patterns we have
+ * draw - draw a set of rectangles on the screen using the provided method
*
* METHOD
- * We draw the pattern on a backbuffer using the provided method, then we
- * flip, making this the frontbuffer. We can flip both using the dedicated
- * pageflip IOCTL or the modeset IOCTL.
+ * Just set the screens as appropriate and then start drawing a series of
+ * rectangles on the target screen. The important guy here is the drawing
+ * method used.
*
* EXPECTED RESULTS
- * Everything works as expected, screen contents are properly updated.
+ * The feature either stays enabled or gets reenabled after the oprations. You
+ * will also see the rectangles on the target screen.
*
* FAILURES
- * On a failure here you need to go directly to the Kernel's flip code and see
- * how it interacts with the feature being tested.
+ * A failure here indicates a problem somewhere between the Kernel's
+ * frontbuffer tracking infrastructure or the feature itself. You need to pay
+ * attention to which drawing method is being used.
*/
-static void flip_subtest(const struct test_mode *t)
+static void draw_subtest(const struct test_mode *t)
{
int r;
int assertions = 0;
- struct igt_fb fb2, *orig_fb;
+ struct draw_pattern_info *pattern;
struct modeset_params *params = pick_params(t);
- struct draw_pattern_info *pattern = &pattern1;
- enum color bg_color;
+ struct fb_region *target;
switch (t->screen) {
case SCREEN_PRIM:
- assertions |= ASSERT_LAST_ACTION_CHANGED;
- bg_color = COLOR_PRIM_BG;
+ if (t->method != IGT_DRAW_MMAP_GTT && t->plane == PLANE_PRI)
+ assertions |= ASSERT_LAST_ACTION_CHANGED;
+ else
+ assertions |= ASSERT_NO_ACTION_CHANGE;
break;
case SCREEN_SCND:
+ case SCREEN_OFFSCREEN:
assertions |= ASSERT_NO_ACTION_CHANGE;
- bg_color = COLOR_SCND_BG;
break;
default:
igt_assert(false);
}
- prepare_subtest(t, pattern);
+ switch (t->plane) {
+ case PLANE_PRI:
+ pattern = &pattern1;
+ break;
+ case PLANE_CUR:
+ case PLANE_SPR:
+ pattern = &pattern2;
+ break;
+ default:
+ igt_assert(false);
+ }
- create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
- t->tiling, t->plane, &fb2);
- fill_fb(&fb2, bg_color);
- orig_fb = params->primary.fb;
+ if (op_disables_psr(t, t->method))
+ assertions |= ASSERT_PSR_DISABLED;
+
+ /*
+ * On FBS_INDIVIDUAL, write to offscreen plane will not touch the
+ * current frambuffer. Hence assert for DRRS_LOW.
+ */
+ if ((t->fbs == FBS_INDIVIDUAL) && (t->screen == SCREEN_OFFSCREEN))
+ assertions |= ASSERT_DRRS_LOW;
+
+ prepare_subtest(t, pattern);
+ target = pick_target(t, params);
for (r = 0; r < pattern->n_rects; r++) {
- params->primary.fb = (r % 2 == 0) ? &fb2 : orig_fb;
+ igt_debug("Drawing rect %d\n", r);
+ draw_rect(pattern, target, t->method, r);
+ update_wanted_crc(t, &pattern->crcs[t->format][r]);
+ do_assertions(assertions);
+ }
+}
+
+/*
+ * multidraw - draw a set of rectangles on the screen using alternated drawing
+ * methods
+ *
+ * METHOD
+ * This is just like the draw subtest, but now we keep alternating between two
+ * drawing methods. Each time we run multidraw_subtest we will test all the
+ * possible pairs of drawing methods.
+ *
+ * EXPECTED RESULTS
+ * The same as the draw subtest.
+ *
+ * FAILURES
+ * If you get a failure here, first you need to check whether you also get
+ * failures on the individual draw subtests. If yes, then go fix every single
+ * draw subtest first. If all the draw subtests pass but this one fails, then
+ * you have to study how one drawing method is stopping the other from
+ * properly working.
+ */
+static void multidraw_subtest(const struct test_mode *t)
+{
+ int r;
+ int assertions = 0;
+ struct draw_pattern_info *pattern;
+ struct modeset_params *params = pick_params(t);
+ struct fb_region *target;
+ enum igt_draw_method m1, m2, used_method;
+ bool wc_used = false;
+
+ switch (t->plane) {
+ case PLANE_PRI:
+ pattern = &pattern1;
+ break;
+ case PLANE_CUR:
+ case PLANE_SPR:
+ pattern = &pattern2;
+ break;
+ default:
+ igt_assert(false);
+ }
+
+ prepare_subtest(t, pattern);
+ target = pick_target(t, params);
+
+ for (m1 = 0; m1 < IGT_DRAW_METHOD_COUNT; m1++) {
+ for (m2 = m1 + 1; m2 < IGT_DRAW_METHOD_COUNT; m2++) {
+
+ igt_debug("Methods %s and %s\n",
+ igt_draw_get_method_name(m1),
+ igt_draw_get_method_name(m2));
+
+ if (!igt_draw_supports_method(drm.fd, m1) ||
+ !igt_draw_supports_method(drm.fd, m2))
+ continue;
+
+ for (r = 0; r < pattern->n_rects; r++) {
+ used_method = (r % 2 == 0) ? m1 : m2;
+
+ igt_debug("Used method %s\n",
+ igt_draw_get_method_name(used_method));
+
+ draw_rect(pattern, target, used_method, r);
+
+ if (used_method == IGT_DRAW_MMAP_WC ||
+ used_method == IGT_DRAW_MMAP_GTT)
+ wc_used = true;
+
+ update_wanted_crc(t,
+ &pattern->crcs[t->format][r]);
+
+ assertions = used_method != IGT_DRAW_MMAP_GTT ?
+ ASSERT_LAST_ACTION_CHANGED :
+ ASSERT_NO_ACTION_CHANGE;
+ if (op_disables_psr(t, used_method) &&
+ !wc_used)
+ assertions |= ASSERT_PSR_DISABLED;
+
+ do_assertions(assertions);
+ }
+
+ fill_fb_region(target, COLOR_PRIM_BG);
+ _fb_dirty_ioctl(target);
+
+ update_wanted_crc(t, &blue_crcs[t->format].crc);
+ do_assertions(ASSERT_NO_ACTION_CHANGE);
+ }
+ }
+}
+
+static bool format_is_valid(int feature_flags,
+ enum pixel_format format)
+{
+ int devid = intel_get_drm_devid(drm.fd);
+
+ if (!(feature_flags & FEATURE_FBC))
+ return true;
+
+ switch (format) {
+ case FORMAT_RGB888:
+ return true;
+ case FORMAT_RGB565:
+ if (IS_GEN2(devid) || IS_G4X(devid))
+ return false;
+ return true;
+ case FORMAT_RGB101010:
+ return false;
+ default:
+ igt_assert(false);
+ }
+}
+
+/*
+ * badformat - test pixel formats that are not supported by at least one feature
+ *
+ * METHOD
+ * We just do a modeset on a buffer with the given pixel format and check the
+ * status of the relevant features.
+ *
+ * EXPECTED RESULTS
+ * No assertion failures :)
+ *
+ * FAILURES
+ * If you get a feature enabled/disabled assertion failure, then you should
+ * probably check the Kernel code for the feature that checks the pixel
+ * formats. If you get a CRC assertion failure, then you should use the
+ * appropriate command line arguments that will allow you to look at the
+ * screen, then judge what to do based on what you see.
+ */
+static void badformat_subtest(const struct test_mode *t)
+{
+ bool fbc_valid = format_is_valid(FEATURE_FBC, t->format);
+ bool psr_valid = format_is_valid(FEATURE_PSR, t->format);
+ int assertions = ASSERT_NO_ACTION_CHANGE;
- if (r != 0)
- draw_rect(pattern, ¶ms->primary, t->method, r - 1);
- draw_rect(pattern, ¶ms->primary, t->method, r);
- update_wanted_crc(t, &pattern->crcs[t->format][r]);
+ prepare_subtest_data(t, NULL);
- page_flip_for_params(params, t->flip);
+ fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG);
+ set_mode_for_params(&prim_mode_params);
- do_assertions(assertions);
- }
+ wanted_crc = &blue_crcs[t->format].crc;
- igt_remove_fb(drm.fd, &fb2);
+ if (!fbc_valid)
+ assertions |= ASSERT_FBC_DISABLED;
+ if (!psr_valid)
+ assertions |= ASSERT_PSR_DISABLED;
+ do_assertions(assertions);
}
-/**
- * SUBTEST: fbc-%dp-%s-fliptrack-mmap-gtt
- * Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-%s-fliptrack-mmap-gtt
- * Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-%s-fliptrack-mmap-gtt
- * Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-%s-fliptrack-mmap-gtt
- * Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
+/*
+ * format_draw - test pixel formats that are not FORMAT_DEFAULT
*
- * arg[1].values: 1, 2
+ * METHOD
+ * The real subtest to be executed depends on whether the pixel format is
+ * supported by the features being tested or not. Check the documentation of
+ * each subtest.
*
- * arg[2]:
+ * EXPECTED RESULTS
+ * See the documentation for each subtest.
*
- * @indfb: Individual fb
- * @shrfb: Shared fb
+ * FAILURES
+ * See the documentation for each subtest.
*/
+static void format_draw_subtest(const struct test_mode *t)
+{
+ if (format_is_valid(t->feature, t->format))
+ draw_subtest(t);
+ else
+ badformat_subtest(t);
+}
+
+static bool tiling_is_valid(int feature_flags, enum tiling_type tiling)
+{
+ int devid = intel_get_drm_devid(drm.fd);
+
+ if (!(feature_flags & FEATURE_FBC))
+ return true;
+
+ switch (tiling) {
+ case TILING_LINEAR:
+ return AT_LEAST_GEN(devid, 9);
+ case TILING_X:
+ case TILING_Y:
+ return true;
+ case TILING_4:
+ return AT_LEAST_GEN(devid, 12);
+ default:
+ igt_assert(false);
+ return false;
+ }
+}
/*
- * fliptrack - check if the hardware tracking works after page flips
+ * slow_draw - sleep a little bit between drawing operations
*
* METHOD
- * Flip to a new buffer, then draw on it using MMAP_GTT and check the CRC to
- * make sure the hardware tracking detected the write.
+ * This test is basically the same as the draw subtest, except that we sleep a
+ * little bit after each drawing operation. The goal is to detect problems
+ * that can happen in case a drawing operation is done while the machine is in
+ * some deep sleep states.
*
* EXPECTED RESULTS
- * Everything works as expected, screen contents are properly updated.
+ * The pattern appears on the screen as expected.
*
* FAILURES
- * First you need to check if the draw and flip subtests pass. Only after both
- * are passing this test can be useful. If we're failing only on this subtest,
- * then maybe we are not properly updating the hardware tracking registers
- * during the flip operations.
+ * I've seen this happen in a SKL machine and still haven't investigated it.
+ * My guess would be that preventing deep sleep states fixes the problem.
*/
-static void fliptrack_subtest(const struct test_mode *t, enum flip_type type)
+static void slow_draw_subtest(const struct test_mode *t)
{
int r;
- struct igt_fb fb2, *orig_fb;
- struct modeset_params *params = pick_params(t);
struct draw_pattern_info *pattern = &pattern1;
+ struct modeset_params *params = pick_params(t);
+ struct fb_region *target;
prepare_subtest(t, pattern);
-
- create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
- t->tiling, t->plane, &fb2);
- fill_fb(&fb2, COLOR_PRIM_BG);
- orig_fb = params->primary.fb;
+ sleep(2);
+ target = pick_target(t, params);
for (r = 0; r < pattern->n_rects; r++) {
- params->primary.fb = (r % 2 == 0) ? &fb2 : orig_fb;
-
- if (r != 0)
- draw_rect(pattern, ¶ms->primary, t->method, r - 1);
-
- page_flip_for_params(params, type);
- do_assertions(0);
+ sleep(2);
+ draw_rect(pattern, target, t->method, r);
+ sleep(2);
- draw_rect(pattern, ¶ms->primary, t->method, r);
update_wanted_crc(t, &pattern->crcs[t->format][r]);
- do_assertions(ASSERT_PSR_DISABLED);
+ if (t->feature & FEATURE_DRRS)
+ do_assertions(ASSERT_DRRS_LOW);
+ else
+ do_assertions(0);
+ }
+}
+
+static void flip_handler(int fd, unsigned int sequence, unsigned int tv_sec,
+ unsigned int tv_usec, void *data)
+{
+ igt_debug("Flip event received.\n");
+}
+
+static void wait_flip_event(void)
+{
+ int rc;
+ drmEventContext evctx;
+ struct pollfd pfd;
+
+ evctx.version = 2;
+ evctx.vblank_handler = NULL;
+ evctx.page_flip_handler = flip_handler;
+
+ pfd.fd = drm.fd;
+ pfd.events = POLLIN;
+ pfd.revents = 0;
+
+ rc = poll(&pfd, 1, TIME);
+ switch (rc) {
+ case 0:
+ igt_assert_f(false, "Poll timeout\n");
+ break;
+ case 1:
+ rc = drmHandleEvent(drm.fd, &evctx);
+ igt_assert_eq(rc, 0);
+ break;
+ default:
+ igt_assert_f(false, "Unexpected poll rc %d\n", rc);
+ break;
+ }
+}
+
+static void set_prim_plane_for_params(struct modeset_params *params)
+{
+ __set_prim_plane_for_params(params);
+ igt_display_commit2(&drm.display, COMMIT_UNIVERSAL);
+}
+
+static void page_flip_for_params(struct modeset_params *params,
+ enum flip_type type)
+{
+ int rc;
+
+ switch (type) {
+ case FLIP_PAGEFLIP:
+ rc = drmModePageFlip(drm.fd, drm.display.pipes[params->pipe].crtc_id,
+ params->primary.fb->fb_id,
+ DRM_MODE_PAGE_FLIP_EVENT, NULL);
+ igt_assert_eq(rc, 0);
+ wait_flip_event();
+ break;
+ case FLIP_MODESET:
+ set_mode_for_params(params);
+ break;
+ case FLIP_PLANES:
+ set_prim_plane_for_params(params);
+ break;
+ default:
+ igt_assert(false);
}
-
- igt_remove_fb(drm.fd, &fb2);
}
-/**
- * SUBTEST: drrs-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-move
- * Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- *
- * arg[2]:
- *
- * @spr: Sprite plane
- * @cur: Cursor plane
- */
-
-/**
- * SUBTEST: drrs-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-move
- * Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @spr: Sprite plane
- * @cur: Cursor plane
- */
-
/*
- * move - just move the sprite or cursor around
+ * flip - just exercise page flips with the patterns we have
*
* METHOD
- * Move the surface around, following the defined pattern.
+ * We draw the pattern on a backbuffer using the provided method, then we
+ * flip, making this the frontbuffer. We can flip both using the dedicated
+ * pageflip IOCTL or the modeset IOCTL.
*
* EXPECTED RESULTS
- * The move operations are properly detected by the Kernel, and the screen is
- * properly updated every time.
+ * Everything works as expected, screen contents are properly updated.
*
* FAILURES
- * If you get a failure here, check how the Kernel is enabling or disabling
- * your feature when it moves the planes around.
+ * On a failure here you need to go directly to the Kernel's flip code and see
+ * how it interacts with the feature being tested.
*/
-static void move_subtest(const struct test_mode *t)
+static void flip_subtest(const struct test_mode *t)
{
int r;
- int assertions = ASSERT_NO_ACTION_CHANGE;
+ int assertions = 0;
+ struct igt_fb fb2, *orig_fb;
struct modeset_params *params = pick_params(t);
- struct draw_pattern_info *pattern = &pattern3;
- struct fb_region *reg = pick_target(t, params);
- bool repeat = false;
-
- prepare_subtest(t, pattern);
+ struct draw_pattern_info *pattern = &pattern1;
+ enum color bg_color;
- /* Just paint the right color since we start at 0x0. */
- draw_rect(pattern, reg, t->method, 0);
- update_wanted_crc(t, &pattern->crcs[t->format][0]);
+ switch (t->screen) {
+ case SCREEN_PRIM:
+ assertions |= ASSERT_LAST_ACTION_CHANGED;
+ bg_color = COLOR_PRIM_BG;
+ break;
+ case SCREEN_SCND:
+ assertions |= ASSERT_NO_ACTION_CHANGE;
+ bg_color = COLOR_SCND_BG;
+ break;
+ default:
+ igt_assert(false);
+ }
- do_assertions(assertions);
+ prepare_subtest(t, pattern);
- for (r = 1; r < pattern->n_rects; r++) {
- struct rect rect = pattern->get_rect(¶ms->primary, r);
+ create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
+ t->tiling, t->plane, &fb2);
+ fill_fb(&fb2, bg_color);
+ orig_fb = params->primary.fb;
- igt_plane_set_fb(reg->plane, reg->fb);
- igt_plane_set_position(reg->plane, rect.x, rect.y);
- igt_plane_set_size(reg->plane, rect.w, rect.h);
- igt_fb_set_size(reg->fb, reg->plane, rect.w, rect.h);
- igt_display_commit2(&drm.display, COMMIT_UNIVERSAL);
+ for (r = 0; r < pattern->n_rects; r++) {
+ params->primary.fb = (r % 2 == 0) ? &fb2 : orig_fb;
+ if (r != 0)
+ draw_rect(pattern, ¶ms->primary, t->method, r - 1);
+ draw_rect(pattern, ¶ms->primary, t->method, r);
update_wanted_crc(t, &pattern->crcs[t->format][r]);
- do_assertions(assertions);
+ page_flip_for_params(params, t->flip);
- /* "Move" the last rect to the same position just to make sure
- * this works too. */
- if (r+1 == pattern->n_rects && !repeat) {
- repeat = true;
- r--;
- }
+ do_assertions(assertions);
}
+
+ igt_remove_fb(drm.fd, &fb2);
}
-/**
- * SUBTEST: drrs-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
+/*
+ * fliptrack - check if the hardware tracking works after page flips
*
- * arg[1].values: 1, 2
+ * METHOD
+ * Flip to a new buffer, then draw on it using MMAP_GTT and check the CRC to
+ * make sure the hardware tracking detected the write.
*
- * arg[2]:
+ * EXPECTED RESULTS
+ * Everything works as expected, screen contents are properly updated.
*
- * @spr: Sprite plane
- * @cur: Cursor plane
+ * FAILURES
+ * First you need to check if the draw and flip subtests pass. Only after both
+ * are passing this test can be useful. If we're failing only on this subtest,
+ * then maybe we are not properly updating the hardware tracking registers
+ * during the flip operations.
*/
+static void fliptrack_subtest(const struct test_mode *t, enum flip_type type)
+{
+ int r;
+ struct igt_fb fb2, *orig_fb;
+ struct modeset_params *params = pick_params(t);
+ struct draw_pattern_info *pattern = &pattern1;
-/**
- * SUBTEST: drrs-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
+ prepare_subtest(t, pattern);
+
+ create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
+ t->tiling, t->plane, &fb2);
+ fill_fb(&fb2, COLOR_PRIM_BG);
+ orig_fb = params->primary.fb;
+
+ for (r = 0; r < pattern->n_rects; r++) {
+ params->primary.fb = (r % 2 == 0) ? &fb2 : orig_fb;
+
+ if (r != 0)
+ draw_rect(pattern, ¶ms->primary, t->method, r - 1);
+
+ page_flip_for_params(params, type);
+ do_assertions(0);
+
+ draw_rect(pattern, ¶ms->primary, t->method, r);
+ update_wanted_crc(t, &pattern->crcs[t->format][r]);
+
+ do_assertions(ASSERT_PSR_DISABLED);
+ }
+
+ igt_remove_fb(drm.fd, &fb2);
+}
+
+/*
+ * move - just move the sprite or cursor around
*
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-onoff
- * Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
+ * METHOD
+ * Move the surface around, following the defined pattern.
*
- * arg[1]:
+ * EXPECTED RESULTS
+ * The move operations are properly detected by the Kernel, and the screen is
+ * properly updated every time.
*
- * @spr: Sprite plane
- * @cur: Cursor plane
+ * FAILURES
+ * If you get a failure here, check how the Kernel is enabling or disabling
+ * your feature when it moves the planes around.
*/
+static void move_subtest(const struct test_mode *t)
+{
+ int r;
+ int assertions = ASSERT_NO_ACTION_CHANGE;
+ struct modeset_params *params = pick_params(t);
+ struct draw_pattern_info *pattern = &pattern3;
+ struct fb_region *reg = pick_target(t, params);
+ bool repeat = false;
+
+ prepare_subtest(t, pattern);
+
+ /* Just paint the right color since we start at 0x0. */
+ draw_rect(pattern, reg, t->method, 0);
+ update_wanted_crc(t, &pattern->crcs[t->format][0]);
+
+ do_assertions(assertions);
+
+ for (r = 1; r < pattern->n_rects; r++) {
+ struct rect rect = pattern->get_rect(¶ms->primary, r);
+
+ igt_plane_set_fb(reg->plane, reg->fb);
+ igt_plane_set_position(reg->plane, rect.x, rect.y);
+ igt_plane_set_size(reg->plane, rect.w, rect.h);
+ igt_fb_set_size(reg->fb, reg->plane, rect.w, rect.h);
+ igt_display_commit2(&drm.display, COMMIT_UNIVERSAL);
+
+ update_wanted_crc(t, &pattern->crcs[t->format][r]);
+
+ do_assertions(assertions);
+
+ /* "Move" the last rect to the same position just to make sure
+ * this works too. */
+ if (r+1 == pattern->n_rects && !repeat) {
+ repeat = true;
+ r--;
+ }
+ }
+}
/*
* onoff - just enable and disable the sprite or cursor plane a few times
@@ -3778,108 +4168,6 @@ static bool prim_plane_disabled(void)
return !prim_mode_params.primary.plane->values[IGT_PLANE_FB_ID];
}
-/**
- * SUBTEST: drrs-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%dp-primscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: drrs-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen
- * Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1].values: 1, 2
- */
-
/*
* fullscreen_plane - put a fullscreen plane covering the whole screen
*
@@ -3915,87 +4203,31 @@ static void fullscreen_plane_subtest(const struct test_mode *t)
igt_display_commit(&drm.display);
update_wanted_crc(t, &pattern->crcs[t->format][0]);
- switch (t->screen) {
- case SCREEN_PRIM:
- assertions = ASSERT_LAST_ACTION_CHANGED;
-
- if (prim_plane_disabled())
- assertions |= ASSERT_FBC_DISABLED;
- break;
- case SCREEN_SCND:
- assertions = ASSERT_NO_ACTION_CHANGE;
- break;
- default:
- igt_assert(false);
- }
- do_assertions(assertions);
-
- igt_plane_set_fb(params->sprite.plane, NULL);
- igt_display_commit(&drm.display);
-
- if (t->screen == SCREEN_PRIM)
- assertions = ASSERT_LAST_ACTION_CHANGED;
- update_wanted_crc(t, &blue_crcs[t->format].crc);
- do_assertions(assertions);
-
- igt_remove_fb(drm.fd, &fullscreen_fb);
-}
-
-/**
- * SUBTEST: drrs-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-%s-scaledprimary
- * Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @indfb: Individual fb
- * @shrfb: Shared fb
- */
+ switch (t->screen) {
+ case SCREEN_PRIM:
+ assertions = ASSERT_LAST_ACTION_CHANGED;
+
+ if (prim_plane_disabled())
+ assertions |= ASSERT_FBC_DISABLED;
+ break;
+ case SCREEN_SCND:
+ assertions = ASSERT_NO_ACTION_CHANGE;
+ break;
+ default:
+ igt_assert(false);
+ }
+ do_assertions(assertions);
+
+ igt_plane_set_fb(params->sprite.plane, NULL);
+ igt_display_commit(&drm.display);
+
+ if (t->screen == SCREEN_PRIM)
+ assertions = ASSERT_LAST_ACTION_CHANGED;
+ update_wanted_crc(t, &blue_crcs[t->format].crc);
+ do_assertions(assertions);
+
+ igt_remove_fb(drm.fd, &fullscreen_fb);
+}
/*
* scaledprimary - try different primary plane scaling strategies
@@ -4103,56 +4335,6 @@ static void scaledprimary_subtest(const struct test_mode *t)
igt_remove_fb(drm.fd, &new_fb);
}
-/**
- * SUBTEST: drrs-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with FBC
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with PSR
- * Driver requirement: i915, xe
- * Functionality: fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with FBC & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with FBC & PSR
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-modesetfrombusy
- * Description: Modeset from a busy buffer to a non-busy buffer with FBC, PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- */
-
/**
* modesetfrombusy - modeset from a busy buffer to a non-busy buffer
*
@@ -4196,57 +4378,6 @@ static void modesetfrombusy_subtest(const struct test_mode *t)
igt_remove_fb(drm.fd, &fb2);
}
-/**
- * SUBTEST: drrs-suspend
- * Description: Make sure suspend/resume keeps us on the same state of DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-suspend
- * Description: Make sure suspend/resume keeps us on the same state of FBC
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-suspend
- * Description: Make sure suspend/resume keeps us on the same state of PSR
- * Driver requirement: i915, xe
- * Functionality: fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-suspend
- * Description: Make sure suspend/resume keeps us on the same state of FBC & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-suspend
- * Description: Make sure suspend/resume keeps us on the same state of FBC & PSR
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-suspend
- * Description: Make sure suspend/resume keeps us on the same state of PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-suspend
- * Description: Make sure suspend/resume keeps us on the same state of FBC, PSR & DRRS
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/**
* suspend - make sure suspend/resume keeps us on the same state
*
@@ -4279,57 +4410,6 @@ static void suspend_subtest(const struct test_mode *t)
do_assertions(0);
}
-/**
- * SUBTEST: drrs-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbc-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psr-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: psrdrrs-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-farfromfence-mmap-gtt
- * Description: Test drawing as far from the fence start as possible
- * Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/**
* farfromfence - test drawing as far from the fence start as possible
*
@@ -4403,36 +4483,6 @@ static void farfromfence_subtest(const struct test_mode *t)
igt_remove_fb(drm.fd, &tall_fb);
}
-/**
- * SUBTEST: fbc-stridechange
- * Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-stridechange
- * Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-stridechange
- * Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-stridechange
- * Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/**
* stridechange - change the frontbuffer stride by doing a modeset
*
@@ -4497,46 +4547,6 @@ static void stridechange_subtest(const struct test_mode *t)
do_assertions(rc ? 0 : DONT_ASSERT_FBC_STATUS);
}
-/**
- * SUBTEST: fbc-tiling-%s
- * Description: Test %arg[1] formats, if the tiling format supports FBC do the
- * basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcdrrs-tiling-%s
- * Description: Test %arg[1] formats, if the tiling format supports FBC do the
- * basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsr-tiling-%s
- * Description: Test %arg[1] formats, if the tiling format supports FBC do the
- * basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
- * Functionality: fbc, fbt, psr, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fbcpsrdrrs-tiling-%s
- * Description: Test %arg[1] formats, if the tiling format supports FBC do the
- * basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
- * Functionality: drrs, fbc, fbt, psr, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4: 4 tiling
- * @linear: Linear tiling
- * @y: Y tiling
- */
-
/**
* tiling_disable_fbc_subtest - Check if tiling is unsupported by FBC
*
@@ -4586,15 +4596,6 @@ static void tiling_disable_fbc_subtest(const struct test_mode *t)
igt_remove_fb(drm.fd, &new_fb);
}
-/**
- * SUBTEST: basic
- * Description: Do some basic operations regardless of which features are enabled
- * Driver requirement: i915, xe
- * Functionality: fbt
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/*
* basic - do some basic operations regardless of which features are enabled
*
diff --git a/tests/intel/kms_legacy_colorkey.c b/tests/intel/kms_legacy_colorkey.c
index 877a6799a..69539f558 100644
--- a/tests/intel/kms_legacy_colorkey.c
+++ b/tests/intel/kms_legacy_colorkey.c
@@ -21,14 +21,16 @@
* IN THE SOFTWARE.
*/
-#include "igt.h"
-#include <errno.h>
-
/**
* TEST: kms legacy colorkey
* Category: Display
* Description: Test to check the legacy set colorkey ioctl on sprite planes.
- *
+ */
+
+#include "igt.h"
+#include <errno.h>
+
+/**
* SUBTEST: basic
* Description: Check that the legacy set colorkey ioctl only works on sprite planes.
* Driver requirement: i915
diff --git a/tests/intel/kms_mmap_write_crc.c b/tests/intel/kms_mmap_write_crc.c
index 17d72ee32..3766d4e9d 100644
--- a/tests/intel/kms_mmap_write_crc.c
+++ b/tests/intel/kms_mmap_write_crc.c
@@ -24,6 +24,13 @@
* Tiago Vignatti <tiago.vignatti at intel.com>
*/
+/**
+ * TEST: kms mmap write crc
+ * Category: Display
+ * Description: Use the display CRC support to validate mmap write to an already
+ * uncached future scanout buffer.
+ */
+
#include <errno.h>
#include <limits.h>
#include <stdbool.h>
@@ -37,12 +44,8 @@
#include "intel_chipset.h"
#include "ioctl_wrappers.h"
#include "igt_aux.h"
+
/**
- * TEST: kms mmap write crc
- * Category: Display
- * Description: Use the display CRC support to validate mmap write to an already
- * uncached future scanout buffer.
- *
* SUBTEST: main
* Description: Tests that caching mode has become UC/WT and flushed using mmap write
* Driver requirement: i915, xe
diff --git a/tests/intel/kms_pipe_b_c_ivb.c b/tests/intel/kms_pipe_b_c_ivb.c
index 386f3003a..c1a1e6610 100644
--- a/tests/intel/kms_pipe_b_c_ivb.c
+++ b/tests/intel/kms_pipe_b_c_ivb.c
@@ -24,13 +24,16 @@
* Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
*/
-#include "igt.h"
/**
* TEST: kms pipe b c ivb
* Category: Display
* Description: Exercise the FDI lane bifurcation code for IVB in the kernel by
* setting different combinations of modes for pipes B and C.
- *
+ */
+
+#include "igt.h"
+
+/**
* SUBTEST: disable-pipe-B-enable-pipe-C
* Description: Tests pipe-B and pipe-C interactions in IVB by disabling pipe-B
* and then setting mode on pipe-C.
diff --git a/tests/intel/kms_pm_backlight.c b/tests/intel/kms_pm_backlight.c
index f6e7db0b2..68f4dc3d1 100644
--- a/tests/intel/kms_pm_backlight.c
+++ b/tests/intel/kms_pm_backlight.c
@@ -25,6 +25,12 @@
*
*/
+/**
+ * TEST: kms pm backlight
+ * Category: Display
+ * Description: Basic backlight sysfs test
+ */
+
#include "igt.h"
#include <limits.h>
#include <sys/types.h>
@@ -36,11 +42,8 @@
#include <time.h>
#include "igt_device.h"
#include "igt_device_scan.h"
+
/**
- * TEST: kms pm backlight
- * Category: Display
- * Description: Basic backlight sysfs test
- *
* SUBTEST: bad-brightness
* Description: Test the bad brightness.
* Driver requirement: i915, xe
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index 1e9ca5d6c..3507bdd60 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms pm dc
+ * Category: Display
+ * Description: Tests to validate display power DC states.
+ */
+
#include <errno.h>
#include <fcntl.h>
#include <stdbool.h>
@@ -39,10 +45,6 @@
#include "xe/xe_query.h"
/**
- * TEST: kms pm dc
- * Category: Display
- * Description: Tests to validate display power DC states.
- *
* SUBTEST: dc3co-vpb-simulation
* Description: Make sure that system enters DC3CO when PSR2 is active and system
* is in SLEEP state
diff --git a/tests/intel/kms_pm_lpsp.c b/tests/intel/kms_pm_lpsp.c
index cb3c3e379..23940fd9b 100644
--- a/tests/intel/kms_pm_lpsp.c
+++ b/tests/intel/kms_pm_lpsp.c
@@ -24,6 +24,12 @@
*
*/
+/**
+ * TEST: kms pm lpsp
+ * Description: These tests validates display Low Power Single Pipe configurations
+ * Category: Display
+ */
+
#include "igt.h"
#include "igt_kmod.h"
#include "igt_pm.h"
@@ -32,11 +38,8 @@
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
+
/**
- * TEST: kms pm lpsp
- * Description: These tests validates display Low Power Single Pipe configurations
- * Category: Display
- *
* SUBTEST: kms-lpsp
* Description: This test validates lpsp on all connected outputs on low power pipes
* Driver requirement: i915, xe
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index ffecc5222..fb7ca6926 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -229,6 +229,32 @@
* @plane_move: Move plane position
*/
+/**
+ * SUBTEST: cursor_plane_move
+ * Description: Check if psr is detecting the plane operations performed on
+ * cursor planes
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: psr
+ * Mega feature: PSR
+ *
+ * SUBTEST: primary_page_flip
+ * Description: Check if psr is detecting page-flipping operations performed
+ * on primary planes
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: psr
+ * Mega feature: PSR
+ *
+ * SUBTEST: sprite_plane_onoff
+ * Description: Check if psr is detecting the plane operations performed on
+ * sprite planes
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: psr
+ * Mega feature: PSR
+ */
+
enum operations {
PAGE_FLIP,
MMAP_GTT,
@@ -501,32 +527,6 @@ static void fb_dirty_fb_ioctl(data_t *data, struct igt_fb *fb)
igt_assert(ret == 0 || ret == -ENOSYS);
}
-/**
- * SUBTEST: cursor_plane_move
- * Description: Check if psr is detecting the plane operations performed on
- * cursor planes
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: psr
- * Mega feature: PSR
- *
- * SUBTEST: primary_page_flip
- * Description: Check if psr is detecting page-flipping operations performed
- * on primary planes
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: psr
- * Mega feature: PSR
- *
- * SUBTEST: sprite_plane_onoff
- * Description: Check if psr is detecting the plane operations performed on
- * sprite planes
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: psr
- * Mega feature: PSR
- */
-
static void run_test(data_t *data)
{
uint32_t handle = data->fb_white.gem_handle;
diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
index d7a746211..4f5160abe 100644
--- a/tests/intel/kms_psr2_sf.c
+++ b/tests/intel/kms_psr2_sf.c
@@ -22,6 +22,13 @@
*
*/
+/**
+ * TEST: kms psr2 sf
+ * Category: Display
+ * Description: Tests to varify PSR2 selective fetch by sending multiple damaged
+ * areas
+ */
+
#include "igt.h"
#include "igt_sysfs.h"
#include "igt_psr.h"
@@ -30,12 +37,8 @@
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
+
/**
- * TEST: kms psr2 sf
- * Category: Display
- * Description: Tests to varify PSR2 selective fetch by sending multiple damaged
- * areas
- *
* SUBTEST: %s-plane-move-continuous-%s
* Description: Test that selective fetch works on moving %arg[1] plane %arg[2]
* visible area (no update)
diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
index 834fec1ec..1c65b0826 100644
--- a/tests/intel/kms_psr2_su.c
+++ b/tests/intel/kms_psr2_su.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms psr2 su
+ * Category: Display
+ * Description: Test PSR2 selective update
+ */
+
#include "igt.h"
#include "igt_sysfs.h"
#include "igt_psr.h"
@@ -30,11 +36,8 @@
#include <stdio.h>
#include <string.h>
#include <sys/timerfd.h>
+
/**
- * TEST: kms psr2 su
- * Category: Display
- * Description: Test PSR2 selective update
- *
* SUBTEST: frontbuffer-XRGB8888
* Description: Test that selective update works when screen changes
* Driver requirement: i915, xe
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index b6759eece..f1f9607f0 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -1,3 +1,9 @@
+
+/**
+ * TEST: kms psr stress test
+ * Category: Display
+ */
+
#include "igt.h"
#include "igt_sysfs.h"
#include "igt_psr.h"
@@ -7,10 +13,8 @@
#include <stdio.h>
#include <string.h>
#include <sys/timerfd.h>
+
/**
- * TEST: kms psr stress test
- * Category: Display
- *
* SUBTEST: flip-primary-invalidate-overlay
* Description: Mix page flips in primary plane and frontbuffer writes to overlay
* plane and check for warnings, underruns or PSR state changes
diff --git a/tests/intel/kms_pwrite_crc.c b/tests/intel/kms_pwrite_crc.c
index 50df18aa3..945f93f37 100644
--- a/tests/intel/kms_pwrite_crc.c
+++ b/tests/intel/kms_pwrite_crc.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms pwrite crc
+ * Category: Display
+ * Description: Test to validate pwrite buffer using the display CRC
+ */
+
#include "igt.h"
#include <errno.h>
#include <limits.h>
@@ -30,10 +36,6 @@
#include <string.h>
/**
- * TEST: kms pwrite crc
- * Category: Display
- * Description: Test to validate pwrite buffer using the display CRC
- *
* SUBTEST:
* Description: Use the display CRC support to validate pwrite to an already
* uncached future scanout buffer.
diff --git a/tests/kms_3d.c b/tests/kms_3d.c
index fa73d0cc6..ad6c45e9b 100644
--- a/tests/kms_3d.c
+++ b/tests/kms_3d.c
@@ -22,13 +22,16 @@
*
*/
-#include "igt.h"
-#include "xe/xe_query.h"
/**
* TEST: kms 3d
* Category: Display
* Description: Tests 3D mode setting.
- *
+ */
+
+#include "igt.h"
+#include "xe/xe_query.h"
+
+/**
* SUBTEST:
* Description: Tests 3D mode setting.
* Driver requirement: i915, xe
diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
index fc16b8814..9f8bf4275 100644
--- a/tests/kms_addfb_basic.c
+++ b/tests/kms_addfb_basic.c
@@ -50,22 +50,6 @@
#include "xe/xe_ioctl.h"
#include "xe/xe_query.h"
-static uint32_t gem_bo;
-static uint32_t gem_bo_small;
-static igt_display_t display;
-
-static int legacy_addfb(int fd, struct drm_mode_fb_cmd *arg)
-{
- int err;
-
- err = 0;
- if (igt_ioctl(fd, DRM_IOCTL_MODE_ADDFB, arg))
- err = -errno;
-
- errno = 0;
- return err;
-}
-
/**
* SUBTEST: unused-%s
* Description: Test that addfb2 call fails correctly for unused %arg[1]
@@ -109,6 +93,216 @@ static int legacy_addfb(int fd, struct drm_mode_fb_cmd *arg)
* @pitches: Pitches
* @offsets: Offsets
*/
+
+/**
+ * SUBTEST: no-handle
+ * Description: Test that addfb2 call fails correctly without handle
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic
+ * Description: Check if addfb2 call works with given handle
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: bad-pitch-%i
+ * Description: bad-pitch-%arg[1]: Test that addfb2 call fails correctly for bad-pitches
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * arg[1].values: 0, 32, 63, 128, 256, 999, 1024, 65536
+ */
+
+/**
+ * SUBTEST: basic-%s-tiled-legacy
+ * Description: Check if addfb2 and rmfb call works for basic %arg[1] test
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: framebuffer-vs-set-tiling
+ * Description: Check if addfb2 call works for x and y tiling
+ * Driver requirement: i915
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: tile-pitch-mismatch
+ * Description: Test that addfb2 call fails correctly for pitches mismatch
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @x: x-tiling
+ * @y: y-tiling
+ */
+
+/**
+ * SUBTEST: size-max
+ * Description: Check if addfb2 call works with max size of buffer object
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: too-wide
+ * Description: Test that addfb2 call fails correctly with increased width of fb
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: too-high
+ * Description: Test that addfb2 call fails correctly with increased height of fb
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: bo-too-small
+ * Description: Test that addfb2 call fails correctly with small size of buffer object
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: small-bo
+ * Description: Check if addfb2 call works for given height
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: bo-too-small-due-to-tiling
+ * Description: Test that addfb2 call fails correctly with small buffer object
+ * after changing tile
+ * Driver requirement: i915
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ */
+
+/**
+ * SUBTEST: addfb25-modifier-no-flag
+ * Description: Test that addfb2 call fails correctly for x-tiling with given modifier
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: addfb25-bad-modifier
+ * Description: Test that addfb2 call fails correctly for irrelevant modifier
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: addfb25-x-tiled-mismatch-legacy
+ * Description: Test that addfb2 call fails correctly for irrelevant x-tiling
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: addfb25-x-tiled-legacy
+ * Description: Check if addfb2 call works for x-tiling
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: addfb25-framebuffer-vs-set-tiling
+ * Description: Check if addfb2 call works for relevant combination of tiling and fbs
+ * Driver requirement: i915
+ * Test category: functionality test
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ */
+
+/**
+ * SUBTEST: addfb25-y-tiled-%s
+ * Description: Check if addfb2 call works for y-tiling %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: addfb25-yf-tiled-legacy
+ * Description: Check if addfb2 call works for yf-tiling
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @legacy: with default size
+ * @small-legacy: with given size & modifier
+ */
+
+/**
+ * SUBTEST: addfb25-4-tiled
+ * Description: Check if addfb2 call works for tiling-4
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: invalid-%s-%s
+ * Description: Test that %arg[1] ioctl call fails correctly for %arg[2] object
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @get: get-properties
+ * @set: set-properties
+ *
+ * arg[2]:
+ *
+ * @prop: fb mode
+ * @prop-any: invalid
+ */
+
+/**
+ * SUBTEST: master-rmfb
+ * Description: Check that only master can rmfb
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+static uint32_t gem_bo;
+static uint32_t gem_bo_small;
+static igt_display_t display;
+
+static int legacy_addfb(int fd, struct drm_mode_fb_cmd *arg)
+{
+ int err;
+
+ err = 0;
+ if (igt_ioctl(fd, DRM_IOCTL_MODE_ADDFB, arg))
+ err = -errno;
+
+ errno = 0;
+ return err;
+}
+
static void invalid_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -322,30 +516,6 @@ static void invalid_tests(int fd)
}
}
-/**
- * SUBTEST: no-handle
- * Description: Test that addfb2 call fails correctly without handle
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: basic
- * Description: Check if addfb2 call works with given handle
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: bad-pitch-%i
- * Description: bad-pitch-%arg[1]: Test that addfb2 call fails correctly for bad-pitches
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * arg[1].values: 0, 32, 63, 128, 256, 999, 1024, 65536
- */
static void pitch_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -393,33 +563,6 @@ static void pitch_tests(int fd)
gem_close(fd, gem_bo);
}
-/**
- * SUBTEST: basic-%s-tiled-legacy
- * Description: Check if addfb2 and rmfb call works for basic %arg[1] test
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: framebuffer-vs-set-tiling
- * Description: Check if addfb2 call works for x and y tiling
- * Driver requirement: i915
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: tile-pitch-mismatch
- * Description: Test that addfb2 call fails correctly for pitches mismatch
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * arg[1]:
- *
- * @x: x-tiling
- * @y: y-tiling
- */
static void tiling_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -506,50 +649,6 @@ static void tiling_tests(int fd)
}
}
-/**
- * SUBTEST: size-max
- * Description: Check if addfb2 call works with max size of buffer object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: too-wide
- * Description: Test that addfb2 call fails correctly with increased width of fb
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: too-high
- * Description: Test that addfb2 call fails correctly with increased height of fb
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: bo-too-small
- * Description: Test that addfb2 call fails correctly with small size of buffer object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: small-bo
- * Description: Check if addfb2 call works for given height
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * SUBTEST: bo-too-small-due-to-tiling
- * Description: Test that addfb2 call fails correctly with small buffer object
- * after changing tile
- * Driver requirement: i915
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- */
static void size_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -665,42 +764,6 @@ static void size_tests(int fd)
}
}
-/**
- * SUBTEST: addfb25-modifier-no-flag
- * Description: Test that addfb2 call fails correctly for x-tiling with given modifier
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: addfb25-bad-modifier
- * Description: Test that addfb2 call fails correctly for irrelevant modifier
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: addfb25-x-tiled-mismatch-legacy
- * Description: Test that addfb2 call fails correctly for irrelevant x-tiling
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: addfb25-x-tiled-legacy
- * Description: Check if addfb2 call works for x-tiling
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- *
- * SUBTEST: addfb25-framebuffer-vs-set-tiling
- * Description: Check if addfb2 call works for relevant combination of tiling and fbs
- * Driver requirement: i915
- * Test category: functionality test
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- */
static void addfb25_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -786,26 +849,6 @@ static int addfb_expected_ret(igt_display_t *disp, struct drm_mode_fb_cmd2 *f)
f->modifier[0]) ? 0 : -1;
}
-/**
- * SUBTEST: addfb25-y-tiled-%s
- * Description: Check if addfb2 call works for y-tiling %arg[1]
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: addfb25-yf-tiled-legacy
- * Description: Check if addfb2 call works for yf-tiling
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @legacy: with default size
- * @small-legacy: with given size & modifier
- */
static void addfb25_ytile(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -872,14 +915,6 @@ static void addfb25_ytile(int fd)
}
}
-/**
- * SUBTEST: addfb25-4-tiled
- * Description: Check if addfb2 call works for tiling-4
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void addfb25_4tile(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -918,24 +953,6 @@ static void addfb25_4tile(int fd)
gem_close(fd, gem_bo);
}
-/**
- * SUBTEST: invalid-%s-%s
- * Description: Test that %arg[1] ioctl call fails correctly for %arg[2] object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- *
- * arg[1]:
- *
- * @get: get-properties
- * @set: set-properties
- *
- * arg[2]:
- *
- * @prop: fb mode
- * @prop-any: invalid
- */
static void prop_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
@@ -1001,14 +1018,6 @@ static void prop_tests(int fd)
}
}
-/**
- * SUBTEST: master-rmfb
- * Description: Check that only master can rmfb
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void master_tests(int fd)
{
struct drm_mode_fb_cmd2 f = {};
diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
index 6c97558be..90337d0df 100644
--- a/tests/kms_async_flips.c
+++ b/tests/kms_async_flips.c
@@ -30,6 +30,7 @@
* Category: Display
* Description: Test asynchronous page flips.
*/
+
#include "igt.h"
#include "igt_aux.h"
#include "igt_psr.h"
@@ -37,6 +38,54 @@
#include <sys/time.h>
#include <poll.h>
+/**
+ * SUBTEST: alternate-sync-async-flip
+ * Description: Verify the async flip functionality and the fps during async flips
+ * Alternate between sync and async flips
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: async-flip-with-page-flip-events
+ * Description: Verify the async flip functionality and the fps during async flips
+ * Wait for page flip events in between successive asynchronous flips
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: test-time-stamp
+ * Description: Verify the async flip functionality and the fps during async flips
+ * Verify that the async flip timestamp does not coincide with either
+ * previous or next vblank
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: test-cursor
+ * Description: Verify that the DRM_IOCTL_MODE_CURSOR passes after async flip
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, cursor, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: crc
+ * Description: Use CRC to verify async flip scans out the correct framebuffer
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, crc, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: invalid-async-flip
+ * Description: Negative case to verify if changes in fb are rejected from kernel as expected
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#define CURSOR_POS 128
/*
@@ -203,23 +252,6 @@ static void test_init_fbs(data_t *data)
igt_display_commit2(&data->display, data->display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
}
-/**
- * SUBTEST: alternate-sync-async-flip
- * Description: Verify the async flip functionality and the fps during async flips
- * Alternate between sync and async flips
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: async-flip-with-page-flip-events
- * Description: Verify the async flip functionality and the fps during async flips
- * Wait for page flip events in between successive asynchronous flips
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_async_flip(data_t *data)
{
int ret, frame;
@@ -315,16 +347,6 @@ static void wait_for_vblank(data_t *data, unsigned long *vbl_time, unsigned int
*seq = wait_vbl.reply.sequence;
}
-/**
- * SUBTEST: test-time-stamp
- * Description: Verify the async flip functionality and the fps during async flips
- * Verify that the async flip timestamp does not coincide with either
- * previous or next vblank
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_timestamp(data_t *data)
{
int flags = DRM_MODE_PAGE_FLIP_ASYNC | DRM_MODE_PAGE_FLIP_EVENT;
@@ -369,14 +391,6 @@ static void test_timestamp(data_t *data)
"Async flip time stamp is expected to be in between 2 vblank time stamps\n");
}
-/**
- * SUBTEST: test-cursor
- * Description: Verify that the DRM_IOCTL_MODE_CURSOR passes after async flip
- * Driver requirement: i915, xe
- * Functionality: async_flips, cursor, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_cursor(data_t *data)
{
int flags = DRM_MODE_PAGE_FLIP_ASYNC | DRM_MODE_PAGE_FLIP_EVENT;
@@ -529,14 +543,6 @@ static unsigned int clock_ms(void)
return ts.tv_sec * 1000 + ts.tv_nsec / 1000000;
}
-/**
- * SUBTEST: crc
- * Description: Use CRC to verify async flip scans out the correct framebuffer
- * Driver requirement: i915, xe
- * Functionality: async_flips, crc, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_crc(data_t *data)
{
unsigned int frame = 0;
@@ -599,14 +605,6 @@ static void test_crc(data_t *data)
igt_assert_lt(data->frame_count * 2, data->flip_count);
}
-/**
- * SUBTEST: invalid-async-flip
- * Description: Negative case to verify if changes in fb are rejected from kernel as expected
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void run_test(data_t *data, void (*test)(data_t *))
{
igt_display_t *display = &data->display;
diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
index c7190c6bd..c13a22234 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
@@ -48,6 +48,94 @@
#include "igt_aux.h"
#include "sw_sync.h"
+/**
+ * SUBTEST: plane-primary-overlay-mutable-zpos
+ * Description: Verify that the overlay plane can cover the primary one (and
+ * vice versa) by changing their zpos property.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-immutable-zpos
+ * Description: Verify the reported zpos property of planes by making sure only
+ * higher zpos planes cover the lower zpos ones.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-%s-legacy
+ * Description: Test for KMS atomic modesetting on %arg[1] and ensure coherency
+ * between legacy and atomic interfaces.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cursor: Cursor plane
+ * @overlay: Overlay plane
+ * @primary: Primary plane
+ */
+
+/**
+ * SUBTEST: test-only
+ * Description: Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches
+ * the free-standing state objects and nothing else.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: plane-invalid-%s
+ * Description: Test error handling when invalid %arg[1] are passed
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @params: plane parameters
+ * @params-fence: plane fence parameters
+ */
+
+/**
+ * SUBTEST: crtc-invalid-%s
+ * Description: Test error handling when invalid %arg[1] are passed
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @params: crtc parameters
+ * @params-fence: crtc fence parameters
+ */
+
+/**
+ * SUBTEST: atomic-invalid-params
+ * Description: Test abuse the atomic ioctl directly in order to test various
+ * invalid conditions which the libdrm wrapper won't allow us to
+ * create.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: atomic-plane-damage
+ * Description: Simple test cases to use FB_DAMAGE_CLIPS plane property
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#ifndef DRM_CAP_CURSOR_WIDTH
#define DRM_CAP_CURSOR_WIDTH 0x8
#endif
@@ -302,15 +390,6 @@ static uint32_t plane_get_igt_format(igt_plane_t *plane)
return 0;
}
-/**
- * SUBTEST: plane-primary-overlay-mutable-zpos
- * Description: Verify that the overlay plane can cover the primary one (and
- * vice versa) by changing their zpos property.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
plane_primary_overlay_mutable_zpos(data_t *data, igt_output_t *output, igt_plane_t *overlay,
uint32_t format_primary, uint32_t format_overlay)
@@ -392,15 +471,6 @@ plane_primary_overlay_mutable_zpos(data_t *data, igt_output_t *output, igt_plane
igt_assert_eq_u64(igt_plane_get_prop(overlay, IGT_PLANE_ZPOS), 1);
}
-/**
- * SUBTEST: plane-immutable-zpos
- * Description: Verify the reported zpos property of planes by making sure only
- * higher zpos planes cover the lower zpos ones.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
plane_immutable_zpos(data_t *data, igt_output_t *output, enum pipe pipe, int n_planes)
{
@@ -530,21 +600,6 @@ plane_immutable_zpos(data_t *data, igt_output_t *output, enum pipe pipe, int n_p
igt_remove_fb(data->drm_fd, &fb_upper);
}
-/**
- * SUBTEST: plane-%s-legacy
- * Description: Test for KMS atomic modesetting on %arg[1] and ensure coherency
- * between legacy and atomic interfaces.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @cursor: Cursor plane
- * @overlay: Overlay plane
- * @primary: Primary plane
- */
static void plane_overlay(data_t *data, igt_output_t *output, igt_plane_t *plane,
uint32_t format)
{
@@ -631,16 +686,6 @@ static void plane_primary(data_t *data)
plane_commit(data->primary, COMMIT_UNIVERSAL, ATOMIC_RELAX_NONE);
}
-/**
- * SUBTEST: test-only
- * Description: Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches
- * the free-standing state objects and nothing else.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/*
* Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches the
* free-standing state objects and nothing else.
@@ -749,19 +794,6 @@ static void plane_cursor(data_t *data, igt_output_t *output, igt_plane_t *cursor
plane_commit(cursor, COMMIT_LEGACY, ATOMIC_RELAX_NONE);
}
-/**
- * SUBTEST: plane-invalid-%s
- * Description: Test error handling when invalid %arg[1] are passed
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @params: plane parameters
- * @params-fence: plane fence parameters
- */
static void plane_invalid_params(data_t *data, igt_output_t *output)
{
struct igt_fb fb2;
@@ -846,19 +878,6 @@ static void plane_invalid_params_fence(data_t *data, igt_output_t *output)
close(timeline);
}
-/**
- * SUBTEST: crtc-invalid-%s
- * Description: Test error handling when invalid %arg[1] are passed
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @params: crtc parameters
- * @params-fence: crtc fence parameters
- */
static void crtc_invalid_params(data_t *data, igt_output_t *output)
{
uint64_t old_mode_id = data->pipe->values[IGT_CRTC_MODE_ID];
@@ -999,17 +1018,6 @@ static void crtc_invalid_params_fence(data_t *data, igt_output_t *output)
igt_assert(data->pipe->out_fence_fd != -1);
}
-/**
- * SUBTEST: atomic-invalid-params
- * Description: Test abuse the atomic ioctl directly in order to test various
- * invalid conditions which the libdrm wrapper won't allow us to
- * create.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/*
* Abuse the atomic ioctl directly in order to test various invalid conditions,
* which the libdrm wrapper won't allow us to create.
@@ -1148,14 +1156,6 @@ static void atomic_invalid_params(data_t *data, igt_output_t *output)
do_ioctl_err(data->drm_fd, DRM_IOCTL_MODE_ATOMIC, &ioc, EFAULT);
}
-/**
- * SUBTEST: atomic-plane-damage
- * Description: Simple test cases to use FB_DAMAGE_CLIPS plane property
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void atomic_plane_damage(data_t *data)
{
struct drm_mode_rect damage[2];
diff --git a/tests/kms_atomic_interruptible.c b/tests/kms_atomic_interruptible.c
index 1a104106a..4fd6e0700 100644
--- a/tests/kms_atomic_interruptible.c
+++ b/tests/kms_atomic_interruptible.c
@@ -26,59 +26,13 @@
* Category: Display
* Description: Tests that interrupt various atomic ioctls.
*/
+
#include <signal.h>
#include "igt.h"
#include "drmtest.h"
#include "sw_sync.h"
-IGT_TEST_DESCRIPTION("Tests that interrupt various atomic ioctls.");
-
-enum plane_test_type
-{
- test_legacy_modeset,
- test_atomic_modeset,
- test_legacy_dpms,
- test_setplane,
- test_setcursor,
- test_pageflip
-};
-
-static int block_plane(igt_display_t *display, igt_output_t *output, enum plane_test_type test_type, igt_plane_t *plane)
-{
- int timeline = sw_sync_timeline_create();
-
- igt_fork(child, 1) {
- /* Ignore the signal helper, we need to block indefinitely on the fence. */
- signal(SIGCONT, SIG_IGN);
-
- if (test_type == test_legacy_modeset || test_type == test_atomic_modeset) {
- igt_output_set_pipe(output, PIPE_NONE);
- }
- igt_plane_set_fence_fd(plane, sw_sync_timeline_create_fence(timeline, 1));
-
- igt_display_commit2(display, COMMIT_ATOMIC);
- }
-
- return timeline;
-}
-
-static void unblock(int block)
-{
- sw_sync_timeline_inc(block, 1);
- close(block);
-}
-
-static void ev_page_flip(int fd, unsigned seq, unsigned tv_sec, unsigned tv_usec, void *user_data)
-{
- igt_debug("Retrieved vblank seq: %u on unk\n", seq);
-}
-
-static drmEventContext drm_events = {
- .version = 2,
- .page_flip_handler = ev_page_flip
-};
-
/**
* SUBTEST: %s-setmode
* Description: Tests the interrupt properties of %arg[1] modeset
@@ -114,9 +68,7 @@ static drmEventContext drm_events = {
* Functionality: kms_core
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: universal-setplane-%s
* Description: Tests the interrupt properties for %arg[1]
* Driver requirement: i915, xe
@@ -129,6 +81,54 @@ static drmEventContext drm_events = {
* @cursor: Cursor plane
* @primary: Primary plane
*/
+
+IGT_TEST_DESCRIPTION("Tests that interrupt various atomic ioctls.");
+
+enum plane_test_type
+{
+ test_legacy_modeset,
+ test_atomic_modeset,
+ test_legacy_dpms,
+ test_setplane,
+ test_setcursor,
+ test_pageflip
+};
+
+static int block_plane(igt_display_t *display, igt_output_t *output, enum plane_test_type test_type, igt_plane_t *plane)
+{
+ int timeline = sw_sync_timeline_create();
+
+ igt_fork(child, 1) {
+ /* Ignore the signal helper, we need to block indefinitely on the fence. */
+ signal(SIGCONT, SIG_IGN);
+
+ if (test_type == test_legacy_modeset || test_type == test_atomic_modeset) {
+ igt_output_set_pipe(output, PIPE_NONE);
+ }
+ igt_plane_set_fence_fd(plane, sw_sync_timeline_create_fence(timeline, 1));
+
+ igt_display_commit2(display, COMMIT_ATOMIC);
+ }
+
+ return timeline;
+}
+
+static void unblock(int block)
+{
+ sw_sync_timeline_inc(block, 1);
+ close(block);
+}
+
+static void ev_page_flip(int fd, unsigned seq, unsigned tv_sec, unsigned tv_usec, void *user_data)
+{
+ igt_debug("Retrieved vblank seq: %u on unk\n", seq);
+}
+
+static drmEventContext drm_events = {
+ .version = 2,
+ .page_flip_handler = ev_page_flip
+};
+
static void run_plane_test(igt_display_t *display, enum pipe pipe, igt_output_t *output,
enum plane_test_type test_type, unsigned plane_type)
{
diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c
index f5f21f925..1cec0f764 100644
--- a/tests/kms_atomic_transition.c
+++ b/tests/kms_atomic_transition.c
@@ -25,6 +25,7 @@
* TEST: kms atomic transition
* Category: Display
*/
+
#include "igt.h"
#include "igt_rand.h"
#include "drmtest.h"
@@ -37,6 +38,95 @@
#include <time.h>
#include <poll.h>
+/**
+ * SUBTEST: plane-primary-toggle-with-vblank-wait
+ * Description: Check toggling of primary plane with vblank
+ * Driver requirement: i915, xe
+ * Functionality: plane, vblank, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-all-modeset-%s
+ * Description: Modeset test for all plane combinations %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @transition: default
+ * @transition-fencing: with fencing commit
+ */
+
+/**
+ * SUBTEST: plane-all-modeset-%s
+ * Description: Modeset test for all plane combinations %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: eDP
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @transition-fencing-internal-panels: on internal panels with fencing commit
+ * @transition-internal-panels: on internal panels
+ */
+
+/**
+ * SUBTEST: plane-all-%s
+ * Description: Transition test for all plane combinations %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @transition: default
+ * @transition-fencing: with fencing commit
+ * @transition-nonblocking: with non-blocking commit
+ * @transition-nonblocking-fencing: with non-blocking & fencing commit
+ */
+
+/**
+ * SUBTEST: plane-toggle-modeset-transition
+ * Description: Check toggling and modeset transition on plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-use-after-nonblocking-%s
+ * Description: Transition test with non %arg[1] and make sure commit of disabled
+ * plane has to complete before atomic commit on that plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @unbind: blocking commit
+ * @unbind-fencing: blocking commit with fencing
+ */
+
+/**
+ * SUBTEST: modeset-%s
+ * Description: Modeset transition tests for combinations of %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @transition: crtc enabled
+ * @transition-fencing: crtc enabled with fencing commit
+ * @transition-nonblocking: crtc enabled with nonblocking commit
+ * @transition-nonblocking-fencing: crtc enabled with nonblocking & fencing commit
+ */
+
#ifndef DRM_CAP_CURSOR_WIDTH
#define DRM_CAP_CURSOR_WIDTH 0x8
#endif
@@ -62,14 +152,6 @@ int *timeline;
pthread_t *thread;
int *seqno;
-/**
- * SUBTEST: plane-primary-toggle-with-vblank-wait
- * Description: Check toggling of primary plane with vblank
- * Driver requirement: i915, xe
- * Functionality: plane, vblank, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
run_primary_test(data_t *data, enum pipe pipe, igt_output_t *output)
{
@@ -482,72 +564,6 @@ static void wait_for_transition(data_t *data, enum pipe pipe, bool nonblocking,
}
}
-/**
- * SUBTEST: plane-all-modeset-%s
- * Description: Modeset test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @transition: default
- * @transition-fencing: with fencing commit
- */
-
-/**
- * SUBTEST: plane-all-modeset-%s
- * Description: Modeset test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: eDP
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @transition-fencing-internal-panels: on internal panels with fencing commit
- * @transition-internal-panels: on internal panels
- */
-
-/**
- * SUBTEST: plane-all-%s
- * Description: Transition test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @transition: default
- * @transition-fencing: with fencing commit
- * @transition-nonblocking: with non-blocking commit
- * @transition-nonblocking-fencing: with non-blocking & fencing commit
- */
-
-/**
- * SUBTEST: plane-toggle-modeset-transition
- * Description: Check toggling and modeset transition on plane
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-use-after-nonblocking-%s
- * Description: Transition test with non %arg[1] and make sure commit of disabled
- * plane has to complete before atomic commit on that plane
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @unbind: blocking commit
- * @unbind-fencing: blocking commit with fencing
- */
-
/*
* 1. Set primary plane to a known fb.
* 2. Make sure getcrtc returns the correct fb id.
@@ -1041,21 +1057,6 @@ retry:
}
}
-/**
- * SUBTEST: modeset-%s
- * Description: Modeset transition tests for combinations of %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @transition: crtc enabled
- * @transition-fencing: crtc enabled with fencing commit
- * @transition-nonblocking: crtc enabled with nonblocking commit
- * @transition-nonblocking-fencing: crtc enabled with nonblocking & fencing commit
- */
static void run_modeset_transition(data_t *data, int requested_outputs, bool nonblocking, bool fencing)
{
igt_output_t *outputs[IGT_MAX_PIPES] = {};
diff --git a/tests/kms_bw.c b/tests/kms_bw.c
index 5f9a020da..e00d65cdb 100644
--- a/tests/kms_bw.c
+++ b/tests/kms_bw.c
@@ -20,16 +20,19 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/
+/**
+ * TEST: kms bw
+ * Category: Display
+ * Description: BW test with different resolutions
+ */
+
#include "drm_mode.h"
#include "igt.h"
#include "drm.h"
#include <stdio.h>
#include <xf86drmMode.h>
+
/**
- * TEST: kms bw
- * Category: Display
- * Description: BW test with different resolutions
- *
* SUBTEST: linear-tiling-%d-displays-%s
* Description: bw test with %arg[2]
* Driver requirement: i915, xe
diff --git a/tests/kms_color.c b/tests/kms_color.c
index f59feabd4..119dfc1f4 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -27,9 +27,8 @@
* Category: Display
* Description: Test Color Features at Pipe level
*/
-#include "kms_color_helper.h"
-IGT_TEST_DESCRIPTION("Test Color Features at Pipe level");
+#include "kms_color_helper.h"
/**
* SUBTEST: degamma
@@ -38,7 +37,73 @@ IGT_TEST_DESCRIPTION("Test Color Features at Pipe level");
* Functionality: colorspace
* Mega feature: Color mgmt
* Test category: functionality test
+ *
+ * SUBTEST: gamma
+ * Description: Verify that gamma LUT transformation works correctly
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * SUBTEST: legacy-gamma
+ * Description: Verify that legacy gamma LUT transformation works correctly
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * SUBTEST: legacy-gamma-reset
+ * Description: Verify that setting the legacy gamma LUT resets the gamma LUT
+ * set through GAMMA_LUT property
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * SUBTEST: ctm-%s
+ * Description: Check the color transformation %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: for 0.25 transparency
+ * @0-50: for 0.50 transparency
+ * @0-75: for 0.75 transparency
+ * @blue-to-red: from blue to red
+ * @green-to-red: from green to red
+ * @max: for maximum transparency
+ * @negative: for negative transparency
+ * @red-to-blue: from red to blue
+ * @signed: for correct signed handling
+ */
+
+/**
+ * SUBTEST: deep-color
+ * Description: Verify that deep color works correctly
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * SUBTEST: invalid-%s-sizes
+ * Description: Negative check for %arg[1] sizes
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @ctm-matrix: Color transformation matrix
+ * @degamma-lut: Degamma LUT
+ * @gamma-lut: Gamma LUT
*/
+
+IGT_TEST_DESCRIPTION("Test Color Features at Pipe level");
+
static bool test_pipe_degamma(data_t *data,
igt_plane_t *primary)
{
@@ -127,15 +192,6 @@ static bool test_pipe_degamma(data_t *data,
return ret;
}
-/**
- * SUBTEST: gamma
- * Description: Verify that gamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- */
-
/*
* Draw 3 gradient rectangles in red, green and blue, with a maxed out gamma
* LUT and verify we have the same CRC as drawing solid color rectangles.
@@ -224,15 +280,6 @@ static bool test_pipe_gamma(data_t *data,
return ret;
}
-/**
- * SUBTEST: legacy-gamma
- * Description: Verify that legacy gamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- */
-
/*
* Draw 3 gradient rectangles in red, green and blue, with a maxed out legacy
* gamma LUT and verify we have the same CRC as drawing solid color rectangles
@@ -345,16 +392,6 @@ static bool test_pipe_legacy_gamma(data_t *data,
return ret;
}
-/**
- * SUBTEST: legacy-gamma-reset
- * Description: Verify that setting the legacy gamma LUT resets the gamma LUT
- * set through GAMMA_LUT property
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- */
-
/*
* Verify that setting the legacy gamma LUT resets the gamma LUT set
* through the GAMMA_LUT property.
@@ -489,27 +526,6 @@ end:
return ret;
}
-/**
- * SUBTEST: ctm-%s
- * Description: Check the color transformation %arg[1]
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: for 0.25 transparency
- * @0-50: for 0.50 transparency
- * @0-75: for 0.75 transparency
- * @blue-to-red: from blue to red
- * @green-to-red: from green to red
- * @max: for maximum transparency
- * @negative: for negative transparency
- * @red-to-blue: from red to blue
- * @signed: for correct signed handling
- */
-
/*
* Draw 3 rectangles using before colors with the ctm matrix apply and verify
* the CRC is equal to using after colors with an identify ctm matrix.
@@ -869,14 +885,6 @@ out:
test_cleanup(data);
}
-/**
- * SUBTEST: deep-color
- * Description: Verify that deep color works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- */
static void
run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
{
@@ -978,20 +986,6 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
test_cleanup(data);
}
-/**
- * SUBTEST: invalid-%s-sizes
- * Description: Negative check for %arg[1] sizes
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @ctm-matrix: Color transformation matrix
- * @degamma-lut: Degamma LUT
- * @gamma-lut: Gamma LUT
- */
static void
run_invalid_tests_for_pipe(data_t *data)
{
diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
index d2a781e35..8ba874e6b 100644
--- a/tests/kms_concurrent.c
+++ b/tests/kms_concurrent.c
@@ -22,14 +22,17 @@
*
*/
-#include "igt.h"
-#include "drmtest.h"
/**
* TEST: kms concurrent
* Category: Display
* Description: Test atomic mode setting concurrently with multiple planes and
* screen resolution
- *
+ */
+
+#include "igt.h"
+#include "drmtest.h"
+
+/**
* SUBTEST: multi-plane-atomic-lowres
* Description: Test atomic mode setting concurrently with multiple planes and
* screen resolution.
diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index ea0c4a0ab..00eec0fd5 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -27,6 +27,7 @@
* Category: Display
* Description: Test content protection (HDCP)
*/
+
#include <poll.h>
#include <fcntl.h>
#include <sys/epoll.h>
@@ -37,6 +38,77 @@
#include "igt_kms.h"
#include "igt_kmod.h"
+/**
+ * SUBTEST: lic
+ * Description: Test for the integrity of link.
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * SUBTEST: content-type-change
+ * Description: Test the content type change when the content protection already
+ * enabled
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4, hdcp2.2
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * SUBTEST: mei-interface
+ * Description: Test the teardown and rebuild of the interface between Intel
+ * and mei hdcp.
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4, hdcp2.2
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * SUBTEST: srm
+ * Description: This test writes the facsimile SRM into the /lib/firmware/ and
+ * check the kernel parsing of it by invoking the hdcp authentication.
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * SUBTEST: uevent
+ * Description: Test to detect the HDCP status change when we are reading the
+ * uevent sent with the corresponding connector id and property id.
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * SUBTEST: %s
+ * Description: Test content protection with %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic: atomic modesetting
+ * @atomic-dpms: DPMS ON/OFF during atomic modesetting.
+ * @legacy: legacy style commit
+ * @type1: content type 1 that can be handled only through HDCP2.2.
+ */
+
+/**
+ * SUBTEST: dp-mst-%s
+ * Description: Test Content protection %arg[1] over DP MST.
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4, mst
+ * Mega feature: HDCP
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @lic-type-0: Type 0 with LIC
+ * @lic-type-1: Type 1 with LIC.
+ * @type-0: Type 0
+ * @type-1: Type 1
+ */
+
IGT_TEST_DESCRIPTION("Test content protection (HDCP)");
struct data {
@@ -490,60 +562,6 @@ test_fini(igt_output_t *output, enum igt_commit_style s)
igt_display_commit2(&data.display, s);
}
-/**
- * SUBTEST: lic
- * Description: Test for the integrity of link.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * SUBTEST: content-type-change
- * Description: Test the content type change when the content protection already
- * enabled
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4, hdcp2.2
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * SUBTEST: mei-interface
- * Description: Test the teardown and rebuild of the interface between Intel
- * and mei hdcp.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4, hdcp2.2
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * SUBTEST: srm
- * Description: This test writes the facsimile SRM into the /lib/firmware/ and
- * check the kernel parsing of it by invoking the hdcp authentication.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * SUBTEST: uevent
- * Description: Test to detect the HDCP status change when we are reading the
- * uevent sent with the corresponding connector id and property id.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * SUBTEST: %s
- * Description: Test content protection with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic: atomic modesetting
- * @atomic-dpms: DPMS ON/OFF during atomic modesetting.
- * @legacy: legacy style commit
- * @type1: content type 1 that can be handled only through HDCP2.2.
- */
static void
test_content_protection(enum igt_commit_style s, int content_type)
{
@@ -631,21 +649,6 @@ static void test_cp_lic_on_mst(igt_output_t *mst_outputs[], int valid_outputs, b
}
}
-/**
- * SUBTEST: dp-mst-%s
- * Description: Test Content protection %arg[1] over DP MST.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4, mst
- * Mega feature: HDCP
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @lic-type-0: Type 0 with LIC
- * @lic-type-1: Type 1 with LIC.
- * @type-0: Type 0
- * @type-1: Type 1
- */
static void
test_content_protection_mst(int content_type)
{
diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c
index 76c01f557..1d0eab6f5 100644
--- a/tests/kms_cursor_crc.c
+++ b/tests/kms_cursor_crc.c
@@ -22,13 +22,6 @@
*
*/
-#include "igt.h"
-#include <errno.h>
-#include <limits.h>
-#include <stdbool.h>
-#include <stdio.h>
-#include <string.h>
-
/**
* TEST: kms cursor crc
* Category: Display
@@ -42,6 +35,77 @@
* software.
*/
+#include "igt.h"
+#include <errno.h>
+#include <limits.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <string.h>
+
+/**
+ * SUBTEST: cursor-dpms
+ * Description: Check random placement of a cursor with DPMS.
+ * Driver requirement: i915, xe
+ * Functionality: cursor, dpms
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: cursor-suspend
+ * Description: Check random placement of a cursor with suspend.
+ * Driver requirement: i915, xe
+ * Functionality: cursor, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: cursor-%s
+ * Description: %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @alpha-opaque: Validates the composition of a fully opaque cursor plane,
+ * i.e., alpha channel equal to 1.0.
+ * @alpha-transparent: Validates the composition of a fully transparent cursor
+ * plane, i.e., alpha channel equal to 0.0.
+ * @size-change: Create a maximum size cursor, then change the size in
+ * flight to smaller ones to see that the size is applied
+ * correctly.
+ */
+
+/**
+ * SUBTEST: cursor-%s-%s
+ * Description: Check if a %arg[2] cursor is %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @offscreen: well-positioned outside the screen
+ * @onscreen: well-positioned inside the screen
+ * @random: randomly placed
+ * @rapid-movement: rapidly udates for movements
+ * @sliding: smooth for horizontal, vertical & diagonal movements
+ *
+ * arg[2]:
+ *
+ * @128x128: 128x128 size
+ * @128x42: 128x42 size
+ * @256x256: 256x256 size
+ * @256x85: 256x85 size
+ * @32x10: 32x10 size
+ * @32x32: 32x32 size
+ * @512x170: 512x170 size
+ * @512x512: 512x512 size
+ * @64x21: 64x21 size
+ * @64x64: 64x64 size
+ * @max-size: Max supported size
+ */
+
IGT_TEST_DESCRIPTION(
"Use the display CRC support to validate cursor plane functionality. "
"The test will position the cursor plane either fully onscreen, "
@@ -654,38 +718,6 @@ static bool require_cursor_size(data_t *data, int w, int h)
return !!ret;
}
-/**
- * SUBTEST: cursor-dpms
- * Description: Check random placement of a cursor with DPMS.
- * Driver requirement: i915, xe
- * Functionality: cursor, dpms
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: cursor-suspend
- * Description: Check random placement of a cursor with suspend.
- * Driver requirement: i915, xe
- * Functionality: cursor, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: cursor-%s
- * Description: %arg[1]
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @alpha-opaque: Validates the composition of a fully opaque cursor plane,
- * i.e., alpha channel equal to 1.0.
- * @alpha-transparent: Validates the composition of a fully transparent cursor
- * plane, i.e., alpha channel equal to 0.0.
- * @size-change: Create a maximum size cursor, then change the size in
- * flight to smaller ones to see that the size is applied
- * correctly.
- */
static void run_test(data_t *data, void (*testfunc)(data_t *), int cursor_w, int cursor_h)
{
prepare_crtc(data, cursor_w, cursor_h);
@@ -782,37 +814,6 @@ static bool execution_constraint(enum pipe pipe)
return false;
}
-
-/**
- * SUBTEST: cursor-%s-%s
- * Description: Check if a %arg[2] cursor is %arg[1].
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @offscreen: well-positioned outside the screen
- * @onscreen: well-positioned inside the screen
- * @random: randomly placed
- * @rapid-movement: rapidly udates for movements
- * @sliding: smooth for horizontal, vertical & diagonal movements
- *
- * arg[2]:
- *
- * @128x128: 128x128 size
- * @128x42: 128x42 size
- * @256x256: 256x256 size
- * @256x85: 256x85 size
- * @32x10: 32x10 size
- * @32x32: 32x32 size
- * @512x170: 512x170 size
- * @512x512: 512x512 size
- * @64x21: 64x21 size
- * @64x64: 64x64 size
- * @max-size: Max supported size
- */
static void run_size_tests(data_t *data, int w, int h)
{
enum pipe pipe;
diff --git a/tests/kms_cursor_edge_walk.c b/tests/kms_cursor_edge_walk.c
index 1e233306d..749cd92e4 100644
--- a/tests/kms_cursor_edge_walk.c
+++ b/tests/kms_cursor_edge_walk.c
@@ -22,18 +22,21 @@
*
*/
+/**
+ * TEST: kms cursor edge walk
+ * Category: Display
+ * Description: Exercise CHV pipe C cursor fail
+ * Description: Test to check different cursor sizes by walking different edges of screen
+ */
+
#include "igt.h"
#include <errno.h>
#include <limits.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
+
/**
- * TEST: kms cursor edge walk
- * Category: Display
- * Description: Exercise CHV pipe C cursor fail
- * Description: Test to check different cursor sizes by walking different edges of screen
- *
* SUBTEST: %s-%s
* Description: Checking cursor size %arg[1] by walking %arg[2] of screen
* Driver requirement: i915, xe
diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 861581c93..07c50aba6 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -37,6 +37,256 @@
#include "igt_rand.h"
#include "igt_stats.h"
+/**
+ * SUBTEST: %s-%s
+ * Description: Test checks how many cursor updates we can fit between vblanks
+ * on single/all pipes with different modes, priority and number
+ * of processes
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @single: Single
+ * @torture: Torture
+ * @forked: Forked
+ *
+ * arg[2]:
+ *
+ * @bo: BO
+ * @move: Move
+ */
+
+/**
+ * SUBTEST: basic-busy-flip-before-cursor-%s
+ * Description: Cursor test with %arg[1] mode
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic-busy-flip-before-cursor-varying-size
+ * Description: Change the size of cursor b/w 64*64 to maxw x maxh.
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic: atomic
+ * @legacy: legacy
+ */
+
+/**
+ * SUBTEST: basic-flip-after-cursor-%s
+ * Description: Cursor test with %arg[1]
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic-flip-before-cursor-%s
+ * Description: Cursor test with %arg[1]
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @atomic: atomic mode
+ * @legacy: legacy mode
+ * @varying-size: varying size
+ */
+
+/**
+ * SUBTEST: %s-flip-before-cursor-%s
+ * Description: Adds variety of tests:
+ * - varying-size: change the size of cursor b/w 64*64 to maxw x maxh.\n
+ * - atomic-transition: alternates between a full screen sprite plane
+ * and full screen primary plane.\n"
+ * - toggle: which toggles cursor visibility and make sure cursor moves
+ * between updates.
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @short:
+ * @short-busy:
+ *
+ * arg[2]:
+ *
+ * @atomic-transitions:
+ * @atomic-transitions-varying-size:
+ * @toggle:
+ */
+
+/**
+ * SUBTEST: short-flip-after-cursor-%s
+ * Description: Adds variety of tests:
+ * - varying-size: change the size of cursor b/w 64*64 to maxw x maxh.\n
+ * - atomic-transition: alternates between a full screen sprite plane
+ * and full screen primary plane.\n"
+ * - toggle: which toggles cursor visibility and make sure cursor moves
+ * between updates.
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic-transitions:
+ * @atomic-transitions-varying-size:
+ * @toggle:
+ */
+
+/**
+ * SUBTEST: long-nonblocking-modeset-vs-cursor-atomic
+ * Description: Test checks how many cursor updates we can fit between vblanks
+ * on all pipes with different modes, priority and number of processes
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: nonblocking-modeset-vs-cursor-atomic
+ * Description: Test checks how many cursor updates we can fit between vblanks
+ * on all pipes with different modes, priority and number of processes
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: 2x-%s-%s
+ * Description: This test executes flips on both CRTCs while running cursor
+ * updates in parallel
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @flip-vs-cursor:
+ * @flip-vs-cursor:
+ * @long-flip-vs-cursor:
+ * @long-flip-vs-cursor:
+ *
+ * arg[2]:
+ *
+ * @atomic:
+ * @legacy:
+ */
+
+/**
+ * SUBTEST: 2x-%s-atomic
+ * Description: This test executes flips on both CRTCs while running cursor
+ * updates in parallel
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @long-nonblocking-modeset-vs-cursor:
+ * @nonblocking-modeset-vs-cursor:
+ */
+
+/**
+ * SUBTEST: %s-%s
+ * Description: The essence of the basic test is that neither the cursor nor the
+ * nonblocking flip stall the application of the next
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cursor-vs-flip:
+ * @cursorA-vs-flipA:
+ * @cursorA-vs-flipB:
+ * @cursorB-vs-flipA:
+ * @cursorB-vs-flipB:
+ * @flip-vs-cursor:
+ *
+ * arg[2]:
+ *
+ * @atomic:
+ * @atomic-transitions:
+ * @atomic-transitions-varying-size:
+ * @legacy:
+ * @toggle:
+ * @varying-size:
+ */
+
+/**
+ * SUBTEST: 2x-%s-%s
+ * Description: This test executes flips on both CRTCs while running cursor updates in parallel
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @cursor-vs-flip:
+ * @cursor-vs-flip:
+ * @long-cursor-vs-flip:
+ * @long-cursor-vs-flip:
+ *
+ * arg[2]:
+ *
+ * @atomic:
+ * @legacy:
+ */
+
+/**
+ * SUBTEST: flip-vs-cursor-crc-%s
+ * Description: this test perform a page flip followed by a cursor update
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic:
+ * @legacy:
+ */
+
+/**
+ * SUBTEST: flip-vs-cursor-busy-crc-%s
+ * Description: this test perform a busy bo update followed by a cursor update
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic:
+ * @legacy:
+ */
+
+/**
+ * SUBTEST: modeset-atomic-cursor-hotspot
+ * Description: Test changes the cursor hotspot and checks that the property is
+ * updated accordignly
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#if defined(__x86_64__) || defined(__i386__)
#define cpu_relax() __builtin_ia32_pause()
#else
@@ -78,27 +328,6 @@ static void override_output_modes(igt_display_t *display,
igt_output_set_pipe(output2, PIPE_NONE);
}
-/**
- * SUBTEST: %s-%s
- * Description: Test checks how many cursor updates we can fit between vblanks
- * on single/all pipes with different modes, priority and number
- * of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @single: Single
- * @torture: Torture
- * @forked: Forked
- *
- * arg[2]:
- *
- * @bo: BO
- * @move: Move
- */
static void stress(igt_display_t *display,
enum pipe pipe, int num_children, unsigned mode,
int timeout)
@@ -569,93 +798,6 @@ enum basic_flip_cursor {
#define BASIC_BUSY 0x1
-/**
- * SUBTEST: basic-busy-flip-before-cursor-%s
- * Description: Cursor test with %arg[1] mode
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
- *
- * SUBTEST: basic-busy-flip-before-cursor-varying-size
- * Description: Change the size of cursor b/w 64*64 to maxw x maxh.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic: atomic
- * @legacy: legacy
- */
-
-/**
- * SUBTEST: basic-flip-after-cursor-%s
- * Description: Cursor test with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
- *
- * SUBTEST: basic-flip-before-cursor-%s
- * Description: Cursor test with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
- *
- * arg[1]:
- *
- * @atomic: atomic mode
- * @legacy: legacy mode
- * @varying-size: varying size
- */
-
-/**
- * SUBTEST: %s-flip-before-cursor-%s
- * Description: Adds variety of tests:
- * - varying-size: change the size of cursor b/w 64*64 to maxw x maxh.\n
- * - atomic-transition: alternates between a full screen sprite plane
- * and full screen primary plane.\n"
- * - toggle: which toggles cursor visibility and make sure cursor moves
- * between updates.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @short:
- * @short-busy:
- *
- * arg[2]:
- *
- * @atomic-transitions:
- * @atomic-transitions-varying-size:
- * @toggle:
- */
-
-/**
- * SUBTEST: short-flip-after-cursor-%s
- * Description: Adds variety of tests:
- * - varying-size: change the size of cursor b/w 64*64 to maxw x maxh.\n
- * - atomic-transition: alternates between a full screen sprite plane
- * and full screen primary plane.\n"
- * - toggle: which toggles cursor visibility and make sure cursor moves
- * between updates.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic-transitions:
- * @atomic-transitions-varying-size:
- * @toggle:
- */
static void basic_flip_cursor(igt_display_t *display,
enum flip_test mode,
enum basic_flip_cursor order,
@@ -977,23 +1119,6 @@ static void flip_vs_cursor(igt_display_t *display, enum flip_test mode, int nloo
igt_remove_fb(display->drm_fd, &cursor_fb2);
}
-/**
- * SUBTEST: long-nonblocking-modeset-vs-cursor-atomic
- * Description: Test checks how many cursor updates we can fit between vblanks
- * on all pipes with different modes, priority and number of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: nonblocking-modeset-vs-cursor-atomic
- * Description: Test checks how many cursor updates we can fit between vblanks
- * on all pipes with different modes, priority and number of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void nonblocking_modeset_vs_cursor(igt_display_t *display, int loops)
{
struct igt_fb fb_info, cursor_fb;
@@ -1093,42 +1218,6 @@ static void wait_for_modeset(igt_display_t *display, unsigned flags, int timeout
igt_reset_timeout();
}
-/**
- * SUBTEST: 2x-%s-%s
- * Description: This test executes flips on both CRTCs while running cursor
- * updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @flip-vs-cursor:
- * @flip-vs-cursor:
- * @long-flip-vs-cursor:
- * @long-flip-vs-cursor:
- *
- * arg[2]:
- *
- * @atomic:
- * @legacy:
- */
-
-/**
- * SUBTEST: 2x-%s-atomic
- * Description: This test executes flips on both CRTCs while running cursor
- * updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @long-nonblocking-modeset-vs-cursor:
- * @nonblocking-modeset-vs-cursor:
- */
static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool modeset, bool atomic)
{
struct drm_mode_cursor arg1[2], arg2[2];
@@ -1316,33 +1405,6 @@ done:
munmap((void *)shared, PAGE_SIZE);
}
-/**
- * SUBTEST: %s-%s
- * Description: The essence of the basic test is that neither the cursor nor the
- * nonblocking flip stall the application of the next
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @cursor-vs-flip:
- * @cursorA-vs-flipA:
- * @cursorA-vs-flipB:
- * @cursorB-vs-flipA:
- * @cursorB-vs-flipB:
- * @flip-vs-cursor:
- *
- * arg[2]:
- *
- * @atomic:
- * @atomic-transitions:
- * @atomic-transitions-varying-size:
- * @legacy:
- * @toggle:
- * @varying-size:
- */
static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloops)
{
struct drm_mode_cursor arg[2];
@@ -1455,26 +1517,6 @@ static void cursor_vs_flip(igt_display_t *display, enum flip_test mode, int nloo
igt_remove_fb(display->drm_fd, &cursor_fb2);
}
-/**
- * SUBTEST: 2x-%s-%s
- * Description: This test executes flips on both CRTCs while running cursor updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @cursor-vs-flip:
- * @cursor-vs-flip:
- * @long-cursor-vs-flip:
- * @long-cursor-vs-flip:
- *
- * arg[2]:
- *
- * @atomic:
- * @legacy:
- */
static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool atomic)
{
struct drm_mode_cursor arg[2][2];
@@ -1603,19 +1645,6 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool
munmap((void *)shared, PAGE_SIZE);
}
-/**
- * SUBTEST: flip-vs-cursor-crc-%s
- * Description: this test perform a page flip followed by a cursor update
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic:
- * @legacy:
- */
static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
{
struct drm_mode_cursor arg[2];
@@ -1688,19 +1717,6 @@ static void flip_vs_cursor_crc(igt_display_t *display, bool atomic)
igt_remove_fb(display->drm_fd, &cursor_fb);
}
-/**
- * SUBTEST: flip-vs-cursor-busy-crc-%s
- * Description: this test perform a busy bo update followed by a cursor update
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic:
- * @legacy:
- */
static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
{
struct drm_mode_cursor arg[2];
@@ -1813,15 +1829,6 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
put_ahnd(ahnd);
}
-/**
- * SUBTEST: modeset-atomic-cursor-hotspot
- * Description: Test changes the cursor hotspot and checks that the property is
- * updated accordignly
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void modeset_atomic_cursor_hotspot(igt_display_t *display)
{
struct igt_fb cursor_fb;
diff --git a/tests/kms_display_modes.c b/tests/kms_display_modes.c
index f44d452b7..ad3839981 100644
--- a/tests/kms_display_modes.c
+++ b/tests/kms_display_modes.c
@@ -29,8 +29,27 @@
* Category: Display
* Description: Test Display Modes
*/
+
#include "igt.h"
+/**
+ * SUBTEST: extended-mode-basic
+ * Description: Test for validating display extended mode with a pair of connected
+ * displays
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: mst-extended-mode-negative
+ * Description: Negative test for validating display extended mode with a pair
+ * of connected 2k-4k or 4k-4k displays.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, mst
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#define HDISPLAY_4K 3840
#define VDISPLAY_4K 2160
@@ -205,15 +224,6 @@ static void run_extendedmode_basic(data_t *data,
for_each_connected_output_local((display), (output)) \
for_each_if (igt_pipe_connector_valid((pipe), (output)))
-/**
- * SUBTEST: extended-mode-basic
- * Description: Test for validating display extended mode with a pair of connected
- * displays
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void run_extendedmode_test(data_t *data) {
enum pipe pipe1, pipe2;
igt_output_t *output1, *output2;
@@ -259,15 +269,6 @@ static void run_extendedmode_test(data_t *data) {
}
}
-/**
- * SUBTEST: mst-extended-mode-negative
- * Description: Negative test for validating display extended mode with a pair
- * of connected 2k-4k or 4k-4k displays.
- * Driver requirement: i915, xe
- * Functionality: kms_core, mst
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void run_extendedmode_negative(data_t *data, int pipe1, int pipe2)
{
struct igt_fb fbs[2];
diff --git a/tests/kms_dither.c b/tests/kms_dither.c
index 3387a3b10..5683fe5c5 100644
--- a/tests/kms_dither.c
+++ b/tests/kms_dither.c
@@ -30,11 +30,28 @@
* Category: Display
* Description: Test Dithering block status
*/
+
#include "igt.h"
#include <fcntl.h>
#include <termios.h>
#include <unistd.h>
+/**
+ * SUBTEST: fb-8bpc-vs-panel-6bpc
+ * Description: Framebuffer BPC:8, Panel BPC:6, Expected Dither:Enable
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: fb-8bpc-vs-panel-8bpc
+ * Description: Framebuffer BPC:8, Panel BPC:8, Expected Dither:Disable
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
IGT_TEST_DESCRIPTION("Test Dithering block status");
/* Connector BPC */
@@ -186,21 +203,6 @@ static bool is_supported(igt_output_t *output)
igt_output_get_prop(output, IGT_CONNECTOR_MAX_BPC);
}
-/**
- * SUBTEST: fb-8bpc-vs-panel-6bpc
- * Description: Framebuffer BPC:8, Panel BPC:6, Expected Dither:Enable
- * Driver requirement: i915, xe
- * Functionality: colorspace, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: fb-8bpc-vs-panel-8bpc
- * Description: Framebuffer BPC:8, Panel BPC:8, Expected Dither:Disable
- * Driver requirement: i915, xe
- * Functionality: colorspace, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
run_dither_test(data_t *data, int fb_bpc, int fb_format, int output_bpc)
{
diff --git a/tests/kms_dp_aux_dev.c b/tests/kms_dp_aux_dev.c
index e6a67e22e..597d4c2ef 100644
--- a/tests/kms_dp_aux_dev.c
+++ b/tests/kms_dp_aux_dev.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms dp aux dev
+ * Category: Display
+ * Description: Test that /dev/drm_dp_aux reads work
+ */
+
#include "config.h"
#include <sys/types.h>
@@ -31,11 +37,8 @@
#include "igt.h"
#include "igt_kms.h"
+
/**
- * TEST: kms dp aux dev
- * Category: Display
- * Description: Test that /dev/drm_dp_aux reads work
- *
* SUBTEST:
* Description: Test that /dev/drm_dp_aux reads work
* Driver requirement: i915, xe
diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
index 3a1f6d21d..234ea36c1 100644
--- a/tests/kms_feature_discovery.c
+++ b/tests/kms_feature_discovery.c
@@ -28,7 +28,18 @@
* Description: A metatest that checks for \"features\" presence.
* The subtests here should only skip or pass,
* anything else means we have a serious problem.
- *
+ */
+
+#include "igt.h"
+#ifdef HAVE_CHAMELIUM
+#include "igt_chamelium.h"
+#endif
+#include "igt_kms.h"
+#include "igt_psr.h"
+#include "igt_sysfs.h"
+#include "igt_types.h"
+
+/**
* SUBTEST: display
* Description: Make sure that we have display support with
* some outputs connected.
@@ -76,15 +87,6 @@
* arg[1].values: 2, 3, 4
*/
-#include "igt.h"
-#ifdef HAVE_CHAMELIUM
-#include "igt_chamelium.h"
-#endif
-#include "igt_kms.h"
-#include "igt_psr.h"
-#include "igt_sysfs.h"
-#include "igt_types.h"
-
static igt_display_t display;
IGT_TEST_DESCRIPTION("A metatest that checks for \"features\" presence. "
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index 2c60cdf6d..190400f13 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -41,6 +41,18 @@
#include <sys/time.h>
#include <sys/ioctl.h>
+#ifdef HAVE_LINUX_KD_H
+#include <linux/kd.h>
+#elif HAVE_SYS_KD_H
+#include <sys/kd.h>
+#endif
+#include <time.h>
+#include <pthread.h>
+
+#include "i915/gem_create.h"
+#include "igt_stats.h"
+#include "xe/xe_query.h"
+
/**
* SUBTEST: 2x-flip-vs-fences
* Description: Test to validate pageflips along with avialable fences on a pair
@@ -279,17 +291,40 @@
* @modeset-vs-vblank-race: modeset and check for vblank
*/
-#ifdef HAVE_LINUX_KD_H
-#include <linux/kd.h>
-#elif HAVE_SYS_KD_H
-#include <sys/kd.h>
-#endif
-#include <time.h>
-#include <pthread.h>
-
-#include "i915/gem_create.h"
-#include "igt_stats.h"
-#include "xe/xe_query.h"
+/**
+ * SUBTEST: basic-flip-vs-dpms
+ * Description: Basic test to valide pageflip with dpms
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: dpms, vblank
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic-flip-vs-%s
+ * Description: Basic test to valide pageflip with %arg[1]
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @modeset: modeset
+ * @wf_vblank: wait for vblank
+ *
+ * SUBTEST: basic-plain-flip
+ * Description: Basic test for validating page flip
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-read
+ * Description: Tests that nonblocking reading fails correctly
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
#define TEST_DPMS (1 << 0)
@@ -1804,34 +1839,6 @@ static void run_test_on_crtc_set(struct test_output *o, int *crtc_idxs,
__run_test_on_crtc_set(o, crtc_idxs, crtc_count, duration_ms);
}
-/**
- * SUBTEST: basic-flip-vs-dpms
- * Description: Basic test to valide pageflip with dpms
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: dpms, vblank
- * Mega feature: General Display Features
- *
- * SUBTEST: basic-flip-vs-%s
- * Description: Basic test to valide pageflip with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: vblank
- * Mega feature: General Display Features
- *
- * arg[1]:
- *
- * @modeset: modeset
- * @wf_vblank: wait for vblank
- *
- * SUBTEST: basic-plain-flip
- * Description: Basic test for validating page flip
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: vblank
- * Mega feature: General Display Features
- */
-
static void run_test(int duration, int flags)
{
struct test_output o;
@@ -2016,14 +2023,6 @@ static void kms_flip_exit_handler(int sig)
kmstest_set_connector_dpms(drm_fd, last_connector, DRM_MODE_DPMS_ON);
}
-/**
- * SUBTEST: nonblocking-read
- * Description: Tests that nonblocking reading fails correctly
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_nonblocking_read(int in)
{
char buffer[1024];
diff --git a/tests/kms_flip_event_leak.c b/tests/kms_flip_event_leak.c
index 57f6f64f7..1c0b766b3 100644
--- a/tests/kms_flip_event_leak.c
+++ b/tests/kms_flip_event_leak.c
@@ -22,6 +22,12 @@
*
*/
+/**
+ * TEST: kms flip event leak
+ * Category: Display
+ * Description: Test to validate flip event leak
+ */
+
#include "igt.h"
#include <errno.h>
#include <stdbool.h>
@@ -32,10 +38,6 @@
#include "xe/xe_query.h"
/**
- * TEST: kms flip event leak
- * Category: Display
- * Description: Test to validate flip event leak
- *
* SUBTEST: basic
* Description: This test tries to provoke the kernel into leaking a pending
* page flip event when the fd is closed before the flip has
diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c
index e3b9034db..55e6a7767 100644
--- a/tests/kms_force_connector_basic.c
+++ b/tests/kms_force_connector_basic.c
@@ -30,6 +30,36 @@
#include "igt.h"
+/**
+ * SUBTEST: force-load-detect
+ * Description: Test to detect forced load.
+ * Driver requirement: i915
+ * Functionality: force_connector, vga
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: force-connector-state
+ * Description: Test to check the forced connector state
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: force-edid
+ * Description: Test to check the values after forcing edid
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: prune-stale-modes
+ * Description: Tests pruning of stale modes
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ */
+
IGT_TEST_DESCRIPTION("Check the debugfs force connector/edid features work"
" correctly.");
@@ -69,14 +99,6 @@ static void reset_connectors(void)
drm_close_driver(drm_fd);
}
-/**
- * SUBTEST: force-load-detect
- * Description: Test to detect forced load.
- * Driver requirement: i915
- * Functionality: force_connector, vga
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void force_load_detect(int drm_fd, drmModeConnectorPtr connector, drmModeRes *res)
{
int i, j, w = 64, h = 64;
@@ -165,14 +187,6 @@ static void force_load_detect(int drm_fd, drmModeConnectorPtr connector, drmMode
}
}
-/**
- * SUBTEST: force-connector-state
- * Description: Test to check the forced connector state
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
- */
static void force_connector_state(int drm_fd, drmModeConnectorPtr connector)
{
igt_display_t display;
@@ -212,14 +226,6 @@ static void force_connector_state(int drm_fd, drmModeConnectorPtr connector)
igt_display_fini(&display);
}
-/**
- * SUBTEST: force-edid
- * Description: Test to check the values after forcing edid
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
- */
static void force_edid(int drm_fd, drmModeConnectorPtr connector)
{
drmModeConnector *temp;
@@ -261,14 +267,6 @@ static void force_edid(int drm_fd, drmModeConnectorPtr connector)
}
-/**
- * SUBTEST: prune-stale-modes
- * Description: Tests pruning of stale modes
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
- */
static void prune_stale_modes(int drm_fd, drmModeConnectorPtr connector)
{
int i;
diff --git a/tests/kms_getfb.c b/tests/kms_getfb.c
index 059f66d99..b4a155e2d 100644
--- a/tests/kms_getfb.c
+++ b/tests/kms_getfb.c
@@ -32,6 +32,7 @@
* Category: Display
* Description: Tests GETFB and GETFB2 ioctls.
*/
+
#include "igt.h"
#include <unistd.h>
#include <stdlib.h>
@@ -50,6 +51,88 @@
#include "xe/xe_query.h"
#include "xe/xe_ioctl.h"
+/**
+ * SUBTEST: getfb-handle-%s
+ * Description: Tests error handling %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @closed: when passing a handle that has been closed.
+ * @not-fb: when passing an invalid handle.
+ * @valid: when passing an valid handle.
+ * @zero: for a zero'd input.
+ */
+
+/**
+ * SUBTEST: getfb-reject-ccs
+ * Description: Tests error handling while requesting CCS buffers it should
+ * refuse because getfb supports returning a single buffer handle.
+ * Driver requirement: i915, xe
+ * Functionality: ccs, kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: getfb-%s-different-handles
+ * Description: Tests error handling while requesting for two different handles
+ * from %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @addfb: same fd
+ * @repeated: different fd
+ */
+
+/**
+ * SUBTEST: getfb2-accept-ccs
+ * Description: Tests outputs are correct when retrieving a CCS framebuffer.
+ * Driver requirement: i915, xe
+ * Functionality: ccs, kms_gem_interop, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: getfb2-into-addfb2
+ * Description: Output check by passing the output of GETFB2 into ADDFB2.
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: getfb2-handle-%s
+ * Description: Tests error handling %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @closed: when passing a handle that has been closed
+ * @not-fb: when passing an invalid handle
+ * @zero: for a zero'd input
+ */
+
+/**
+ * SUBTEST: %s-handle-protection
+ * Description: Make sure %arg[1] return handles if caller is non-root or non-master.
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @getfb: GETFB ioctl
+ * @getfb2: GETFB2 ioctl
+ */
+
IGT_TEST_DESCRIPTION("Tests GETFB and GETFB2 ioctls.");
static bool has_getfb_iface(int fd)
@@ -178,21 +261,6 @@ static uint32_t get_any_prop_id(int fd)
return 0;
}
-/**
- * SUBTEST: getfb-handle-%s
- * Description: Tests error handling %arg[1]
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @closed: when passing a handle that has been closed.
- * @not-fb: when passing an invalid handle.
- * @valid: when passing an valid handle.
- * @zero: for a zero'd input.
- */
static void test_handle_input(int fd)
{
struct drm_mode_fb_cmd2 add = {};
@@ -248,28 +316,6 @@ static void test_handle_input(int fd)
gem_close(fd, add.handles[0]);
}
-/**
- * SUBTEST: getfb-reject-ccs
- * Description: Tests error handling while requesting CCS buffers it should
- * refuse because getfb supports returning a single buffer handle.
- * Driver requirement: i915, xe
- * Functionality: ccs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: getfb-%s-different-handles
- * Description: Tests error handling while requesting for two different handles
- * from %arg[1].
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @addfb: same fd
- * @repeated: different fd
- */
static void test_duplicate_handles(int fd)
{
struct drm_mode_fb_cmd2 add = {};
@@ -335,34 +381,6 @@ static void test_duplicate_handles(int fd)
}
}
-/**
- * SUBTEST: getfb2-accept-ccs
- * Description: Tests outputs are correct when retrieving a CCS framebuffer.
- * Driver requirement: i915, xe
- * Functionality: ccs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: getfb2-into-addfb2
- * Description: Output check by passing the output of GETFB2 into ADDFB2.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: getfb2-handle-%s
- * Description: Tests error handling %arg[1].
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @closed: when passing a handle that has been closed
- * @not-fb: when passing an invalid handle
- * @zero: for a zero'd input
- */
static void test_getfb2(int fd)
{
struct drm_mode_fb_cmd2 add_basic = {};
@@ -471,19 +489,6 @@ static void test_getfb2(int fd)
}
}
-/**
- * SUBTEST: %s-handle-protection
- * Description: Make sure %arg[1] return handles if caller is non-root or non-master.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @getfb: GETFB ioctl
- * @getfb2: GETFB2 ioctl
- */
static void test_handle_protection(void) {
int non_master_fd;
struct drm_mode_fb_cmd2 non_master_add = {};
diff --git a/tests/kms_hdmi_inject.c b/tests/kms_hdmi_inject.c
index 61f62fa7c..3a279e2c9 100644
--- a/tests/kms_hdmi_inject.c
+++ b/tests/kms_hdmi_inject.c
@@ -22,6 +22,14 @@
*
*/
+/**
+ * TEST: kms hdmi inject
+ * Category: Display
+ * Description: Test that in-kernel EDID parsing is producing expected results
+ * by forcing a HDMI connector with a known EDID and checking that
+ * the metadata exposed to user space matches.
+ */
+
#include "config.h"
#include <dirent.h>
@@ -32,12 +40,6 @@
#include "xe/xe_query.h"
/**
- * TEST: kms hdmi inject
- * Category: Display
- * Description: Test that in-kernel EDID parsing is producing expected results
- * by forcing a HDMI connector with a known EDID and checking that
- * the metadata exposed to user space matches.
- *
* SUBTEST: inject-4k
* Description: Make sure that 4K modes exposed by DRM match the forced EDID and
* modesetting using it succeed.
diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c
index ed98a0c26..215f81892 100644
--- a/tests/kms_hdr.c
+++ b/tests/kms_hdr.c
@@ -25,12 +25,76 @@
* Category: Display
* Description: Test HDR metadata interfaces and bpc switch
*/
+
#include "igt.h"
#include <fcntl.h>
#include <termios.h>
#include <unistd.h>
#include "igt_edid.h"
+/**
+ * SUBTEST: bpc-switch
+ * Description: Tests switching between different display output bpc modes
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: bpc-switch-dpms
+ * Description: Tests switching between different display output bpc modes with dpms
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, dpms, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: bpc-switch-suspend
+ * Description: Tests switching between different display output bpc modes with suspend
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr, suspend
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: invalid-hdr
+ * Description: Test to ensure HDR is not enabled on non-HDR panel
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: invalid-metadata-sizes
+ * Description: Tests invalid HDR metadata sizes
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: static-toggle-dpms
+ * Description: Tests static toggle with dpms
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, dpms, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: static-toggle-suspend
+ * Description: Tests static toggle with suspend
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr, suspend
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * SUBTEST: static-%s
+ * Description: Tests %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @swap: swapping static HDR metadata
+ * @toggle: entering and exiting HDR mode
+ */
+
IGT_TEST_DESCRIPTION("Test HDR metadata interfaces and bpc switch");
/* HDR EDID parsing. */
@@ -213,28 +277,6 @@ static bool has_max_bpc(igt_output_t *output)
igt_output_get_prop(output, IGT_CONNECTOR_MAX_BPC);
}
-/**
- * SUBTEST: bpc-switch
- * Description: Tests switching between different display output bpc modes
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: bpc-switch-dpms
- * Description: Tests switching between different display output bpc modes with dpms
- * Driver requirement: i915, xe
- * Functionality: colorspace, dpms, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: bpc-switch-suspend
- * Description: Tests switching between different display output bpc modes with suspend
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr, suspend
- * Mega feature: HDR
- * Test category: functionality test
- */
static void test_bpc_switch(data_t *data, uint32_t flags)
{
igt_display_t *display = &data->display;
@@ -588,47 +630,6 @@ static bool has_hdr(igt_output_t *output)
return igt_output_has_prop(output, IGT_CONNECTOR_HDR_OUTPUT_METADATA);
}
-/**
- * SUBTEST: invalid-hdr
- * Description: Test to ensure HDR is not enabled on non-HDR panel
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: invalid-metadata-sizes
- * Description: Tests invalid HDR metadata sizes
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: static-toggle-dpms
- * Description: Tests static toggle with dpms
- * Driver requirement: i915, xe
- * Functionality: colorspace, dpms, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: static-toggle-suspend
- * Description: Tests static toggle with suspend
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr, suspend
- * Mega feature: HDR
- * Test category: functionality test
- *
- * SUBTEST: static-%s
- * Description: Tests %arg[1].
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @swap: swapping static HDR metadata
- * @toggle: entering and exiting HDR mode
- */
static void test_hdr(data_t *data, uint32_t flags)
{
igt_display_t *display = &data->display;
diff --git a/tests/kms_invalid_mode.c b/tests/kms_invalid_mode.c
index db7b703c0..011936c32 100644
--- a/tests/kms_invalid_mode.c
+++ b/tests/kms_invalid_mode.c
@@ -28,6 +28,7 @@
* Description: Make sure all modesets are rejected when the requested mode is
* invalid
*/
+
#include "igt.h"
#include <limits.h>
#include <stdbool.h>
diff --git a/tests/kms_multipipe_modeset.c b/tests/kms_multipipe_modeset.c
index a968a3513..e67392668 100644
--- a/tests/kms_multipipe_modeset.c
+++ b/tests/kms_multipipe_modeset.c
@@ -24,12 +24,15 @@
* Karthik B S <karthik.b.s@intel.com>
*/
-#include "igt.h"
/**
* TEST: kms multipipe modeset
* Category: Display
* Description: Test simultaneous modeset on all the supported pipes
- *
+ */
+
+#include "igt.h"
+
+/**
* SUBTEST: basic-max-pipe-crc-check
* Description: Verify if simultaneous modesets on all the supported pipes is
* successful. Validate using CRC verification
diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c
index a583e1435..af0c756ed 100644
--- a/tests/kms_panel_fitting.c
+++ b/tests/kms_panel_fitting.c
@@ -22,15 +22,18 @@
*
*/
+/**
+ * TEST: kms panel fitting
+ * Category: Display
+ * Description: Test display panel fitting
+ */
+
#include "igt.h"
#include <limits.h>
#include <math.h>
#include <sys/stat.h>
+
/**
- * TEST: kms panel fitting
- * Category: Display
- * Description: Test display panel fitting
- *
* SUBTEST: atomic-fastset
* Description: Tests panel fitting usages with atomic fastset.
* Driver requirement: i915, xe
diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index d980c3786..9671a2d61 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -36,6 +36,81 @@
#include <string.h>
#include <fcntl.h>
+/**
+ * SUBTEST: bad-source
+ * Description: Tests error handling when the bad source is set.
+ * Driver requirement: i915, xe
+ * Functionality: crc
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: read-crc
+ * Description: Test for pipe CRC reads
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: read-crc-frame-sequence
+ * Description: Tests the pipe CRC read and ensure frame sequence
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-crc
+ * Description: Test for O_NONBLOCK CRC reads
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-crc-frame-sequence
+ * Description: Test for O_NONBLOCK CRC reads and ensure frame sequence
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: suspend-read-crc
+ * Description: Suspend test for pipe CRC reads
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc, suspend
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: hang-read-crc
+ * Description: Hang test for pipe CRC read
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc, hang
+ * Mega feature: General Display Features
+ */
+
+/**
+ * SUBTEST: compare-crc-sanitycheck-%s
+ * Description: Basic sanity check for CRC mismatches with %arg[1]
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: crc, pixel_format
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @xr24: XR24 format
+ * @nv12: NV12 format
+ */
+
+/**
+ * SUBTEST: disable-crc-after-crtc
+ * Description: Check that disabling CRCs on a CRTC after having disabled the
+ * CRTC does not cause issues.
+ * Driver requirement: i915, xe
+ * Functionality: crc
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
static bool extended;
static enum pipe active_pipes[IGT_MAX_PIPES];
static uint32_t last_pipe;
@@ -65,14 +140,6 @@ static bool simulation_constraint(enum pipe pipe)
return false;
}
-/**
- * SUBTEST: bad-source
- * Description: Tests error handling when the bad source is set.
- * Driver requirement: i915, xe
- * Functionality: crc
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_bad_source(data_t *data)
{
errno = 0;
@@ -94,49 +161,6 @@ enum {
TEST_HANG = 1 << 3,
};
-/**
- * SUBTEST: read-crc
- * Description: Test for pipe CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
- *
- * SUBTEST: read-crc-frame-sequence
- * Description: Tests the pipe CRC read and ensure frame sequence
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
- *
- * SUBTEST: nonblocking-crc
- * Description: Test for O_NONBLOCK CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
- *
- * SUBTEST: nonblocking-crc-frame-sequence
- * Description: Test for O_NONBLOCK CRC reads and ensure frame sequence
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
- *
- * SUBTEST: suspend-read-crc
- * Description: Suspend test for pipe CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc, suspend
- * Mega feature: General Display Features
- *
- * SUBTEST: hang-read-crc
- * Description: Hang test for pipe CRC read
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc, hang
- * Mega feature: General Display Features
- */
static void test_read_crc(data_t *data, enum pipe pipe,
igt_output_t *output, unsigned flags)
{
@@ -234,20 +258,6 @@ static void test_read_crc(data_t *data, enum pipe pipe,
igt_display_commit(display);
}
-/**
- * SUBTEST: compare-crc-sanitycheck-%s
- * Description: Basic sanity check for CRC mismatches with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc, pixel_format
- * Mega feature: General Display Features
- *
- * arg[1]:
- *
- * @xr24: XR24 format
- * @nv12: NV12 format
- */
-
/*
* CRC-sanity test, to make sure there would be no CRC mismatches
*
@@ -313,15 +323,6 @@ static void test_compare_crc(data_t *data, enum pipe pipe, igt_output_t *output,
igt_remove_fb(data->drm_fd, &fb1);
}
-/**
- * SUBTEST: disable-crc-after-crtc
- * Description: Check that disabling CRCs on a CRTC after having disabled the
- * CRTC does not cause issues.
- * Driver requirement: i915, xe
- * Functionality: crc
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_disable_crc_after_crtc(data_t *data, enum pipe pipe,
igt_output_t *output)
{
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 24df7e8ca..c02bca6ea 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -29,6 +29,7 @@
* Category: Display
* Description: Testes for KMS Plane
*/
+
#include "igt.h"
#include "igt_vec.h"
#include <errno.h>
@@ -37,6 +38,73 @@
#include <string.h>
#include "xe/xe_query.h"
+/**
+ * SUBTEST: plane-position-%s
+ * Description: Verify plane position using two planes to create a %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-position-hole-dpms
+ * Description: Verify plane position using two planes to create a partially
+ * covered screen and check for DPMS
+ * Driver requirement: i915, xe
+ * Functionality: dpms, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @covered: fully covered screen
+ * @hole: partially covered screen
+ */
+
+/**
+ * SUBTEST: plane-panning-%s
+ * Description: Verify plane panning at %arg[1] using primary plane
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-panning-bottom-right-suspend
+ * Description: Verify plane panning at bottom-right position with suspend using
+ * primary plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, suspend
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @bottom-right: bottom-right position
+ * @top-left: top-left position
+ */
+
+/**
+ * SUBTEST: pixel-%s
+ * Description: verify the pixel formats for given plane and pipe
+ * Driver requirement: i915, xe
+ * Functionality: pixel_format, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @format:
+ * @format-source-clamping: with source clamping
+ */
+
+/**
+ * SUBTEST: planar-pixel-format-settings
+ * Description: verify planar settings for pixel format are handled correctly
+ * Driver requirement: i915, xe
+ * Functionality: pixel_format, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
/*
* Throw away enough lsbs in pixel formats tests
* to get a match despite some differences between
@@ -287,27 +355,6 @@ test_plane_position_with_output(data_t *data,
igt_remove_fb(data->drm_fd, &sprite_fb);
}
-/**
- * SUBTEST: plane-position-%s
- * Description: Verify plane position using two planes to create a %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-position-hole-dpms
- * Description: Verify plane position using two planes to create a partially
- * covered screen and check for DPMS
- * Driver requirement: i915, xe
- * Functionality: dpms, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @covered: fully covered screen
- * @hole: partially covered screen
- */
static void
test_plane_position(data_t *data, enum pipe pipe)
{
@@ -416,27 +463,6 @@ test_plane_panning_with_output(data_t *data,
igt_remove_fb(data->drm_fd, &primary_fb);
}
-/**
- * SUBTEST: plane-panning-%s
- * Description: Verify plane panning at %arg[1] using primary plane
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-panning-bottom-right-suspend
- * Description: Verify plane panning at bottom-right position with suspend using
- * primary plane
- * Driver requirement: i915, xe
- * Functionality: plane, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @bottom-right: bottom-right position
- * @top-left: top-left position
- */
static void
test_plane_panning(data_t *data, enum pipe pipe)
{
@@ -1162,19 +1188,6 @@ static bool skip_plane(data_t *data, igt_plane_t *plane)
return index != 0 && index != 3 && index != 5;
}
-/**
- * SUBTEST: pixel-%s
- * Description: verify the pixel formats for given plane and pipe
- * Driver requirement: i915, xe
- * Functionality: pixel_format, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @format:
- * @format-source-clamping: with source clamping
- */
static void
test_pixel_formats(data_t *data, enum pipe pipe)
{
@@ -1231,14 +1244,6 @@ test_pixel_formats(data_t *data, enum pipe pipe)
igt_assert_f(result, "At least one CRC mismatch happened\n");
}
-/**
- * SUBTEST: planar-pixel-format-settings
- * Description: verify planar settings for pixel format are handled correctly
- * Driver requirement: i915, xe
- * Functionality: pixel_format, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_planar_settings(data_t *data)
{
enum pipe pipe = PIPE_A;
diff --git a/tests/kms_plane_alpha_blend.c b/tests/kms_plane_alpha_blend.c
index bff624ebe..636cfcca4 100644
--- a/tests/kms_plane_alpha_blend.c
+++ b/tests/kms_plane_alpha_blend.c
@@ -29,8 +29,56 @@
* Category: Display
* Description: Test plane alpha and blending mode properties
*/
+
#include "igt.h"
+/**
+ * SUBTEST: alpha-%s
+ * Description: Test to %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @7efc: validate alpha values 0x7e and 0xfc are swappable on
+ * pre-multiplied blend mode.
+ * @basic: basic plane alpha properties.
+ * @opaque-fb: alpha properties with opaque fb.
+ * @transparent-fb: alpha property with transparent fb.
+ */
+
+/**
+ * SUBTEST: coverage-vs-premult-vs-constant
+ * Description: Tests pipe coverage blending properties.
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: coverage-7efc
+ * Description: Uses alpha values 0x7e and 0xfc to validate fg.alpha and
+ * plane_alpha are swappable on coverage blend mode.
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: constant-alpha-%s
+ * Description: Tests plane alpha and blending properties with %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @max: maximum alpha value
+ * @mid: medium alpha value
+ * @min: minimum alpha value
+ */
+
IGT_TEST_DESCRIPTION("Test plane alpha and blending mode properties");
static bool extended;
@@ -482,52 +530,6 @@ static void coverage_premult_constant(data_t *data, enum pipe pipe, igt_plane_t
igt_pipe_crc_stop(data->pipe_crc);
}
-/**
- * SUBTEST: alpha-%s
- * Description: Test to %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @7efc: validate alpha values 0x7e and 0xfc are swappable on
- * pre-multiplied blend mode.
- * @basic: basic plane alpha properties.
- * @opaque-fb: alpha properties with opaque fb.
- * @transparent-fb: alpha property with transparent fb.
- */
-
-/**
- * SUBTEST: coverage-vs-premult-vs-constant
- * Description: Tests pipe coverage blending properties.
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: coverage-7efc
- * Description: Uses alpha values 0x7e and 0xfc to validate fg.alpha and
- * plane_alpha are swappable on coverage blend mode.
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: constant-alpha-%s
- * Description: Tests plane alpha and blending properties with %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @max: maximum alpha value
- * @mid: medium alpha value
- * @min: minimum alpha value
- */
static void run_test_on_pipe_planes(data_t *data, enum pipe pipe, igt_output_t *output,
bool blend, bool must_multiply,
void(*test)(data_t *, enum pipe, igt_plane_t *))
diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c
index 22c5a709d..76a4ddba7 100644
--- a/tests/kms_plane_cursor.c
+++ b/tests/kms_plane_cursor.c
@@ -20,13 +20,15 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/
-#include "igt.h"
-
/**
* TEST: kms plane cursor
* Category: Display
* Description: Tests cursor interactions with primary and overlay planes.
- *
+ */
+
+#include "igt.h"
+
+/**
* SUBTEST: overlay
* Description: Tests atomic cursor positioning on primary plane and overlay plane
* Driver requirement: i915, xe
diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index d9a175c9b..79d48b6c5 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -28,6 +28,7 @@
* Description: Test atomic mode setting with a plane by switching between high
* and low resolutions
*/
+
#include "igt.h"
#include "drmtest.h"
#include <errno.h>
@@ -36,6 +37,31 @@
#include <string.h>
#include <time.h>
+/**
+ * SUBTEST: tiling-none
+ * Description: Tests the visibility of the planes when switching between high
+ * and low resolution with Linear buffer (no tiling)
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: tiling-%s
+ * Description: Tests the visibility of the planes when switching between high
+ * and low resolution with %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: plane, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4: 4-tiling
+ * @x: x-tiling
+ * @y: y-tiling
+ * @yf: yf-tiling
+ */
+
IGT_TEST_DESCRIPTION("Test atomic mode setting with a plane by switching between high and low resolutions");
#define SDR_PLANE_BASE 3
@@ -267,30 +293,6 @@ static void test_cleanup(data_t *data)
igt_display_commit2(&data->display, COMMIT_ATOMIC);
}
-/**
- * SUBTEST: tiling-none
- * Description: Tests the visibility of the planes when switching between high
- * and low resolution with Linear buffer (no tiling)
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: tiling-%s
- * Description: Tests the visibility of the planes when switching between high
- * and low resolution with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4: 4-tiling
- * @x: x-tiling
- * @y: y-tiling
- * @yf: yf-tiling
- */
static void run_test(data_t *data, uint64_t modifier)
{
enum pipe pipe;
diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index b1ae35161..0d07beefc 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -27,6 +27,7 @@
* Category: Display
* Description: Test atomic mode setting with multiple planes.
*/
+
#include "igt.h"
#include "drmtest.h"
#include <errno.h>
@@ -35,6 +36,33 @@
#include <string.h>
#include <time.h>
+/**
+ * SUBTEST: tiling-none
+ * Description: Check that the kernel handles atomic updates of multiple planes
+ * correctly by changing their geometry and making sure the changes
+ * are reflected immediately after each commit.
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: tiling-%s
+ * Description: Check that the kernel handles atomic updates of multiple planes
+ * correctly by changing their geometry and making sure the changes
+ * are reflected immediately after each commit.
+ * Driver requirement: i915, xe
+ * Functionality: plane, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4: 4-tiling
+ * @x: x-tiling
+ * @y: y-tiling
+ * @yf: yf-tiling
+ */
+
IGT_TEST_DESCRIPTION("Test atomic mode setting with multiple planes.");
#define SIZE_PLANE 256
@@ -378,32 +406,6 @@ test_plane_position(data_t *data, enum pipe pipe, igt_output_t *output, uint64_t
n_planes, modifier);
}
-/**
- * SUBTEST: tiling-none
- * Description: Check that the kernel handles atomic updates of multiple planes
- * correctly by changing their geometry and making sure the changes
- * are reflected immediately after each commit.
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: tiling-%s
- * Description: Check that the kernel handles atomic updates of multiple planes
- * correctly by changing their geometry and making sure the changes
- * are reflected immediately after each commit.
- * Driver requirement: i915, xe
- * Functionality: plane, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4: 4-tiling
- * @x: x-tiling
- * @y: y-tiling
- * @yf: yf-tiling
- */
static void run_test(data_t *data, uint64_t modifier)
{
enum pipe pipe;
diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 720e82d38..2c27d6e4a 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -27,10 +27,250 @@
* Category: Display
* Description: Test display plane scaling
*/
+
#include "igt.h"
#include "igt_vec.h"
#include <math.h>
+/**
+ * SUBTEST: plane-scaler-unity-scaling-with-modifiers
+ * Description: Tests scaling with modifiers, unity scaling.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-scaler-with-clipping-clamping-modifiers
+ * Description: Tests scaling with clipping and clamping, modifiers.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-upscale-%s-with-modifiers
+ * Description: Tests upscaling with modifiers %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @20x20: from 20x20 fb
+ * @factor-0-25: for 0.25 scaling factor
+ */
+
+/**
+ * SUBTEST: plane-downscale-factor-%s-with-modifiers
+ * Description: Tests downscaling with modifiers for %arg[1] scaling factor.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ */
+
+/**
+ * SUBTEST: plane-scaler-unity-scaling-with-rotation
+ * Description: Tests scaling with rotation, unity scaling.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-scaler-with-clipping-clamping-rotation
+ * Description: Tests scaling with clipping and clamping, rotation.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-upscale-%s-with-rotation
+ * Description: Tests upscaling with rotation %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @20x20: from 20x20 fb
+ * @factor-0-25: for 0.25 scaling factor
+ */
+
+/**
+ * SUBTEST: plane-downscale-factor-%s-with-rotation
+ * Description: Tests downscaling with rotation for %arg[1] scaling factor.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ */
+
+/**
+ * SUBTEST: plane-scaler-unity-scaling-with-pixel-format
+ * Description: Tests scaling with pixel formats, unity scaling.
+ * Driver requirement: i915, xe
+ * Functionality: pixel_formats, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-scaler-with-clipping-clamping-pixel-formats
+ * Description: Tests scaling with clipping and clamping, pixel formats.
+ * Driver requirement: i915, xe
+ * Functionality: pixel_formats, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: plane-upscale-%s-with-pixel-format
+ * Description: Tests upscaling with pixel formats %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: pixel_formats, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @20x20: from 20x20 fb
+ * @factor-0-25: for 0.25 scaling factor
+ */
+
+/**
+ * SUBTEST: plane-downscale-factor-%s-with-pixel-format
+ * Description: Tests downscaling with pixel formats for %arg[1] scaling factor.
+ * Driver requirement: i915, xe
+ * Functionality: pixel_formats, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ */
+
+/**
+ * SUBTEST: planes-downscale-factor-%s
+ * Description: Tests downscaling of 2 planes for %arg[1] scaling factor.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ */
+
+/**
+ * SUBTEST: planes-downscale-factor-%s-%s
+ * Description: Tests downscaling (scaling factor %arg[1]) and upscaling (%arg[2])
+ * of 2 planes.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ *
+ * arg[2]:
+ *
+ * @upscale-20x20: upscale 20x20
+ * @upscale-factor-0-25: scaling factor 0.25
+ * @unity-scaling: Unity
+ */
+
+/**
+ * SUBTEST: planes-scaler-unity-scaling
+ * Description: Tests scaling of 2 planes, unity scaling.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: planes-upscale-%s
+ * Description: Tests upscaling of 2 planes %arg[1].
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @20x20: from 20x20 fb
+ * @factor-0-25: for 0.25 scaling factor
+ */
+
+/**
+ * SUBTEST: planes-%s-downscale-factor-%s
+ * Description: Tests scaling (%arg[1]) and downscaling (scaling factor %arg[2])
+ * of 2 planes.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @unity-scaling: Unity
+ * @upscale-factor-0-25: scaling factor 0.25
+ * @upscale-20x20: upscale 20x20
+ *
+ * arg[2]:
+ *
+ * @0-25: 0.25
+ * @0-5: 0.5
+ * @0-75: 0.75
+ */
+
+/**
+ * SUBTEST: invalid-num-scalers
+ * Description: Negative test for number of scalers per pipe.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: 2x-scaler-multi-pipe
+ * Description: Tests scaling with multi-pipe.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: invalid-parameters
+ * Description: Test parameters which should not be accepted
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: intel-max-src-size
+ * Description: Test for validating max source size.
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
IGT_TEST_DESCRIPTION("Test display plane scaling");
enum scaler_combo_test_type {
@@ -529,48 +769,6 @@ static const uint64_t modifiers[] = {
I915_FORMAT_MOD_4_TILED
};
-/**
- * SUBTEST: plane-scaler-unity-scaling-with-modifiers
- * Description: Tests scaling with modifiers, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-scaler-with-clipping-clamping-modifiers
- * Description: Tests scaling with clipping and clamping, modifiers.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-upscale-%s-with-modifiers
- * Description: Tests upscaling with modifiers %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @20x20: from 20x20 fb
- * @factor-0-25: for 0.25 scaling factor
- */
-
-/**
- * SUBTEST: plane-downscale-factor-%s-with-modifiers
- * Description: Tests downscaling with modifiers for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- */
static void test_scaler_with_modifier_pipe(data_t *d,
int width, int height,
bool is_upscale,
@@ -603,48 +801,6 @@ static void test_scaler_with_modifier_pipe(data_t *d,
}
}
-/**
- * SUBTEST: plane-scaler-unity-scaling-with-rotation
- * Description: Tests scaling with rotation, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-scaler-with-clipping-clamping-rotation
- * Description: Tests scaling with clipping and clamping, rotation.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-upscale-%s-with-rotation
- * Description: Tests upscaling with rotation %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @20x20: from 20x20 fb
- * @factor-0-25: for 0.25 scaling factor
- */
-
-/**
- * SUBTEST: plane-downscale-factor-%s-with-rotation
- * Description: Tests downscaling with rotation for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- */
static void test_scaler_with_rotation_pipe(data_t *d,
int width, int height,
bool is_upscale,
@@ -678,48 +834,6 @@ static void test_scaler_with_rotation_pipe(data_t *d,
}
}
-/**
- * SUBTEST: plane-scaler-unity-scaling-with-pixel-format
- * Description: Tests scaling with pixel formats, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-scaler-with-clipping-clamping-pixel-formats
- * Description: Tests scaling with clipping and clamping, pixel formats.
- * Driver requirement: i915, xe
- * Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: plane-upscale-%s-with-pixel-format
- * Description: Tests upscaling with pixel formats %arg[1].
- * Driver requirement: i915, xe
- * Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @20x20: from 20x20 fb
- * @factor-0-25: for 0.25 scaling factor
- */
-
-/**
- * SUBTEST: plane-downscale-factor-%s-with-pixel-format
- * Description: Tests downscaling with pixel formats for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- */
static void test_scaler_with_pixel_format_pipe(data_t *d, int width, int height, bool is_upscale,
enum pipe pipe, igt_output_t *output)
{
@@ -855,83 +969,6 @@ static void setup_fb(int fd, int width, int height, struct igt_fb *fb)
fb);
}
-/**
- * SUBTEST: planes-downscale-factor-%s
- * Description: Tests downscaling of 2 planes for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- */
-/**
- * SUBTEST: planes-downscale-factor-%s-%s
- * Description: Tests downscaling (scaling factor %arg[1]) and upscaling (%arg[2])
- * of 2 planes.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- *
- * arg[2]:
- *
- * @upscale-20x20: upscale 20x20
- * @upscale-factor-0-25: scaling factor 0.25
- * @unity-scaling: Unity
- */
-/**
- * SUBTEST: planes-scaler-unity-scaling
- * Description: Tests scaling of 2 planes, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: planes-upscale-%s
- * Description: Tests upscaling of 2 planes %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @20x20: from 20x20 fb
- * @factor-0-25: for 0.25 scaling factor
- */
-/**
- * SUBTEST: planes-%s-downscale-factor-%s
- * Description: Tests scaling (%arg[1]) and downscaling (scaling factor %arg[2])
- * of 2 planes.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @unity-scaling: Unity
- * @upscale-factor-0-25: scaling factor 0.25
- * @upscale-20x20: upscale 20x20
- *
- * arg[2]:
- *
- * @0-25: 0.25
- * @0-5: 0.5
- * @0-75: 0.75
- */
-
static void
test_planes_scaling_combo(data_t *d, int w1, int h1, int w2, int h2,
enum pipe pipe, igt_output_t *output,
@@ -990,14 +1027,6 @@ test_planes_scaling_combo(data_t *d, int w1, int h1, int w2, int h2,
cleanup_fbs(d);
}
-/**
- * SUBTEST: invalid-num-scalers
- * Description: Negative test for number of scalers per pipe.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void
test_invalid_num_scalers(data_t *d, enum pipe pipe, igt_output_t *output)
{
@@ -1063,14 +1092,6 @@ test_invalid_num_scalers(data_t *d, enum pipe pipe, igt_output_t *output)
cleanup_fbs(d);
}
-/**
- * SUBTEST: 2x-scaler-multi-pipe
- * Description: Tests scaling with multi-pipe.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_scaler_with_multi_pipe_plane(data_t *d)
{
igt_display_t *display = &d->display;
@@ -1158,14 +1179,6 @@ static void test_scaler_with_multi_pipe_plane(data_t *d)
igt_assert_eq(ret1 && ret2, 0);
}
-/**
- * SUBTEST: invalid-parameters
- * Description: Test parameters which should not be accepted
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void invalid_parameter_tests(data_t *d)
{
enum pipe pipe = PIPE_A;
@@ -1248,15 +1261,6 @@ static drmModeModeInfo *find_mode(data_t *data, igt_output_t *output, const uint
return mode;
}
-/**
- * SUBTEST: intel-max-src-size
- * Description: Test for validating max source size.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/*
* Max source/destination width/height for intel driver.
* These numbers are coming from
diff --git a/tests/kms_prime.c b/tests/kms_prime.c
index 14e44869d..c8ab2f6fd 100644
--- a/tests/kms_prime.c
+++ b/tests/kms_prime.c
@@ -21,6 +21,12 @@
* IN THE SOFTWARE.
*/
+/**
+ * TEST: kms prime
+ * Category: Display
+ * Description: Prime tests, focusing on KMS side
+ */
+
#include "igt.h"
#include "igt_device.h"
#include "igt_debugfs.h"
@@ -30,11 +36,8 @@
#include <sys/ioctl.h>
#include <sys/poll.h>
#include <time.h>
+
/**
- * TEST: kms prime
- * Category: Display
- * Description: Prime tests, focusing on KMS side
- *
* SUBTEST: D3hot
* Description: Validate pci state of dGPU when dGPU is idle and scanout is on iGPU
* Driver requirement: i915, xe
diff --git a/tests/kms_prop_blob.c b/tests/kms_prop_blob.c
index c92525227..199c673e3 100644
--- a/tests/kms_prop_blob.c
+++ b/tests/kms_prop_blob.c
@@ -30,12 +30,61 @@
* Category: Display
* Description: Tests behaviour of mass-data 'blob' properties.
*/
+
#include "igt.h"
#include <errno.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
+/**
+ * SUBTEST: blob-multiple
+ * Description: Test validates destroying multiple properties explicitly works as needed.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: blob-prop-%s
+ * Description: Tests validates the %arg[1] of the properties created.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @core: validity
+ * @lifetime: lifetime
+ * @validate: blob size
+ */
+
+/**
+ * SUBTEST: basic
+ * Description: Test to ensure property support exists
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: invalid-%s-%s
+ * Description: Tests error handling when invalid properties are %ar[1] with %arg[2].
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @get: fetched
+ * @set: set
+ *
+ * arg[2]:
+ *
+ * @prop: blob object type
+ * @prop-any: object of any type
+ */
+
IGT_TEST_DESCRIPTION("Tests behaviour of mass-data 'blob' properties.");
static const struct drm_mode_modeinfo test_mode_valid = {
@@ -123,27 +172,6 @@ destroy_prop(int fd, uint32_t prop_id)
return 0;
}
-/**
- * SUBTEST: blob-multiple
- * Description: Test validates destroying multiple properties explicitly works as needed.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: blob-prop-%s
- * Description: Tests validates the %arg[1] of the properties created.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @core: validity
- * @lifetime: lifetime
- * @validate: blob size
- */
static void
test_validate(int fd)
{
@@ -264,14 +292,6 @@ test_core(int fd)
igt_assert_eq(validate_prop(fd, 0), ENOENT);
}
-/**
- * SUBTEST: basic
- * Description: Test to ensure property support exists
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_core
- * Mega feature: General Display Features
- */
static void
test_basic(int fd)
{
@@ -282,24 +302,6 @@ test_basic(int fd)
igt_assert_eq(destroy_prop(fd, prop_id), 0);
}
-/**
- * SUBTEST: invalid-%s-%s
- * Description: Tests error handling when invalid properties are %ar[1] with %arg[2].
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @get: fetched
- * @set: set
- *
- * arg[2]:
- *
- * @prop: blob object type
- * @prop-any: object of any type
- */
static void prop_tests(int fd)
{
struct drm_mode_obj_get_properties get_props = {};
diff --git a/tests/kms_properties.c b/tests/kms_properties.c
index 328436622..28c3593e5 100644
--- a/tests/kms_properties.c
+++ b/tests/kms_properties.c
@@ -21,6 +21,12 @@
* IN THE SOFTWARE.
*/
+/**
+ * TEST: kms properties
+ * Category: Display
+ * Description: Test to validate the properties of all planes, crtc and connectors
+ */
+
#include "igt.h"
#include "drmtest.h"
#include <errno.h>
@@ -28,11 +34,8 @@
#include <stdio.h>
#include <string.h>
#include <time.h>
+
/**
- * TEST: kms properties
- * Category: Display
- * Description: Test to validate the properties of all planes, crtc and connectors
- *
* SUBTEST: %s-properties-%s
* Description: Tests %arg[1] properties with %arg[2] commit
* Driver requirement: i915, xe
@@ -53,6 +56,20 @@
* @legacy: legacy
*/
+/**
+ * SUBTEST: get_properties-sanity-%s
+ * Description: Test validates the properties of all planes, crtc and connectors
+ * with %arg[1] commit
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @atomic: atomic
+ * @non-atomic: legacy
+ */
struct additional_test {
const char *name;
@@ -712,20 +729,6 @@ static void expect_no_props(int fd, uint32_t obj_type, uint32_t obj_id)
igt_assert_neq(drmIoctl(fd, DRM_IOCTL_MODE_OBJ_GETPROPERTIES, &properties), 0);
}
-/**
- * SUBTEST: get_properties-sanity-%s
- * Description: Test validates the properties of all planes, crtc and connectors
- * with %arg[1] commit
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @atomic: atomic
- * @non-atomic: legacy
- */
static void get_prop_sanity(igt_display_t *display, bool atomic)
{
int fd = display->drm_fd;
diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c
index 6c6cdffba..5b4151e85 100644
--- a/tests/kms_rmfb.c
+++ b/tests/kms_rmfb.c
@@ -21,6 +21,13 @@
* IN THE SOFTWARE.
*/
+/**
+ * TEST: kms rmfb
+ * Category: Display
+ * Description: This tests rmfb and close-fd behavior. In these casesthe
+ * framebuffers should be removed from the crtc.
+ */
+
#include "igt.h"
#include "drmtest.h"
#include <errno.h>
@@ -28,12 +35,8 @@
#include <stdio.h>
#include <string.h>
#include <time.h>
+
/**
- * TEST: kms rmfb
- * Category: Display
- * Description: This tests rmfb and close-fd behavior. In these casesthe
- * framebuffers should be removed from the crtc.
- *
* SUBTEST: close-fd
* Description: RMFB is supposed to free the framebuffers from any and all planes
* so test this and make sure it works with fd close and reopen.
diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index c48e0d672..3e7016e56 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -27,10 +27,130 @@
* Category: Display
* Description: Tests different rotations with different planes & formats
*/
+
#include "igt.h"
#include "igt_vec.h"
#include <math.h>
+/**
+ * SUBTEST: %s-rotation-180
+ * Description: Rotation test with 180 degree for %arg[1] planes
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @primary: primary
+ * @sprite: sprite
+ * @cursor: cursor
+ */
+
+/**
+ * SUBTEST: %s-rotation-%d
+ * Description: Rotation test with %arg[2] degree for %arg[1] planes of gen9+
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @primary: primary
+ * @sprite: sprite
+ *
+ * arg[2].values: 90, 270
+ */
+
+/**
+ * SUBTEST: bad-pixel-format
+ * Description: Checking unsupported pixel format for gen9+ with 90 degree of rotation
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: bad-tiling
+ * Description: Checking unsupported tiling for gen9+ with 90 degree of rotation
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: primary-%s-tiled-reflect-x-%d
+ * Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @4: 4 tiling
+ * @x: x tiling
+ * @y: y tiling
+ * @yf: yf tiling
+ *
+ * arg[2].values: 0, 180
+ */
+
+/**
+ * SUBTEST: primary-%s-tiled-reflect-x-%d
+ * Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @y: y tiling
+ * @yf: yf tiling
+ *
+ * arg[2].values: 90, 270
+ *
+ * SUBTEST: sprite-rotation-90-pos-100-0
+ * Description: Rotation test with 90 degree for a plane of gen9+ with given position
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
+/**
+ * SUBTEST: multiplane-rotation
+ * Description: Rotation test on both planes by making them fully visible
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: multiplane-rotation-cropping-%s
+ * Description: Rotation test on both planes by cropping left/%arg[1] corner of
+ * primary plane and right/%arg[1] corner of sprite plane
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @bottom: bottom
+ * @top: top
+ */
+
+/**
+ * SUBTEST: exhaust-fences
+ * Description: This test intends to check for fence leaks exhaustively
+ * Driver requirement: i915
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ */
+
#define MAX_FENCES 32
#define MAXMULTIPLANESAMOUNT 2
#define TEST_MAX_WIDTH 640
@@ -479,93 +599,6 @@ static bool test_format(data_t *data,
return true;
}
-/**
- * SUBTEST: %s-rotation-180
- * Description: Rotation test with 180 degree for %arg[1] planes
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @primary: primary
- * @sprite: sprite
- * @cursor: cursor
- */
-
-/**
- * SUBTEST: %s-rotation-%d
- * Description: Rotation test with %arg[2] degree for %arg[1] planes of gen9+
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @primary: primary
- * @sprite: sprite
- *
- * arg[2].values: 90, 270
- */
-
-/**
- * SUBTEST: bad-pixel-format
- * Description: Checking unsupported pixel format for gen9+ with 90 degree of rotation
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: bad-tiling
- * Description: Checking unsupported tiling for gen9+ with 90 degree of rotation
- * Driver requirement: i915, xe
- * Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
-/**
- * SUBTEST: primary-%s-tiled-reflect-x-%d
- * Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
- * Driver requirement: i915, xe
- * Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @4: 4 tiling
- * @x: x tiling
- * @y: y tiling
- * @yf: yf tiling
- *
- * arg[2].values: 0, 180
- */
-
-/**
- * SUBTEST: primary-%s-tiled-reflect-x-%d
- * Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
- * Driver requirement: i915, xe
- * Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @y: y tiling
- * @yf: yf tiling
- *
- * arg[2].values: 90, 270
- *
- * SUBTEST: sprite-rotation-90-pos-100-0
- * Description: Rotation test with 90 degree for a plane of gen9+ with given position
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_format)
{
igt_display_t *display = &data->display;
@@ -885,28 +918,6 @@ static bool reusecrcfromlastround(planeinfos p[2], int lastroundp1format,
return true;
}
-/**
- * SUBTEST: multiplane-rotation
- * Description: Rotation test on both planes by making them fully visible
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: multiplane-rotation-cropping-%s
- * Description: Rotation test on both planes by cropping left/%arg[1] corner of
- * primary plane and right/%arg[1] corner of sprite plane
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @bottom: bottom
- * @top: top
- */
-
/*
* Here is pipe parameter which is now used only for first pipe.
* It is left here if this test ever was wanted to be run on
@@ -1104,14 +1115,6 @@ static void test_multi_plane_rotation(data_t *data, enum pipe pipe)
igt_require_f(found, "No valid pipe/output combo found.\n");
}
-/**
- * SUBTEST: exhaust-fences
- * Description: This test intends to check for fence leaks exhaustively
- * Driver requirement: i915
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- */
static void test_plane_rotation_exhaust_fences(data_t *data,
enum pipe pipe,
igt_output_t *output,
diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
index c1a8f5c60..eb14deb25 100644
--- a/tests/kms_scaling_modes.c
+++ b/tests/kms_scaling_modes.c
@@ -24,12 +24,15 @@
* Swati Sharma <swati2.sharma@intel.com>
*/
-#include "igt.h"
/**
* TEST: kms scaling modes
* Category: Display
* Description: Test display scaling modes
- *
+ */
+
+#include "igt.h"
+
+/**
* SUBTEST: scaling-mode-%s
* Description: Tests %arg[1] display scaling mode
* Driver requirement: i915, xe
diff --git a/tests/kms_selftest.c b/tests/kms_selftest.c
index 080ffdf2c..b6564b31a 100644
--- a/tests/kms_selftest.c
+++ b/tests/kms_selftest.c
@@ -21,13 +21,16 @@
* IN THE SOFTWARE.
*/
-#include "igt.h"
-#include "igt_kmod.h"
/**
* TEST: kms selftest
* Category: Display
* Description: Basic sanity check of KMS selftests.
- *
+ */
+
+#include "igt.h"
+#include "igt_kmod.h"
+
+/**
* SUBTEST: %s
* Description: Basic sanity check of KMS selftest %arg[1].
* Driver requirement: i915, xe
diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
index 6716d3860..f03be4c7c 100644
--- a/tests/kms_sequence.c
+++ b/tests/kms_sequence.c
@@ -27,6 +27,7 @@
* Category: Display
* Description: Test CrtcGetSequence and CrtcQueueSequence.
*/
+
#include "igt.h"
#include <stdlib.h>
#include <stdio.h>
@@ -42,6 +43,36 @@
#include <drm.h>
+/**
+ * SUBTEST: get-%s
+ * Description: This is a test of drmCrtcGetSequence with %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @busy: busy
+ * @forked: forked bo
+ * @forked-busy: forked bo & busy
+ * @idle: idle
+ */
+
+/**
+ * SUBTEST: queue-%s
+ * Description: This is a test of drmCrtcQueueSequence with %arg[1]
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @busy: busy
+ * @idle: idle
+ */
+
IGT_TEST_DESCRIPTION("Test CrtcGetSequence and CrtcQueueSequence.");
typedef struct {
@@ -136,35 +167,6 @@ static int crtc_queue_sequence(int fd, struct drm_crtc_queue_sequence *cqs)
return err;
}
-/**
- * SUBTEST: get-%s
- * Description: This is a test of drmCrtcGetSequence with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @busy: busy
- * @forked: forked bo
- * @forked-busy: forked bo & busy
- * @idle: idle
- */
-
-/**
- * SUBTEST: queue-%s
- * Description: This is a test of drmCrtcQueueSequence with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * arg[1]:
- *
- * @busy: busy
- * @idle: idle
- */
static void run_test(data_t *data, int fd, void (*testfunc)(data_t *, int, int))
{
int nchildren =
diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c
index 5fc4421c0..aae7ed06e 100644
--- a/tests/kms_setmode.c
+++ b/tests/kms_setmode.c
@@ -20,6 +20,14 @@
* Authors:
* Imre Deak <imre.deak@intel.com>
*/
+
+/**
+ * TEST: kms setmode
+ * Category: Display
+ * Description: Tests the mode by iterating through all valid/invalid crtc/connector
+ * combinations
+ */
+
#include "config.h"
#include "igt.h"
@@ -31,12 +39,8 @@
#include <sys/time.h>
#include <math.h>
#include "xe/xe_query.h"
+
/**
- * TEST: kms setmode
- * Category: Display
- * Description: Tests the mode by iterating through all valid/invalid crtc/connector
- * combinations
- *
* SUBTEST: basic
* Description: Tests the vblank timing by iterating through all valid crtc/connector
* combinations
diff --git a/tests/kms_sysfs_edid_timing.c b/tests/kms_sysfs_edid_timing.c
index ee47a024e..b36f383e5 100644
--- a/tests/kms_sysfs_edid_timing.c
+++ b/tests/kms_sysfs_edid_timing.c
@@ -20,16 +20,20 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
+
+/**
+ * TEST: kms sysfs edid timing
+ * Category: Display
+ * Description: Test to check the time it takes to reprobe each connector.
+ */
+
#include "igt.h"
#include <dirent.h>
#include <fcntl.h>
#include <sys/stat.h>
+
/**
- * TEST: kms sysfs edid timing
- * Category: Display
- * Description: Test to check the time it takes to reprobe each connector.
- *
* SUBTEST:
* Description: This test checks the time it takes to reprobe each connector and
* fails if either the time it takes for one reprobe is too long or
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index 519c3754c..ba6323c1e 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -41,6 +41,7 @@
* Category: Display
* Description: Test for Transcoder Port Sync for Display Port Tiled Displays
*/
+
#include "igt.h"
#include "poll.h"
#include "drm_mode.h"
diff --git a/tests/kms_tv_load_detect.c b/tests/kms_tv_load_detect.c
index 67dbb242e..13394f2c6 100644
--- a/tests/kms_tv_load_detect.c
+++ b/tests/kms_tv_load_detect.c
@@ -22,12 +22,15 @@
*
*/
-#include "igt.h"
/**
* TEST: kms tv load detect
* Category: Display
* Description: Test to check tv load detection.
- *
+ */
+
+#include "igt.h"
+
+/**
* SUBTEST: load-detect
* Description: Check tv load detection works correctly.
* Driver requirement: i915, xe
diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index 2e8c0cc17..4a2a0ae55 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -21,6 +21,12 @@
* IN THE SOFTWARE.
*/
+/**
+ * TEST: kms universal plane
+ * Category: Display
+ * Description: Check pageflip & modeset on universal plane
+ */
+
#include "igt.h"
#include <errno.h>
#include <stdbool.h>
@@ -29,10 +35,6 @@
#include <fcntl.h>
/**
- * TEST: kms universal plane
- * Category: Display
- * Description: Check pageflip & modeset on universal plane
- *
* SUBTEST: cursor-fb-leak
* Description: Check for cursor leaks after performing cursor operations
* Driver requirement: i915, xe
@@ -54,9 +56,7 @@
* Functionality: plane
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: universal-plane-%s
* Description: Check %arg[1]
* Driver requirement: i915, xe
diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c
index 25b17b25c..3698726de 100644
--- a/tests/kms_vblank.c
+++ b/tests/kms_vblank.c
@@ -21,6 +21,12 @@
* IN THE SOFTWARE.
*/
+/**
+ * TEST: kms vblank
+ * Category: Display
+ * Description: Test speed of WaitVblank.
+ */
+
#include "igt.h"
#include <stdlib.h>
#include <stdio.h>
@@ -35,11 +41,8 @@
#include <sys/wait.h>
#include <drm.h>
+
/**
- * TEST: kms vblank
- * Category: Display
- * Description: Test speed of WaitVblank.
- *
* SUBTEST: crtc-id
* Description: Check the vblank and flip events works with given crtc id
* Driver requirement: i915, xe
@@ -53,9 +56,7 @@
* Functionality: vblank
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: ts-continuation-dpms-rpm
* Description: Test TS continuty with DPMS & RPM while hanging by introducing
* NOHANG flag
@@ -63,9 +64,7 @@
* Functionality: dpms, hang, rpm, vblank
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: ts-continuation-dpms-suspend
* Description: Test TS continuty with DPMS & Suspend while hanging by introducing
* NOHANG flag
@@ -73,9 +72,7 @@
* Functionality: dpms, hang, suspend, vblank
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: ts-continuation-suspend
* Description: Test TS continuty with Suspend while hanging by introducing NOHANG
* flag
@@ -83,9 +80,7 @@
* Functionality: hang, suspend, vblank
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: ts-continuation-modeset-rpm
* Description: Test TS continuty during Modeset with Suspend while hanging by
* introducing NOHANG flag
@@ -93,9 +88,7 @@
* Functionality: hang, rpm, vblank
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: accuracy-idle
* Description: Test Accuracy of vblank events while hanging by introducing NOHANG
* flag
diff --git a/tests/kms_vrr.c b/tests/kms_vrr.c
index e203fd4d5..46ab817e9 100644
--- a/tests/kms_vrr.c
+++ b/tests/kms_vrr.c
@@ -20,15 +20,18 @@
* OTHER DEALINGS IN THE SOFTWARE.
*/
+/**
+ * TEST: kms vrr
+ * Category: Display
+ * Description: Test to validate diffent features of VRR
+ */
+
#include "igt.h"
#include "sw_sync.h"
#include <fcntl.h>
#include <signal.h>
+
/**
- * TEST: kms vrr
- * Category: Display
- * Description: Test to validate diffent features of VRR
- *
* SUBTEST: flip-basic
* Description: Tests that VRR is enabled and that the difference between flip
* timestamps converges to the requested rate
diff --git a/tests/kms_writeback.c b/tests/kms_writeback.c
index 25b49eccd..6b436b7ab 100644
--- a/tests/kms_writeback.c
+++ b/tests/kms_writeback.c
@@ -22,6 +22,15 @@
*
*/
+/**
+ * TEST: kms writeback
+ * Category: Display
+ * Description: This test validates the expected behavior of the writeback
+ * connectors feature by checking if the target device support
+ * writeback; it validates bad and good combination, check color
+ * format, and check the output result by using CRC.
+ */
+
#include <errno.h>
#include <stdbool.h>
#include <stdio.h>
@@ -32,14 +41,8 @@
#include "igt_core.h"
#include "igt_fb.h"
#include "sw_sync.h"
+
/**
- * TEST: kms writeback
- * Category: Display
- * Description: This test validates the expected behavior of the writeback
- * connectors feature by checking if the target device support
- * writeback; it validates bad and good combination, check color
- * format, and check the output result by using CRC.
- *
* SUBTEST: writeback-check-output-XRGB2101010
* Description: Check XRGB2101010 writeback output with CRC validation
* Functionality: kms_core
diff --git a/tests/testdisplay.c b/tests/testdisplay.c
index 42218210f..109ed496a 100644
--- a/tests/testdisplay.c
+++ b/tests/testdisplay.c
@@ -45,6 +45,13 @@
* - DP commands (e.g. poweroff)
* - verify outputs against VBT/physical connectors
*/
+
+/**
+ * TEST: testdisplay
+ * Category: Display
+ * Description: Tests basic display functionality.
+ */
+
#include "config.h"
#include "igt.h"
@@ -70,10 +77,6 @@
#include <signal.h>
/**
- * TEST: testdisplay
- * Category: Display
- * Description: Tests basic display functionality.
- *
* SUBTEST:
* Description: This test is intended for testing of display functionality like
* modeset, clone modes, test patterns & pixel generators etc..
@@ -82,6 +85,7 @@
* Mega feature: General Display Features
* Test category: functionality test
*/
+
IGT_TEST_DESCRIPTION("Tests basic display functionality.");
enum {
--
2.40.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] [i-g-t V2 2/5] tests/kms/testplan: Regroup testplan documentation
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 1/5] tests/kms/testplan: Move testplan documentation to beginning of the file Bhanuprakash Modem
@ 2023-10-19 9:34 ` Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 3/5] tests/kms/testplan: Optimize KMS " Bhanuprakash Modem
` (5 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
For redability purpose, re-group testplan documentation.
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/intel/kms_big_fb.c | 46 +++++----------
tests/intel/kms_busy.c | 33 ++++++-----
tests/intel/kms_draw_crc.c | 16 +++--
tests/kms_atomic.c | 75 ++++++++++--------------
tests/kms_cursor_legacy.c | 7 ---
tests/kms_flip.c | 116 ++++++++++++++++---------------------
tests/kms_plane.c | 16 +++--
tests/kms_rotation_crc.c | 16 +++--
8 files changed, 133 insertions(+), 192 deletions(-)
diff --git a/tests/intel/kms_big_fb.c b/tests/intel/kms_big_fb.c
index 9177f7608..c23e379bb 100644
--- a/tests/intel/kms_big_fb.c
+++ b/tests/intel/kms_big_fb.c
@@ -141,51 +141,33 @@
*/
/**
- * SUBTEST: %s-addfb-size-overflow
- * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
- * with small bo.
+ * SUBTEST: linear-addfb
+ * Description: Sanity check if addfb ioctl works correctly with Linear modifier
+ * for given size and strides of fb
* Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop, tiling
+ * Functionality: big_fbs, kms_gem_interop
* Mega feature: General Display Features
* Test category: functionality test
*
- * arg[1]:
- *
- * @4-tiled: TILE-4
- * @x-tiled: TILE-X
- * @y-tiled: TILE-Y
- * @yf-tiled: TILE-YF
- */
-
-/**
- * SUBTEST: %s-addfb-size-offset-overflow
- * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
- * and offsets with small bo
+ * SUBTEST: %s-addfb
+ * Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
+ * for given size and strides of fb
* Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, tiling
* Mega feature: General Display Features
* Test category: functionality test
*
- * arg[1]:
- *
- * @4-tiled: TILE-4
- * @x-tiled: TILE-X
- * @y-tiled: TILE-Y
- * @yf-tiled: TILE-YF
- */
-
-/**
- * SUBTEST: linear-addfb
- * Description: Sanity check if addfb ioctl works correctly with Linear modifier
- * for given size and strides of fb
+ * SUBTEST: %s-addfb-size-overflow
+ * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
+ * with small bo.
* Driver requirement: i915, xe
- * Functionality: big_fbs, kms_gem_interop
+ * Functionality: big_fbs, kms_gem_interop, tiling
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: %s-addfb
- * Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
- * for given size and strides of fb
+ * SUBTEST: %s-addfb-size-offset-overflow
+ * Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
+ * and offsets with small bo
* Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, tiling
* Mega feature: General Display Features
diff --git a/tests/intel/kms_busy.c b/tests/intel/kms_busy.c
index 625b0743f..c2d158681 100644
--- a/tests/intel/kms_busy.c
+++ b/tests/intel/kms_busy.c
@@ -48,25 +48,14 @@
* Functionality: kms_core, hang
* Mega feature: General Display Features
* Test category: functionality test
- */
-
-/**
- * SUBTEST: extended-modeset-hang-%s
+ *
+ * SUBTEST: extended-pageflip-modeset-hang-oldfb
* Description: Test for basic check of KMS ABI with busy framebuffers.
* Driver requirement: i915
* Functionality: kms_core, hang
* Mega feature: General Display Features
* Test category: functionality test
*
- * arg[1]:
- *
- * @newfb: New framebuffer
- * @oldfb: Old framebuffer
- * @newfb-with-reset: New framebuffer with reset
- * @oldfb-with-reset: Old framebuffer with reset
- */
-
-/**
* SUBTEST: extended-pageflip-hang-%s
* Description: Test for basic check of KMS ABI with busy framebuffers.
* Driver requirement: i915
@@ -74,19 +63,31 @@
* Mega feature: General Display Features
* Test category: functionality test
*
+ * SUBTEST: extended-modeset-hang-%s
+ * Description: Test for basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
* arg[1]:
*
- * @newfb: New framebuffer
- * @oldfb: Old framebuffer
+ * @newfb: New framebuffer
+ * @oldfb: Old framebuffer
*/
/**
- * SUBTEST: extended-pageflip-modeset-hang-oldfb
+ * SUBTEST: extended-modeset-hang-%s
* Description: Test for basic check of KMS ABI with busy framebuffers.
* Driver requirement: i915
* Functionality: kms_core, hang
* Mega feature: General Display Features
* Test category: functionality test
+ *
+ * arg[1]:
+ *
+ * @newfb-with-reset: New framebuffer with reset
+ * @oldfb-with-reset: Old framebuffer with reset
*/
IGT_TEST_DESCRIPTION("Basic check of KMS ABI with busy framebuffers.");
diff --git a/tests/intel/kms_draw_crc.c b/tests/intel/kms_draw_crc.c
index 57b7f0edb..e853e94ab 100644
--- a/tests/intel/kms_draw_crc.c
+++ b/tests/intel/kms_draw_crc.c
@@ -32,6 +32,13 @@
#include "igt.h"
/**
+ * SUBTEST: fill-fb
+ * Description: This subtest verifies CRC after filling fb with x-tiling or none.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
* SUBTEST: draw-method-%s
* Description: Verify that igt draw library works for the %arg[1] method with
* different modifiers & DRM formats.
@@ -63,15 +70,6 @@
* @pwrite: PWRITE
*/
-/**
- * SUBTEST: fill-fb
- * Description: This subtest verifies CRC after filling fb with x-tiling or none.
- * Driver requirement: i915, xe
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
#define MAX_CONNECTORS 32
int drm_fd;
diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
index c13a22234..3d58a9b7d 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
@@ -49,6 +49,30 @@
#include "sw_sync.h"
/**
+ * SUBTEST: atomic-invalid-params
+ * Description: Test abuse the atomic ioctl directly in order to test various
+ * invalid conditions which the libdrm wrapper won't allow us to
+ * create.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: atomic-plane-damage
+ * Description: Simple test cases to use FB_DAMAGE_CLIPS plane property
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
+ * SUBTEST: test-only
+ * Description: Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches
+ * the free-standing state objects and nothing else.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
* SUBTEST: plane-primary-overlay-mutable-zpos
* Description: Verify that the overlay plane can cover the primary one (and
* vice versa) by changing their zpos property.
@@ -81,18 +105,8 @@
*/
/**
- * SUBTEST: test-only
- * Description: Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches
- * the free-standing state objects and nothing else.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
-/**
- * SUBTEST: plane-invalid-%s
- * Description: Test error handling when invalid %arg[1] are passed
+ * SUBTEST: %s-invalid-%s
+ * Description: Test error handling when invalid %arg[1] %arg[2] are passed
* Driver requirement: i915, xe
* Functionality: kms_core, plane
* Mega feature: General Display Features
@@ -100,41 +114,16 @@
*
* arg[1]:
*
- * @params: plane parameters
- * @params-fence: plane fence parameters
- */
-
-/**
- * SUBTEST: crtc-invalid-%s
- * Description: Test error handling when invalid %arg[1] are passed
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
+ * @crtc: CRTC
+ * @plane: Plane
*
- * arg[1]:
+ * arg[2]:
*
- * @params: crtc parameters
- * @params-fence: crtc fence parameters
+ * @params: parameters
+ * @params-fence: fence parameters
*/
-/**
- * SUBTEST: atomic-invalid-params
- * Description: Test abuse the atomic ioctl directly in order to test various
- * invalid conditions which the libdrm wrapper won't allow us to
- * create.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: atomic-plane-damage
- * Description: Simple test cases to use FB_DAMAGE_CLIPS plane property
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
+
#ifndef DRM_CAP_CURSOR_WIDTH
#define DRM_CAP_CURSOR_WIDTH 0x8
diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 07c50aba6..2dcec10bd 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -257,13 +257,6 @@
* Mega feature: General Display Features
* Test category: functionality test
*
- * arg[1]:
- *
- * @atomic:
- * @legacy:
- */
-
-/**
* SUBTEST: flip-vs-cursor-busy-crc-%s
* Description: this test perform a busy bo update followed by a cursor update
* Driver requirement: i915, xe
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index 190400f13..f62c8fa2f 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -54,63 +54,53 @@
#include "xe/xe_query.h"
/**
- * SUBTEST: 2x-flip-vs-fences
- * Description: Test to validate pageflips along with avialable fences on a pair
- * of connected displays
+ * SUBTEST: %s
+ * Description: %arg[1] test to validate pageflips with available fences
* Driver requirement: i915
* Functionality: gtt, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: 2x-flip-vs-fences-interruptible
- * Description: Interrupt test to validate pageflips along with available fences
+ * SUBTEST: 2x-%s
+ * Description: %arg[1] test to validate pageflips along with available fences
* on a pair of connected displays
- * Driver requirement: i915, xe
- * Functionality: gtt, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: flip-vs-fences
- * Description: Basic test to validate pageflips with avialable fences
* Driver requirement: i915
* Functionality: gtt, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: flip-vs-fences-interruptible
- * Description: Interrupt test to validate pageflips with available fences
- * Driver requirement: i915
- * Functionality: gtt, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
+ * arg[1]:
*
- * SUBTEST: dpms-off-confusion
- * Description: Basic test to validate pageflips by disabling other connectors usng dpms
+ * @flip-vs-fences: Basic
+ * @flip-vs-fences-interruptible: Interrupt
+ */
+
+/**
+ * SUBTEST: dpms-off-%s
+ * Description: %arg[1] test to validate pageflips by disabling other connectors usng dpms
* Driver requirement: i915, xe
* Functionality: dpms, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: dpms-off-confusion-interruptible
- * Description: Interrupt test to validate pageflips by disabling other connectors using dpms
- * Driver requirement: i915, xe
- * Functionality: dpms, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
+ * arg[1]:
*
- * SUBTEST: bo-too-big
- * Description: Basic test to validate pageflips with large BO in size
+ * @confusion: Basic
+ * @confusion-interruptible: Interrupt
+ */
+
+/**
+ * SUBTEST: %s
+ * Description: %arg[1] test to validate pageflips with large BO in size
* Driver requirement: i915, xe
* Functionality: kms_gem_interop, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: bo-too-big-interruptible
- * Description: Interrupt test to validate pageflips with large BO in size
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
+ * arg[1]:
+ *
+ * @bo-too-big: Basic
+ * @bo-too-big-interruptible: Interrupt
*/
/**
@@ -168,36 +158,28 @@
*/
/**
- * SUBTEST: flip-vs-suspend
- * Description: Basic test to validate pageflips with suspend cycle
- * Driver requirement: i915, xe
- * Functionality: suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: 2x-flip-vs-suspend
- * Description: Basic test to validate pageflips with suspend cycle on a pair of
- * connected displays
- * Driver requirement: i915, xe
- * Functionality: suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
- *
- * SUBTEST: flip-vs-suspend-interruptible
- * Description: Interrupt test to validate pageflips with suspend cycle
+ * SUBTEST: %s
+ * Description: %arg[1] test to validate pageflips with suspend cycle
* Driver requirement: i915, xe
* Functionality: suspend, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
- * SUBTEST: 2x-flip-vs-suspend-interruptible
- * Description: Interrupt test to validate pageflips with suspend cycle on a pair
+ * SUBTEST: 2x-%s
+ * Description: %arg[1] test to validate pageflips with suspend cycle on a pair
* of connected displays
* Driver requirement: i915, xe
* Functionality: suspend, vblank
* Mega feature: General Display Features
* Test category: functionality test
*
+ * arg[1]:
+ *
+ * @flip-vs-suspend: Basic
+ * @flip-vs-suspend-interruptible: Interrupt
+ */
+
+/**
* SUBTEST: %s
* Description: Basic test to validate %arg[1]
* Driver requirement: i915, xe
@@ -292,6 +274,20 @@
*/
/**
+ * SUBTEST: basic-plain-flip
+ * Description: Basic test for validating page flip
+ * Driver requirement: i915, xe
+ * Test category: functionality test
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-read
+ * Description: Tests that nonblocking reading fails correctly
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
* SUBTEST: basic-flip-vs-dpms
* Description: Basic test to valide pageflip with dpms
* Driver requirement: i915, xe
@@ -310,20 +306,6 @@
*
* @modeset: modeset
* @wf_vblank: wait for vblank
- *
- * SUBTEST: basic-plain-flip
- * Description: Basic test for validating page flip
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: vblank
- * Mega feature: General Display Features
- *
- * SUBTEST: nonblocking-read
- * Description: Tests that nonblocking reading fails correctly
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#define TEST_DPMS (1 << 0)
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index c02bca6ea..6b08763bb 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -39,6 +39,13 @@
#include "xe/xe_query.h"
/**
+ * SUBTEST: planar-pixel-format-settings
+ * Description: verify planar settings for pixel format are handled correctly
+ * Driver requirement: i915, xe
+ * Functionality: pixel_format, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
+ *
* SUBTEST: plane-position-%s
* Description: Verify plane position using two planes to create a %arg[1]
* Driver requirement: i915, xe
@@ -96,15 +103,6 @@
* @format-source-clamping: with source clamping
*/
-/**
- * SUBTEST: planar-pixel-format-settings
- * Description: verify planar settings for pixel format are handled correctly
- * Driver requirement: i915, xe
- * Functionality: pixel_format, plane
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
/*
* Throw away enough lsbs in pixel formats tests
* to get a match despite some differences between
diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index 3e7016e56..b588cc1db 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -77,6 +77,13 @@
* Functionality: plane, rotation, tiling
* Mega feature: General Display Features
* Test category: functionality test
+ *
+ * SUBTEST: exhaust-fences
+ * Description: This test intends to check for fence leaks exhaustively
+ * Driver requirement: i915
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
/**
@@ -142,15 +149,6 @@
* @top: top
*/
-/**
- * SUBTEST: exhaust-fences
- * Description: This test intends to check for fence leaks exhaustively
- * Driver requirement: i915
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
#define MAX_FENCES 32
#define MAXMULTIPLANESAMOUNT 2
#define TEST_MAX_WIDTH 640
--
2.40.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] [i-g-t V2 3/5] tests/kms/testplan: Optimize KMS testplan documentation
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 1/5] tests/kms/testplan: Move testplan documentation to beginning of the file Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 2/5] tests/kms/testplan: Regroup testplan documentation Bhanuprakash Modem
@ 2023-10-19 9:34 ` Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 4/5] tests/kms/testplan: Fix Mega Feature in " Bhanuprakash Modem
` (4 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
Moving all common key:values to TEST level from SUBTEST will
minimize the maintenance effort.
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/chamelium/kms_chamelium_audio.c | 10 +-
tests/chamelium/kms_chamelium_color.c | 16 +-
tests/chamelium/kms_chamelium_edid.c | 22 +-
tests/chamelium/kms_chamelium_frames.c | 33 +-
tests/chamelium/kms_chamelium_hpd.c | 69 +--
tests/intel/kms_big_fb.c | 33 +-
tests/intel/kms_big_joiner.c | 16 +-
tests/intel/kms_busy.c | 27 +-
tests/intel/kms_ccs.c | 15 +-
tests/intel/kms_cdclk.c | 16 +-
tests/intel/kms_draw_crc.c | 15 +-
tests/intel/kms_dsc.c | 8 +-
tests/intel/kms_fbcon_fbt.c | 10 +-
tests/intel/kms_flip_scaled_crc.c | 70 +---
tests/intel/kms_frontbuffer_tracking.c | 556 +------------------------
tests/intel/kms_legacy_colorkey.c | 12 +-
tests/intel/kms_pipe_b_c_ivb.c | 24 +-
tests/intel/kms_pm_backlight.c | 22 +-
tests/intel/kms_pm_dc.c | 29 +-
tests/intel/kms_pm_lpsp.c | 11 +-
tests/intel/kms_pm_rpm.c | 4 +
tests/intel/kms_psr.c | 58 +--
tests/intel/kms_psr2_sf.c | 36 +-
tests/intel/kms_psr2_su.c | 9 +-
tests/intel/kms_psr_stress_test.c | 12 +-
tests/kms_addfb_basic.c | 99 +----
tests/kms_async_flips.c | 26 +-
tests/kms_atomic.c | 32 +-
tests/kms_atomic_interruptible.c | 18 +-
tests/kms_atomic_transition.c | 30 +-
tests/kms_bw.c | 8 +-
tests/kms_color.c | 32 +-
tests/kms_content_protection.c | 29 +-
tests/kms_cursor_crc.c | 18 +-
tests/kms_cursor_edge_walk.c | 9 +-
tests/kms_cursor_legacy.c | 68 +--
tests/kms_display_modes.c | 9 +-
tests/kms_dither.c | 12 +-
tests/kms_feature_discovery.c | 21 +-
tests/kms_flip.c | 78 +---
tests/kms_force_connector_basic.c | 18 +-
tests/kms_getfb.c | 30 +-
tests/kms_hdmi_inject.c | 9 +-
tests/kms_hdr.c | 32 +-
tests/kms_invalid_mode.c | 8 +-
tests/kms_lease.c | 88 +---
tests/kms_panel_fitting.c | 12 +-
tests/kms_pipe_crc_basic.c | 37 +-
tests/kms_plane.c | 21 +-
tests/kms_plane_alpha_blend.c | 20 +-
tests/kms_plane_cursor.c | 16 +-
tests/kms_plane_lowres.c | 11 +-
tests/kms_plane_multiple.c | 11 +-
tests/kms_plane_scaling.c | 84 +---
tests/kms_prime.c | 15 +-
tests/kms_prop_blob.c | 20 +-
tests/kms_properties.c | 12 +-
tests/kms_rmfb.c | 12 +-
tests/kms_rotation_crc.c | 41 +-
tests/kms_scaling_modes.c | 8 +-
tests/kms_selftest.c | 8 +-
tests/kms_sequence.c | 12 +-
tests/kms_setmode.c | 27 +-
tests/kms_tiled_display.c | 9 +-
tests/kms_universal_plane.c | 19 +-
tests/kms_vblank.c | 30 +-
tests/kms_vrr.c | 22 +-
tests/kms_writeback.c | 26 +-
68 files changed, 255 insertions(+), 2025 deletions(-)
diff --git a/tests/chamelium/kms_chamelium_audio.c b/tests/chamelium/kms_chamelium_audio.c
index f86610861..cc2c23a76 100644
--- a/tests/chamelium/kms_chamelium_audio.c
+++ b/tests/chamelium/kms_chamelium_audio.c
@@ -28,6 +28,8 @@
* TEST: kms chamelium audio
* Category: Display
* Description: Testing Audio with a Chamelium board
+ * Driver requirement: i915, xe
+ * Test category: functionality test
*/
#include "igt_eld.h"
@@ -38,34 +40,26 @@
* SUBTEST: dp-audio
* Description: Playback various audio signals with various audio formats/rates,
* capture them and check they are correct
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_audio
* Mega feature: Audio, DP
- * Test category: functionality test
*
* SUBTEST: hdmi-audio
* Description: Playback various audio signals with various audio formats/rates,
* capture them and check they are correct
- * Driver requirement: i915, xe
* Functionality: chamelium, hdmi_audio
* Mega feature: Audio, HDMI
- * Test category: functionality test
*
* SUBTEST: dp-audio-edid
* Description: Plug a connector with an EDID suitable for audio, check ALSA's
* EDID-Like Data reports the correct audio parameters
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_audio
* Mega feature: Audio, DP
- * Test category: functionality test
*
* SUBTEST: hdmi-audio-edid
* Description: Plug a connector with an EDID suitable for audio, check ALSA's
* EDID-Like Data reports the correct audio parameters
- * Driver requirement: i915, xe
* Functionality: chamelium, hdmi_audio
* Mega feature: Audio, HDMI
- * Test category: functionality test
*/
/* Playback parameters control the audio signal we synthesize and send */
diff --git a/tests/chamelium/kms_chamelium_color.c b/tests/chamelium/kms_chamelium_color.c
index 6123e8a5f..e94e13e40 100644
--- a/tests/chamelium/kms_chamelium_color.c
+++ b/tests/chamelium/kms_chamelium_color.c
@@ -26,6 +26,10 @@
* TEST: kms chamelium color
* Category: Display
* Description: Test Color Features at Pipe level using Chamelium to verify instead of CRC
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
*/
#include "kms_color_helper.h"
@@ -33,24 +37,12 @@
/**
* SUBTEST: degamma
* Description: Verify that degamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: gamma
* Description: Verify that gamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: ctm-%s
* Description: Check the color transformation %arg[1]
- * Driver requirement: i915, xe
- * Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/chamelium/kms_chamelium_edid.c b/tests/chamelium/kms_chamelium_edid.c
index f3f0b1e50..6550b7b74 100644
--- a/tests/chamelium/kms_chamelium_edid.c
+++ b/tests/chamelium/kms_chamelium_edid.c
@@ -28,6 +28,8 @@
* TEST: kms chamelium edid
* Category: Display
* Description: Testing EDID with a Chamelium board
+ * Driver requirement: i915, xe
+ * Test category: functionality test
*/
#include <fcntl.h>
@@ -51,22 +53,16 @@
/**
* SUBTEST: dp-edid-read
* Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: chamelium, dp_edid
* Mega feature: DP
*
* SUBTEST: hdmi-edid-read
* Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: chamelium, hdmi_edid
* Mega feature: HDMI
*
* SUBTEST: vga-edid-read
* Description: Make sure the EDID exposed by KMS is the same as the screen's
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: chamelium, vga_edid
* Mega feature: VGA
*
@@ -74,28 +70,22 @@
* Description: Get an EDID with many modes of different configurations, set
* them on the screen and check the screen resolution matches the
* mode resolution.
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: dp-mode-timings
* Description: For each mode of the IGT base EDID, perform a modeset and check
* the mode detected by the Chamelium receiver matches the mode we
* set
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-mode-timings
* Description: For each mode of the IGT base EDID, perform a modeset and check
* the mode detected by the Chamelium receiver matches the mode we
* set
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*/
/**
@@ -103,19 +93,15 @@
* Description: Stress test the DUT by testing multiple EDIDs, one right after
* the other, and ensure their validity by check the real screen
* resolution vs the advertised mode (%arg[1]) resolution.
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-edid-stress-resolution-%s
* Description: Stress test the DUT by testing multiple EDIDs, one right after
* the other, and ensure their validity by check the real screen
* resolution vs the advertised mode (%arg[1]) resolution.
- * Driver requirement: i915, xe
* Functionality: chamelium, hdmi_edid
* Mega feature: HDMI
- * Test category: functionality test
*
* arg[1]:
*
@@ -128,19 +114,15 @@
* Description: Simulate a screen being unplugged and another screen being
* plugged during suspend, check that a uevent is sent and
* connector status is updated during %arg[1]
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-edid-change-during-%s
* Description: Simulate a screen being unplugged and another screen being
* plugged during suspend, check that a uevent is sent and
* connector status is updated during %arg[1]
- * Driver requirement: i915, xe
* Functionality: chamelium, dp_edid
* Mega feature: DP
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/chamelium/kms_chamelium_frames.c b/tests/chamelium/kms_chamelium_frames.c
index 490ab3fe9..c14245a71 100644
--- a/tests/chamelium/kms_chamelium_frames.c
+++ b/tests/chamelium/kms_chamelium_frames.c
@@ -28,6 +28,9 @@
* TEST: kms chamelium frames
* Category: Display
* Description: Tests requiring a Chamelium board
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, frame_integrity
+ * Test category: functionality test
*/
#include "igt_eld.h"
@@ -38,26 +41,17 @@
* SUBTEST: dp-crc-fast
* Description: Pick the first mode of the IGT base EDID, display and capture
* a few frames, then check captured frames are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-crc-fast
* Description: Pick the first mode of the IGT base EDID, display and capture
* a few frames, then check captured frames are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: hdmi-%s-formats
* Description: Pick the first mode of the IGT base EDID, display and capture a
* few frames, then check captured frames are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* arg[1]:
*
@@ -69,26 +63,17 @@
* SUBTEST: vga-frame-dump
* Description: For each mode of the IGT base EDID, display and capture a few
* frames, then check captured frames are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: dp-crc-%s
* Description: For each mode of the IGT base EDID, display and capture a %arg[1]
* frame(s), then check captured frame(s) are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-crc-%s
* Description: For each mode of the IGT base EDID, display and capture a %arg[1]
* frame(s), then check captured frame(s) are correct
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* arg[1]:
*
@@ -101,35 +86,23 @@
* Description: For each mode of the IGT base EDID, display and capture a few
* frames, then download the captured frames and compare them
* bit-by-bit to the sent ones
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-frame-dump
* Description: For each mode of the IGT base EDID, display and capture a few
* frames, then download the captured frames and compare them
* bit-by-bit to the sent ones
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: hdmi-aspect-ratio
* Description: Pick a mode with a picture aspect-ratio, capture AVI InfoFrames
* and check they include the relevant fields
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: hdmi-%s-planes-random
* Description: Setup a few overlay planes with random parameters, capture the
* frame and check it matches the expected output
- * Driver requirement: i915, xe
- * Functionality: chamelium, frame_integrity
* Mega feature: HDMI
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/chamelium/kms_chamelium_hpd.c b/tests/chamelium/kms_chamelium_hpd.c
index 360694c76..7e580e20e 100644
--- a/tests/chamelium/kms_chamelium_hpd.c
+++ b/tests/chamelium/kms_chamelium_hpd.c
@@ -28,6 +28,9 @@
* TEST: kms chamelium hpd
* Category: Display
* Description: Testing HPD with a Chamelium board
+ * Driver requirement: i915, xe
+ * Functionality: chamelium, hotplug
+ * Test category: functionality test
*/
#include "kms_chamelium_helper.h"
@@ -36,74 +39,47 @@
* SUBTEST: dp-hpd-fast
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-fast
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd-fast
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: dp-hpd
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: dp-hpd-%s
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-%s
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd-%s
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: VGA
- * Test category: functionality test
*
* arg[1]:
*
@@ -115,132 +91,93 @@
* SUBTEST: dp-hpd-for-each-pipe
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug for each pipe with valid output
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-for-each-pipe
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug for each pipe with valid output
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd-for-each-pipe
* Description: Check that we get uevents and updated connector status on
* hotplug and unplug for each pipe with valid output
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: VGA
* Test category: functionality test
*
* SUBTEST: dp-hpd-after-hibernate
* Description: Toggle HPD during Hibernation, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, hibernation
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-after-hibernate
* Description: Toggle HPD during Hibernation, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, hibernation
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd-after-hibernate
* Description: Toggle HPD during Hibernation, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, hibernation
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: dp-hpd-after-suspend
* Description: Toggle HPD during Suspend, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, suspend
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-after-suspend
* Description: Toggle HPD during Suspend, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, suspend
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: vga-hpd-after-suspend
* Description: Toggle HPD during Suspend, check that uevents are sent and
* connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, suspend
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: common-hpd-after-suspend
* Description: Toggle HPD during suspend on all connectors, check that uevents
* are sent and connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, suspend
* Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: common-hpd-after-hibernate
* Description: Toggle HPD during suspend on all connectors, check that uevents
* are sent and connector status is updated
- * Driver requirement: i915, xe
* Functionality: chamelium, hotplug, hibernation
* Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: vga-hpd-without-ddc
* Description: Disable DDC on a VGA connector, check we still get a uevent on
* hotplug
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: VGA
- * Test category: functionality test
*
* SUBTEST: dp-hpd-storm
* Description: Trigger a series of hotplugs in a very small timeframe to
* simulate abad cable, check the kernel falls back to polling
* to avoid a hotplug storm
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-storm
* Description: Trigger a series of hotplugs in a very small timeframe to
* simulate abad cable, check the kernel falls back to polling
* to avoid a hotplug storm
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: dp-hpd-storm-disable
* Description: Disable HPD storm detection, trigger a storm and check the
* kernel doesn't detect one
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: DP
- * Test category: functionality test
*
* SUBTEST: hdmi-hpd-storm-disable
* Description: Disable HPD storm detection, trigger a storm and check the
* kernel doesn't detect one
- * Driver requirement: i915, xe
- * Functionality: chamelium, hotplug
* Mega feature: HDMI
- * Test category: functionality test
*/
#define HPD_STORM_PULSE_INTERVAL_DP 100 /* ms */
diff --git a/tests/intel/kms_big_fb.c b/tests/intel/kms_big_fb.c
index c23e379bb..16ff2954e 100644
--- a/tests/intel/kms_big_fb.c
+++ b/tests/intel/kms_big_fb.c
@@ -25,6 +25,9 @@
* TEST: kms big fb
* Category: Display
* Description: Test big framebuffers
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,10 +44,7 @@
* SUBTEST: linear-%dbpp-rotate-%d
* Description: Sanity check if addfb ioctl works correctly for given combination
* of Linear modifier with %arg[1]-bpp & %arg[2]-rotation
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 8, 16, 32, 64
* arg[2].values: 0, 90, 180, 270
@@ -54,10 +54,7 @@
* SUBTEST: %s-%dbpp-rotate-%d
* Description: Sanity check if addfb ioctl works correctly for given combination
* of %arg[1] with %arg[2]-bpp & %arg[3]-rotation
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -75,10 +72,7 @@
* Description: Test maximum hardware supported stride length for given combination
* of linear modifier with max hardware stride length, %arg[1]-bpp,
* and %arg[2]-rotation
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 32, 64
* arg[2].values: 0, 180
@@ -89,10 +83,7 @@
* Description: Test maximum hardware supported stride length for given combination
* of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
* and %arg[3]-rotation
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -110,19 +101,13 @@
* Description: Test maximum hardware supported stride length for given combination
* of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
* and %arg[3]-rotation with H-flip mode
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-max-hw-stride-%dbpp-rotate-%d-%s
* Description: Test maximum hardware supported stride length for given combination
* of %arg[1] modifier with max hardware stride length, %arg[2]-bpp,
* and %arg[3]-rotation with %arg[4] mode
- * Driver requirement: i915, xe
* Functionality: async_flips, big_fbs, kms_gem_interop, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -144,34 +129,22 @@
* SUBTEST: linear-addfb
* Description: Sanity check if addfb ioctl works correctly with Linear modifier
* for given size and strides of fb
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-addfb
* Description: Sanity check if addfb ioctl works correctly with %arg[1] modifier
* for given size and strides of fb
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-addfb-size-overflow
* Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
* with small bo.
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-addfb-size-offset-overflow
* Description: Sanity check if addfb ioctl fails correctly for (%arg[1]) modifier
* and offsets with small bo
- * Driver requirement: i915, xe
* Functionality: big_fbs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index 8e6c495fc..93fd04bf5 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -28,6 +28,10 @@
* TEST: kms big joiner
* Category: Display
* Description: Test big joiner
+ * Driver requirement: i915, xe
+ * Functionality: 2p1p
+ * Mega feature: Bigjoiner
+ * Test category: functionality test
*/
#include "igt.h"
@@ -36,24 +40,12 @@
* SUBTEST: invalid-modeset
* Description: Verify if the modeset on the adjoining pipe is rejected when
* the pipe is active with a big joiner modeset
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
*
* SUBTEST: basic
* Description: Verify the basic modeset on big joiner mode on all pipes
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
*
* SUBTEST: 2x-modeset
* Description: Verify simultaneous modeset on 2 big joiner outputs
- * Driver requirement: i915, xe
- * Functionality: 2p1p
- * Mega feature: Bigjoiner
- * Test category: functionality test
*/
#define MAX_HDISPLAY_PER_PIPE 5120
diff --git a/tests/intel/kms_busy.c b/tests/intel/kms_busy.c
index c2d158681..ef1a6d21a 100644
--- a/tests/intel/kms_busy.c
+++ b/tests/intel/kms_busy.c
@@ -25,6 +25,10 @@
* TEST: kms busy
* Category: Display
* Description: Basic check of KMS ABI with busy framebuffers.
+ * Driver requirement: i915
+ * Functionality: kms_core, hang
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <sys/poll.h>
@@ -37,38 +41,19 @@
/**
* SUBTEST: basic
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-hang
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: extended-pageflip-modeset-hang-oldfb
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: extended-pageflip-hang-%s
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: extended-modeset-hang-%s
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -79,10 +64,6 @@
/**
* SUBTEST: extended-modeset-hang-%s
* Description: Test for basic check of KMS ABI with busy framebuffers.
- * Driver requirement: i915
- * Functionality: kms_core, hang
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_ccs.c b/tests/intel/kms_ccs.c
index 813d4e5d6..13c75e85e 100644
--- a/tests/intel/kms_ccs.c
+++ b/tests/intel/kms_ccs.c
@@ -28,6 +28,10 @@
* Description: Test render compression (RC), in which the main surface is
* complemented by a color control surface (CCS) that the display
* uses to interpret the compressed data.
+ * Driver requirement: i915, xe
+ * Functionality: ccs, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -38,10 +42,6 @@
/**
* SUBTEST: %s-%s-%s
* Description: Test %arg[2] with given %arg[3] modifier
- * Driver requirement: i915, xe
- * Functionality: ccs, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -75,10 +75,6 @@
/**
* SUBTEST: %s-%s-%s
* Description: Test %arg[2] with %arg[3] modifier
- * Driver requirement: i915, xe
- * Functionality: ccs, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -116,10 +112,7 @@
/**
* SUBTEST: %s-%s-%s
* Description: Test %arg[2] with %arg[3] modifier
- * Driver requirement: i915, xe
* Functionality: ccs, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_cdclk.c b/tests/intel/kms_cdclk.c
index 2b3913571..a5986f69d 100644
--- a/tests/intel/kms_cdclk.c
+++ b/tests/intel/kms_cdclk.c
@@ -28,6 +28,10 @@
* TEST: kms cdclk
* Category: Display
* Description: Test cdclk features : crawling and squashing
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -36,24 +40,12 @@
* SUBTEST: mode-transition-all-outputs
* Description: Mode transition (low to high) test to validate cdclk frequency
* change by simultaneous modesets on all pipes with valid outputs.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: mode-transition
* Description: Mode transition (low to high) test to validate cdclk frequency change.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-scaling
* Description: Plane scaling test to validate cdclk frequency change.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test cdclk features : crawling and squashing");
diff --git a/tests/intel/kms_draw_crc.c b/tests/intel/kms_draw_crc.c
index e853e94ab..f0673be10 100644
--- a/tests/intel/kms_draw_crc.c
+++ b/tests/intel/kms_draw_crc.c
@@ -26,6 +26,10 @@
* TEST: kms draw crc
* Category: Display
* Description: Tests whether the igt_draw library actually works.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "i915/gem.h"
@@ -34,18 +38,10 @@
/**
* SUBTEST: fill-fb
* Description: This subtest verifies CRC after filling fb with x-tiling or none.
- * Driver requirement: i915, xe
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: draw-method-%s
* Description: Verify that igt draw library works for the %arg[1] method with
* different modifiers & DRM formats.
- * Driver requirement: i915, xe
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -59,9 +55,6 @@
* Description: Verify that igt draw library works for the %arg[1] method with
* different modifiers & DRM formats.
* Driver requirement: i915
- * Functionality: kms_core, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_dsc.c b/tests/intel/kms_dsc.c
index 270fd2b44..a86089003 100644
--- a/tests/intel/kms_dsc.c
+++ b/tests/intel/kms_dsc.c
@@ -34,6 +34,10 @@
* TEST: kms dsc
* Category: Display
* Description: Test to validate display stream compression
+ * Driver requirement: i915, xe
+ * Functionality: dsc
+ * Mega feature: VDSC
+ * Test category: functionality test
*/
#include "kms_dsc_helper.h"
@@ -42,10 +46,6 @@
* SUBTEST: dsc-%s
* Description: Tests Display Stream Compression functionality if supported by a
* connector by forcing %arg[1] on all connectors that support it
- * Driver requirement: i915, xe
- * Functionality: dsc
- * Mega feature: VDSC
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
index bba81cdc0..28e6d6390 100644
--- a/tests/intel/kms_fbcon_fbt.c
+++ b/tests/intel/kms_fbcon_fbt.c
@@ -29,6 +29,8 @@
* Category: Display
* Description: Test the relationship between fbcon and the frontbuffer tracking
* infrastructure.
+ * Driver requirement: i915, xe
+ * Test category: functionality test
*/
#include "igt.h"
@@ -43,34 +45,26 @@
* SUBTEST: fbc
* Description: Test the relationship between fbcon and the frontbuffer tracking
* infrastructure with fbc enabled.
- * Driver requirement: i915, xe
* Functionality: fbc, fbcon, fbt
* Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-suspend
* Description: Suspend test to validate the relationship between fbcon and the
* frontbuffer tracking infrastructure with fbc enabled.
- * Driver requirement: i915, xe
* Functionality: fbc, fbcon, fbt, suspend
* Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr
* Description: Test the relationship between fbcon and the frontbuffer tracking
* infrastructure with psr enabled.
- * Driver requirement: i915, xe
* Functionality: fbcon, fbt, psr
* Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr-suspend
* Description: Suspend test to validate the relationship between fbcon and the
* frontbuffer tracking infrastructure with psr enabled.
- * Driver requirement: i915, xe
* Functionality: fbcon, fbt, psr, suspend
* Mega feature: PSR
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test the relationship between fbcon and the frontbuffer "
diff --git a/tests/intel/kms_flip_scaled_crc.c b/tests/intel/kms_flip_scaled_crc.c
index 1b7e536de..70e790b88 100644
--- a/tests/intel/kms_flip_scaled_crc.c
+++ b/tests/intel/kms_flip_scaled_crc.c
@@ -26,6 +26,10 @@
* TEST: kms flip scaled crc
* Category: Display
* Description: Test flipping between scaled/nonscaled framebuffers
+ * Driver requirement: i915, xe
+ * Functionality: ccs, scaling, tiling, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -34,114 +38,63 @@
* SUBTEST: flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling
* Description: Flip from 64bpp non scaled fb to 32bpp upscaled fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-ytile-to-32bpp-ytilercccs-downscaling
* Description: Flip from 64bpp non scaled fb to 32bpp downscaled fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-linear-to-64bpp-linear-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-%s
* Description: Flip from 32bpp non scaled fb to 32bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-4tile-to-64bpp-4tile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-xtile-to-64bpp-xtile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-yftile-to-32bpp-yftileccs-%s
* Description: Flip from 32bpp non scaled fb to 32bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-yftile-to-64bpp-yftile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-yftileccs-to-64bpp-yftile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-ytile-to-32bpp-ytileccs-%s
* Description: Flip from 32bpp non scaled fb to 32bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-%s
* Description: Flip from 32bpp non scaled fb to 32bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-ytile-to-64bpp-ytile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-32bpp-ytileccs-to-64bpp-ytile-%s
* Description: Flip from 32bpp non scaled fb to 64bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-%s
* Description: Flip from 64bpp non scaled fb to 32bpp %arg[1] fb to stress CD
* clock programming
- * Driver requirement: i915, xe
- * Functionality: ccs, scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -153,42 +106,27 @@
* SUBTEST: flip-64bpp-4tile-to-%dbpp-4tile-%s
* Description: Flip from 64bpp non scaled fb to %arg[1]bpp %arg[2] fb to stress
* CD clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-xtile-to-%dbpp-xtile-%s
* Description: Flip from 64bpp non scaled fb to %arg[1]bpp %arg[2] fb to stress
* CD clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-yftile-to-%dbpp-yftile-%s
* Description: Flip from 64bpp non scaled fb to %arg[1]bpp %arg[2] fb to stress
* CD clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-ytile-to-%dbpp-ytile-%s
* Description: Flip from 64bpp non scaled fb to %arg[1]bpp %arg[2] fb to stress
* CD clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-64bpp-linear-to-%dbpp-linear-%s
* Description: Flip from 64bpp non scaled fb to %arg[1]bpp %arg[2] fb to stress
* CD clock programming
- * Driver requirement: i915, xe
* Functionality: scaling, tiling, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 16, 32
* arg[2]:
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index 7a3550347..39fe8f3e5 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -28,6 +28,9 @@
* TEST: kms frontbuffer tracking
* Category: Display
* Description: Test the Kernel's frontbuffer tracking mechanism and its related features: FBC, PSR and DRRS
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <sys/types.h>
@@ -47,52 +50,31 @@
/**
* SUBTEST: drrs-%dp-rte
* Description: Sanity test to enable DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbt, drrs
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-rte
* Description: Sanity test to enable FBC with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-rte
* Description: Sanity test to enable PSR with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-rte
* Description: Sanity test to enable FBC & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-rte
* Description: Sanity test to enable FBC & PSR with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-rte
* Description: Sanity test to enable PSR & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbt, drrs, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-rte
* Description: Sanity test to enable FBC, PSR & DRRS with %arg[1] panels.
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, drrs, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*/
@@ -100,52 +82,31 @@
/**
* SUBTEST: drrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -164,50 +125,36 @@
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -226,50 +173,36 @@
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -289,52 +222,31 @@
/**
* SUBTEST: drrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -354,52 +266,31 @@
/**
* SUBTEST: drrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -415,50 +306,36 @@
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -472,52 +349,31 @@
/**
* SUBTEST: drrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -537,50 +393,36 @@
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -598,52 +440,31 @@
/**
* SUBTEST: drrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -657,50 +478,36 @@
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -712,52 +519,31 @@
/**
* SUBTEST: drrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*/
@@ -765,52 +551,31 @@
/**
* SUBTEST: drrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -829,50 +594,36 @@
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -889,96 +640,57 @@
/**
* SUBTEST: drrs-slowdraw
* Description: Sleep a little bit between drawing operations with DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-slowdraw
* Description: Sleep a little bit between drawing operations with PSR
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with FBC & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-slowdraw
* Description: Sleep a little bit between drawing operations with FBC & PSR
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with FBC, PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
* SUBTEST: drrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -997,52 +709,31 @@
/**
* SUBTEST: drrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -1059,31 +750,19 @@
/**
* SUBTEST: fbc-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -1096,52 +775,31 @@
/**
* SUBTEST: drrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -1154,52 +812,31 @@
/**
* SUBTEST: drrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -1210,52 +847,31 @@
/**
* SUBTEST: drrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*
@@ -1268,52 +884,31 @@
/**
* SUBTEST: drrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -1324,101 +919,59 @@
/**
* SUBTEST: drrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: drrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2
*/
@@ -1426,52 +979,31 @@
/**
* SUBTEST: drrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -1482,102 +1014,61 @@
/**
* SUBTEST: drrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with PSR
- * Driver requirement: i915, xe
* Functionality: fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC & PSR
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC, PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr, scaling
- * Mega feature: General Display Features
*/
/**
* SUBTEST: drrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-suspend
* Description: Make sure suspend/resume keeps us on the same state of PSR
- * Driver requirement: i915, xe
* Functionality: fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC & PSR
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC, PSR & DRRS
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
@@ -1585,114 +1076,76 @@
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbc-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psrdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: drrs, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
* Functionality: drrs, fbc, fbt, kms_core, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
* SUBTEST: fbc-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
* Functionality: fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
* SUBTEST: fbc-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcdrrs-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsr-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
* Functionality: fbc, fbt, psr, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fbcpsrdrrs-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Driver requirement: i915, xe
* Functionality: drrs, fbc, fbt, psr, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -1704,10 +1157,7 @@
/**
* SUBTEST: basic
* Description: Do some basic operations regardless of which features are enabled
- * Driver requirement: i915, xe
* Functionality: fbt
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#define TIME SLOW_QUICK(1000, 10000)
diff --git a/tests/intel/kms_legacy_colorkey.c b/tests/intel/kms_legacy_colorkey.c
index 69539f558..27ec64051 100644
--- a/tests/intel/kms_legacy_colorkey.c
+++ b/tests/intel/kms_legacy_colorkey.c
@@ -25,6 +25,10 @@
* TEST: kms legacy colorkey
* Category: Display
* Description: Test to check the legacy set colorkey ioctl on sprite planes.
+ * Driver requirement: i915
+ * Functionality: plane, xorg_xv
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -33,17 +37,9 @@
/**
* SUBTEST: basic
* Description: Check that the legacy set colorkey ioctl only works on sprite planes.
- * Driver requirement: i915
- * Functionality: plane, xorg_xv
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-plane
* Description: Check invalid plane id's, zero and outrange
- * Driver requirement: i915
- * Functionality: plane, xorg_xv
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Check that the legacy set colorkey ioctl only works on sprite planes.");
diff --git a/tests/intel/kms_pipe_b_c_ivb.c b/tests/intel/kms_pipe_b_c_ivb.c
index c1a1e6610..73277e970 100644
--- a/tests/intel/kms_pipe_b_c_ivb.c
+++ b/tests/intel/kms_pipe_b_c_ivb.c
@@ -29,6 +29,10 @@
* Category: Display
* Description: Exercise the FDI lane bifurcation code for IVB in the kernel by
* setting different combinations of modes for pipes B and C.
+ * Driver requirement: i915
+ * Functionality: kms_core, obsolete
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -37,43 +41,23 @@
* SUBTEST: disable-pipe-B-enable-pipe-C
* Description: Tests pipe-B and pipe-C interactions in IVB by disabling pipe-B
* and then setting mode on pipe-C.
- * Driver requirement: i915
- * Functionality: kms_core, obsolete
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: enable-pipe-C-while-B-has-3-lanes
* Description: Tests pipe-B and pipe-C interactions in IVB by enabling pipe-C
* while pipe-B has 3-lanes
- * Driver requirement: i915
- * Functionality: kms_core, obsolete
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: from-pipe-C-to-B-with-3-lanes
* Description: Tests pipe-B and pipe-C interactions in IVB by enabling pipe-B
* with 3 lanes from pipe-C.
- * Driver requirement: i915
- * Functionality: kms_core, obsolete
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: pipe-B-double-modeset-then-modeset-pipe-C
* Description: Tests pipe-B and pipe-C interactions in IVB by enabling two
* different modes on pipe-B and then a single mode on pipe-C.
- * Driver requirement: i915
- * Functionality: kms_core, obsolete
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: pipe-B-dpms-off-modeset-pipe-C
* Description: Tests pipe-B and pipe-C interactions in IVB by enabling pipe-B
* with mode that requires 3 lanes and then enabling pipe-c with
* dpms off/on pipe-B.
- * Driver requirement: i915
- * Functionality: kms_core, obsolete
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION(
diff --git a/tests/intel/kms_pm_backlight.c b/tests/intel/kms_pm_backlight.c
index 68f4dc3d1..5b4c397bb 100644
--- a/tests/intel/kms_pm_backlight.c
+++ b/tests/intel/kms_pm_backlight.c
@@ -29,6 +29,10 @@
* TEST: kms pm backlight
* Category: Display
* Description: Basic backlight sysfs test
+ * Driver requirement: i915, xe
+ * Functionality: backlight
+ * Mega feature: Display Power
+ * Test category: functionality test
*/
#include "igt.h"
@@ -46,38 +50,20 @@
/**
* SUBTEST: bad-brightness
* Description: Test the bad brightness.
- * Driver requirement: i915, xe
- * Functionality: backlight
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: basic-brightness
* Description: Test the basic brightness.
- * Driver requirement: i915, xe
- * Functionality: backlight
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: fade
* Description: Test basic fade.
- * Driver requirement: i915, xe
- * Functionality: backlight
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: fade-with-dpms
* Description: Test the fade with DPMS.
- * Driver requirement: i915, xe
* Functionality: dpms, backlight
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: fade-with-suspend
* Description: Test the fade with suspend.
- * Driver requirement: i915, xe
* Functionality: backlight, suspend
- * Mega feature: Display Power
- * Test category: functionality test
*/
struct context {
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index 3507bdd60..9a2b0013d 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -26,6 +26,10 @@
* TEST: kms pm dc
* Category: Display
* Description: Tests to validate display power DC states.
+ * Driver requirement: i915, xe
+ * Functionality: dpms, pm_dc
+ * Mega feature: Display Power
+ * Test category: functionality test
*/
#include <errno.h>
@@ -48,55 +52,30 @@
* SUBTEST: dc3co-vpb-simulation
* Description: Make sure that system enters DC3CO when PSR2 is active and system
* is in SLEEP state
- * Driver requirement: i915, xe
* Functionality: dc3co, pm_dc, psr2
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc5-dpms
* Description: Validate display engine entry to DC5 state while all connectors's
* DPMS property set to OFF
- * Driver requirement: i915, xe
- * Functionality: dpms, pm_dc
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc5-dpms-negative
* Description: Validate negative scenario of DC5 display engine entry to DC5 state
* while all connectors's DPMS property set to ON
- * Driver requirement: i915, xe
- * Functionality: dpms, pm_dc
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc5-psr
* Description: This test validates display engine entry to DC5 state while PSR is active
- * Driver requirement: i915, xe
* Functionality: pm_dc, psr
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc6-dpms
* Description: Validate display engine entry to DC6 state while all connectors's
* DPMS property set to OFF
- * Driver requirement: i915, xe
- * Functionality: dpms, pm_dc
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc6-psr
* Description: This test validates display engine entry to DC6 state while PSR is active
- * Driver requirement: i915, xe
* Functionality: pm_dc, psr
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: dc9-dpms
* Description: This test validates display engine entry to DC9 state
- * Driver requirement: i915, xe
- * Functionality: dpms, pm_dc
- * Mega feature: Display Power
- * Test category: functionality test
*/
/* DC State Flags */
diff --git a/tests/intel/kms_pm_lpsp.c b/tests/intel/kms_pm_lpsp.c
index 23940fd9b..75a6aa53c 100644
--- a/tests/intel/kms_pm_lpsp.c
+++ b/tests/intel/kms_pm_lpsp.c
@@ -26,8 +26,11 @@
/**
* TEST: kms pm lpsp
- * Description: These tests validates display Low Power Single Pipe configurations
* Category: Display
+ * Description: These tests validates display Low Power Single Pipe configurations
+ * Functionality: pm_lpsp
+ * Mega feature: Display Power
+ * Test category: functionality test
*/
#include "igt.h"
@@ -43,16 +46,10 @@
* SUBTEST: kms-lpsp
* Description: This test validates lpsp on all connected outputs on low power pipes
* Driver requirement: i915, xe
- * Functionality: pm_lpsp
- * Mega feature: Display Power
- * Test category: functionality test
*
* SUBTEST: screens-disabled
* Description: This test validates lpsp while all crtc are disabled
* Driver requirement: i915
- * Functionality: pm_lpsp
- * Mega feature: Display Power
- * Test category: functionality test
*/
#define MAX_SINK_LPSP_INFO_BUF_LEN 4096
diff --git a/tests/intel/kms_pm_rpm.c b/tests/intel/kms_pm_rpm.c
index 14f34d904..97c886a6e 100644
--- a/tests/intel/kms_pm_rpm.c
+++ b/tests/intel/kms_pm_rpm.c
@@ -76,9 +76,11 @@
*
* SUBTEST: fences
* Description: Sanity test for drm fences.
+ * Driver requirement: i915
*
* SUBTEST: fences-dpms
* Description: Sanity test for drm fences with dpms.
+ * Driver requirement: i915
* Functionality: dpms, pm_rpm
*
* SUBTEST: i2c
@@ -121,9 +123,11 @@
*
* SUBTEST: pm-caching
* Description: Test to change different cache levels & check for rpm
+ * Driver requirement: i915
*
* SUBTEST: pm-tiling
* Description: Test to change different tiling methods & check for rpm
+ * Driver requirement: i915
* Functionality: pm_rpm, tiling
*
* SUBTEST: system-suspend-modeset
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index fb7ca6926..fe0d9ef53 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -26,6 +26,9 @@
* TEST: kms psr
* Category: Display
* Description: Tests behaviour of PSR & PSR2
+ * Driver requirement: i915, xe
+ * Mega feature: PSR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,18 +44,13 @@
/**
* SUBTEST: basic
* Description: Basic check for psr if it is detecting changes made in planes
- * Driver requirement: i915, xe
* Functionality: psr
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: %s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1]
* Driver requirement: i915
* Functionality: kms_core, plane, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -70,18 +68,12 @@
* SUBTEST: sprite_plane_move
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on sprite planes
- * Driver requirement: i915, xe
* Functionality: plane, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: %s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Driver requirement: i915, xe
* Functionality: kms_core, plane, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -99,10 +91,7 @@
* SUBTEST: primary_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Driver requirement: i915, xe
* Functionality: kms_core, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -114,63 +103,40 @@
* SUBTEST: dpms
* Description: Check if psr is detecting changes when rendering operation is
* performed with dpms enabled or disabled
- * Driver requirement: i915, xe
* Functionality: dpms, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: no_drrs
* Description: Check if psr is detecting changes when drrs is disabled
- * Driver requirement: i915, xe
* Functionality: drrs, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: suspend
* Description: Check if psr is detecting changes when plane operation
* is performed with suspend resume cycles
- * Driver requirement: i915, xe
* Functionality: psr, suspend
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_dpms
* Description: Check if psr is detecting changes when rendering operation
* is performed with dpms enabled or disabled
- * Driver requirement: i915, xe
* Functionality: dpms, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_no_drrs
* Description: Check if psr is detecting changes when drrs is disabled
- * Driver requirement: i915, xe
* Functionality: drrs, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_suspend
* Description: Check if psr is detecting changes when plane operation is
* performed with suspend resume cycles
- * Driver requirement: i915, xe
* Functionality: psr, psr2, suspend
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_basic
* Description: Basic check for psr if it is detecting changes made in planes
- * Driver requirement: i915, xe
* Functionality: psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_%s_%s
* Description: Check if psr2 is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
* Driver requirement: i915
* Functionality: kms_core, plane, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -188,18 +154,12 @@
* SUBTEST: psr2_primary_page_flip
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on primary planes
- * Driver requirement: i915, xe
* Functionality: plane, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2_primary_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on primary planes
- * Driver requirement: i915, xe
* Functionality: kms_core, plane, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -211,10 +171,7 @@
* SUBTEST: psr2_%s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Driver requirement: i915, xe
* Functionality: kms_core, plane, psr, psr2
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -233,26 +190,17 @@
* SUBTEST: cursor_plane_move
* Description: Check if psr is detecting the plane operations performed on
* cursor planes
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: psr
- * Mega feature: PSR
*
* SUBTEST: primary_page_flip
* Description: Check if psr is detecting page-flipping operations performed
* on primary planes
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: psr
- * Mega feature: PSR
*
* SUBTEST: sprite_plane_onoff
* Description: Check if psr is detecting the plane operations performed on
* sprite planes
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: psr
- * Mega feature: PSR
*/
enum operations {
diff --git a/tests/intel/kms_psr2_sf.c b/tests/intel/kms_psr2_sf.c
index 4f5160abe..837cae336 100644
--- a/tests/intel/kms_psr2_sf.c
+++ b/tests/intel/kms_psr2_sf.c
@@ -27,6 +27,10 @@
* Category: Display
* Description: Tests to varify PSR2 selective fetch by sending multiple damaged
* areas
+ * Driver requirement: i915, xe
+ * Functionality: plane, psr2, selective_fetch
+ * Mega feature: PSR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -42,10 +46,6 @@
* SUBTEST: %s-plane-move-continuous-%s
* Description: Test that selective fetch works on moving %arg[1] plane %arg[2]
* visible area (no update)
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
@@ -62,53 +62,25 @@
/**
* SUBTEST: cursor-plane-update-sf
* Description: Test that selective fetch works on cursor plane
- * Driver requirement: i915, xe
- * Functionality: cursor, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: overlay-plane-update-continuous-sf
* Description: Test that selective fetch works on overlay plane
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: overlay-plane-update-sf-dmg-area
* Description: Test that selective fetch works on overlay plane
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: overlay-primary-update-sf-dmg-area
* Description: Test that selective fetch works on primary plane with blended
* overlay plane
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: plane-move-sf-dmg-area
* Description: Test that selective fetch works on moving overlay plane
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: primary-plane-update-sf-dmg-area
* Description: Test that selective fetch works on primary plane
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: primary-plane-update-sf-dmg-area-big-fb
* Description: Test that selective fetch works on primary plane with big fb
- * Driver requirement: i915, xe
- * Functionality: plane, psr2, selective_fetch
- * Mega feature: PSR
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Tests to varify PSR2 selective fetch by sending multiple"
diff --git a/tests/intel/kms_psr2_su.c b/tests/intel/kms_psr2_su.c
index 1c65b0826..4f8b1e766 100644
--- a/tests/intel/kms_psr2_su.c
+++ b/tests/intel/kms_psr2_su.c
@@ -26,6 +26,9 @@
* TEST: kms psr2 su
* Category: Display
* Description: Test PSR2 selective update
+ * Driver requirement: i915, xe
+ * Mega feature: PSR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -40,17 +43,11 @@
/**
* SUBTEST: frontbuffer-XRGB8888
* Description: Test that selective update works when screen changes
- * Driver requirement: i915, xe
* Functionality: fbt, psr2, selective_update
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: page_flip-%s
* Description: Test the selective update with %arg[1] when screen changes
- * Driver requirement: i915, xe
* Functionality: pixel-format, psr2, selective_update
- * Mega feature: PSR
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index f1f9607f0..06be2fea7 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -2,6 +2,10 @@
/**
* TEST: kms psr stress test
* Category: Display
+ * Driver requirement: i915, xe
+ * Functionality: plane, psr
+ * Mega feature: PSR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -18,18 +22,10 @@
* SUBTEST: flip-primary-invalidate-overlay
* Description: Mix page flips in primary plane and frontbuffer writes to overlay
* plane and check for warnings, underruns or PSR state changes
- * Driver requirement: i915, xe
- * Functionality: plane, psr
- * Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: invalidate-primary-flip-overlay
* Description: Mix frontbuffer writes to the primary plane and page flips in the
* overlay plane and check for warnings, underruns or PSR state changes
- * Driver requirement: i915, xe
- * Functionality: plane, psr
- * Mega feature: PSR
- * Test category: functionality test
*/
#define INVALIDATES_PER_SEC 15
diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
index 9f8bf4275..b27475ada 100644
--- a/tests/kms_addfb_basic.c
+++ b/tests/kms_addfb_basic.c
@@ -29,6 +29,10 @@
* TEST: kms addfb basic
* Category: Display
* Description: Sanity test for ioctls DRM_IOCTL_MODE_ADDFB2 & DRM_IOCTL_MODE_RMFB.
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -53,39 +57,22 @@
/**
* SUBTEST: unused-%s
* Description: Test that addfb2 call fails correctly for unused %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: unused-modifier
* Description: Test that addfb2 call fails correctly for unused modifier
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: clobberred-modifier
* Description: Check if addfb2 call works for clobbered modifier
* Driver requirement: i915
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-smem-bo-on-discrete
* Description: Check if addfb2 with a system memory gem object fails correctly
* if device requires local memory framebuffers
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: legacy-format
* Description: Check if addfb2 call works for legacy formats
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -97,24 +84,12 @@
/**
* SUBTEST: no-handle
* Description: Test that addfb2 call fails correctly without handle
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: basic
* Description: Check if addfb2 call works with given handle
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: bad-pitch-%i
* Description: bad-pitch-%arg[1]: Test that addfb2 call fails correctly for bad-pitches
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* arg[1].values: 0, 32, 63, 128, 256, 999, 1024, 65536
*/
@@ -122,24 +97,16 @@
/**
* SUBTEST: basic-%s-tiled-legacy
* Description: Check if addfb2 and rmfb call works for basic %arg[1] test
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: framebuffer-vs-set-tiling
* Description: Check if addfb2 call works for x and y tiling
* Driver requirement: i915
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: tile-pitch-mismatch
* Description: Test that addfb2 call fails correctly for pitches mismatch
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* arg[1]:
*
@@ -150,99 +117,56 @@
/**
* SUBTEST: size-max
* Description: Check if addfb2 call works with max size of buffer object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: too-wide
* Description: Test that addfb2 call fails correctly with increased width of fb
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: too-high
* Description: Test that addfb2 call fails correctly with increased height of fb
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: bo-too-small
* Description: Test that addfb2 call fails correctly with small size of buffer object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: small-bo
* Description: Check if addfb2 call works for given height
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* SUBTEST: bo-too-small-due-to-tiling
* Description: Test that addfb2 call fails correctly with small buffer object
* after changing tile
- * Driver requirement: i915
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*/
/**
* SUBTEST: addfb25-modifier-no-flag
* Description: Test that addfb2 call fails correctly for x-tiling with given modifier
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: addfb25-bad-modifier
* Description: Test that addfb2 call fails correctly for irrelevant modifier
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: addfb25-x-tiled-mismatch-legacy
* Description: Test that addfb2 call fails correctly for irrelevant x-tiling
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: addfb25-x-tiled-legacy
* Description: Check if addfb2 call works for x-tiling
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*
* SUBTEST: addfb25-framebuffer-vs-set-tiling
* Description: Check if addfb2 call works for relevant combination of tiling and fbs
* Driver requirement: i915
- * Test category: functionality test
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
*/
/**
* SUBTEST: addfb25-y-tiled-%s
* Description: Check if addfb2 call works for y-tiling %arg[1]
- * Driver requirement: i915, xe
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: addfb25-yf-tiled-legacy
* Description: Check if addfb2 call works for yf-tiling
- * Driver requirement: i915, xe
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -253,19 +177,10 @@
/**
* SUBTEST: addfb25-4-tiled
* Description: Check if addfb2 call works for tiling-4
- * Driver requirement: i915, xe
* Functionality: kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
- */
-
-/**
+ *
* SUBTEST: invalid-%s-%s
* Description: Test that %arg[1] ioctl call fails correctly for %arg[2] object
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
*
* arg[1]:
*
@@ -281,10 +196,6 @@
/**
* SUBTEST: master-rmfb
* Description: Check that only master can rmfb
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*/
static uint32_t gem_bo;
diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c
index 90337d0df..d34627866 100644
--- a/tests/kms_async_flips.c
+++ b/tests/kms_async_flips.c
@@ -29,6 +29,10 @@
* TEST: kms async flips
* Category: Display
* Description: Test asynchronous page flips.
+ * Driver requirement: i915, xe
+ * Functionality: async_flips, vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -42,48 +46,26 @@
* SUBTEST: alternate-sync-async-flip
* Description: Verify the async flip functionality and the fps during async flips
* Alternate between sync and async flips
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: async-flip-with-page-flip-events
* Description: Verify the async flip functionality and the fps during async flips
* Wait for page flip events in between successive asynchronous flips
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: test-time-stamp
* Description: Verify the async flip functionality and the fps during async flips
* Verify that the async flip timestamp does not coincide with either
* previous or next vblank
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: test-cursor
* Description: Verify that the DRM_IOCTL_MODE_CURSOR passes after async flip
- * Driver requirement: i915, xe
* Functionality: async_flips, cursor, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: crc
* Description: Use CRC to verify async flip scans out the correct framebuffer
- * Driver requirement: i915, xe
* Functionality: async_flips, crc, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-async-flip
* Description: Negative case to verify if changes in fb are rejected from kernel as expected
- * Driver requirement: i915, xe
- * Functionality: async_flips, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#define CURSOR_POS 128
diff --git a/tests/kms_atomic.c b/tests/kms_atomic.c
index 3d58a9b7d..7e82e0e3a 100644
--- a/tests/kms_atomic.c
+++ b/tests/kms_atomic.c
@@ -31,6 +31,10 @@
* TEST: kms atomic
* Category: Display
* Description: Test atomic modesetting API
+ * Driver requirement: i915, xe
+ * Functionality: kms_core, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <unistd.h>
@@ -53,49 +57,27 @@
* Description: Test abuse the atomic ioctl directly in order to test various
* invalid conditions which the libdrm wrapper won't allow us to
* create.
- * Driver requirement: i915, xe
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: atomic-plane-damage
* Description: Simple test cases to use FB_DAMAGE_CLIPS plane property
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: test-only
* Description: Test to ensure that DRM_MODE_ATOMIC_TEST_ONLY really only touches
* the free-standing state objects and nothing else.
- * Driver requirement: i915, xe
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-primary-overlay-mutable-zpos
* Description: Verify that the overlay plane can cover the primary one (and
* vice versa) by changing their zpos property.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-immutable-zpos
* Description: Verify the reported zpos property of planes by making sure only
* higher zpos planes cover the lower zpos ones.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-%s-legacy
* Description: Test for KMS atomic modesetting on %arg[1] and ensure coherency
* between legacy and atomic interfaces.
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -107,10 +89,6 @@
/**
* SUBTEST: %s-invalid-%s
* Description: Test error handling when invalid %arg[1] %arg[2] are passed
- * Driver requirement: i915, xe
- * Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -123,8 +101,6 @@
* @params-fence: fence parameters
*/
-
-
#ifndef DRM_CAP_CURSOR_WIDTH
#define DRM_CAP_CURSOR_WIDTH 0x8
#endif
diff --git a/tests/kms_atomic_interruptible.c b/tests/kms_atomic_interruptible.c
index 4fd6e0700..ac05cdbe9 100644
--- a/tests/kms_atomic_interruptible.c
+++ b/tests/kms_atomic_interruptible.c
@@ -25,6 +25,9 @@
* TEST: kms atomic interruptible
* Category: Display
* Description: Tests that interrupt various atomic ioctls.
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <signal.h>
@@ -36,10 +39,7 @@
/**
* SUBTEST: %s-setmode
* Description: Tests the interrupt properties of %arg[1] modeset
- * Driver requirement: i915, xe
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -50,31 +50,19 @@
/**
* SUBTEST: legacy-cursor
* Description: Tests the interrupt properties for Cursor
- * Driver requirement: i915, xe
* Functionality: cursor, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: legacy-dpms
* Description: Tests the interrupt properties for DPMS
- * Driver requirement: i915, xe
* Functionality: dpms, kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: legacy-pageflip
* Description: Tests the interrupt properties for page flip
- * Driver requirement: i915, xe
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: universal-setplane-%s
* Description: Tests the interrupt properties for %arg[1]
- * Driver requirement: i915, xe
* Functionality: kms_core, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_atomic_transition.c b/tests/kms_atomic_transition.c
index 1cec0f764..895c01a97 100644
--- a/tests/kms_atomic_transition.c
+++ b/tests/kms_atomic_transition.c
@@ -24,6 +24,10 @@
/**
* TEST: kms atomic transition
* Category: Display
+ * Driver requirement: i915, xe
+ * Functionality: plane, watermark
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,17 +45,10 @@
/**
* SUBTEST: plane-primary-toggle-with-vblank-wait
* Description: Check toggling of primary plane with vblank
- * Driver requirement: i915, xe
* Functionality: plane, vblank, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-all-modeset-%s
* Description: Modeset test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -62,10 +59,7 @@
/**
* SUBTEST: plane-all-modeset-%s
* Description: Modeset test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
* Mega feature: eDP
- * Test category: functionality test
*
* arg[1]:
*
@@ -76,10 +70,6 @@
/**
* SUBTEST: plane-all-%s
* Description: Transition test for all plane combinations %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -92,18 +82,10 @@
/**
* SUBTEST: plane-toggle-modeset-transition
* Description: Check toggling and modeset transition on plane
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-use-after-nonblocking-%s
* Description: Transition test with non %arg[1] and make sure commit of disabled
* plane has to complete before atomic commit on that plane
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -114,10 +96,6 @@
/**
* SUBTEST: modeset-%s
* Description: Modeset transition tests for combinations of %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, watermark
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_bw.c b/tests/kms_bw.c
index e00d65cdb..53f4dc4b1 100644
--- a/tests/kms_bw.c
+++ b/tests/kms_bw.c
@@ -24,6 +24,10 @@
* TEST: kms bw
* Category: Display
* Description: BW test with different resolutions
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "drm_mode.h"
@@ -35,10 +39,6 @@
/**
* SUBTEST: linear-tiling-%d-displays-%s
* Description: bw test with %arg[2]
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1].values: 1, 2, 3, 4, 5, 6, 7, 8
*
diff --git a/tests/kms_color.c b/tests/kms_color.c
index 119dfc1f4..39752de81 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -26,6 +26,10 @@
* TEST: kms color
* Category: Display
* Description: Test Color Features at Pipe level
+ * Driver requirement: i915, xe
+ * Functionality: colorspace
+ * Mega feature: Color mgmt
+ * Test category: functionality test
*/
#include "kms_color_helper.h"
@@ -33,39 +37,19 @@
/**
* SUBTEST: degamma
* Description: Verify that degamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: gamma
* Description: Verify that gamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: legacy-gamma
* Description: Verify that legacy gamma LUT transformation works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: legacy-gamma-reset
* Description: Verify that setting the legacy gamma LUT resets the gamma LUT
* set through GAMMA_LUT property
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: ctm-%s
* Description: Check the color transformation %arg[1]
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* arg[1]:
*
@@ -83,17 +67,9 @@
/**
* SUBTEST: deep-color
* Description: Verify that deep color works correctly
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* SUBTEST: invalid-%s-sizes
* Description: Negative check for %arg[1] sizes
- * Driver requirement: i915, xe
- * Functionality: colorspace
- * Mega feature: Color mgmt
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_content_protection.c b/tests/kms_content_protection.c
index 00eec0fd5..3e942c066 100644
--- a/tests/kms_content_protection.c
+++ b/tests/kms_content_protection.c
@@ -26,6 +26,10 @@
* TEST: kms content protection
* Category: Display
* Description: Test content protection (HDCP)
+ * Driver requirement: i915, xe
+ * Functionality: hdcp1.4
+ * Mega feature: HDCP
+ * Test category: functionality test
*/
#include <poll.h>
@@ -41,49 +45,27 @@
/**
* SUBTEST: lic
* Description: Test for the integrity of link.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
*
* SUBTEST: content-type-change
* Description: Test the content type change when the content protection already
* enabled
- * Driver requirement: i915, xe
* Functionality: hdcp1.4, hdcp2.2
- * Mega feature: HDCP
- * Test category: functionality test
*
* SUBTEST: mei-interface
* Description: Test the teardown and rebuild of the interface between Intel
* and mei hdcp.
- * Driver requirement: i915, xe
* Functionality: hdcp1.4, hdcp2.2
- * Mega feature: HDCP
- * Test category: functionality test
*
* SUBTEST: srm
* Description: This test writes the facsimile SRM into the /lib/firmware/ and
* check the kernel parsing of it by invoking the hdcp authentication.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
*
* SUBTEST: uevent
* Description: Test to detect the HDCP status change when we are reading the
* uevent sent with the corresponding connector id and property id.
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
*
* SUBTEST: %s
* Description: Test content protection with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: hdcp1.4
- * Mega feature: HDCP
- * Test category: functionality test
*
* arg[1]:
*
@@ -96,10 +78,7 @@
/**
* SUBTEST: dp-mst-%s
* Description: Test Content protection %arg[1] over DP MST.
- * Driver requirement: i915, xe
* Functionality: hdcp1.4, mst
- * Mega feature: HDCP
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c
index 1d0eab6f5..5a0292a45 100644
--- a/tests/kms_cursor_crc.c
+++ b/tests/kms_cursor_crc.c
@@ -33,6 +33,10 @@
* compares it with the CRC value obtained when the cursor plane
* was disabled and its drawing is directly inserted on the PF by
* software.
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -45,24 +49,14 @@
/**
* SUBTEST: cursor-dpms
* Description: Check random placement of a cursor with DPMS.
- * Driver requirement: i915, xe
* Functionality: cursor, dpms
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: cursor-suspend
* Description: Check random placement of a cursor with suspend.
- * Driver requirement: i915, xe
* Functionality: cursor, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: cursor-%s
* Description: %arg[1]
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -78,10 +72,6 @@
/**
* SUBTEST: cursor-%s-%s
* Description: Check if a %arg[2] cursor is %arg[1].
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_cursor_edge_walk.c b/tests/kms_cursor_edge_walk.c
index 749cd92e4..1e6398eb6 100644
--- a/tests/kms_cursor_edge_walk.c
+++ b/tests/kms_cursor_edge_walk.c
@@ -25,8 +25,11 @@
/**
* TEST: kms cursor edge walk
* Category: Display
- * Description: Exercise CHV pipe C cursor fail
* Description: Test to check different cursor sizes by walking different edges of screen
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -39,10 +42,6 @@
/**
* SUBTEST: %s-%s
* Description: Checking cursor size %arg[1] by walking %arg[2] of screen
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 2dcec10bd..c7d85c429 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -26,6 +26,10 @@
* TEST: kms cursor legacy
* Category: Display
* Description: Stress legacy cursor ioctl
+ * Driver requirement: i915, xe
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <sched.h>
@@ -42,10 +46,6 @@
* Description: Test checks how many cursor updates we can fit between vblanks
* on single/all pipes with different modes, priority and number
* of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -62,17 +62,9 @@
/**
* SUBTEST: basic-busy-flip-before-cursor-%s
* Description: Cursor test with %arg[1] mode
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
*
* SUBTEST: basic-busy-flip-before-cursor-varying-size
* Description: Change the size of cursor b/w 64*64 to maxw x maxh.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -83,17 +75,9 @@
/**
* SUBTEST: basic-flip-after-cursor-%s
* Description: Cursor test with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
*
* SUBTEST: basic-flip-before-cursor-%s
* Description: Cursor test with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: cursor
- * Mega feature: General Display Features
*
* arg[1]:
*
@@ -110,10 +94,6 @@
* and full screen primary plane.\n"
* - toggle: which toggles cursor visibility and make sure cursor moves
* between updates.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -135,10 +115,6 @@
* and full screen primary plane.\n"
* - toggle: which toggles cursor visibility and make sure cursor moves
* between updates.
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -151,26 +127,14 @@
* SUBTEST: long-nonblocking-modeset-vs-cursor-atomic
* Description: Test checks how many cursor updates we can fit between vblanks
* on all pipes with different modes, priority and number of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: nonblocking-modeset-vs-cursor-atomic
* Description: Test checks how many cursor updates we can fit between vblanks
* on all pipes with different modes, priority and number of processes
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s-%s
* Description: This test executes flips on both CRTCs while running cursor
* updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -189,10 +153,6 @@
* SUBTEST: 2x-%s-atomic
* Description: This test executes flips on both CRTCs while running cursor
* updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -204,10 +164,6 @@
* SUBTEST: %s-%s
* Description: The essence of the basic test is that neither the cursor nor the
* nonblocking flip stall the application of the next
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -231,10 +187,6 @@
/**
* SUBTEST: 2x-%s-%s
* Description: This test executes flips on both CRTCs while running cursor updates in parallel
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -252,17 +204,9 @@
/**
* SUBTEST: flip-vs-cursor-crc-%s
* Description: this test perform a page flip followed by a cursor update
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: flip-vs-cursor-busy-crc-%s
* Description: this test perform a busy bo update followed by a cursor update
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -274,10 +218,6 @@
* SUBTEST: modeset-atomic-cursor-hotspot
* Description: Test changes the cursor hotspot and checks that the property is
* updated accordignly
- * Driver requirement: i915, xe
- * Functionality: cursor
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#if defined(__x86_64__) || defined(__i386__)
diff --git a/tests/kms_display_modes.c b/tests/kms_display_modes.c
index ad3839981..067663469 100644
--- a/tests/kms_display_modes.c
+++ b/tests/kms_display_modes.c
@@ -28,6 +28,9 @@
* TEST: kms display modes
* Category: Display
* Description: Test Display Modes
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -36,18 +39,12 @@
* SUBTEST: extended-mode-basic
* Description: Test for validating display extended mode with a pair of connected
* displays
- * Driver requirement: i915, xe
* Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: mst-extended-mode-negative
* Description: Negative test for validating display extended mode with a pair
* of connected 2k-4k or 4k-4k displays.
- * Driver requirement: i915, xe
* Functionality: kms_core, mst
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#define HDISPLAY_4K 3840
diff --git a/tests/kms_dither.c b/tests/kms_dither.c
index 5683fe5c5..af7b7f05c 100644
--- a/tests/kms_dither.c
+++ b/tests/kms_dither.c
@@ -29,6 +29,10 @@
* TEST: kms dither
* Category: Display
* Description: Test Dithering block status
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -39,17 +43,9 @@
/**
* SUBTEST: fb-8bpc-vs-panel-6bpc
* Description: Framebuffer BPC:8, Panel BPC:6, Expected Dither:Enable
- * Driver requirement: i915, xe
- * Functionality: colorspace, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: fb-8bpc-vs-panel-8bpc
* Description: Framebuffer BPC:8, Panel BPC:8, Expected Dither:Disable
- * Driver requirement: i915, xe
- * Functionality: colorspace, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test Dithering block status");
diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
index 234ea36c1..764e67a01 100644
--- a/tests/kms_feature_discovery.c
+++ b/tests/kms_feature_discovery.c
@@ -28,6 +28,10 @@
* Description: A metatest that checks for \"features\" presence.
* The subtests here should only skip or pass,
* anything else means we have a serious problem.
+ * Driver requirement: i915, xe
+ * Functionality: feature_discovery
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -43,45 +47,28 @@
* SUBTEST: display
* Description: Make sure that we have display support with
* some outputs connected.
- * Driver requirement: i915, xe
- * Functionality: feature_discovery
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: display-%dx
* Description: Make sure that we have display support with %arg[1]
* outputs connected.
- * Driver requirement: i915, xe
- * Functionality: feature_discovery
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: chamelium
* Description: Make sure that Chamelium is configured and reachable.
- * Driver requirement: i915, xe
* Functionality: feature_discovery, chamelium
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: psr1
* Description: Make sure that we have eDP panel with PSR1 support.
- * Driver requirement: i915, xe
* Functionality: feature_discovery, psr1, eDP
* Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: psr2
* Description: Make sure that we have eDP panel with PSR2 support.
- * Driver requirement: i915, xe
* Functionality: feature_discovery, psr2, eDP
* Mega feature: PSR
- * Test category: functionality test
*
* SUBTEST: dp-mst
* Description: Make sure that we have DP-MST configuration.
- * Driver requirement: i915, xe
* Functionality: feature_discovery, mst
- * Mega feature: General Display Features
* Test category: functionality test
*
* arg[1].values: 2, 3, 4
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index f62c8fa2f..716db1225 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -25,6 +25,10 @@
* TEST: kms flip
* Category: Display
* Description: Tests for validating modeset, dpms and pageflips
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "config.h"
@@ -58,16 +62,12 @@
* Description: %arg[1] test to validate pageflips with available fences
* Driver requirement: i915
* Functionality: gtt, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: %arg[1] test to validate pageflips along with available fences
* on a pair of connected displays
* Driver requirement: i915
* Functionality: gtt, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -78,10 +78,7 @@
/**
* SUBTEST: dpms-off-%s
* Description: %arg[1] test to validate pageflips by disabling other connectors usng dpms
- * Driver requirement: i915, xe
* Functionality: dpms, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -92,10 +89,7 @@
/**
* SUBTEST: %s
* Description: %arg[1] test to validate pageflips with large BO in size
- * Driver requirement: i915, xe
* Functionality: kms_gem_interop, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -106,17 +100,11 @@
/**
* SUBTEST: %s
* Description: Basic test to validate %arg[1]
- * Driver requirement: i915, xe
* Functionality: hang, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: Test to validate %arg[1] on a pair of connected displays
- * Driver requirement: i915, xe
* Functionality: hang, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -127,17 +115,9 @@
/**
* SUBTEST: %s
* Description: Basic test to validate %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: Test to validate %arg[1] on a pair of connected displays
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -160,18 +140,12 @@
/**
* SUBTEST: %s
* Description: %arg[1] test to validate pageflips with suspend cycle
- * Driver requirement: i915, xe
* Functionality: suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: %arg[1] test to validate pageflips with suspend cycle on a pair
* of connected displays
- * Driver requirement: i915, xe
* Functionality: suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -182,31 +156,17 @@
/**
* SUBTEST: %s
* Description: Basic test to validate %arg[1]
- * Driver requirement: i915, xe
* Functionality: dpms, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: Basic test to validate %arg[1] on a pair of connected displays
- * Driver requirement: i915, xe
* Functionality: dpms, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-interruptible
* Description: Basic test to validate %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s-interruptible
* Description: Basic test to validate %arg[1] on a pair of connected displays
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -221,17 +181,10 @@
* SUBTEST: 2x-flip-vs-dpms
* Description: Basic test to validate pageflip along with dpms on a pair of
* connected displays
- * Driver requirement: i915, xe
* Functionality: dpms, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s
* Description: Basic test to validate %arg[1] on a pair of connected displays
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -243,18 +196,10 @@
/**
* SUBTEST: %s-interruptible
* Description: Basic test for validating modeset, dpms and pageflips
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-%s-interruptible
* Description: Test for validating modeset, dpms and pageflips with a pair of
* connected displays
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -276,31 +221,16 @@
/**
* SUBTEST: basic-plain-flip
* Description: Basic test for validating page flip
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: vblank
- * Mega feature: General Display Features
*
* SUBTEST: nonblocking-read
* Description: Tests that nonblocking reading fails correctly
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-flip-vs-dpms
* Description: Basic test to valide pageflip with dpms
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: dpms, vblank
- * Mega feature: General Display Features
*
* SUBTEST: basic-flip-vs-%s
* Description: Basic test to valide pageflip with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: vblank
- * Mega feature: General Display Features
*
* arg[1]:
*
diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c
index 55e6a7767..392a02f7e 100644
--- a/tests/kms_force_connector_basic.c
+++ b/tests/kms_force_connector_basic.c
@@ -26,6 +26,10 @@
* TEST: kms force connector basic
* Category: Display
* Description: Check the debugfs force connector/edid features work correctly.
+ * Driver requirement: i915, xe
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,29 +39,15 @@
* Description: Test to detect forced load.
* Driver requirement: i915
* Functionality: force_connector, vga
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: force-connector-state
* Description: Test to check the forced connector state
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
*
* SUBTEST: force-edid
* Description: Test to check the values after forcing edid
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
*
* SUBTEST: prune-stale-modes
* Description: Tests pruning of stale modes
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: force_connector
- * Mega feature: General Display Features
*/
IGT_TEST_DESCRIPTION("Check the debugfs force connector/edid features work"
diff --git a/tests/kms_getfb.c b/tests/kms_getfb.c
index b4a155e2d..e6b8dd873 100644
--- a/tests/kms_getfb.c
+++ b/tests/kms_getfb.c
@@ -31,6 +31,10 @@
* TEST: kms getfb
* Category: Display
* Description: Tests GETFB and GETFB2 ioctls.
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -54,10 +58,6 @@
/**
* SUBTEST: getfb-handle-%s
* Description: Tests error handling %arg[1]
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -71,18 +71,11 @@
* SUBTEST: getfb-reject-ccs
* Description: Tests error handling while requesting CCS buffers it should
* refuse because getfb supports returning a single buffer handle.
- * Driver requirement: i915, xe
* Functionality: ccs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: getfb-%s-different-handles
* Description: Tests error handling while requesting for two different handles
* from %arg[1].
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -93,24 +86,13 @@
/**
* SUBTEST: getfb2-accept-ccs
* Description: Tests outputs are correct when retrieving a CCS framebuffer.
- * Driver requirement: i915, xe
* Functionality: ccs, kms_gem_interop, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: getfb2-into-addfb2
* Description: Output check by passing the output of GETFB2 into ADDFB2.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: getfb2-handle-%s
* Description: Tests error handling %arg[1].
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -122,10 +104,6 @@
/**
* SUBTEST: %s-handle-protection
* Description: Make sure %arg[1] return handles if caller is non-root or non-master.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_hdmi_inject.c b/tests/kms_hdmi_inject.c
index 3a279e2c9..9691f2818 100644
--- a/tests/kms_hdmi_inject.c
+++ b/tests/kms_hdmi_inject.c
@@ -28,6 +28,9 @@
* Description: Test that in-kernel EDID parsing is producing expected results
* by forcing a HDMI connector with a known EDID and checking that
* the metadata exposed to user space matches.
+ * Driver requirement: i915, xe
+ * Mega feature: HDMI
+ * Test category: functionality test
*/
#include "config.h"
@@ -43,18 +46,12 @@
* SUBTEST: inject-4k
* Description: Make sure that 4K modes exposed by DRM match the forced EDID and
* modesetting using it succeed.
- * Driver requirement: i915, xe
* Functionality: force_connector, hdmi_edid
- * Mega feature: HDMI
- * Test category: functionality test
*
* SUBTEST: inject-audio
* Description: Make sure that audio information exposed by ALSA match the forced
* EDID.
- * Driver requirement: i915, xe
* Functionality: audio, force_connector
- * Mega feature: HDMI
- * Test category: functionality test
*/
#define HDISPLAY_4K 3840
diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c
index 215f81892..4dd2eda37 100644
--- a/tests/kms_hdr.c
+++ b/tests/kms_hdr.c
@@ -24,6 +24,10 @@
* TEST: kms hdr
* Category: Display
* Description: Test HDR metadata interfaces and bpc switch
+ * Driver requirement: i915, xe
+ * Functionality: colorspace, hdr
+ * Mega feature: HDR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,59 +39,31 @@
/**
* SUBTEST: bpc-switch
* Description: Tests switching between different display output bpc modes
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: bpc-switch-dpms
* Description: Tests switching between different display output bpc modes with dpms
- * Driver requirement: i915, xe
* Functionality: colorspace, dpms, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: bpc-switch-suspend
* Description: Tests switching between different display output bpc modes with suspend
- * Driver requirement: i915, xe
* Functionality: colorspace, hdr, suspend
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: invalid-hdr
* Description: Test to ensure HDR is not enabled on non-HDR panel
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: invalid-metadata-sizes
* Description: Tests invalid HDR metadata sizes
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: static-toggle-dpms
* Description: Tests static toggle with dpms
- * Driver requirement: i915, xe
* Functionality: colorspace, dpms, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: static-toggle-suspend
* Description: Tests static toggle with suspend
- * Driver requirement: i915, xe
* Functionality: colorspace, hdr, suspend
- * Mega feature: HDR
- * Test category: functionality test
*
* SUBTEST: static-%s
* Description: Tests %arg[1].
- * Driver requirement: i915, xe
- * Functionality: colorspace, hdr
- * Mega feature: HDR
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_invalid_mode.c b/tests/kms_invalid_mode.c
index 011936c32..855183436 100644
--- a/tests/kms_invalid_mode.c
+++ b/tests/kms_invalid_mode.c
@@ -27,6 +27,10 @@
* Category: Display
* Description: Make sure all modesets are rejected when the requested mode is
* invalid
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -37,10 +41,6 @@
* SUBTEST: %s
* Description: Make sure all modesets are rejected when the requested mode
* (%arg[1]) is invalid
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 343cdb812..464443f6f 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -25,6 +25,10 @@
* TEST: kms lease
* Category: Display
* Description: Test of CreateLease.
+ * Driver requirement: i915, xe
+ * Functionality: lease
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -48,155 +52,71 @@
/**
* SUBTEST: atomic-implicit-crtc
* Description: Negative test by using a different crtc with atomic ioctl
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: cursor-implicit-plane
* Description: Negative test by using a non-primary plane with setcursor ioctl
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: empty-lease
* Description: Check that creating an empty lease works
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: implicit-plane-lease
* Description: Tests the implicitly added planes.
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-create-leases
* Description: Tests error handling while creating invalid corner-cases for
* create-lease ioctl
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-uevent
* Description: Tests all the uevent cases
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-again
* Description: Tests leasing objects more than once
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-get
* Description: Tests getting the required contents of a lease
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-invalid-connector
* Description: Tests leasing an invalid connector
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-invalid-crtc
* Description: Tests leasing an invalid crtc
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-invalid-plane
* Description: Tests leasing an invalid plane
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-revoke
* Description: Tests revocation of lease
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-unleased-connector
* Description: Negative test by trying to use an unleased connector
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lease-unleased-crtc
* Description: Negative test by trying to use an unleased crtc
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: lessee-list
* Description: Check if listed lease is same as created one
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: master-vs-lease
* Description: Tests the drop/set_master interactions.
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: multimaster-lease
* Description: Tests that the 2nd master can only create leases while being
* active master, and that leases on the first master don't prevent
* lease creation for the 2nd master.
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: page-flip-implicit-plane
* Description: Negative test by using a non-primary plane with the page flip ioctl
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: possible-crtcs-filtering
* Description: Tests that possible_crtcs logically match between master and
* lease, and that the values are correctly renumbered on the lease
* side.
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: setcrtc-implicit-plane
* Description: Negative test by using a non-primary plane with the setcrtc ioctl
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: simple-lease
* Description: Check if create lease ioctl call works
- * Driver requirement: i915, xe
- * Functionality: lease
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test of CreateLease.");
diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c
index af0c756ed..4b5d9d5ab 100644
--- a/tests/kms_panel_fitting.c
+++ b/tests/kms_panel_fitting.c
@@ -26,6 +26,10 @@
* TEST: kms panel fitting
* Category: Display
* Description: Test display panel fitting
+ * Driver requirement: i915, xe
+ * Functionality: eDP, panel_fitting, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -36,17 +40,9 @@
/**
* SUBTEST: atomic-fastset
* Description: Tests panel fitting usages with atomic fastset.
- * Driver requirement: i915, xe
- * Functionality: eDP, panel_fitting, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: legacy
* Description: Tests panel fitting usages with legacy style commit.
- * Driver requirement: i915, xe
- * Functionality: eDP, panel_fitting, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test display panel fitting");
diff --git a/tests/kms_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index 9671a2d61..01df0e776 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -26,6 +26,10 @@
* TEST: kms pipe crc basic
* Category: Display
* Description: Tests behaviour of CRC
+ * Driver requirement: i915, xe
+ * Functionality: crc
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -39,61 +43,32 @@
/**
* SUBTEST: bad-source
* Description: Tests error handling when the bad source is set.
- * Driver requirement: i915, xe
- * Functionality: crc
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: read-crc
* Description: Test for pipe CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
*
* SUBTEST: read-crc-frame-sequence
* Description: Tests the pipe CRC read and ensure frame sequence
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
*
* SUBTEST: nonblocking-crc
* Description: Test for O_NONBLOCK CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
*
* SUBTEST: nonblocking-crc-frame-sequence
* Description: Test for O_NONBLOCK CRC reads and ensure frame sequence
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: crc
- * Mega feature: General Display Features
*
* SUBTEST: suspend-read-crc
* Description: Suspend test for pipe CRC reads
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: crc, suspend
- * Mega feature: General Display Features
*
* SUBTEST: hang-read-crc
* Description: Hang test for pipe CRC read
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: crc, hang
- * Mega feature: General Display Features
*/
/**
* SUBTEST: compare-crc-sanitycheck-%s
* Description: Basic sanity check for CRC mismatches with %arg[1]
- * Driver requirement: i915, xe
- * Test category: functionality test
* Functionality: crc, pixel_format
- * Mega feature: General Display Features
*
* arg[1]:
*
@@ -105,10 +80,6 @@
* SUBTEST: disable-crc-after-crtc
* Description: Check that disabling CRCs on a CRTC after having disabled the
* CRTC does not cause issues.
- * Driver requirement: i915, xe
- * Functionality: crc
- * Mega feature: General Display Features
- * Test category: functionality test
*/
static bool extended;
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 6b08763bb..fa05a83e1 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -28,6 +28,9 @@
* TEST: kms plane
* Category: Display
* Description: Testes for KMS Plane
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,25 +44,16 @@
/**
* SUBTEST: planar-pixel-format-settings
* Description: verify planar settings for pixel format are handled correctly
- * Driver requirement: i915, xe
* Functionality: pixel_format, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-position-%s
* Description: Verify plane position using two planes to create a %arg[1]
- * Driver requirement: i915, xe
* Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-position-hole-dpms
* Description: Verify plane position using two planes to create a partially
* covered screen and check for DPMS
- * Driver requirement: i915, xe
* Functionality: dpms, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -70,18 +64,12 @@
/**
* SUBTEST: plane-panning-%s
* Description: Verify plane panning at %arg[1] using primary plane
- * Driver requirement: i915, xe
* Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-panning-bottom-right-suspend
* Description: Verify plane panning at bottom-right position with suspend using
* primary plane
- * Driver requirement: i915, xe
* Functionality: plane, suspend
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -92,10 +80,7 @@
/**
* SUBTEST: pixel-%s
* Description: verify the pixel formats for given plane and pipe
- * Driver requirement: i915, xe
* Functionality: pixel_format, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_plane_alpha_blend.c b/tests/kms_plane_alpha_blend.c
index 636cfcca4..c7cdc38c9 100644
--- a/tests/kms_plane_alpha_blend.c
+++ b/tests/kms_plane_alpha_blend.c
@@ -28,6 +28,10 @@
* TEST: kms plane alpha blend
* Category: Display
* Description: Test plane alpha and blending mode properties
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,10 +39,6 @@
/**
* SUBTEST: alpha-%s
* Description: Test to %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -52,25 +52,13 @@
/**
* SUBTEST: coverage-vs-premult-vs-constant
* Description: Tests pipe coverage blending properties.
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: coverage-7efc
* Description: Uses alpha values 0x7e and 0xfc to validate fg.alpha and
* plane_alpha are swappable on coverage blend mode.
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: constant-alpha-%s
* Description: Tests plane alpha and blending properties with %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c
index 76a4ddba7..02bfdb358 100644
--- a/tests/kms_plane_cursor.c
+++ b/tests/kms_plane_cursor.c
@@ -24,6 +24,10 @@
* TEST: kms plane cursor
* Category: Display
* Description: Tests cursor interactions with primary and overlay planes.
+ * Driver requirement: i915, xe
+ * Functionality: cursor, plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -31,25 +35,13 @@
/**
* SUBTEST: overlay
* Description: Tests atomic cursor positioning on primary plane and overlay plane
- * Driver requirement: i915, xe
- * Functionality: cursor, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: primary
* Description: Tests atomic cursor positioning on primary plane
- * Driver requirement: i915, xe
- * Functionality: cursor, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: viewport
* Description: Tests atomic cursor positioning on primary plane and overlay plane
* with buffer larger than viewport used for display
- * Driver requirement: i915, xe
- * Functionality: cursor, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/*
diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c
index 79d48b6c5..3385594f6 100644
--- a/tests/kms_plane_lowres.c
+++ b/tests/kms_plane_lowres.c
@@ -27,6 +27,10 @@
* Category: Display
* Description: Test atomic mode setting with a plane by switching between high
* and low resolutions
+ * Driver requirement: i915, xe
+ * Functionality: plane, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,18 +45,11 @@
* SUBTEST: tiling-none
* Description: Tests the visibility of the planes when switching between high
* and low resolution with Linear buffer (no tiling)
- * Driver requirement: i915, xe
* Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: tiling-%s
* Description: Tests the visibility of the planes when switching between high
* and low resolution with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c
index 0d07beefc..50e107ccf 100644
--- a/tests/kms_plane_multiple.c
+++ b/tests/kms_plane_multiple.c
@@ -26,6 +26,10 @@
* TEST: kms plane multiple
* Category: Display
* Description: Test atomic mode setting with multiple planes.
+ * Driver requirement: i915, xe
+ * Functionality: plane, tiling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -41,19 +45,12 @@
* Description: Check that the kernel handles atomic updates of multiple planes
* correctly by changing their geometry and making sure the changes
* are reflected immediately after each commit.
- * Driver requirement: i915, xe
* Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: tiling-%s
* Description: Check that the kernel handles atomic updates of multiple planes
* correctly by changing their geometry and making sure the changes
* are reflected immediately after each commit.
- * Driver requirement: i915, xe
- * Functionality: plane, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c
index 2c27d6e4a..bcdaf5568 100644
--- a/tests/kms_plane_scaling.c
+++ b/tests/kms_plane_scaling.c
@@ -26,6 +26,10 @@
* TEST: kms plane scaling
* Category: Display
* Description: Test display plane scaling
+ * Driver requirement: i915, xe
+ * Functionality: plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,24 +39,12 @@
/**
* SUBTEST: plane-scaler-unity-scaling-with-modifiers
* Description: Tests scaling with modifiers, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-scaler-with-clipping-clamping-modifiers
* Description: Tests scaling with clipping and clamping, modifiers.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-upscale-%s-with-modifiers
* Description: Tests upscaling with modifiers %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -63,10 +55,6 @@
/**
* SUBTEST: plane-downscale-factor-%s-with-modifiers
* Description: Tests downscaling with modifiers for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -78,24 +66,12 @@
/**
* SUBTEST: plane-scaler-unity-scaling-with-rotation
* Description: Tests scaling with rotation, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-scaler-with-clipping-clamping-rotation
* Description: Tests scaling with clipping and clamping, rotation.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-upscale-%s-with-rotation
* Description: Tests upscaling with rotation %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -106,10 +82,6 @@
/**
* SUBTEST: plane-downscale-factor-%s-with-rotation
* Description: Tests downscaling with rotation for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -121,24 +93,15 @@
/**
* SUBTEST: plane-scaler-unity-scaling-with-pixel-format
* Description: Tests scaling with pixel formats, unity scaling.
- * Driver requirement: i915, xe
* Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-scaler-with-clipping-clamping-pixel-formats
* Description: Tests scaling with clipping and clamping, pixel formats.
- * Driver requirement: i915, xe
* Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: plane-upscale-%s-with-pixel-format
* Description: Tests upscaling with pixel formats %arg[1].
- * Driver requirement: i915, xe
* Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -149,10 +112,7 @@
/**
* SUBTEST: plane-downscale-factor-%s-with-pixel-format
* Description: Tests downscaling with pixel formats for %arg[1] scaling factor.
- * Driver requirement: i915, xe
* Functionality: pixel_formats, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -164,10 +124,6 @@
/**
* SUBTEST: planes-downscale-factor-%s
* Description: Tests downscaling of 2 planes for %arg[1] scaling factor.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -180,10 +136,6 @@
* SUBTEST: planes-downscale-factor-%s-%s
* Description: Tests downscaling (scaling factor %arg[1]) and upscaling (%arg[2])
* of 2 planes.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -201,17 +153,9 @@
/**
* SUBTEST: planes-scaler-unity-scaling
* Description: Tests scaling of 2 planes, unity scaling.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: planes-upscale-%s
* Description: Tests upscaling of 2 planes %arg[1].
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -223,10 +167,6 @@
* SUBTEST: planes-%s-downscale-factor-%s
* Description: Tests scaling (%arg[1]) and downscaling (scaling factor %arg[2])
* of 2 planes.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -244,31 +184,15 @@
/**
* SUBTEST: invalid-num-scalers
* Description: Negative test for number of scalers per pipe.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: 2x-scaler-multi-pipe
* Description: Tests scaling with multi-pipe.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-parameters
* Description: Test parameters which should not be accepted
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: intel-max-src-size
* Description: Test for validating max source size.
- * Driver requirement: i915, xe
- * Functionality: plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test display plane scaling");
diff --git a/tests/kms_prime.c b/tests/kms_prime.c
index c8ab2f6fd..040c3982a 100644
--- a/tests/kms_prime.c
+++ b/tests/kms_prime.c
@@ -25,6 +25,10 @@
* TEST: kms prime
* Category: Display
* Description: Prime tests, focusing on KMS side
+ * Driver requirement: i915, xe
+ * Functionality: hybrid, kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -40,25 +44,14 @@
/**
* SUBTEST: D3hot
* Description: Validate pci state of dGPU when dGPU is idle and scanout is on iGPU
- * Driver requirement: i915, xe
- * Functionality: hybrid, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-modeset-hybrid
* Description: Basic modeset on the one device when the other device is active
- * Driver requirement: i915, xe
- * Functionality: hybrid, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-crc-%s
* Description: Make a dumb color buffer, export to another device and compare
* the CRCs with a buffer native to that device
- * Driver requirement: i915, xe
* Functionality: crc, hybrid, kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_prop_blob.c b/tests/kms_prop_blob.c
index 199c673e3..7e7924618 100644
--- a/tests/kms_prop_blob.c
+++ b/tests/kms_prop_blob.c
@@ -29,6 +29,10 @@
* TEST: kms prop blob
* Category: Display
* Description: Tests behaviour of mass-data 'blob' properties.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -40,17 +44,9 @@
/**
* SUBTEST: blob-multiple
* Description: Test validates destroying multiple properties explicitly works as needed.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: blob-prop-%s
* Description: Tests validates the %arg[1] of the properties created.
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -62,17 +58,9 @@
/**
* SUBTEST: basic
* Description: Test to ensure property support exists
- * Driver requirement: i915, xe
- * Test category: functionality test
- * Functionality: kms_core
- * Mega feature: General Display Features
*
* SUBTEST: invalid-%s-%s
* Description: Tests error handling when invalid properties are %ar[1] with %arg[2].
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_properties.c b/tests/kms_properties.c
index 28c3593e5..a37b613f7 100644
--- a/tests/kms_properties.c
+++ b/tests/kms_properties.c
@@ -25,6 +25,10 @@
* TEST: kms properties
* Category: Display
* Description: Test to validate the properties of all planes, crtc and connectors
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -38,10 +42,6 @@
/**
* SUBTEST: %s-properties-%s
* Description: Tests %arg[1] properties with %arg[2] commit
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -60,10 +60,6 @@
* SUBTEST: get_properties-sanity-%s
* Description: Test validates the properties of all planes, crtc and connectors
* with %arg[1] commit
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c
index 5b4151e85..2bf05efd4 100644
--- a/tests/kms_rmfb.c
+++ b/tests/kms_rmfb.c
@@ -26,6 +26,10 @@
* Category: Display
* Description: This tests rmfb and close-fd behavior. In these casesthe
* framebuffers should be removed from the crtc.
+ * Driver requirement: i915, xe
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -40,18 +44,10 @@
* SUBTEST: close-fd
* Description: RMFB is supposed to free the framebuffers from any and all planes
* so test this and make sure it works with fd close and reopen.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: rmfb-ioctl
* Description: RMFB is supposed to free the framebuffers from any and all planes
* so test this and make sure it works.
- * Driver requirement: i915, xe
- * Functionality: kms_gem_interop
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#ifndef DRM_CAP_CURSOR_WIDTH
diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c
index b588cc1db..167f7ebb7 100644
--- a/tests/kms_rotation_crc.c
+++ b/tests/kms_rotation_crc.c
@@ -26,6 +26,10 @@
* TEST: kms rotation crc
* Category: Display
* Description: Tests different rotations with different planes & formats
+ * Driver requirement: i915, xe
+ * Functionality: plane, rotation
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,10 +39,6 @@
/**
* SUBTEST: %s-rotation-180
* Description: Rotation test with 180 degree for %arg[1] planes
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -50,10 +50,6 @@
/**
* SUBTEST: %s-rotation-%d
* Description: Rotation test with %arg[2] degree for %arg[1] planes of gen9+
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -66,33 +62,19 @@
/**
* SUBTEST: bad-pixel-format
* Description: Checking unsupported pixel format for gen9+ with 90 degree of rotation
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: bad-tiling
* Description: Checking unsupported tiling for gen9+ with 90 degree of rotation
- * Driver requirement: i915, xe
* Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: exhaust-fences
* Description: This test intends to check for fence leaks exhaustively
- * Driver requirement: i915
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
* SUBTEST: primary-%s-tiled-reflect-x-%d
* Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
- * Driver requirement: i915, xe
* Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -107,10 +89,7 @@
/**
* SUBTEST: primary-%s-tiled-reflect-x-%d
* Description: Test for %arg[1] & %arg[2] degree rotation on primary plane
- * Driver requirement: i915, xe
* Functionality: plane, rotation, tiling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -121,27 +100,15 @@
*
* SUBTEST: sprite-rotation-90-pos-100-0
* Description: Rotation test with 90 degree for a plane of gen9+ with given position
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*/
/**
* SUBTEST: multiplane-rotation
* Description: Rotation test on both planes by making them fully visible
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: multiplane-rotation-cropping-%s
* Description: Rotation test on both planes by cropping left/%arg[1] corner of
* primary plane and right/%arg[1] corner of sprite plane
- * Driver requirement: i915, xe
- * Functionality: plane, rotation
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
index eb14deb25..0c20a7098 100644
--- a/tests/kms_scaling_modes.c
+++ b/tests/kms_scaling_modes.c
@@ -28,6 +28,10 @@
* TEST: kms scaling modes
* Category: Display
* Description: Test display scaling modes
+ * Driver requirement: i915, xe
+ * Functionality: eDP, plane, scaling
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,10 +39,6 @@
/**
* SUBTEST: scaling-mode-%s
* Description: Tests %arg[1] display scaling mode
- * Driver requirement: i915, xe
- * Functionality: eDP, plane, scaling
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_selftest.c b/tests/kms_selftest.c
index b6564b31a..3b09e9265 100644
--- a/tests/kms_selftest.c
+++ b/tests/kms_selftest.c
@@ -25,6 +25,10 @@
* TEST: kms selftest
* Category: Display
* Description: Basic sanity check of KMS selftests.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -33,10 +37,6 @@
/**
* SUBTEST: %s
* Description: Basic sanity check of KMS selftest %arg[1].
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_sequence.c b/tests/kms_sequence.c
index f03be4c7c..544f1c898 100644
--- a/tests/kms_sequence.c
+++ b/tests/kms_sequence.c
@@ -26,6 +26,10 @@
* TEST: kms sequence
* Category: Display
* Description: Test CrtcGetSequence and CrtcQueueSequence.
+ * Driver requirement: i915, xe
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -46,10 +50,6 @@
/**
* SUBTEST: get-%s
* Description: This is a test of drmCrtcGetSequence with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
@@ -62,10 +62,6 @@
/**
* SUBTEST: queue-%s
* Description: This is a test of drmCrtcQueueSequence with %arg[1]
- * Driver requirement: i915, xe
- * Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_setmode.c b/tests/kms_setmode.c
index aae7ed06e..57bd7c230 100644
--- a/tests/kms_setmode.c
+++ b/tests/kms_setmode.c
@@ -26,6 +26,10 @@
* Category: Display
* Description: Tests the mode by iterating through all valid/invalid crtc/connector
* combinations
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "config.h"
@@ -44,50 +48,27 @@
* SUBTEST: basic
* Description: Tests the vblank timing by iterating through all valid crtc/connector
* combinations
- * Driver requirement: i915, xe
* Functionality: kms_core, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-clone-single-crtc
* Description: Test allows the use of a single CRTC for two connectors, such as VGA/HDMI,
* VGA/DP, and HDMI/HDMI
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: clone-exclusive-crtc
* Description: Tests the mode by cloning the exclusive crtc by iterating through
* all valid crtc/connector combinations
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-clone-exclusive-crtc
* Description: Test is allowed when a connector uses CRTC that is not compatible with the
* connector, for instance, DP/HDMI can be used on certain pipes only on older platforms
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-clone-single-crtc
* Description: Tests the mode by cloning the single crtc by iterating through all
* invalid crtc/connector combinations
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid-clone-single-crtc-stealing
* Description: Tests the stealing mode by cloning the single crtc by iterating
* through all invalid crtc/connector combinations
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*/
#define MAX_CONNECTORS 10
diff --git a/tests/kms_tiled_display.c b/tests/kms_tiled_display.c
index ba6323c1e..ac4ec496c 100644
--- a/tests/kms_tiled_display.c
+++ b/tests/kms_tiled_display.c
@@ -40,6 +40,9 @@
* TEST: kms tiled display
* Category: Display
* Description: Test for Transcoder Port Sync for Display Port Tiled Displays
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -52,18 +55,12 @@
* SUBTEST: basic-test-pattern
* Description: Make sure the Tiled CRTCs are synchronized and we get page flips
* for all tiled CRTCs in one vblank (executes on real panel).
- * Driver requirement: i915, xe
* Functionality: tiled_display
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: basic-test-pattern-with-chamelium
* Description: Make sure the Tiled CRTCs are synchronized and we get page flips
* for all tiled CRTCs in one vblank (executes on chamelium).
- * Driver requirement: i915, xe
* Functionality: chamelium, tiled_display
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION("Test for genlocked CRTCs with tiled displays");
diff --git a/tests/kms_universal_plane.c b/tests/kms_universal_plane.c
index 4a2a0ae55..65a65f11a 100644
--- a/tests/kms_universal_plane.c
+++ b/tests/kms_universal_plane.c
@@ -25,6 +25,10 @@
* TEST: kms universal plane
* Category: Display
* Description: Check pageflip & modeset on universal plane
+ * Driver requirement: i915, xe
+ * Functionality: plane
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -37,32 +41,17 @@
/**
* SUBTEST: cursor-fb-leak
* Description: Check for cursor leaks after performing cursor operations
- * Driver requirement: i915, xe
* Functionality: cursor, plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: disable-primary-vs-flip
* Description: Check pageflips while primary plane is disabled before IOCTL or
* between IOCTL and pageflip execution
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: universal-plane-pageflip-windowed
* Description: Check if pageflip succeeds in windowed setting
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: universal-plane-%s
* Description: Check %arg[1]
- * Driver requirement: i915, xe
- * Functionality: plane
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c
index 3698726de..f72874b1d 100644
--- a/tests/kms_vblank.c
+++ b/tests/kms_vblank.c
@@ -25,6 +25,9 @@
* TEST: kms vblank
* Category: Display
* Description: Test speed of WaitVblank.
+ * Driver requirement: i915, xe
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include "igt.h"
@@ -45,71 +48,44 @@
/**
* SUBTEST: crtc-id
* Description: Check the vblank and flip events works with given crtc id
- * Driver requirement: i915, xe
* Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: invalid
* Description: Negative test for vblank request
- * Driver requirement: i915, xe
* Functionality: vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: ts-continuation-dpms-rpm
* Description: Test TS continuty with DPMS & RPM while hanging by introducing
* NOHANG flag
- * Driver requirement: i915, xe
* Functionality: dpms, hang, rpm, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: ts-continuation-dpms-suspend
* Description: Test TS continuty with DPMS & Suspend while hanging by introducing
* NOHANG flag
- * Driver requirement: i915, xe
* Functionality: dpms, hang, suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: ts-continuation-suspend
* Description: Test TS continuty with Suspend while hanging by introducing NOHANG
* flag
- * Driver requirement: i915, xe
* Functionality: hang, suspend, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: ts-continuation-modeset-rpm
* Description: Test TS continuty during Modeset with Suspend while hanging by
* introducing NOHANG flag
- * Driver requirement: i915, xe
* Functionality: hang, rpm, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: accuracy-idle
* Description: Test Accuracy of vblank events while hanging by introducing NOHANG
* flag
- * Driver requirement: i915, xe
* Functionality: hang, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s
* Description: Test %arg[1] while hanging by introducing NOHANG flag
- * Driver requirement: i915, xe
* Functionality: hang, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: %s-hang
* Description: Test %arg[1] with injected hang is working properly
- * Driver requirement: i915, xe
* Functionality: hang, vblank
- * Mega feature: General Display Features
- * Test category: functionality test
*
* arg[1]:
*
diff --git a/tests/kms_vrr.c b/tests/kms_vrr.c
index 46ab817e9..e9a001318 100644
--- a/tests/kms_vrr.c
+++ b/tests/kms_vrr.c
@@ -24,6 +24,10 @@
* TEST: kms vrr
* Category: Display
* Description: Test to validate diffent features of VRR
+ * Driver requirement: i915, xe
+ * Functionality: adaptive_sync
+ * Mega feature: VRR
+ * Test category: functionality test
*/
#include "igt.h"
@@ -35,40 +39,22 @@
* SUBTEST: flip-basic
* Description: Tests that VRR is enabled and that the difference between flip
* timestamps converges to the requested rate
- * Driver requirement: i915, xe
- * Functionality: adaptive_sync
- * Mega feature: VRR
- * Test category: functionality test
*
* SUBTEST: flip-dpms
* Description: Tests with DPMS that VRR is enabled and that the difference
* between flip timestamps converges to the requested rate.
- * Driver requirement: i915, xe
* Functionality: adaptive_sync, dpms
- * Mega feature: VRR
- * Test category: functionality test
*
* SUBTEST: flip-suspend
* Description: Tests that VRR is enabled and that the difference between flip
* timestamps converges to the requested rate in a suspend test
- * Driver requirement: i915, xe
* Functionality: adaptive_sync, suspend
- * Mega feature: VRR
- * Test category: functionality test
*
* SUBTEST: flipline
* Description: Make sure that flips happen at flipline decision boundary.
- * Driver requirement: i915, xe
- * Functionality: adaptive_sync
- * Mega feature: VRR
- * Test category: functionality test
*
* SUBTEST: negative-basic
* Description: Make sure that VRR should not be enabled on the Non-VRR panel.
- * Driver requirement: i915, xe
- * Functionality: adaptive_sync
- * Mega feature: VRR
- * Test category: functionality test
*/
#define NSECS_PER_SEC (1000000000ull)
diff --git a/tests/kms_writeback.c b/tests/kms_writeback.c
index 6b436b7ab..f95d71166 100644
--- a/tests/kms_writeback.c
+++ b/tests/kms_writeback.c
@@ -29,6 +29,10 @@
* connectors feature by checking if the target device support
* writeback; it validates bad and good combination, check color
* format, and check the output result by using CRC.
+ * Driver requirement: i915, xe
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ * Test category: functionality test
*/
#include <errno.h>
@@ -45,45 +49,23 @@
/**
* SUBTEST: writeback-check-output-XRGB2101010
* Description: Check XRGB2101010 writeback output with CRC validation
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: writeback-check-output
* Description: Check writeback output with CRC validation
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: writeback-fb-id-XRGB2101010
* Description: Validate WRITEBACK_FB_ID with valid and invalid options
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: writeback-fb-id
* Description: Validate WRITEBACK_FB_ID with valid and invalid options
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: writeback-invalid-parameters
* Description: Writeback has a couple of parameters linked together(output
* framebuffer and fence); this test goes throughthe combination
* of possible bad options
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*
* SUBTEST: writeback-pixel-formats
* Description: Check the writeback format
- * Driver requirement: i915, xe
- * Functionality: kms_core
- * Mega feature: General Display Features
- * Test category: functionality test
*/
IGT_TEST_DESCRIPTION(
--
2.40.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] [i-g-t V2 4/5] tests/kms/testplan: Fix Mega Feature in testplan documentation
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
` (2 preceding siblings ...)
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 3/5] tests/kms/testplan: Optimize KMS " Bhanuprakash Modem
@ 2023-10-19 9:34 ` Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality Bhanuprakash Modem
` (3 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
Adjust KMS testplan Mega Feature to allign with internal tools.
- s/Bigjoiner/Pipe Joiner/
- s/Color mgmt/Color Management/
- s/General Display Features/E2E Compression/ (CCS tests)
- s/Display Power/Display Power Management/
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/chamelium/kms_chamelium_color.c | 2 +-
tests/intel/kms_big_joiner.c | 2 +-
tests/intel/kms_ccs.c | 2 +-
tests/intel/kms_pm_backlight.c | 2 +-
tests/intel/kms_pm_dc.c | 2 +-
tests/intel/kms_pm_lpsp.c | 2 +-
tests/kms_color.c | 2 +-
7 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/tests/chamelium/kms_chamelium_color.c b/tests/chamelium/kms_chamelium_color.c
index e94e13e40..4156023da 100644
--- a/tests/chamelium/kms_chamelium_color.c
+++ b/tests/chamelium/kms_chamelium_color.c
@@ -28,7 +28,7 @@
* Description: Test Color Features at Pipe level using Chamelium to verify instead of CRC
* Driver requirement: i915, xe
* Functionality: chamelium, colorspace
- * Mega feature: Color mgmt
+ * Mega feature: Color Management
* Test category: functionality test
*/
diff --git a/tests/intel/kms_big_joiner.c b/tests/intel/kms_big_joiner.c
index 93fd04bf5..9544589ae 100644
--- a/tests/intel/kms_big_joiner.c
+++ b/tests/intel/kms_big_joiner.c
@@ -30,7 +30,7 @@
* Description: Test big joiner
* Driver requirement: i915, xe
* Functionality: 2p1p
- * Mega feature: Bigjoiner
+ * Mega feature: Pipe Joiner
* Test category: functionality test
*/
diff --git a/tests/intel/kms_ccs.c b/tests/intel/kms_ccs.c
index 13c75e85e..f13d40b32 100644
--- a/tests/intel/kms_ccs.c
+++ b/tests/intel/kms_ccs.c
@@ -30,7 +30,7 @@
* uses to interpret the compressed data.
* Driver requirement: i915, xe
* Functionality: ccs, tiling
- * Mega feature: General Display Features
+ * Mega feature: E2E Compression
* Test category: functionality test
*/
diff --git a/tests/intel/kms_pm_backlight.c b/tests/intel/kms_pm_backlight.c
index 5b4c397bb..2e691dab0 100644
--- a/tests/intel/kms_pm_backlight.c
+++ b/tests/intel/kms_pm_backlight.c
@@ -31,7 +31,7 @@
* Description: Basic backlight sysfs test
* Driver requirement: i915, xe
* Functionality: backlight
- * Mega feature: Display Power
+ * Mega feature: Display Power Management
* Test category: functionality test
*/
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index 9a2b0013d..d0de93e9e 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -28,7 +28,7 @@
* Description: Tests to validate display power DC states.
* Driver requirement: i915, xe
* Functionality: dpms, pm_dc
- * Mega feature: Display Power
+ * Mega feature: Display Power Management
* Test category: functionality test
*/
diff --git a/tests/intel/kms_pm_lpsp.c b/tests/intel/kms_pm_lpsp.c
index 75a6aa53c..88cdb8d5c 100644
--- a/tests/intel/kms_pm_lpsp.c
+++ b/tests/intel/kms_pm_lpsp.c
@@ -29,7 +29,7 @@
* Category: Display
* Description: These tests validates display Low Power Single Pipe configurations
* Functionality: pm_lpsp
- * Mega feature: Display Power
+ * Mega feature: Display Power Management
* Test category: functionality test
*/
diff --git a/tests/kms_color.c b/tests/kms_color.c
index 39752de81..bdb80a4ad 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -28,7 +28,7 @@
* Description: Test Color Features at Pipe level
* Driver requirement: i915, xe
* Functionality: colorspace
- * Mega feature: Color mgmt
+ * Mega feature: Color Management
* Test category: functionality test
*/
--
2.40.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
` (3 preceding siblings ...)
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 4/5] tests/kms/testplan: Fix Mega Feature in " Bhanuprakash Modem
@ 2023-10-19 9:34 ` Bhanuprakash Modem
2023-10-19 14:46 ` Mauro Carvalho Chehab
2023-10-23 17:02 ` [igt-dev] ✓ Fi.CI.BAT: success for Optimize kms tesplan documentation (rev3) Patchwork
` (2 subsequent siblings)
7 siblings, 1 reply; 10+ messages in thread
From: Bhanuprakash Modem @ 2023-10-19 9:34 UTC (permalink / raw)
To: igt-dev
Avoid duplicate names on Mega feature vs Functionality in KMS
testplan documentation.
This patch will do below updates in Functionality:
- eDP --> eDP_core
- hdr --> static_hdr
- psr --> psr1, psr2 (based on the requiremnet)
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
tests/intel/kms_dirtyfb.c | 2 +-
tests/intel/kms_fbcon_fbt.c | 4 +-
tests/intel/kms_frontbuffer_tracking.c | 228 ++++++++++++-------------
tests/intel/kms_pm_dc.c | 4 +-
tests/intel/kms_psr.c | 38 ++---
tests/intel/kms_psr_stress_test.c | 2 +-
tests/kms_feature_discovery.c | 4 +-
tests/kms_hdmi_inject.c | 2 +-
tests/kms_hdr.c | 13 +-
tests/kms_panel_fitting.c | 2 +-
tests/kms_scaling_modes.c | 2 +-
11 files changed, 152 insertions(+), 149 deletions(-)
diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
index 87b86d9aa..b92ddf298 100644
--- a/tests/intel/kms_dirtyfb.c
+++ b/tests/intel/kms_dirtyfb.c
@@ -25,7 +25,7 @@
* frontbuffer rendering with features like FBC, PSR
* and DRRS.
* Driver requirement: i915, xe
- * Functionality: dirtyfb, fbc, psr, drrs
+ * Functionality: dirtyfb, fbc, psr1, psr2, drrs
* Mega feature: General Display Features
* Test category: functionality test
*/
diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
index 28e6d6390..cc2da9587 100644
--- a/tests/intel/kms_fbcon_fbt.c
+++ b/tests/intel/kms_fbcon_fbt.c
@@ -57,13 +57,13 @@
* SUBTEST: psr
* Description: Test the relationship between fbcon and the frontbuffer tracking
* infrastructure with psr enabled.
- * Functionality: fbcon, fbt, psr
+ * Functionality: fbcon, fbt, psr1
* Mega feature: PSR
*
* SUBTEST: psr-suspend
* Description: Suspend test to validate the relationship between fbcon and the
* frontbuffer tracking infrastructure with psr enabled.
- * Functionality: fbcon, fbt, psr, suspend
+ * Functionality: fbcon, fbt, psr1, suspend
* Mega feature: PSR
*/
diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
index 39fe8f3e5..178d3a8d4 100644
--- a/tests/intel/kms_frontbuffer_tracking.c
+++ b/tests/intel/kms_frontbuffer_tracking.c
@@ -58,7 +58,7 @@
*
* SUBTEST: psr-%dp-rte
* Description: Sanity test to enable PSR with %arg[1] panels.
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-%dp-rte
* Description: Sanity test to enable FBC & DRRS with %arg[1] panels.
@@ -66,15 +66,15 @@
*
* SUBTEST: fbcpsr-%dp-rte
* Description: Sanity test to enable FBC & PSR with %arg[1] panels.
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-%dp-rte
* Description: Sanity test to enable PSR & DRRS with %arg[1] panels.
- * Functionality: fbt, drrs, psr
+ * Functionality: fbt, drrs, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-rte
* Description: Sanity test to enable FBC, PSR & DRRS with %arg[1] panels.
- * Functionality: fbc, fbt, drrs, psr
+ * Functionality: fbc, fbt, drrs, psr1
*
* arg[1].values: 1, 2
*/
@@ -90,7 +90,7 @@
*
* SUBTEST: psr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -98,15 +98,15 @@
*
* SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -134,7 +134,7 @@
* SUBTEST: psr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -144,17 +144,17 @@
* SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -182,7 +182,7 @@
* SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -192,17 +192,17 @@
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -230,7 +230,7 @@
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -238,15 +238,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -274,7 +274,7 @@
*
* SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -282,15 +282,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -315,7 +315,7 @@
* SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -325,17 +325,17 @@
* SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -357,7 +357,7 @@
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -365,15 +365,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -402,7 +402,7 @@
* SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -412,17 +412,17 @@
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -448,7 +448,7 @@
*
* SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -456,15 +456,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -487,7 +487,7 @@
* SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
@@ -497,17 +497,17 @@
* SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
* Description: Draw a set of rectangles on the screen using the provided method
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -527,7 +527,7 @@
*
* SUBTEST: psr-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
@@ -535,15 +535,15 @@
*
* SUBTEST: fbcpsr-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-pri-indfb-multidraw
* Description: Draw a set of rectangles on the screen using alternated drawing methods
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*/
@@ -559,7 +559,7 @@
*
* SUBTEST: psr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
@@ -567,15 +567,15 @@
*
* SUBTEST: fbcpsr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -603,7 +603,7 @@
* SUBTEST: psr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
@@ -613,17 +613,17 @@
* SUBTEST: fbcpsr-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%s-draw-%s
* Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -644,7 +644,7 @@
*
* SUBTEST: psr-slowdraw
* Description: Sleep a little bit between drawing operations with PSR
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with FBC & DRRS
@@ -652,15 +652,15 @@
*
* SUBTEST: fbcpsr-slowdraw
* Description: Sleep a little bit between drawing operations with FBC & PSR
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with PSR & DRRS
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-slowdraw
* Description: Sleep a little bit between drawing operations with FBC, PSR & DRRS
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*/
/**
@@ -674,7 +674,7 @@
*
* SUBTEST: psr-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
@@ -682,15 +682,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -717,7 +717,7 @@
*
* SUBTEST: psr-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
@@ -725,15 +725,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-%sflip-blt
* Description: Just exercise page flips with the patterns we have
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1]:
*
@@ -758,11 +758,11 @@
*
* SUBTEST: fbcpsr-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-%s-fliptrack-mmap-gtt
* Description: Check if the hardware tracking works after page flips
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*
* arg[1].values: 1, 2
*
@@ -783,7 +783,7 @@
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
@@ -791,15 +791,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-move
* Description: Just move the %arg[2] around
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* arg[1].values: 1, 2
*
@@ -820,7 +820,7 @@
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
@@ -828,15 +828,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-move
* Description: Just move the %arg[1] around
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* arg[1]:
*
@@ -855,7 +855,7 @@
*
* SUBTEST: psr-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
@@ -863,15 +863,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[2] a few times
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* arg[1].values: 1, 2
*
@@ -892,7 +892,7 @@
*
* SUBTEST: psr-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
@@ -900,15 +900,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-onoff
* Description: Just enable and disable the %arg[1] a few times
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* arg[1]:
*
@@ -927,7 +927,7 @@
*
* SUBTEST: psr-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
@@ -935,15 +935,15 @@
*
* SUBTEST: fbcpsr-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-%dp-primscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* SUBTEST: drrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
@@ -955,7 +955,7 @@
*
* SUBTEST: psr-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: fbt, psr
+ * Functionality: fbt, psr1
*
* SUBTEST: fbcdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
@@ -963,15 +963,15 @@
*
* SUBTEST: fbcpsr-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: psrdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: drrs, fbt, psr
+ * Functionality: drrs, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen
* Description: Put a fullscreen plane covering the whole screen
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*
* arg[1].values: 1, 2
*/
@@ -987,7 +987,7 @@
*
* SUBTEST: psr-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Functionality: fbt, psr, scaling
+ * Functionality: fbt, psr1, scaling
*
* SUBTEST: fbcdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
@@ -995,15 +995,15 @@
*
* SUBTEST: fbcpsr-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Functionality: fbc, fbt, psr, scaling
+ * Functionality: fbc, fbt, psr1, scaling
*
* SUBTEST: psrdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Functionality: drrs, fbt, psr, scaling
+ * Functionality: drrs, fbt, psr1, scaling
*
* SUBTEST: fbcpsrdrrs-%s-scaledprimary
* Description: Try different primary plane scaling strategies
- * Functionality: drrs, fbc, fbt, psr, scaling
+ * Functionality: drrs, fbc, fbt, psr1, scaling
*
* arg[1]:
*
@@ -1022,7 +1022,7 @@
*
* SUBTEST: psr-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with PSR
- * Functionality: fbt, psr, scaling
+ * Functionality: fbt, psr1, scaling
*
* SUBTEST: fbcdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC & DRRS
@@ -1030,15 +1030,15 @@
*
* SUBTEST: fbcpsr-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC & PSR
- * Functionality: fbc, fbt, psr, scaling
+ * Functionality: fbc, fbt, psr1, scaling
*
* SUBTEST: psrdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with PSR & DRRS
- * Functionality: drrs, fbt, psr, scaling
+ * Functionality: drrs, fbt, psr1, scaling
*
* SUBTEST: fbcpsrdrrs-modesetfrombusy
* Description: Modeset from a busy buffer to a non-busy buffer with FBC, PSR & DRRS
- * Functionality: drrs, fbc, fbt, psr, scaling
+ * Functionality: drrs, fbc, fbt, psr1, scaling
*/
/**
@@ -1052,7 +1052,7 @@
*
* SUBTEST: psr-suspend
* Description: Make sure suspend/resume keeps us on the same state of PSR
- * Functionality: fbt, psr, suspend
+ * Functionality: fbt, psr1, suspend
*
* SUBTEST: fbcdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC & DRRS
@@ -1060,15 +1060,15 @@
*
* SUBTEST: fbcpsr-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC & PSR
- * Functionality: fbc, fbt, psr, suspend
+ * Functionality: fbc, fbt, psr1, suspend
*
* SUBTEST: psrdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of PSR & DRRS
- * Functionality: drrs, fbt, psr, suspend
+ * Functionality: drrs, fbt, psr1, suspend
*
* SUBTEST: fbcpsrdrrs-suspend
* Description: Make sure suspend/resume keeps us on the same state of FBC, PSR & DRRS
- * Functionality: drrs, fbc, fbt, psr, suspend
+ * Functionality: drrs, fbc, fbt, psr1, suspend
*/
/**
@@ -1085,7 +1085,7 @@
* SUBTEST: psr-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
- * Functionality: fbt, kms_core, psr
+ * Functionality: fbt, kms_core, psr1
*
* SUBTEST: fbcdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
@@ -1095,17 +1095,17 @@
* SUBTEST: fbcpsr-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
- * Functionality: fbc, fbt, kms_core, psr
+ * Functionality: fbc, fbt, kms_core, psr1
*
* SUBTEST: psrdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
- * Functionality: drrs, fbt, kms_core, psr
+ * Functionality: drrs, fbt, kms_core, psr1
*
* SUBTEST: fbcpsrdrrs-farfromfence-mmap-gtt
* Description: Test drawing as far from the fence start as possible
* Driver requirement: i915
- * Functionality: drrs, fbc, fbt, kms_core, psr
+ * Functionality: drrs, fbc, fbt, kms_core, psr1
*/
/**
@@ -1119,11 +1119,11 @@
*
* SUBTEST: fbcpsr-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Functionality: fbc, fbt, psr
+ * Functionality: fbc, fbt, psr1
*
* SUBTEST: fbcpsrdrrs-stridechange
* Description: Change the frontbuffer stride by doing a modeset
- * Functionality: drrs, fbc, fbt, psr
+ * Functionality: drrs, fbc, fbt, psr1
*/
/**
@@ -1140,12 +1140,12 @@
* SUBTEST: fbcpsr-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Functionality: fbc, fbt, psr, tiling
+ * Functionality: fbc, fbt, psr1, tiling
*
* SUBTEST: fbcpsrdrrs-tiling-%s
* Description: Test %arg[1] formats, if the tiling format supports FBC do the
* basic drawing test, else set the mode & test if FBC is disabled
- * Functionality: drrs, fbc, fbt, psr, tiling
+ * Functionality: drrs, fbc, fbt, psr1, tiling
*
* arg[1]:
*
diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index d0de93e9e..3599616fb 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -64,7 +64,7 @@
*
* SUBTEST: dc5-psr
* Description: This test validates display engine entry to DC5 state while PSR is active
- * Functionality: pm_dc, psr
+ * Functionality: pm_dc, psr1
*
* SUBTEST: dc6-dpms
* Description: Validate display engine entry to DC6 state while all connectors's
@@ -72,7 +72,7 @@
*
* SUBTEST: dc6-psr
* Description: This test validates display engine entry to DC6 state while PSR is active
- * Functionality: pm_dc, psr
+ * Functionality: pm_dc, psr1
*
* SUBTEST: dc9-dpms
* Description: This test validates display engine entry to DC9 state
diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
index fe0d9ef53..dac61c167 100644
--- a/tests/intel/kms_psr.c
+++ b/tests/intel/kms_psr.c
@@ -44,13 +44,13 @@
/**
* SUBTEST: basic
* Description: Basic check for psr if it is detecting changes made in planes
- * Functionality: psr
+ * Functionality: psr1
*
* SUBTEST: %s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1]
* Driver requirement: i915
- * Functionality: kms_core, plane, psr
+ * Functionality: kms_core, plane, psr1
*
* arg[1]:
*
@@ -68,12 +68,12 @@
* SUBTEST: sprite_plane_move
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on sprite planes
- * Functionality: plane, psr
+ * Functionality: plane, psr1
*
* SUBTEST: %s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Functionality: kms_core, plane, psr
+ * Functionality: kms_core, plane, psr1
*
* arg[1]:
*
@@ -91,7 +91,7 @@
* SUBTEST: primary_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Functionality: kms_core, psr
+ * Functionality: kms_core, psr1
*
* arg[1]:
*
@@ -103,40 +103,40 @@
* SUBTEST: dpms
* Description: Check if psr is detecting changes when rendering operation is
* performed with dpms enabled or disabled
- * Functionality: dpms, psr
+ * Functionality: dpms, psr1
*
* SUBTEST: no_drrs
* Description: Check if psr is detecting changes when drrs is disabled
- * Functionality: drrs, psr
+ * Functionality: drrs, psr1
*
* SUBTEST: suspend
* Description: Check if psr is detecting changes when plane operation
* is performed with suspend resume cycles
- * Functionality: psr, suspend
+ * Functionality: psr1, suspend
*
* SUBTEST: psr2_dpms
* Description: Check if psr is detecting changes when rendering operation
* is performed with dpms enabled or disabled
- * Functionality: dpms, psr, psr2
+ * Functionality: dpms, psr2
*
* SUBTEST: psr2_no_drrs
* Description: Check if psr is detecting changes when drrs is disabled
- * Functionality: drrs, psr, psr2
+ * Functionality: drrs, psr2
*
* SUBTEST: psr2_suspend
* Description: Check if psr is detecting changes when plane operation is
* performed with suspend resume cycles
- * Functionality: psr, psr2, suspend
+ * Functionality: psr2, suspend
*
* SUBTEST: psr2_basic
* Description: Basic check for psr if it is detecting changes made in planes
- * Functionality: psr, psr2
+ * Functionality: psr2
*
* SUBTEST: psr2_%s_%s
* Description: Check if psr2 is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
* Driver requirement: i915
- * Functionality: kms_core, plane, psr, psr2
+ * Functionality: kms_core, plane, psr2
*
* arg[1]:
*
@@ -154,12 +154,12 @@
* SUBTEST: psr2_primary_page_flip
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on primary planes
- * Functionality: plane, psr, psr2
+ * Functionality: plane, psr2
*
* SUBTEST: psr2_primary_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on primary planes
- * Functionality: kms_core, plane, psr, psr2
+ * Functionality: kms_core, plane, psr2
*
* arg[1]:
*
@@ -171,7 +171,7 @@
* SUBTEST: psr2_%s_%s
* Description: Check if psr is detecting memory mapping, rendering and plane
* operations performed on %arg[1] planes
- * Functionality: kms_core, plane, psr, psr2
+ * Functionality: kms_core, plane, psr2
*
* arg[1]:
*
@@ -190,17 +190,17 @@
* SUBTEST: cursor_plane_move
* Description: Check if psr is detecting the plane operations performed on
* cursor planes
- * Functionality: psr
+ * Functionality: psr1
*
* SUBTEST: primary_page_flip
* Description: Check if psr is detecting page-flipping operations performed
* on primary planes
- * Functionality: psr
+ * Functionality: psr1
*
* SUBTEST: sprite_plane_onoff
* Description: Check if psr is detecting the plane operations performed on
* sprite planes
- * Functionality: psr
+ * Functionality: psr1
*/
enum operations {
diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
index 06be2fea7..83bade914 100644
--- a/tests/intel/kms_psr_stress_test.c
+++ b/tests/intel/kms_psr_stress_test.c
@@ -3,7 +3,7 @@
* TEST: kms psr stress test
* Category: Display
* Driver requirement: i915, xe
- * Functionality: plane, psr
+ * Functionality: plane, psr1
* Mega feature: PSR
* Test category: functionality test
*/
diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
index 764e67a01..822d96230 100644
--- a/tests/kms_feature_discovery.c
+++ b/tests/kms_feature_discovery.c
@@ -58,12 +58,12 @@
*
* SUBTEST: psr1
* Description: Make sure that we have eDP panel with PSR1 support.
- * Functionality: feature_discovery, psr1, eDP
+ * Functionality: feature_discovery, psr1, eDP_core
* Mega feature: PSR
*
* SUBTEST: psr2
* Description: Make sure that we have eDP panel with PSR2 support.
- * Functionality: feature_discovery, psr2, eDP
+ * Functionality: feature_discovery, psr2, eDP_core
* Mega feature: PSR
*
* SUBTEST: dp-mst
diff --git a/tests/kms_hdmi_inject.c b/tests/kms_hdmi_inject.c
index 9691f2818..a554ca2b1 100644
--- a/tests/kms_hdmi_inject.c
+++ b/tests/kms_hdmi_inject.c
@@ -51,7 +51,7 @@
* SUBTEST: inject-audio
* Description: Make sure that audio information exposed by ALSA match the forced
* EDID.
- * Functionality: audio, force_connector
+ * Functionality: hdmi_audio, force_connector
*/
#define HDISPLAY_4K 3840
diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c
index 4dd2eda37..99b78f7ef 100644
--- a/tests/kms_hdr.c
+++ b/tests/kms_hdr.c
@@ -25,7 +25,6 @@
* Category: Display
* Description: Test HDR metadata interfaces and bpc switch
* Driver requirement: i915, xe
- * Functionality: colorspace, hdr
* Mega feature: HDR
* Test category: functionality test
*/
@@ -39,31 +38,35 @@
/**
* SUBTEST: bpc-switch
* Description: Tests switching between different display output bpc modes
+ * Functionality: colorspace
*
* SUBTEST: bpc-switch-dpms
* Description: Tests switching between different display output bpc modes with dpms
- * Functionality: colorspace, dpms, hdr
+ * Functionality: colorspace, dpms
*
* SUBTEST: bpc-switch-suspend
* Description: Tests switching between different display output bpc modes with suspend
- * Functionality: colorspace, hdr, suspend
+ * Functionality: colorspace, suspend
*
* SUBTEST: invalid-hdr
* Description: Test to ensure HDR is not enabled on non-HDR panel
+ * Functionality: colorspace, static_hdr
*
* SUBTEST: invalid-metadata-sizes
* Description: Tests invalid HDR metadata sizes
+ * Functionality: colorspace, static_hdr
*
* SUBTEST: static-toggle-dpms
* Description: Tests static toggle with dpms
- * Functionality: colorspace, dpms, hdr
+ * Functionality: colorspace, dpms, static_hdr
*
* SUBTEST: static-toggle-suspend
* Description: Tests static toggle with suspend
- * Functionality: colorspace, hdr, suspend
+ * Functionality: colorspace, static_hdr, suspend
*
* SUBTEST: static-%s
* Description: Tests %arg[1].
+ * Functionality: colorspace, static_hdr
*
* arg[1]:
*
diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c
index 4b5d9d5ab..f714ab474 100644
--- a/tests/kms_panel_fitting.c
+++ b/tests/kms_panel_fitting.c
@@ -27,7 +27,7 @@
* Category: Display
* Description: Test display panel fitting
* Driver requirement: i915, xe
- * Functionality: eDP, panel_fitting, scaling
+ * Functionality: eDP_core, panel_fitting, scaling
* Mega feature: General Display Features
* Test category: functionality test
*/
diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
index 0c20a7098..f2d69282f 100644
--- a/tests/kms_scaling_modes.c
+++ b/tests/kms_scaling_modes.c
@@ -29,7 +29,7 @@
* Category: Display
* Description: Test display scaling modes
* Driver requirement: i915, xe
- * Functionality: eDP, plane, scaling
+ * Functionality: eDP_core, plane, scaling
* Mega feature: General Display Features
* Test category: functionality test
*/
--
2.40.0
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality Bhanuprakash Modem
@ 2023-10-19 14:46 ` Mauro Carvalho Chehab
0 siblings, 0 replies; 10+ messages in thread
From: Mauro Carvalho Chehab @ 2023-10-19 14:46 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
On Thu, 19 Oct 2023 15:04:17 +0530
Bhanuprakash Modem <bhanuprakash.modem@intel.com> wrote:
> Avoid duplicate names on Mega feature vs Functionality in KMS
> testplan documentation.
>
> This patch will do below updates in Functionality:
> - eDP --> eDP_core
> - hdr --> static_hdr
> - psr --> psr1, psr2 (based on the requiremnet)
>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
LGTM.
Reviewed-by: Mauro Carvalho Chehab <mauro.chehab@linux.intel.com>
> ---
> tests/intel/kms_dirtyfb.c | 2 +-
> tests/intel/kms_fbcon_fbt.c | 4 +-
> tests/intel/kms_frontbuffer_tracking.c | 228 ++++++++++++-------------
> tests/intel/kms_pm_dc.c | 4 +-
> tests/intel/kms_psr.c | 38 ++---
> tests/intel/kms_psr_stress_test.c | 2 +-
> tests/kms_feature_discovery.c | 4 +-
> tests/kms_hdmi_inject.c | 2 +-
> tests/kms_hdr.c | 13 +-
> tests/kms_panel_fitting.c | 2 +-
> tests/kms_scaling_modes.c | 2 +-
> 11 files changed, 152 insertions(+), 149 deletions(-)
>
> diff --git a/tests/intel/kms_dirtyfb.c b/tests/intel/kms_dirtyfb.c
> index 87b86d9aa..b92ddf298 100644
> --- a/tests/intel/kms_dirtyfb.c
> +++ b/tests/intel/kms_dirtyfb.c
> @@ -25,7 +25,7 @@
> * frontbuffer rendering with features like FBC, PSR
> * and DRRS.
> * Driver requirement: i915, xe
> - * Functionality: dirtyfb, fbc, psr, drrs
> + * Functionality: dirtyfb, fbc, psr1, psr2, drrs
> * Mega feature: General Display Features
> * Test category: functionality test
> */
> diff --git a/tests/intel/kms_fbcon_fbt.c b/tests/intel/kms_fbcon_fbt.c
> index 28e6d6390..cc2da9587 100644
> --- a/tests/intel/kms_fbcon_fbt.c
> +++ b/tests/intel/kms_fbcon_fbt.c
> @@ -57,13 +57,13 @@
> * SUBTEST: psr
> * Description: Test the relationship between fbcon and the frontbuffer tracking
> * infrastructure with psr enabled.
> - * Functionality: fbcon, fbt, psr
> + * Functionality: fbcon, fbt, psr1
> * Mega feature: PSR
> *
> * SUBTEST: psr-suspend
> * Description: Suspend test to validate the relationship between fbcon and the
> * frontbuffer tracking infrastructure with psr enabled.
> - * Functionality: fbcon, fbt, psr, suspend
> + * Functionality: fbcon, fbt, psr1, suspend
> * Mega feature: PSR
> */
>
> diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
> index 39fe8f3e5..178d3a8d4 100644
> --- a/tests/intel/kms_frontbuffer_tracking.c
> +++ b/tests/intel/kms_frontbuffer_tracking.c
> @@ -58,7 +58,7 @@
> *
> * SUBTEST: psr-%dp-rte
> * Description: Sanity test to enable PSR with %arg[1] panels.
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-%dp-rte
> * Description: Sanity test to enable FBC & DRRS with %arg[1] panels.
> @@ -66,15 +66,15 @@
> *
> * SUBTEST: fbcpsr-%dp-rte
> * Description: Sanity test to enable FBC & PSR with %arg[1] panels.
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-%dp-rte
> * Description: Sanity test to enable PSR & DRRS with %arg[1] panels.
> - * Functionality: fbt, drrs, psr
> + * Functionality: fbt, drrs, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-rte
> * Description: Sanity test to enable FBC, PSR & DRRS with %arg[1] panels.
> - * Functionality: fbc, fbt, drrs, psr
> + * Functionality: fbc, fbt, drrs, psr1
> *
> * arg[1].values: 1, 2
> */
> @@ -90,7 +90,7 @@
> *
> * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -98,15 +98,15 @@
> *
> * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -134,7 +134,7 @@
> * SUBTEST: psr-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -144,17 +144,17 @@
> * SUBTEST: fbcpsr-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-1p-offscren-pri-%s-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -182,7 +182,7 @@
> * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -192,17 +192,17 @@
> * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -230,7 +230,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -238,15 +238,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -274,7 +274,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -282,15 +282,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -315,7 +315,7 @@
> * SUBTEST: psr-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -325,17 +325,17 @@
> * SUBTEST: fbcpsr-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -357,7 +357,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -365,15 +365,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -402,7 +402,7 @@
> * SUBTEST: psr-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -412,17 +412,17 @@
> * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -448,7 +448,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -456,15 +456,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -487,7 +487,7 @@
> * SUBTEST: psr-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> @@ -497,17 +497,17 @@
> * SUBTEST: fbcpsr-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-pri-shrfb-draw-%s
> * Description: Draw a set of rectangles on the screen using the provided method
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -527,7 +527,7 @@
> *
> * SUBTEST: psr-%dp-pri-indfb-multidraw
> * Description: Draw a set of rectangles on the screen using alternated drawing methods
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-pri-indfb-multidraw
> * Description: Draw a set of rectangles on the screen using alternated drawing methods
> @@ -535,15 +535,15 @@
> *
> * SUBTEST: fbcpsr-%dp-pri-indfb-multidraw
> * Description: Draw a set of rectangles on the screen using alternated drawing methods
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-pri-indfb-multidraw
> * Description: Draw a set of rectangles on the screen using alternated drawing methods
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-pri-indfb-multidraw
> * Description: Draw a set of rectangles on the screen using alternated drawing methods
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> */
> @@ -559,7 +559,7 @@
> *
> * SUBTEST: psr-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> @@ -567,15 +567,15 @@
> *
> * SUBTEST: fbcpsr-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -603,7 +603,7 @@
> * SUBTEST: psr-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> @@ -613,17 +613,17 @@
> * SUBTEST: fbcpsr-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%s-draw-%s
> * Description: Test pixel formats (%arg[1]) that are not FORMAT_DEFAULT
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -644,7 +644,7 @@
> *
> * SUBTEST: psr-slowdraw
> * Description: Sleep a little bit between drawing operations with PSR
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-slowdraw
> * Description: Sleep a little bit between drawing operations with FBC & DRRS
> @@ -652,15 +652,15 @@
> *
> * SUBTEST: fbcpsr-slowdraw
> * Description: Sleep a little bit between drawing operations with FBC & PSR
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-slowdraw
> * Description: Sleep a little bit between drawing operations with PSR & DRRS
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-slowdraw
> * Description: Sleep a little bit between drawing operations with FBC, PSR & DRRS
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> */
>
> /**
> @@ -674,7 +674,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> @@ -682,15 +682,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -717,7 +717,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> @@ -725,15 +725,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-%sflip-blt
> * Description: Just exercise page flips with the patterns we have
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1]:
> *
> @@ -758,11 +758,11 @@
> *
> * SUBTEST: fbcpsr-%dp-%s-fliptrack-mmap-gtt
> * Description: Check if the hardware tracking works after page flips
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-%s-fliptrack-mmap-gtt
> * Description: Check if the hardware tracking works after page flips
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -783,7 +783,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-%s-indfb-move
> * Description: Just move the %arg[2] around
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-move
> * Description: Just move the %arg[2] around
> @@ -791,15 +791,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-move
> * Description: Just move the %arg[2] around
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-move
> * Description: Just move the %arg[2] around
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-move
> * Description: Just move the %arg[2] around
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -820,7 +820,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-%s-indfb-move
> * Description: Just move the %arg[1] around
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-move
> * Description: Just move the %arg[1] around
> @@ -828,15 +828,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-move
> * Description: Just move the %arg[1] around
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-move
> * Description: Just move the %arg[1] around
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-move
> * Description: Just move the %arg[1] around
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * arg[1]:
> *
> @@ -855,7 +855,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[2] a few times
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[2] a few times
> @@ -863,15 +863,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[2] a few times
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[2] a few times
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[2] a few times
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * arg[1].values: 1, 2
> *
> @@ -892,7 +892,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[1] a few times
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[1] a few times
> @@ -900,15 +900,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[1] a few times
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[1] a few times
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-%s-indfb-onoff
> * Description: Just enable and disable the %arg[1] a few times
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * arg[1]:
> *
> @@ -927,7 +927,7 @@
> *
> * SUBTEST: psr-%dp-primscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-%dp-primscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> @@ -935,15 +935,15 @@
> *
> * SUBTEST: fbcpsr-%dp-primscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-%dp-primscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-%dp-primscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * SUBTEST: drrs-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> @@ -955,7 +955,7 @@
> *
> * SUBTEST: psr-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: fbt, psr
> + * Functionality: fbt, psr1
> *
> * SUBTEST: fbcdrrs-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> @@ -963,15 +963,15 @@
> *
> * SUBTEST: fbcpsr-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: psrdrrs-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: drrs, fbt, psr
> + * Functionality: drrs, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-2p-scndscrn-spr-indfb-fullscreen
> * Description: Put a fullscreen plane covering the whole screen
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> *
> * arg[1].values: 1, 2
> */
> @@ -987,7 +987,7 @@
> *
> * SUBTEST: psr-%s-scaledprimary
> * Description: Try different primary plane scaling strategies
> - * Functionality: fbt, psr, scaling
> + * Functionality: fbt, psr1, scaling
> *
> * SUBTEST: fbcdrrs-%s-scaledprimary
> * Description: Try different primary plane scaling strategies
> @@ -995,15 +995,15 @@
> *
> * SUBTEST: fbcpsr-%s-scaledprimary
> * Description: Try different primary plane scaling strategies
> - * Functionality: fbc, fbt, psr, scaling
> + * Functionality: fbc, fbt, psr1, scaling
> *
> * SUBTEST: psrdrrs-%s-scaledprimary
> * Description: Try different primary plane scaling strategies
> - * Functionality: drrs, fbt, psr, scaling
> + * Functionality: drrs, fbt, psr1, scaling
> *
> * SUBTEST: fbcpsrdrrs-%s-scaledprimary
> * Description: Try different primary plane scaling strategies
> - * Functionality: drrs, fbc, fbt, psr, scaling
> + * Functionality: drrs, fbc, fbt, psr1, scaling
> *
> * arg[1]:
> *
> @@ -1022,7 +1022,7 @@
> *
> * SUBTEST: psr-modesetfrombusy
> * Description: Modeset from a busy buffer to a non-busy buffer with PSR
> - * Functionality: fbt, psr, scaling
> + * Functionality: fbt, psr1, scaling
> *
> * SUBTEST: fbcdrrs-modesetfrombusy
> * Description: Modeset from a busy buffer to a non-busy buffer with FBC & DRRS
> @@ -1030,15 +1030,15 @@
> *
> * SUBTEST: fbcpsr-modesetfrombusy
> * Description: Modeset from a busy buffer to a non-busy buffer with FBC & PSR
> - * Functionality: fbc, fbt, psr, scaling
> + * Functionality: fbc, fbt, psr1, scaling
> *
> * SUBTEST: psrdrrs-modesetfrombusy
> * Description: Modeset from a busy buffer to a non-busy buffer with PSR & DRRS
> - * Functionality: drrs, fbt, psr, scaling
> + * Functionality: drrs, fbt, psr1, scaling
> *
> * SUBTEST: fbcpsrdrrs-modesetfrombusy
> * Description: Modeset from a busy buffer to a non-busy buffer with FBC, PSR & DRRS
> - * Functionality: drrs, fbc, fbt, psr, scaling
> + * Functionality: drrs, fbc, fbt, psr1, scaling
> */
>
> /**
> @@ -1052,7 +1052,7 @@
> *
> * SUBTEST: psr-suspend
> * Description: Make sure suspend/resume keeps us on the same state of PSR
> - * Functionality: fbt, psr, suspend
> + * Functionality: fbt, psr1, suspend
> *
> * SUBTEST: fbcdrrs-suspend
> * Description: Make sure suspend/resume keeps us on the same state of FBC & DRRS
> @@ -1060,15 +1060,15 @@
> *
> * SUBTEST: fbcpsr-suspend
> * Description: Make sure suspend/resume keeps us on the same state of FBC & PSR
> - * Functionality: fbc, fbt, psr, suspend
> + * Functionality: fbc, fbt, psr1, suspend
> *
> * SUBTEST: psrdrrs-suspend
> * Description: Make sure suspend/resume keeps us on the same state of PSR & DRRS
> - * Functionality: drrs, fbt, psr, suspend
> + * Functionality: drrs, fbt, psr1, suspend
> *
> * SUBTEST: fbcpsrdrrs-suspend
> * Description: Make sure suspend/resume keeps us on the same state of FBC, PSR & DRRS
> - * Functionality: drrs, fbc, fbt, psr, suspend
> + * Functionality: drrs, fbc, fbt, psr1, suspend
> */
>
> /**
> @@ -1085,7 +1085,7 @@
> * SUBTEST: psr-farfromfence-mmap-gtt
> * Description: Test drawing as far from the fence start as possible
> * Driver requirement: i915
> - * Functionality: fbt, kms_core, psr
> + * Functionality: fbt, kms_core, psr1
> *
> * SUBTEST: fbcdrrs-farfromfence-mmap-gtt
> * Description: Test drawing as far from the fence start as possible
> @@ -1095,17 +1095,17 @@
> * SUBTEST: fbcpsr-farfromfence-mmap-gtt
> * Description: Test drawing as far from the fence start as possible
> * Driver requirement: i915
> - * Functionality: fbc, fbt, kms_core, psr
> + * Functionality: fbc, fbt, kms_core, psr1
> *
> * SUBTEST: psrdrrs-farfromfence-mmap-gtt
> * Description: Test drawing as far from the fence start as possible
> * Driver requirement: i915
> - * Functionality: drrs, fbt, kms_core, psr
> + * Functionality: drrs, fbt, kms_core, psr1
> *
> * SUBTEST: fbcpsrdrrs-farfromfence-mmap-gtt
> * Description: Test drawing as far from the fence start as possible
> * Driver requirement: i915
> - * Functionality: drrs, fbc, fbt, kms_core, psr
> + * Functionality: drrs, fbc, fbt, kms_core, psr1
> */
>
> /**
> @@ -1119,11 +1119,11 @@
> *
> * SUBTEST: fbcpsr-stridechange
> * Description: Change the frontbuffer stride by doing a modeset
> - * Functionality: fbc, fbt, psr
> + * Functionality: fbc, fbt, psr1
> *
> * SUBTEST: fbcpsrdrrs-stridechange
> * Description: Change the frontbuffer stride by doing a modeset
> - * Functionality: drrs, fbc, fbt, psr
> + * Functionality: drrs, fbc, fbt, psr1
> */
>
> /**
> @@ -1140,12 +1140,12 @@
> * SUBTEST: fbcpsr-tiling-%s
> * Description: Test %arg[1] formats, if the tiling format supports FBC do the
> * basic drawing test, else set the mode & test if FBC is disabled
> - * Functionality: fbc, fbt, psr, tiling
> + * Functionality: fbc, fbt, psr1, tiling
> *
> * SUBTEST: fbcpsrdrrs-tiling-%s
> * Description: Test %arg[1] formats, if the tiling format supports FBC do the
> * basic drawing test, else set the mode & test if FBC is disabled
> - * Functionality: drrs, fbc, fbt, psr, tiling
> + * Functionality: drrs, fbc, fbt, psr1, tiling
> *
> * arg[1]:
> *
> diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
> index d0de93e9e..3599616fb 100644
> --- a/tests/intel/kms_pm_dc.c
> +++ b/tests/intel/kms_pm_dc.c
> @@ -64,7 +64,7 @@
> *
> * SUBTEST: dc5-psr
> * Description: This test validates display engine entry to DC5 state while PSR is active
> - * Functionality: pm_dc, psr
> + * Functionality: pm_dc, psr1
> *
> * SUBTEST: dc6-dpms
> * Description: Validate display engine entry to DC6 state while all connectors's
> @@ -72,7 +72,7 @@
> *
> * SUBTEST: dc6-psr
> * Description: This test validates display engine entry to DC6 state while PSR is active
> - * Functionality: pm_dc, psr
> + * Functionality: pm_dc, psr1
> *
> * SUBTEST: dc9-dpms
> * Description: This test validates display engine entry to DC9 state
> diff --git a/tests/intel/kms_psr.c b/tests/intel/kms_psr.c
> index fe0d9ef53..dac61c167 100644
> --- a/tests/intel/kms_psr.c
> +++ b/tests/intel/kms_psr.c
> @@ -44,13 +44,13 @@
> /**
> * SUBTEST: basic
> * Description: Basic check for psr if it is detecting changes made in planes
> - * Functionality: psr
> + * Functionality: psr1
> *
> * SUBTEST: %s_%s
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on %arg[1]
> * Driver requirement: i915
> - * Functionality: kms_core, plane, psr
> + * Functionality: kms_core, plane, psr1
> *
> * arg[1]:
> *
> @@ -68,12 +68,12 @@
> * SUBTEST: sprite_plane_move
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on sprite planes
> - * Functionality: plane, psr
> + * Functionality: plane, psr1
> *
> * SUBTEST: %s_%s
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on %arg[1] planes
> - * Functionality: kms_core, plane, psr
> + * Functionality: kms_core, plane, psr1
> *
> * arg[1]:
> *
> @@ -91,7 +91,7 @@
> * SUBTEST: primary_%s
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on %arg[1] planes
> - * Functionality: kms_core, psr
> + * Functionality: kms_core, psr1
> *
> * arg[1]:
> *
> @@ -103,40 +103,40 @@
> * SUBTEST: dpms
> * Description: Check if psr is detecting changes when rendering operation is
> * performed with dpms enabled or disabled
> - * Functionality: dpms, psr
> + * Functionality: dpms, psr1
> *
> * SUBTEST: no_drrs
> * Description: Check if psr is detecting changes when drrs is disabled
> - * Functionality: drrs, psr
> + * Functionality: drrs, psr1
> *
> * SUBTEST: suspend
> * Description: Check if psr is detecting changes when plane operation
> * is performed with suspend resume cycles
> - * Functionality: psr, suspend
> + * Functionality: psr1, suspend
> *
> * SUBTEST: psr2_dpms
> * Description: Check if psr is detecting changes when rendering operation
> * is performed with dpms enabled or disabled
> - * Functionality: dpms, psr, psr2
> + * Functionality: dpms, psr2
> *
> * SUBTEST: psr2_no_drrs
> * Description: Check if psr is detecting changes when drrs is disabled
> - * Functionality: drrs, psr, psr2
> + * Functionality: drrs, psr2
> *
> * SUBTEST: psr2_suspend
> * Description: Check if psr is detecting changes when plane operation is
> * performed with suspend resume cycles
> - * Functionality: psr, psr2, suspend
> + * Functionality: psr2, suspend
> *
> * SUBTEST: psr2_basic
> * Description: Basic check for psr if it is detecting changes made in planes
> - * Functionality: psr, psr2
> + * Functionality: psr2
> *
> * SUBTEST: psr2_%s_%s
> * Description: Check if psr2 is detecting memory mapping, rendering and plane
> * operations performed on %arg[1] planes
> * Driver requirement: i915
> - * Functionality: kms_core, plane, psr, psr2
> + * Functionality: kms_core, plane, psr2
> *
> * arg[1]:
> *
> @@ -154,12 +154,12 @@
> * SUBTEST: psr2_primary_page_flip
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on primary planes
> - * Functionality: plane, psr, psr2
> + * Functionality: plane, psr2
> *
> * SUBTEST: psr2_primary_%s
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on primary planes
> - * Functionality: kms_core, plane, psr, psr2
> + * Functionality: kms_core, plane, psr2
> *
> * arg[1]:
> *
> @@ -171,7 +171,7 @@
> * SUBTEST: psr2_%s_%s
> * Description: Check if psr is detecting memory mapping, rendering and plane
> * operations performed on %arg[1] planes
> - * Functionality: kms_core, plane, psr, psr2
> + * Functionality: kms_core, plane, psr2
> *
> * arg[1]:
> *
> @@ -190,17 +190,17 @@
> * SUBTEST: cursor_plane_move
> * Description: Check if psr is detecting the plane operations performed on
> * cursor planes
> - * Functionality: psr
> + * Functionality: psr1
> *
> * SUBTEST: primary_page_flip
> * Description: Check if psr is detecting page-flipping operations performed
> * on primary planes
> - * Functionality: psr
> + * Functionality: psr1
> *
> * SUBTEST: sprite_plane_onoff
> * Description: Check if psr is detecting the plane operations performed on
> * sprite planes
> - * Functionality: psr
> + * Functionality: psr1
> */
>
> enum operations {
> diff --git a/tests/intel/kms_psr_stress_test.c b/tests/intel/kms_psr_stress_test.c
> index 06be2fea7..83bade914 100644
> --- a/tests/intel/kms_psr_stress_test.c
> +++ b/tests/intel/kms_psr_stress_test.c
> @@ -3,7 +3,7 @@
> * TEST: kms psr stress test
> * Category: Display
> * Driver requirement: i915, xe
> - * Functionality: plane, psr
> + * Functionality: plane, psr1
> * Mega feature: PSR
> * Test category: functionality test
> */
> diff --git a/tests/kms_feature_discovery.c b/tests/kms_feature_discovery.c
> index 764e67a01..822d96230 100644
> --- a/tests/kms_feature_discovery.c
> +++ b/tests/kms_feature_discovery.c
> @@ -58,12 +58,12 @@
> *
> * SUBTEST: psr1
> * Description: Make sure that we have eDP panel with PSR1 support.
> - * Functionality: feature_discovery, psr1, eDP
> + * Functionality: feature_discovery, psr1, eDP_core
> * Mega feature: PSR
> *
> * SUBTEST: psr2
> * Description: Make sure that we have eDP panel with PSR2 support.
> - * Functionality: feature_discovery, psr2, eDP
> + * Functionality: feature_discovery, psr2, eDP_core
> * Mega feature: PSR
> *
> * SUBTEST: dp-mst
> diff --git a/tests/kms_hdmi_inject.c b/tests/kms_hdmi_inject.c
> index 9691f2818..a554ca2b1 100644
> --- a/tests/kms_hdmi_inject.c
> +++ b/tests/kms_hdmi_inject.c
> @@ -51,7 +51,7 @@
> * SUBTEST: inject-audio
> * Description: Make sure that audio information exposed by ALSA match the forced
> * EDID.
> - * Functionality: audio, force_connector
> + * Functionality: hdmi_audio, force_connector
> */
>
> #define HDISPLAY_4K 3840
> diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c
> index 4dd2eda37..99b78f7ef 100644
> --- a/tests/kms_hdr.c
> +++ b/tests/kms_hdr.c
> @@ -25,7 +25,6 @@
> * Category: Display
> * Description: Test HDR metadata interfaces and bpc switch
> * Driver requirement: i915, xe
> - * Functionality: colorspace, hdr
> * Mega feature: HDR
> * Test category: functionality test
> */
> @@ -39,31 +38,35 @@
> /**
> * SUBTEST: bpc-switch
> * Description: Tests switching between different display output bpc modes
> + * Functionality: colorspace
> *
> * SUBTEST: bpc-switch-dpms
> * Description: Tests switching between different display output bpc modes with dpms
> - * Functionality: colorspace, dpms, hdr
> + * Functionality: colorspace, dpms
> *
> * SUBTEST: bpc-switch-suspend
> * Description: Tests switching between different display output bpc modes with suspend
> - * Functionality: colorspace, hdr, suspend
> + * Functionality: colorspace, suspend
> *
> * SUBTEST: invalid-hdr
> * Description: Test to ensure HDR is not enabled on non-HDR panel
> + * Functionality: colorspace, static_hdr
> *
> * SUBTEST: invalid-metadata-sizes
> * Description: Tests invalid HDR metadata sizes
> + * Functionality: colorspace, static_hdr
> *
> * SUBTEST: static-toggle-dpms
> * Description: Tests static toggle with dpms
> - * Functionality: colorspace, dpms, hdr
> + * Functionality: colorspace, dpms, static_hdr
> *
> * SUBTEST: static-toggle-suspend
> * Description: Tests static toggle with suspend
> - * Functionality: colorspace, hdr, suspend
> + * Functionality: colorspace, static_hdr, suspend
> *
> * SUBTEST: static-%s
> * Description: Tests %arg[1].
> + * Functionality: colorspace, static_hdr
> *
> * arg[1]:
> *
> diff --git a/tests/kms_panel_fitting.c b/tests/kms_panel_fitting.c
> index 4b5d9d5ab..f714ab474 100644
> --- a/tests/kms_panel_fitting.c
> +++ b/tests/kms_panel_fitting.c
> @@ -27,7 +27,7 @@
> * Category: Display
> * Description: Test display panel fitting
> * Driver requirement: i915, xe
> - * Functionality: eDP, panel_fitting, scaling
> + * Functionality: eDP_core, panel_fitting, scaling
> * Mega feature: General Display Features
> * Test category: functionality test
> */
> diff --git a/tests/kms_scaling_modes.c b/tests/kms_scaling_modes.c
> index 0c20a7098..f2d69282f 100644
> --- a/tests/kms_scaling_modes.c
> +++ b/tests/kms_scaling_modes.c
> @@ -29,7 +29,7 @@
> * Category: Display
> * Description: Test display scaling modes
> * Driver requirement: i915, xe
> - * Functionality: eDP, plane, scaling
> + * Functionality: eDP_core, plane, scaling
> * Mega feature: General Display Features
> * Test category: functionality test
> */
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Optimize kms tesplan documentation (rev3)
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
` (4 preceding siblings ...)
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality Bhanuprakash Modem
@ 2023-10-23 17:02 ` Patchwork
2023-10-23 18:11 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
2023-10-24 0:11 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
7 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-23 17:02 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 7357 bytes --]
== Series Details ==
Series: Optimize kms tesplan documentation (rev3)
URL : https://patchwork.freedesktop.org/series/123697/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_13777 -> IGTPW_10028
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
Participating hosts (36 -> 36)
------------------------------
Additional (2): fi-skl-guc bat-kbl-2
Missing (2): fi-kbl-soraka fi-bsw-n3050
Known issues
------------
Here are the changes found in IGTPW_10028 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@debugfs_test@basic-hwmon:
- bat-jsl-1: NOTRUN -> [SKIP][1] ([i915#9318])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@debugfs_test@basic-hwmon.html
* igt@fbdev@info:
- bat-kbl-2: NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#1849])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-kbl-2/igt@fbdev@info.html
* igt@gem_huc_copy@huc-copy:
- bat-jsl-1: NOTRUN -> [SKIP][3] ([i915#2190])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@gem_huc_copy@huc-copy.html
* igt@gem_lmem_swapping@basic:
- fi-skl-guc: NOTRUN -> [SKIP][4] ([fdo#109271] / [i915#4613]) +3 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-skl-guc/igt@gem_lmem_swapping@basic.html
* igt@gem_lmem_swapping@parallel-random-engines:
- bat-kbl-2: NOTRUN -> [SKIP][5] ([fdo#109271]) +39 other tests skip
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-kbl-2/igt@gem_lmem_swapping@parallel-random-engines.html
* igt@gem_lmem_swapping@verify-random:
- bat-jsl-1: NOTRUN -> [SKIP][6] ([i915#4613]) +3 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@gem_lmem_swapping@verify-random.html
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- fi-hsw-4770: NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#5190])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-hsw-4770/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
- bat-jsl-1: NOTRUN -> [SKIP][8] ([i915#4103]) +1 other test skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html
* igt@kms_dsc@dsc-basic:
- fi-skl-guc: NOTRUN -> [SKIP][9] ([fdo#109271]) +12 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-skl-guc/igt@kms_dsc@dsc-basic.html
- bat-jsl-1: NOTRUN -> [SKIP][10] ([i915#3555]) +1 other test skip
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@kms_dsc@dsc-basic.html
* igt@kms_force_connector_basic@force-load-detect:
- bat-jsl-1: NOTRUN -> [SKIP][11] ([fdo#109285])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-jsl-1/igt@kms_force_connector_basic@force-load-detect.html
* igt@kms_hdmi_inject@inject-audio:
- fi-skl-guc: NOTRUN -> [FAIL][12] ([IGT#3])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-skl-guc/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-a-vga-1:
- fi-hsw-4770: NOTRUN -> [SKIP][13] ([fdo#109271]) +12 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-hsw-4770/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-a-vga-1.html
* igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1:
- bat-rplp-1: [PASS][14] -> [ABORT][15] ([i915#8668])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-rplp-1/igt@kms_pipe_crc_basic@read-crc-frame-sequence@pipe-d-edp-1.html
* igt@kms_pipe_crc_basic@suspend-read-crc:
- bat-dg2-8: NOTRUN -> [SKIP][16] ([i915#1845] / [i915#9197])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-dg2-8/igt@kms_pipe_crc_basic@suspend-read-crc.html
* igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-vga-1:
- fi-hsw-4770: NOTRUN -> [DMESG-WARN][17] ([i915#8841]) +6 other tests dmesg-warn
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-hsw-4770/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-vga-1.html
* igt@kms_psr@sprite_plane_onoff:
- fi-hsw-4770: NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#1072]) +3 other tests skip
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-hsw-4770/igt@kms_psr@sprite_plane_onoff.html
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s0@lmem0:
- bat-dg2-8: [INCOMPLETE][19] ([i915#9275]) -> [PASS][20]
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/bat-dg2-8/igt@gem_exec_suspend@basic-s0@lmem0.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/bat-dg2-8/igt@gem_exec_suspend@basic-s0@lmem0.html
* igt@kms_hdmi_inject@inject-audio:
- fi-kbl-guc: [FAIL][21] ([IGT#3]) -> [PASS][22]
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[IGT#3]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/3
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#7952]: https://gitlab.freedesktop.org/drm/intel/issues/7952
[i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
[i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
[i915#9197]: https://gitlab.freedesktop.org/drm/intel/issues/9197
[i915#9275]: https://gitlab.freedesktop.org/drm/intel/issues/9275
[i915#9318]: https://gitlab.freedesktop.org/drm/intel/issues/9318
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7549 -> IGTPW_10028
CI-20190529: 20190529
CI_DRM_13777: 1b4fd688d213556268c50f853746c94c9a0cfee7 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_10028: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
IGT_7549: bc3314b187318a4238c6fae583770b389afa83c3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
[-- Attachment #2: Type: text/html, Size: 8911 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ CI.xeBAT: success for Optimize kms tesplan documentation (rev3)
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
` (5 preceding siblings ...)
2023-10-23 17:02 ` [igt-dev] ✓ Fi.CI.BAT: success for Optimize kms tesplan documentation (rev3) Patchwork
@ 2023-10-23 18:11 ` Patchwork
2023-10-24 0:11 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
7 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-23 18:11 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 2231 bytes --]
== Series Details ==
Series: Optimize kms tesplan documentation (rev3)
URL : https://patchwork.freedesktop.org/series/123697/
State : success
== Summary ==
CI Bug Log - changes from XEIGT_7549_BAT -> XEIGTPW_10028_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (4 -> 4)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in XEIGTPW_10028_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1:
- bat-adlp-7: [PASS][1] -> [FAIL][2] ([Intel XE#480]) +1 other test fail
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7549/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10028/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@a-edp1.html
#### Warnings ####
* igt@kms_frontbuffer_tracking@basic:
- bat-adlp-7: [DMESG-FAIL][3] ([Intel XE#282]) -> [FAIL][4] ([Intel XE#750])
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7549/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10028/bat-adlp-7/igt@kms_frontbuffer_tracking@basic.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#282]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/282
[Intel XE#480]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/480
[Intel XE#524]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/524
[Intel XE#750]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/750
Build changes
-------------
* IGT: IGT_7549 -> IGTPW_10028
IGTPW_10028: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
IGT_7549: bc3314b187318a4238c6fae583770b389afa83c3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-442-a0a80950176b39dbc76f8faa92fddf6caaa06191: a0a80950176b39dbc76f8faa92fddf6caaa06191
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_10028/index.html
[-- Attachment #2: Type: text/html, Size: 2747 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✗ Fi.CI.IGT: failure for Optimize kms tesplan documentation (rev3)
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
` (6 preceding siblings ...)
2023-10-23 18:11 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
@ 2023-10-24 0:11 ` Patchwork
7 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-24 0:11 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 87756 bytes --]
== Series Details ==
Series: Optimize kms tesplan documentation (rev3)
URL : https://patchwork.freedesktop.org/series/123697/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_13777_full -> IGTPW_10028_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_10028_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_10028_full, please notify your bug team (lgci.bug.filing@intel.com) to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
Participating hosts (12 -> 12)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_10028_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_module_load@reload-no-display:
- shard-snb: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-snb4/igt@i915_module_load@reload-no-display.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-snb4/igt@i915_module_load@reload-no-display.html
Known issues
------------
Here are the changes found in IGTPW_10028_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@api_intel_bb@blit-reloc-keep-cache:
- shard-dg2: NOTRUN -> [SKIP][3] ([i915#8411])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@api_intel_bb@blit-reloc-keep-cache.html
* igt@api_intel_bb@blit-reloc-purge-cache:
- shard-rkl: NOTRUN -> [SKIP][4] ([i915#8411]) +1 other test skip
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@api_intel_bb@blit-reloc-purge-cache.html
* igt@device_reset@cold-reset-bound:
- shard-rkl: NOTRUN -> [SKIP][5] ([i915#7701])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@device_reset@cold-reset-bound.html
* igt@drm_fdinfo@busy-check-all@bcs0:
- shard-dg1: NOTRUN -> [SKIP][6] ([i915#8414]) +4 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-14/igt@drm_fdinfo@busy-check-all@bcs0.html
* igt@drm_fdinfo@busy-check-all@ccs0:
- shard-mtlp: NOTRUN -> [SKIP][7] ([i915#8414]) +5 other tests skip
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@drm_fdinfo@busy-check-all@ccs0.html
* igt@drm_fdinfo@most-busy-idle-check-all@vecs1:
- shard-dg2: NOTRUN -> [SKIP][8] ([i915#8414]) +30 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@drm_fdinfo@most-busy-idle-check-all@vecs1.html
* igt@gem_bad_reloc@negative-reloc-bltcopy:
- shard-mtlp: NOTRUN -> [SKIP][9] ([i915#3281]) +4 other tests skip
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@gem_bad_reloc@negative-reloc-bltcopy.html
* igt@gem_basic@multigpu-create-close:
- shard-tglu: NOTRUN -> [SKIP][10] ([i915#7697]) +1 other test skip
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-8/igt@gem_basic@multigpu-create-close.html
* igt@gem_caching@writes:
- shard-mtlp: NOTRUN -> [SKIP][11] ([i915#4873])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@gem_caching@writes.html
* igt@gem_ccs@block-multicopy-compressed:
- shard-rkl: NOTRUN -> [SKIP][12] ([i915#9323])
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_ccs@block-multicopy-compressed.html
* igt@gem_ccs@ctrl-surf-copy-new-ctx:
- shard-rkl: NOTRUN -> [SKIP][13] ([i915#4098] / [i915#9323])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_ccs@ctrl-surf-copy-new-ctx.html
* igt@gem_close_race@multigpu-basic-process:
- shard-dg2: NOTRUN -> [SKIP][14] ([i915#7697])
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@gem_close_race@multigpu-basic-process.html
* igt@gem_close_race@multigpu-basic-threads:
- shard-rkl: NOTRUN -> [SKIP][15] ([i915#7697])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_close_race@multigpu-basic-threads.html
- shard-dg1: NOTRUN -> [SKIP][16] ([i915#7697])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-17/igt@gem_close_race@multigpu-basic-threads.html
- shard-mtlp: NOTRUN -> [SKIP][17] ([i915#7697])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@gem_close_race@multigpu-basic-threads.html
* igt@gem_create@create-ext-set-pat:
- shard-rkl: NOTRUN -> [SKIP][18] ([i915#8562])
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_create@create-ext-set-pat.html
* igt@gem_create@hog-create@smem0:
- shard-mtlp: NOTRUN -> [FAIL][19] ([i915#8758])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@gem_create@hog-create@smem0.html
* igt@gem_ctx_exec@basic-nohangcheck:
- shard-mtlp: [PASS][20] -> [FAIL][21] ([i915#6268])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-4/igt@gem_ctx_exec@basic-nohangcheck.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@gem_ctx_exec@basic-nohangcheck.html
* igt@gem_ctx_persistence@engines-hostile@vcs0:
- shard-mtlp: [PASS][22] -> [FAIL][23] ([i915#2410]) +3 other tests fail
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-8/igt@gem_ctx_persistence@engines-hostile@vcs0.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-1/igt@gem_ctx_persistence@engines-hostile@vcs0.html
* igt@gem_ctx_persistence@hang:
- shard-mtlp: NOTRUN -> [SKIP][24] ([i915#8555]) +1 other test skip
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@gem_ctx_persistence@hang.html
- shard-dg1: NOTRUN -> [SKIP][25] ([i915#8555])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@gem_ctx_persistence@hang.html
* igt@gem_ctx_persistence@heartbeat-many:
- shard-dg2: NOTRUN -> [SKIP][26] ([i915#8555])
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@gem_ctx_persistence@heartbeat-many.html
* igt@gem_ctx_sseu@engines:
- shard-mtlp: NOTRUN -> [SKIP][27] ([i915#280])
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@gem_ctx_sseu@engines.html
* igt@gem_ctx_sseu@invalid-sseu:
- shard-dg2: NOTRUN -> [SKIP][28] ([i915#280])
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@gem_ctx_sseu@invalid-sseu.html
- shard-rkl: NOTRUN -> [SKIP][29] ([i915#280]) +2 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_ctx_sseu@invalid-sseu.html
* igt@gem_eio@hibernate:
- shard-dg2: NOTRUN -> [ABORT][30] ([i915#7975] / [i915#8213])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@gem_eio@hibernate.html
* igt@gem_eio@unwedge-stress:
- shard-dg1: [PASS][31] -> [FAIL][32] ([i915#5784]) +1 other test fail
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg1-12/igt@gem_eio@unwedge-stress.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@gem_eio@unwedge-stress.html
* igt@gem_exec_balancer@bonded-dual:
- shard-mtlp: NOTRUN -> [SKIP][33] ([i915#4771])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@gem_exec_balancer@bonded-dual.html
- shard-dg1: NOTRUN -> [SKIP][34] ([i915#4771])
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@gem_exec_balancer@bonded-dual.html
* igt@gem_exec_balancer@bonded-sync:
- shard-dg2: NOTRUN -> [SKIP][35] ([i915#4771])
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@gem_exec_balancer@bonded-sync.html
* igt@gem_exec_balancer@invalid-bonds:
- shard-dg2: NOTRUN -> [SKIP][36] ([i915#4036])
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@gem_exec_balancer@invalid-bonds.html
* igt@gem_exec_balancer@parallel:
- shard-rkl: NOTRUN -> [SKIP][37] ([i915#4525]) +2 other tests skip
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_capture@capture-invisible@smem0:
- shard-tglu: NOTRUN -> [SKIP][38] ([i915#6334])
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-8/igt@gem_exec_capture@capture-invisible@smem0.html
* igt@gem_exec_fair@basic-deadline:
- shard-dg1: NOTRUN -> [SKIP][39] ([i915#3539] / [i915#4852])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-17/igt@gem_exec_fair@basic-deadline.html
- shard-mtlp: NOTRUN -> [SKIP][40] ([i915#4473] / [i915#4771])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-flow:
- shard-dg2: NOTRUN -> [SKIP][41] ([i915#3539] / [i915#4852]) +1 other test skip
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@gem_exec_fair@basic-flow.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-rkl: [PASS][42] -> [FAIL][43] ([i915#2842])
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-1/igt@gem_exec_fair@basic-pace-share@rcs0.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_fair@basic-pace-solo@rcs0:
- shard-tglu: NOTRUN -> [FAIL][44] ([i915#2842])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@gem_exec_fair@basic-pace-solo@rcs0.html
* igt@gem_exec_fair@basic-pace@vecs0:
- shard-rkl: NOTRUN -> [FAIL][45] ([i915#2842]) +4 other tests fail
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_exec_fair@basic-pace@vecs0.html
* igt@gem_exec_flush@basic-batch-kernel-default-cmd:
- shard-rkl: NOTRUN -> [SKIP][46] ([fdo#109313])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@gem_exec_flush@basic-batch-kernel-default-cmd.html
* igt@gem_exec_flush@basic-uc-prw-default:
- shard-dg2: NOTRUN -> [SKIP][47] ([i915#3539])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@gem_exec_flush@basic-uc-prw-default.html
* igt@gem_exec_params@rsvd2-dirt:
- shard-rkl: NOTRUN -> [SKIP][48] ([fdo#109283])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_exec_params@rsvd2-dirt.html
* igt@gem_exec_params@secure-non-master:
- shard-dg2: NOTRUN -> [SKIP][49] ([fdo#112283])
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@gem_exec_params@secure-non-master.html
* igt@gem_exec_reloc@basic-gtt-wc:
- shard-dg1: NOTRUN -> [SKIP][50] ([i915#3281]) +4 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@gem_exec_reloc@basic-gtt-wc.html
* igt@gem_exec_reloc@basic-write-read-noreloc:
- shard-rkl: NOTRUN -> [SKIP][51] ([i915#3281]) +15 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_exec_reloc@basic-write-read-noreloc.html
* igt@gem_exec_reloc@basic-write-wc-noreloc:
- shard-dg2: NOTRUN -> [SKIP][52] ([i915#3281]) +8 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@gem_exec_reloc@basic-write-wc-noreloc.html
* igt@gem_exec_schedule@preempt-queue:
- shard-dg2: NOTRUN -> [SKIP][53] ([i915#4537] / [i915#4812])
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@gem_exec_schedule@preempt-queue.html
* igt@gem_exec_schedule@preemptive-hang@vcs0:
- shard-mtlp: [PASS][54] -> [FAIL][55] ([i915#9051])
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-4/igt@gem_exec_schedule@preemptive-hang@vcs0.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@gem_exec_schedule@preemptive-hang@vcs0.html
* igt@gem_fence_thrash@bo-copy:
- shard-dg2: NOTRUN -> [SKIP][56] ([i915#4860]) +2 other tests skip
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@gem_fence_thrash@bo-copy.html
* igt@gem_lmem_swapping@heavy-verify-multi:
- shard-mtlp: NOTRUN -> [SKIP][57] ([i915#4613]) +1 other test skip
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@gem_lmem_swapping@heavy-verify-multi.html
* igt@gem_lmem_swapping@heavy-verify-multi-ccs@lmem0:
- shard-dg1: NOTRUN -> [SKIP][58] ([i915#4565])
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@gem_lmem_swapping@heavy-verify-multi-ccs@lmem0.html
* igt@gem_lmem_swapping@massive:
- shard-apl: NOTRUN -> [SKIP][59] ([fdo#109271] / [i915#4613]) +2 other tests skip
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl3/igt@gem_lmem_swapping@massive.html
* igt@gem_lmem_swapping@parallel-random-verify-ccs:
- shard-rkl: NOTRUN -> [SKIP][60] ([i915#4613]) +3 other tests skip
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@gem_lmem_swapping@parallel-random-verify-ccs.html
* igt@gem_lmem_swapping@random-engines:
- shard-tglu: NOTRUN -> [SKIP][61] ([i915#4613])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-6/igt@gem_lmem_swapping@random-engines.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg2: NOTRUN -> [TIMEOUT][62] ([i915#5493])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@gem_media_vme:
- shard-rkl: NOTRUN -> [SKIP][63] ([i915#284])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@gem_media_vme.html
* igt@gem_mmap@bad-size:
- shard-mtlp: NOTRUN -> [SKIP][64] ([i915#4083]) +2 other tests skip
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@gem_mmap@bad-size.html
* igt@gem_mmap_gtt@bad-object:
- shard-dg2: NOTRUN -> [SKIP][65] ([i915#4077]) +12 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@gem_mmap_gtt@bad-object.html
* igt@gem_mmap_gtt@cpuset-medium-copy-xy:
- shard-dg1: NOTRUN -> [SKIP][66] ([i915#4077]) +3 other tests skip
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html
- shard-mtlp: NOTRUN -> [SKIP][67] ([i915#4077]) +5 other tests skip
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html
* igt@gem_mmap_wc@coherency:
- shard-dg1: NOTRUN -> [SKIP][68] ([i915#4083]) +1 other test skip
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@gem_mmap_wc@coherency.html
* igt@gem_mmap_wc@copy:
- shard-dg2: NOTRUN -> [SKIP][69] ([i915#4083]) +5 other tests skip
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@gem_mmap_wc@copy.html
* igt@gem_partial_pwrite_pread@writes-after-reads-display:
- shard-dg2: NOTRUN -> [SKIP][70] ([i915#3282]) +8 other tests skip
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@gem_partial_pwrite_pread@writes-after-reads-display.html
* igt@gem_pread@exhaustion:
- shard-dg1: NOTRUN -> [SKIP][71] ([i915#3282]) +1 other test skip
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@gem_pread@exhaustion.html
* igt@gem_pread@snoop:
- shard-rkl: NOTRUN -> [SKIP][72] ([i915#3282]) +9 other tests skip
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@gem_pread@snoop.html
* igt@gem_pwrite@basic-exhaustion:
- shard-apl: NOTRUN -> [WARN][73] ([i915#2658])
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl7/igt@gem_pwrite@basic-exhaustion.html
* igt@gem_pxp@display-protected-crc:
- shard-dg2: NOTRUN -> [SKIP][74] ([i915#4270]) +5 other tests skip
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@gem_pxp@display-protected-crc.html
* igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted:
- shard-tglu: NOTRUN -> [SKIP][75] ([i915#4270])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-2/igt@gem_pxp@dmabuf-shared-protected-dst-is-context-refcounted.html
* igt@gem_pxp@protected-encrypted-src-copy-not-readible:
- shard-rkl: NOTRUN -> [SKIP][76] ([i915#4270]) +3 other tests skip
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_pxp@protected-encrypted-src-copy-not-readible.html
* igt@gem_pxp@reject-modify-context-protection-on:
- shard-dg1: NOTRUN -> [SKIP][77] ([i915#4270]) +1 other test skip
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@gem_pxp@reject-modify-context-protection-on.html
* igt@gem_pxp@verify-pxp-stale-buf-optout-execution:
- shard-mtlp: NOTRUN -> [SKIP][78] ([i915#4270]) +1 other test skip
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@gem_pxp@verify-pxp-stale-buf-optout-execution.html
* igt@gem_render_copy@yf-tiled-ccs-to-y-tiled-ccs:
- shard-mtlp: NOTRUN -> [SKIP][79] ([i915#8428]) +1 other test skip
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@gem_render_copy@yf-tiled-ccs-to-y-tiled-ccs.html
* igt@gem_set_tiling_vs_blt@untiled-to-tiled:
- shard-dg2: NOTRUN -> [SKIP][80] ([i915#4079]) +1 other test skip
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@gem_set_tiling_vs_blt@untiled-to-tiled.html
* igt@gem_softpin@evict-snoop:
- shard-dg2: NOTRUN -> [SKIP][81] ([i915#4885])
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@gem_softpin@evict-snoop.html
* igt@gem_softpin@noreloc-s3:
- shard-rkl: [PASS][82] -> [FAIL][83] ([fdo#103375])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-4/igt@gem_softpin@noreloc-s3.html
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@gem_softpin@noreloc-s3.html
* igt@gem_unfence_active_buffers:
- shard-mtlp: NOTRUN -> [SKIP][84] ([i915#4879])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@gem_unfence_active_buffers.html
* igt@gem_userptr_blits@coherency-unsync:
- shard-rkl: NOTRUN -> [SKIP][85] ([i915#3297]) +2 other tests skip
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gem_userptr_blits@coherency-unsync.html
* igt@gem_userptr_blits@create-destroy-unsync:
- shard-dg2: NOTRUN -> [SKIP][86] ([i915#3297]) +3 other tests skip
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@gem_userptr_blits@create-destroy-unsync.html
* igt@gem_userptr_blits@map-fixed-invalidate-overlap:
- shard-dg2: NOTRUN -> [SKIP][87] ([i915#3297] / [i915#4880]) +1 other test skip
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@gem_userptr_blits@map-fixed-invalidate-overlap.html
* igt@gem_userptr_blits@sd-probe:
- shard-dg2: NOTRUN -> [SKIP][88] ([i915#3297] / [i915#4958])
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@gem_userptr_blits@sd-probe.html
* igt@gem_userptr_blits@unsync-overlap:
- shard-tglu: NOTRUN -> [SKIP][89] ([i915#3297]) +1 other test skip
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@gem_userptr_blits@unsync-overlap.html
* igt@gem_userptr_blits@vma-merge:
- shard-rkl: NOTRUN -> [FAIL][90] ([i915#3318])
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@gem_userptr_blits@vma-merge.html
* igt@gen3_render_linear_blits:
- shard-dg1: NOTRUN -> [SKIP][91] ([fdo#109289]) +1 other test skip
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@gen3_render_linear_blits.html
- shard-mtlp: NOTRUN -> [SKIP][92] ([fdo#109289])
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@gen3_render_linear_blits.html
* igt@gen7_exec_parse@basic-offset:
- shard-tglu: NOTRUN -> [SKIP][93] ([fdo#109289])
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-2/igt@gen7_exec_parse@basic-offset.html
* igt@gen9_exec_parse@allowed-all:
- shard-tglu: NOTRUN -> [SKIP][94] ([i915#2527] / [i915#2856]) +1 other test skip
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-3/igt@gen9_exec_parse@allowed-all.html
- shard-glk: [PASS][95] -> [INCOMPLETE][96] ([i915#5566]) +1 other test incomplete
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-glk8/igt@gen9_exec_parse@allowed-all.html
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-glk9/igt@gen9_exec_parse@allowed-all.html
* igt@gen9_exec_parse@bb-start-param:
- shard-dg2: NOTRUN -> [SKIP][97] ([i915#2856]) +4 other tests skip
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@gen9_exec_parse@bb-start-param.html
* igt@gen9_exec_parse@shadow-peek:
- shard-rkl: NOTRUN -> [SKIP][98] ([i915#2527]) +6 other tests skip
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@gen9_exec_parse@shadow-peek.html
* igt@i915_hangman@detector@vcs0:
- shard-mtlp: [PASS][99] -> [FAIL][100] ([i915#8456]) +2 other tests fail
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-6/igt@i915_hangman@detector@vcs0.html
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@i915_hangman@detector@vcs0.html
* igt@i915_hangman@gt-engine-error@vcs0:
- shard-mtlp: [PASS][101] -> [FAIL][102] ([i915#7069])
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-6/igt@i915_hangman@gt-engine-error@vcs0.html
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@i915_hangman@gt-engine-error@vcs0.html
* igt@i915_pipe_stress@stress-xrgb8888-untiled:
- shard-apl: NOTRUN -> [FAIL][103] ([i915#7036])
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl1/igt@i915_pipe_stress@stress-xrgb8888-untiled.html
* igt@i915_pm_freq_api@freq-basic-api:
- shard-rkl: NOTRUN -> [SKIP][104] ([i915#8399])
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@i915_pm_freq_api@freq-basic-api.html
* igt@i915_pm_rc6_residency@media-rc6-accuracy:
- shard-rkl: NOTRUN -> [SKIP][105] ([fdo#109289]) +1 other test skip
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@i915_pm_rc6_residency@media-rc6-accuracy.html
* igt@i915_pm_rpm@gem-execbuf-stress-pc8:
- shard-dg1: NOTRUN -> [SKIP][106] ([fdo#109293] / [fdo#109506])
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-14/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html
* igt@i915_pm_rps@min-max-config-idle:
- shard-dg2: NOTRUN -> [SKIP][107] ([i915#6621])
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@i915_pm_rps@min-max-config-idle.html
* igt@i915_pm_rps@reset:
- shard-snb: [PASS][108] -> [INCOMPLETE][109] ([i915#7790])
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-snb5/igt@i915_pm_rps@reset.html
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-snb5/igt@i915_pm_rps@reset.html
* igt@i915_pm_sseu@full-enable:
- shard-rkl: NOTRUN -> [SKIP][110] ([i915#4387])
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@i915_pm_sseu@full-enable.html
- shard-dg1: NOTRUN -> [SKIP][111] ([i915#4387])
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@i915_pm_sseu@full-enable.html
- shard-mtlp: NOTRUN -> [SKIP][112] ([i915#8437])
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@i915_pm_sseu@full-enable.html
* igt@i915_query@hwconfig_table:
- shard-rkl: NOTRUN -> [SKIP][113] ([i915#6245])
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@i915_query@hwconfig_table.html
* igt@i915_query@query-topology-coherent-slice-mask:
- shard-dg2: NOTRUN -> [SKIP][114] ([i915#6188])
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@i915_query@query-topology-coherent-slice-mask.html
* igt@i915_query@query-topology-known-pci-ids:
- shard-dg2: NOTRUN -> [SKIP][115] ([fdo#109303])
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@i915_query@query-topology-known-pci-ids.html
* igt@i915_query@test-query-geometry-subslices:
- shard-rkl: NOTRUN -> [SKIP][116] ([i915#5723])
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@i915_query@test-query-geometry-subslices.html
* igt@kms_addfb_basic@basic-x-tiled-legacy:
- shard-dg2: NOTRUN -> [SKIP][117] ([i915#4212]) +2 other tests skip
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@kms_addfb_basic@basic-x-tiled-legacy.html
* igt@kms_addfb_basic@basic-y-tiled-legacy:
- shard-dg2: NOTRUN -> [SKIP][118] ([i915#4215] / [i915#5190])
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_addfb_basic@basic-y-tiled-legacy.html
* igt@kms_async_flips@invalid-async-flip:
- shard-mtlp: NOTRUN -> [SKIP][119] ([i915#6228])
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-1/igt@kms_async_flips@invalid-async-flip.html
* igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
- shard-dg2: NOTRUN -> [SKIP][120] ([i915#1769] / [i915#3555])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
* igt@kms_big_fb@4-tiled-32bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][121] ([fdo#111614]) +6 other tests skip
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-180:
- shard-tglu: NOTRUN -> [SKIP][122] ([fdo#111615] / [i915#5286]) +2 other tests skip
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-3/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
* igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
- shard-rkl: NOTRUN -> [SKIP][123] ([i915#5286]) +8 other tests skip
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
- shard-dg1: NOTRUN -> [SKIP][124] ([i915#4538] / [i915#5286]) +1 other test skip
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip:
- shard-mtlp: [PASS][125] -> [FAIL][126] ([i915#5138])
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-4/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
* igt@kms_big_fb@x-tiled-32bpp-rotate-270:
- shard-rkl: NOTRUN -> [SKIP][127] ([fdo#111614] / [i915#3638]) +3 other tests skip
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
- shard-dg1: NOTRUN -> [SKIP][128] ([i915#3638])
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-18/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
- shard-mtlp: NOTRUN -> [SKIP][129] ([fdo#111614]) +1 other test skip
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
- shard-tglu: NOTRUN -> [FAIL][130] ([i915#3743])
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-10/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
- shard-tglu: [PASS][131] -> [FAIL][132] ([i915#3743])
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-tglu-5/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-7/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-mtlp: NOTRUN -> [SKIP][133] ([fdo#111615]) +2 other tests skip
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
- shard-dg2: NOTRUN -> [SKIP][134] ([i915#5190]) +16 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
* igt@kms_big_fb@yf-tiled-16bpp-rotate-180:
- shard-rkl: NOTRUN -> [SKIP][135] ([fdo#110723]) +8 other tests skip
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_big_fb@yf-tiled-16bpp-rotate-180.html
* igt@kms_big_fb@yf-tiled-64bpp-rotate-270:
- shard-dg2: NOTRUN -> [SKIP][136] ([i915#4538] / [i915#5190]) +6 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_big_fb@yf-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
- shard-dg1: NOTRUN -> [SKIP][137] ([fdo#111615])
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-tglu: NOTRUN -> [SKIP][138] ([fdo#111615])
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip:
- shard-dg1: NOTRUN -> [SKIP][139] ([i915#4538]) +1 other test skip
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
* igt@kms_big_joiner@invalid-modeset:
- shard-dg2: NOTRUN -> [SKIP][140] ([i915#2705])
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@kms_big_joiner@invalid-modeset.html
* igt@kms_cdclk@mode-transition:
- shard-rkl: NOTRUN -> [SKIP][141] ([i915#3742])
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_cdclk@mode-transition.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-dg1: NOTRUN -> [SKIP][142] ([i915#3742])
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2:
- shard-dg2: NOTRUN -> [SKIP][143] ([i915#7213]) +3 other tests skip
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_cdclk@mode-transition@pipe-b-hdmi-a-2.html
* igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3:
- shard-dg2: NOTRUN -> [SKIP][144] ([i915#4087]) +3 other tests skip
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html
* igt@kms_chamelium_color@ctm-0-25:
- shard-dg1: NOTRUN -> [SKIP][145] ([fdo#111827])
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@kms_chamelium_color@ctm-0-25.html
- shard-mtlp: NOTRUN -> [SKIP][146] ([fdo#111827])
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@kms_chamelium_color@ctm-0-25.html
* igt@kms_chamelium_color@ctm-0-50:
- shard-dg2: NOTRUN -> [SKIP][147] ([fdo#111827])
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_chamelium_color@ctm-0-50.html
* igt@kms_chamelium_color@degamma:
- shard-rkl: NOTRUN -> [SKIP][148] ([fdo#111827]) +3 other tests skip
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_chamelium_color@degamma.html
* igt@kms_chamelium_frames@hdmi-crc-multiple:
- shard-dg2: NOTRUN -> [SKIP][149] ([i915#7828]) +7 other tests skip
[149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_chamelium_frames@hdmi-crc-multiple.html
* igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode:
- shard-dg1: NOTRUN -> [SKIP][150] ([i915#7828]) +3 other tests skip
[150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_chamelium_hpd@dp-hpd-enable-disable-mode.html
* igt@kms_chamelium_hpd@hdmi-hpd:
- shard-mtlp: NOTRUN -> [SKIP][151] ([i915#7828]) +3 other tests skip
[151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@kms_chamelium_hpd@hdmi-hpd.html
* igt@kms_chamelium_hpd@vga-hpd-fast:
- shard-rkl: NOTRUN -> [SKIP][152] ([i915#7828]) +12 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@kms_chamelium_hpd@vga-hpd-fast.html
- shard-tglu: NOTRUN -> [SKIP][153] ([i915#7828]) +3 other tests skip
[153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@kms_chamelium_hpd@vga-hpd-fast.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-tglu: NOTRUN -> [SKIP][154] ([i915#3116] / [i915#3299])
[154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@srm:
- shard-dg2: NOTRUN -> [SKIP][155] ([i915#7118]) +1 other test skip
[155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_content_protection@srm.html
* igt@kms_content_protection@type1:
- shard-mtlp: NOTRUN -> [SKIP][156] ([i915#3555] / [i915#6944])
[156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-onscreen-32x32:
- shard-rkl: NOTRUN -> [SKIP][157] ([i915#3555]) +9 other tests skip
[157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_cursor_crc@cursor-onscreen-32x32.html
* igt@kms_cursor_crc@cursor-onscreen-max-size:
- shard-mtlp: NOTRUN -> [SKIP][158] ([i915#3555] / [i915#8814])
[158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@kms_cursor_crc@cursor-onscreen-max-size.html
* igt@kms_cursor_crc@cursor-random-512x170:
- shard-rkl: NOTRUN -> [SKIP][159] ([i915#3359]) +1 other test skip
[159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_cursor_crc@cursor-random-512x170.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x170:
- shard-dg2: NOTRUN -> [SKIP][160] ([i915#3359]) +1 other test skip
[160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_cursor_crc@cursor-rapid-movement-512x170.html
* igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy:
- shard-dg2: NOTRUN -> [SKIP][161] ([fdo#109274] / [i915#5354]) +6 other tests skip
[161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html
* igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic:
- shard-dg2: NOTRUN -> [SKIP][162] ([fdo#109274] / [fdo#111767] / [i915#5354]) +1 other test skip
[162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html
* igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size:
- shard-dg1: NOTRUN -> [SKIP][163] ([i915#4103] / [i915#4213])
[163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-18/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
- shard-apl: NOTRUN -> [SKIP][164] ([fdo#109271] / [fdo#111767])
[164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl2/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
- shard-rkl: NOTRUN -> [SKIP][165] ([fdo#111767] / [fdo#111825])
[165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
- shard-apl: [PASS][166] -> [FAIL][167] ([i915#2346])
[166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic:
- shard-dg1: [PASS][168] -> [DMESG-WARN][169] ([i915#4423])
[168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg1-16/igt@kms_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic.html
[169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
- shard-rkl: NOTRUN -> [SKIP][170] ([i915#4103]) +1 other test skip
[170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-dg2: NOTRUN -> [SKIP][171] ([i915#4103] / [i915#4213])
[171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_cursor_legacy@single-move@all-pipes:
- shard-mtlp: [PASS][172] -> [DMESG-WARN][173] ([i915#2017])
[172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-6/igt@kms_cursor_legacy@single-move@all-pipes.html
[173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@kms_cursor_legacy@single-move@all-pipes.html
* igt@kms_dirtyfb@dirtyfb-ioctl@fbc-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][174] ([i915#9227])
[174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_dirtyfb@dirtyfb-ioctl@fbc-hdmi-a-1.html
* igt@kms_dirtyfb@dirtyfb-ioctl@fbc-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][175] ([i915#9227])
[175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@kms_dirtyfb@dirtyfb-ioctl@fbc-hdmi-a-4.html
* igt@kms_dirtyfb@dirtyfb-ioctl@psr-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][176] ([i915#9226] / [i915#9261]) +1 other test skip
[176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_dirtyfb@dirtyfb-ioctl@psr-hdmi-a-1.html
* igt@kms_dirtyfb@dirtyfb-ioctl@psr-hdmi-a-4:
- shard-dg1: NOTRUN -> [SKIP][177] ([i915#9226] / [i915#9261]) +1 other test skip
[177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@kms_dirtyfb@dirtyfb-ioctl@psr-hdmi-a-4.html
* igt@kms_display_modes@mst-extended-mode-negative:
- shard-dg2: NOTRUN -> [SKIP][178] ([i915#8588])
[178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_display_modes@mst-extended-mode-negative.html
* igt@kms_dither@fb-8bpc-vs-panel-8bpc:
- shard-dg2: NOTRUN -> [SKIP][179] ([i915#3555]) +5 other tests skip
[179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_dither@fb-8bpc-vs-panel-8bpc.html
* igt@kms_dsc@dsc-basic:
- shard-rkl: NOTRUN -> [SKIP][180] ([i915#3555] / [i915#3840]) +1 other test skip
[180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_dsc@dsc-basic.html
- shard-dg1: NOTRUN -> [SKIP][181] ([i915#3555] / [i915#3840])
[181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@kms_dsc@dsc-basic.html
* igt@kms_dsc@dsc-with-bpc-formats:
- shard-tglu: NOTRUN -> [SKIP][182] ([i915#3555] / [i915#3840])
[182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-5/igt@kms_dsc@dsc-with-bpc-formats.html
* igt@kms_flip@2x-blocking-wf_vblank:
- shard-tglu: NOTRUN -> [SKIP][183] ([fdo#109274] / [i915#3637])
[183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-4/igt@kms_flip@2x-blocking-wf_vblank.html
* igt@kms_flip@2x-flip-vs-fences:
- shard-dg1: NOTRUN -> [SKIP][184] ([i915#8381])
[184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_flip@2x-flip-vs-fences.html
- shard-mtlp: NOTRUN -> [SKIP][185] ([i915#8381])
[185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@kms_flip@2x-flip-vs-fences.html
* igt@kms_flip@2x-flip-vs-fences-interruptible:
- shard-dg2: NOTRUN -> [SKIP][186] ([i915#8381]) +1 other test skip
[186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_flip@2x-flip-vs-fences-interruptible.html
* igt@kms_flip@2x-flip-vs-wf_vblank:
- shard-mtlp: NOTRUN -> [SKIP][187] ([i915#3637])
[187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@kms_flip@2x-flip-vs-wf_vblank.html
* igt@kms_flip@2x-modeset-vs-vblank-race-interruptible:
- shard-dg2: NOTRUN -> [SKIP][188] ([fdo#109274]) +5 other tests skip
[188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_flip@2x-modeset-vs-vblank-race-interruptible.html
* igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
- shard-snb: NOTRUN -> [SKIP][189] ([fdo#109271]) +7 other tests skip
[189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-snb2/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html
* igt@kms_flip@2x-plain-flip-interruptible:
- shard-rkl: NOTRUN -> [SKIP][190] ([fdo#111825]) +14 other tests skip
[190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_flip@2x-plain-flip-interruptible.html
* igt@kms_flip@flip-vs-suspend@b-hdmi-a1:
- shard-snb: NOTRUN -> [DMESG-WARN][191] ([i915#8841]) +1 other test dmesg-warn
[191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-snb1/igt@kms_flip@flip-vs-suspend@b-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode:
- shard-rkl: NOTRUN -> [SKIP][192] ([i915#2672]) +6 other tests skip
[192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-default-mode:
- shard-mtlp: NOTRUN -> [SKIP][193] ([i915#8810])
[193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-default-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode:
- shard-dg1: NOTRUN -> [SKIP][194] ([i915#2587] / [i915#2672]) +1 other test skip
[194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-18/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode:
- shard-tglu: NOTRUN -> [SKIP][195] ([i915#2587] / [i915#2672])
[195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling@pipe-a-valid-mode:
- shard-dg2: NOTRUN -> [SKIP][196] ([i915#2672]) +6 other tests skip
[196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu:
- shard-dg2: [PASS][197] -> [FAIL][198] ([i915#6880])
[197]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu.html
[198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-wc:
- shard-dg1: NOTRUN -> [SKIP][199] ([i915#8708]) +5 other tests skip
[199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
- shard-dg2: NOTRUN -> [SKIP][200] ([i915#5354]) +33 other tests skip
[200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu:
- shard-dg1: NOTRUN -> [SKIP][201] ([fdo#111825]) +12 other tests skip
[201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt:
- shard-dg2: NOTRUN -> [SKIP][202] ([i915#8708]) +17 other tests skip
[202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc:
- shard-rkl: NOTRUN -> [SKIP][203] ([fdo#111825] / [i915#1825]) +49 other tests skip
[203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@fbc-farfromfence-mmap-gtt:
- shard-mtlp: NOTRUN -> [SKIP][204] ([i915#8708])
[204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@kms_frontbuffer_tracking@fbc-farfromfence-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw:
- shard-rkl: NOTRUN -> [SKIP][205] ([i915#3023]) +32 other tests skip
[205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff:
- shard-tglu: NOTRUN -> [SKIP][206] ([fdo#110189]) +9 other tests skip
[206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-6/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff:
- shard-mtlp: NOTRUN -> [SKIP][207] ([i915#1825]) +9 other tests skip
[207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu:
- shard-dg1: NOTRUN -> [SKIP][208] ([i915#3458]) +6 other tests skip
[208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
- shard-tglu: NOTRUN -> [SKIP][209] ([i915#5439])
[209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-3/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move:
- shard-dg2: NOTRUN -> [SKIP][210] ([i915#3458]) +23 other tests skip
[210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-move.html
* igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
- shard-tglu: NOTRUN -> [SKIP][211] ([fdo#109280]) +7 other tests skip
[211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-10/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html
* igt@kms_hdr@bpc-switch:
- shard-rkl: NOTRUN -> [SKIP][212] ([i915#3555] / [i915#8228]) +1 other test skip
[212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_hdr@bpc-switch.html
* igt@kms_hdr@invalid-hdr:
- shard-dg1: NOTRUN -> [SKIP][213] ([i915#3555] / [i915#8228])
[213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_hdr@invalid-hdr.html
* igt@kms_hdr@static-toggle:
- shard-dg2: NOTRUN -> [SKIP][214] ([i915#3555] / [i915#8228]) +3 other tests skip
[214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_hdr@static-toggle.html
* igt@kms_panel_fitting@atomic-fastset:
- shard-tglu: NOTRUN -> [SKIP][215] ([i915#6301])
[215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-4/igt@kms_panel_fitting@atomic-fastset.html
* igt@kms_panel_fitting@legacy:
- shard-rkl: NOTRUN -> [SKIP][216] ([i915#6301])
[216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_panel_fitting@legacy.html
- shard-dg1: NOTRUN -> [SKIP][217] ([i915#6301])
[217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@kms_panel_fitting@legacy.html
* igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes:
- shard-dg2: NOTRUN -> [SKIP][218] ([fdo#109289]) +3 other tests skip
[218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_pipe_b_c_ivb@from-pipe-c-to-b-with-3-lanes.html
* igt@kms_plane_alpha_blend@constant-alpha-max@pipe-c-dp-1:
- shard-apl: NOTRUN -> [FAIL][219] ([i915#4573]) +1 other test fail
[219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl3/igt@kms_plane_alpha_blend@constant-alpha-max@pipe-c-dp-1.html
* igt@kms_plane_lowres@tiling-y:
- shard-dg2: NOTRUN -> [SKIP][220] ([i915#8821])
[220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_plane_lowres@tiling-y.html
* igt@kms_plane_lowres@tiling-yf:
- shard-dg2: NOTRUN -> [SKIP][221] ([i915#3555] / [i915#8821])
[221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1:
- shard-dg1: NOTRUN -> [FAIL][222] ([i915#8292])
[222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-1:
- shard-rkl: NOTRUN -> [SKIP][223] ([i915#5235]) +3 other tests skip
[223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-1.html
* igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-3:
- shard-dg1: NOTRUN -> [SKIP][224] ([i915#5235]) +15 other tests skip
[224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_plane_scaling@planes-downscale-factor-0-25-upscale-20x20@pipe-a-hdmi-a-3.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-dp-4:
- shard-dg2: NOTRUN -> [SKIP][225] ([i915#5235]) +11 other tests skip
[225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-dp-4.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][226] ([i915#5235]) +2 other tests skip
[226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c-edp-1.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-d-edp-1:
- shard-mtlp: NOTRUN -> [SKIP][227] ([i915#3555] / [i915#5235])
[227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-d-edp-1.html
* igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
- shard-tglu: NOTRUN -> [SKIP][228] ([i915#658])
[228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-8/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
* igt@kms_psr2_sf@cursor-plane-update-sf:
- shard-apl: NOTRUN -> [SKIP][229] ([fdo#109271] / [i915#658]) +1 other test skip
[229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl7/igt@kms_psr2_sf@cursor-plane-update-sf.html
* igt@kms_psr2_sf@overlay-plane-move-continuous-sf:
- shard-rkl: NOTRUN -> [SKIP][230] ([i915#658])
[230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_psr2_sf@overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
- shard-dg2: NOTRUN -> [SKIP][231] ([i915#658]) +2 other tests skip
[231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
- shard-tglu: NOTRUN -> [SKIP][232] ([fdo#111068] / [i915#658])
[232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-10/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
* igt@kms_psr2_su@page_flip-xrgb8888:
- shard-rkl: NOTRUN -> [SKIP][233] ([fdo#111068] / [i915#658]) +3 other tests skip
[233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_psr2_su@page_flip-xrgb8888.html
* igt@kms_psr@cursor_blt:
- shard-rkl: NOTRUN -> [SKIP][234] ([i915#1072]) +13 other tests skip
[234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_psr@cursor_blt.html
* igt@kms_psr@psr2_cursor_mmap_gtt:
- shard-dg1: NOTRUN -> [SKIP][235] ([i915#1072] / [i915#4078]) +3 other tests skip
[235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@kms_psr@psr2_cursor_mmap_gtt.html
* igt@kms_psr@psr2_dpms:
- shard-dg2: NOTRUN -> [SKIP][236] ([i915#1072]) +9 other tests skip
[236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_psr@psr2_dpms.html
* igt@kms_rotation_crc@exhaust-fences:
- shard-dg2: NOTRUN -> [SKIP][237] ([i915#4235]) +1 other test skip
[237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_rotation_crc@exhaust-fences.html
* igt@kms_rotation_crc@primary-4-tiled-reflect-x-0:
- shard-rkl: NOTRUN -> [SKIP][238] ([i915#5289])
[238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@kms_rotation_crc@primary-4-tiled-reflect-x-0.html
* igt@kms_scaling_modes@scaling-mode-none:
- shard-dg1: NOTRUN -> [SKIP][239] ([i915#3555]) +3 other tests skip
[239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-12/igt@kms_scaling_modes@scaling-mode-none.html
* igt@kms_setmode@basic-clone-single-crtc:
- shard-rkl: NOTRUN -> [SKIP][240] ([i915#3555] / [i915#4098]) +2 other tests skip
[240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_setmode@basic-clone-single-crtc.html
* igt@kms_tv_load_detect@load-detect:
- shard-dg2: NOTRUN -> [SKIP][241] ([fdo#109309])
[241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-7/igt@kms_tv_load_detect@load-detect.html
* igt@kms_universal_plane@cursor-fb-leak@pipe-a-vga-1:
- shard-snb: [PASS][242] -> [FAIL][243] ([i915#9196])
[242]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-snb7/igt@kms_universal_plane@cursor-fb-leak@pipe-a-vga-1.html
[243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-snb2/igt@kms_universal_plane@cursor-fb-leak@pipe-a-vga-1.html
* igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-dp-1:
- shard-apl: NOTRUN -> [INCOMPLETE][244] ([i915#180])
[244]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl2/igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-dp-1.html
* igt@kms_vrr@flip-basic:
- shard-mtlp: NOTRUN -> [SKIP][245] ([i915#3555] / [i915#8808])
[245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@kms_vrr@flip-basic.html
* igt@kms_vrr@flip-suspend:
- shard-tglu: NOTRUN -> [SKIP][246] ([i915#3555]) +1 other test skip
[246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-4/igt@kms_vrr@flip-suspend.html
* igt@kms_writeback@writeback-check-output:
- shard-dg2: NOTRUN -> [SKIP][247] ([i915#2437]) +1 other test skip
[247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@kms_writeback@writeback-check-output.html
* igt@kms_writeback@writeback-pixel-formats:
- shard-rkl: NOTRUN -> [SKIP][248] ([i915#2437])
[248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_writeback@writeback-pixel-formats.html
- shard-dg1: NOTRUN -> [SKIP][249] ([i915#2437])
[249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@kms_writeback@writeback-pixel-formats.html
- shard-mtlp: NOTRUN -> [SKIP][250] ([i915#2437])
[250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@kms_writeback@writeback-pixel-formats.html
* igt@perf@enable-disable@0-rcs0:
- shard-dg2: NOTRUN -> [FAIL][251] ([i915#8724])
[251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@perf@enable-disable@0-rcs0.html
* igt@perf@global-sseu-config:
- shard-dg2: NOTRUN -> [SKIP][252] ([i915#7387])
[252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@perf@global-sseu-config.html
* igt@perf@unprivileged-single-ctx-counters:
- shard-rkl: NOTRUN -> [SKIP][253] ([i915#2433])
[253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@perf@unprivileged-single-ctx-counters.html
* igt@perf_pmu@busy-double-start@bcs0:
- shard-mtlp: [PASS][254] -> [FAIL][255] ([i915#4349]) +4 other tests fail
[254]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-8/igt@perf_pmu@busy-double-start@bcs0.html
[255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@perf_pmu@busy-double-start@bcs0.html
* igt@perf_pmu@cpu-hotplug:
- shard-dg2: NOTRUN -> [SKIP][256] ([i915#8850])
[256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@perf_pmu@cpu-hotplug.html
* igt@perf_pmu@event-wait@rcs0:
- shard-rkl: NOTRUN -> [SKIP][257] ([fdo#112283]) +1 other test skip
[257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@perf_pmu@event-wait@rcs0.html
- shard-dg1: NOTRUN -> [SKIP][258] ([fdo#112283])
[258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-15/igt@perf_pmu@event-wait@rcs0.html
- shard-mtlp: NOTRUN -> [SKIP][259] ([i915#3555] / [i915#8807])
[259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-6/igt@perf_pmu@event-wait@rcs0.html
* igt@perf_pmu@rc6@other-idle-gt0:
- shard-dg2: NOTRUN -> [SKIP][260] ([i915#8516])
[260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@perf_pmu@rc6@other-idle-gt0.html
* igt@prime_vgem@basic-fence-read:
- shard-mtlp: NOTRUN -> [SKIP][261] ([i915#3708]) +1 other test skip
[261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@prime_vgem@basic-fence-read.html
* igt@prime_vgem@basic-read:
- shard-dg2: NOTRUN -> [SKIP][262] ([i915#3291] / [i915#3708])
[262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@prime_vgem@basic-read.html
* igt@prime_vgem@basic-write:
- shard-rkl: NOTRUN -> [SKIP][263] ([fdo#109295] / [i915#3291] / [i915#3708])
[263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@prime_vgem@basic-write.html
* igt@prime_vgem@coherency-gtt:
- shard-dg2: NOTRUN -> [SKIP][264] ([i915#3708] / [i915#4077])
[264]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@prime_vgem@coherency-gtt.html
* igt@sysfs_heartbeat_interval@mixed@vecs0:
- shard-mtlp: [PASS][265] -> [FAIL][266] ([i915#1731])
[265]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-4/igt@sysfs_heartbeat_interval@mixed@vecs0.html
[266]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-2/igt@sysfs_heartbeat_interval@mixed@vecs0.html
* igt@sysfs_preempt_timeout@timeout@vecs0:
- shard-mtlp: [PASS][267] -> [ABORT][268] ([i915#8521] / [i915#8865])
[267]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-2/igt@sysfs_preempt_timeout@timeout@vecs0.html
[268]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@sysfs_preempt_timeout@timeout@vecs0.html
* igt@v3d/v3d_perfmon@get-values-invalid-perfmon:
- shard-tglu: NOTRUN -> [SKIP][269] ([fdo#109315] / [i915#2575]) +2 other tests skip
[269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-6/igt@v3d/v3d_perfmon@get-values-invalid-perfmon.html
* igt@v3d/v3d_submit_cl@simple-flush-cache:
- shard-dg1: NOTRUN -> [SKIP][270] ([i915#2575]) +5 other tests skip
[270]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-16/igt@v3d/v3d_submit_cl@simple-flush-cache.html
- shard-mtlp: NOTRUN -> [SKIP][271] ([i915#2575]) +2 other tests skip
[271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@v3d/v3d_submit_cl@simple-flush-cache.html
* igt@v3d/v3d_submit_cl@valid-multisync-submission:
- shard-dg2: NOTRUN -> [SKIP][272] ([i915#2575]) +12 other tests skip
[272]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-11/igt@v3d/v3d_submit_cl@valid-multisync-submission.html
* igt@v3d/v3d_submit_csd@valid-multisync-submission:
- shard-rkl: NOTRUN -> [SKIP][273] ([fdo#109315]) +17 other tests skip
[273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@v3d/v3d_submit_csd@valid-multisync-submission.html
* igt@v3d/v3d_wait_bo@unused-bo-1ns:
- shard-apl: NOTRUN -> [SKIP][274] ([fdo#109271]) +110 other tests skip
[274]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl4/igt@v3d/v3d_wait_bo@unused-bo-1ns.html
* igt@vc4/vc4_purgeable_bo@access-purged-bo-mem:
- shard-mtlp: NOTRUN -> [SKIP][275] ([i915#7711]) +2 other tests skip
[275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-4/igt@vc4/vc4_purgeable_bo@access-purged-bo-mem.html
* igt@vc4/vc4_purgeable_bo@mark-purgeable:
- shard-rkl: NOTRUN -> [SKIP][276] ([i915#7711]) +13 other tests skip
[276]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@vc4/vc4_purgeable_bo@mark-purgeable.html
* igt@vc4/vc4_tiling@get-after-free:
- shard-tglu: NOTRUN -> [SKIP][277] ([i915#2575]) +3 other tests skip
[277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-10/igt@vc4/vc4_tiling@get-after-free.html
* igt@vc4/vc4_tiling@get-bad-modifier:
- shard-dg1: NOTRUN -> [SKIP][278] ([i915#7711]) +2 other tests skip
[278]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-14/igt@vc4/vc4_tiling@get-bad-modifier.html
* igt@vc4/vc4_wait_seqno@bad-seqno-1ns:
- shard-dg2: NOTRUN -> [SKIP][279] ([i915#7711]) +6 other tests skip
[279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@vc4/vc4_wait_seqno@bad-seqno-1ns.html
#### Possible fixes ####
* igt@gem_ctx_exec@basic-nohangcheck:
- shard-tglu: [FAIL][280] ([i915#6268]) -> [PASS][281]
[280]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-tglu-3/igt@gem_ctx_exec@basic-nohangcheck.html
[281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@gem_ctx_exec@basic-nohangcheck.html
* igt@gem_eio@kms:
- shard-dg2: [INCOMPLETE][282] ([i915#7892]) -> [PASS][283]
[282]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-3/igt@gem_eio@kms.html
[283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-2/igt@gem_eio@kms.html
* igt@gem_exec_fair@basic-none-solo@rcs0:
- shard-apl: [FAIL][284] ([i915#2842]) -> [PASS][285]
[284]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html
[285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl4/igt@gem_exec_fair@basic-none-solo@rcs0.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk: [FAIL][286] ([i915#2842]) -> [PASS][287] +1 other test pass
[286]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-glk4/igt@gem_exec_fair@basic-pace-share@rcs0.html
[287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-glk5/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_suspend@basic-s4-devices@smem:
- shard-tglu: [ABORT][288] ([i915#7975] / [i915#8213]) -> [PASS][289]
[288]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-tglu-10/igt@gem_exec_suspend@basic-s4-devices@smem.html
[289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@gem_exec_suspend@basic-s4-devices@smem.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- shard-dg1: [TIMEOUT][290] ([i915#5493]) -> [PASS][291]
[290]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg1-14/igt@gem_lmem_swapping@smem-oom@lmem0.html
[291]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-17/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@i915_hangman@engine-engine-error@vcs0:
- shard-mtlp: [FAIL][292] ([i915#7069]) -> [PASS][293] +1 other test pass
[292]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-2/igt@i915_hangman@engine-engine-error@vcs0.html
[293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-7/igt@i915_hangman@engine-engine-error@vcs0.html
* igt@i915_module_load@reload-with-fault-injection:
- shard-mtlp: [ABORT][294] ([i915#8489] / [i915#8668]) -> [PASS][295]
[294]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-1/igt@i915_module_load@reload-with-fault-injection.html
[295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@i915_module_load@reload-with-fault-injection.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
- shard-apl: [FAIL][296] ([i915#2346]) -> [PASS][297]
[296]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-apl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
[297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
* igt@kms_flip@flip-vs-suspend@c-edp1:
- shard-mtlp: [INCOMPLETE][298] -> [PASS][299]
[298]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-4/igt@kms_flip@flip-vs-suspend@c-edp1.html
[299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-8/igt@kms_flip@flip-vs-suspend@c-edp1.html
* igt@kms_flip@flip-vs-suspend@c-hdmi-a3:
- shard-dg2: [FAIL][300] ([fdo#103375]) -> [PASS][301]
[300]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-1/igt@kms_flip@flip-vs-suspend@c-hdmi-a3.html
[301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-1/igt@kms_flip@flip-vs-suspend@c-hdmi-a3.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-cpu:
- shard-dg2: [FAIL][302] ([i915#6880]) -> [PASS][303] +1 other test pass
[302]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-cpu.html
[303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-indfb-draw-mmap-cpu.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1:
- shard-tglu: [FAIL][304] ([i915#8292]) -> [PASS][305]
[304]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-tglu-8/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html
[305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-tglu-9/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html
* {igt@kms_pm_rpm@dpms-lpsp}:
- shard-dg1: [SKIP][306] ([i915#9519]) -> [PASS][307] +1 other test pass
[306]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg1-16/igt@kms_pm_rpm@dpms-lpsp.html
[307]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg1-19/igt@kms_pm_rpm@dpms-lpsp.html
* {igt@kms_pm_rpm@dpms-non-lpsp}:
- shard-rkl: [SKIP][308] ([i915#9519]) -> [PASS][309]
[308]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-7/igt@kms_pm_rpm@dpms-non-lpsp.html
[309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-4/igt@kms_pm_rpm@dpms-non-lpsp.html
* igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
- shard-rkl: [INCOMPLETE][310] ([i915#9475]) -> [PASS][311]
[310]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
[311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
* igt@kms_rotation_crc@sprite-rotation-270:
- shard-rkl: [INCOMPLETE][312] ([i915#8875]) -> [PASS][313]
[312]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-4/igt@kms_rotation_crc@sprite-rotation-270.html
[313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_rotation_crc@sprite-rotation-270.html
* {igt@kms_vblank@ts-continuation-suspend@pipe-a-hdmi-a-3}:
- shard-dg2: [INCOMPLETE][314] -> [PASS][315]
[314]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-5/igt@kms_vblank@ts-continuation-suspend@pipe-a-hdmi-a-3.html
[315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-6/igt@kms_vblank@ts-continuation-suspend@pipe-a-hdmi-a-3.html
#### Warnings ####
* igt@gem_create@create-ext-cpu-access-big:
- shard-dg2: [INCOMPLETE][316] ([i915#9364]) -> [ABORT][317] ([i915#7461])
[316]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-6/igt@gem_create@create-ext-cpu-access-big.html
[317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@gem_create@create-ext-cpu-access-big.html
* igt@kms_async_flips@crc@pipe-d-edp-1:
- shard-mtlp: [FAIL][318] ([i915#8247]) -> [DMESG-FAIL][319] ([i915#8561]) +2 other tests dmesg-fail
[318]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-mtlp-7/igt@kms_async_flips@crc@pipe-d-edp-1.html
[319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-mtlp-5/igt@kms_async_flips@crc@pipe-d-edp-1.html
* igt@kms_content_protection@type1:
- shard-dg2: [SKIP][320] ([i915#7118] / [i915#7162]) -> [SKIP][321] ([i915#7118])
[320]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-dg2-11/igt@kms_content_protection@type1.html
[321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-dg2-3/igt@kms_content_protection@type1.html
* igt@kms_fbcon_fbt@psr-suspend:
- shard-rkl: [SKIP][322] ([fdo#110189] / [i915#3955]) -> [SKIP][323] ([i915#3955])
[322]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-1/igt@kms_fbcon_fbt@psr-suspend.html
[323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-7/igt@kms_fbcon_fbt@psr-suspend.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-rkl: [SKIP][324] ([i915#4816]) -> [SKIP][325] ([i915#4070] / [i915#4816])
[324]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13777/shard-rkl-4/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
[325]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/shard-rkl-6/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
[fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111767]: https://bugs.freedesktop.org/show_bug.cgi?id=111767
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1731]: https://gitlab.freedesktop.org/drm/intel/issues/1731
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
[i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4087]: https://gitlab.freedesktop.org/drm/intel/issues/4087
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
[i915#4235]: https://gitlab.freedesktop.org/drm/intel/issues/4235
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
[i915#4473]: https://gitlab.freedesktop.org/drm/intel/issues/4473
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4537]: https://gitlab.freedesktop.org/drm/intel/issues/4537
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
[i915#4573]: https://gitlab.freedesktop.org/drm/intel/issues/4573
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4816]: https://gitlab.freedesktop.org/drm/intel/issues/4816
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4854]: https://gitlab.freedesktop.org/drm/intel/issues/4854
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
[i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
[i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
[i915#5030]: https://gitlab.freedesktop.org/drm/intel/issues/5030
[i915#5138]: https://gitlab.freedesktop.org/drm/intel/issues/5138
[i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
[i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6188]: https://gitlab.freedesktop.org/drm/intel/issues/6188
[i915#6228]: https://gitlab.freedesktop.org/drm/intel/issues/6228
[i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
[i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
[i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
[i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880
[i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
[i915#7036]: https://gitlab.freedesktop.org/drm/intel/issues/7036
[i915#7069]: https://gitlab.freedesktop.org/drm/intel/issues/7069
[i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
[i915#7162]: https://gitlab.freedesktop.org/drm/intel/issues/7162
[i915#7213]: https://gitlab.freedesktop.org/drm/intel/issues/7213
[i915#7387]: https://gitlab.freedesktop.org/drm/intel/issues/7387
[i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
[i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
[i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
[i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
[i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
[i915#7790]: https://gitlab.freedesktop.org/drm/intel/issues/7790
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#7892]: https://gitlab.freedesktop.org/drm/intel/issues/7892
[i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
[i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213
[i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
[i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
[i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292
[i915#8381]: https://gitlab.freedesktop.org/drm/intel/issues/8381
[i915#8399]: https://gitlab.freedesktop.org/drm/intel/issues/8399
[i915#8411]: https://gitlab.freedesktop.org/drm/intel/issues/8411
[i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
[i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428
[i915#8437]: https://gitlab.freedesktop.org/drm/intel/issues/8437
[i915#8456]: https://gitlab.freedesktop.org/drm/intel/issues/8456
[i915#8489]: https://gitlab.freedesktop.org/drm/intel/issues/8489
[i915#8516]: https://gitlab.freedesktop.org/drm/intel/issues/8516
[i915#8521]: https://gitlab.freedesktop.org/drm/intel/issues/8521
[i915#8555]: https://gitlab.freedesktop.org/drm/intel/issues/8555
[i915#8561]: https://gitlab.freedesktop.org/drm/intel/issues/8561
[i915#8562]: https://gitlab.freedesktop.org/drm/intel/issues/8562
[i915#8588]: https://gitlab.freedesktop.org/drm/intel/issues/8588
[i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
[i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708
[i915#8709]: https://gitlab.freedesktop.org/drm/intel/issues/8709
[i915#8724]: https://gitlab.freedesktop.org/drm/intel/issues/8724
[i915#8758]: https://gitlab.freedesktop.org/drm/intel/issues/8758
[i915#8807]: https://gitlab.freedesktop.org/drm/intel/issues/8807
[i915#8808]: https://gitlab.freedesktop.org/drm/intel/issues/8808
[i915#8810]: https://gitlab.freedesktop.org/drm/intel/issues/8810
[i915#8814]: https://gitlab.freedesktop.org/drm/intel/issues/8814
[i915#8821]: https://gitlab.freedesktop.org/drm/intel/issues/8821
[i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
[i915#8850]: https://gitlab.freedesktop.org/drm/intel/issues/8850
[i915#8865]: https://gitlab.freedesktop.org/drm/intel/issues/8865
[i915#8875]: https://gitlab.freedesktop.org/drm/intel/issues/8875
[i915#9051]: https://gitlab.freedesktop.org/drm/intel/issues/9051
[i915#9053]: https://gitlab.freedesktop.org/drm/intel/issues/9053
[i915#9067]: https://gitlab.freedesktop.org/drm/intel/issues/9067
[i915#9196]: https://gitlab.freedesktop.org/drm/intel/issues/9196
[i915#9226]: https://gitlab.freedesktop.org/drm/intel/issues/9226
[i915#9227]: https://gitlab.freedesktop.org/drm/intel/issues/9227
[i915#9261]: https://gitlab.freedesktop.org/drm/intel/issues/9261
[i915#9323]: https://gitlab.freedesktop.org/drm/intel/issues/9323
[i915#9364]: https://gitlab.freedesktop.org/drm/intel/issues/9364
[i915#9423]: https://gitlab.freedesktop.org/drm/intel/issues/9423
[i915#9424]: https://gitlab.freedesktop.org/drm/intel/issues/9424
[i915#9433]: https://gitlab.freedesktop.org/drm/intel/issues/9433
[i915#9475]: https://gitlab.freedesktop.org/drm/intel/issues/9475
[i915#9519]: https://gitlab.freedesktop.org/drm/intel/issues/9519
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7549 -> IGTPW_10028
* Piglit: piglit_4509 -> None
CI-20190529: 20190529
CI_DRM_13777: 1b4fd688d213556268c50f853746c94c9a0cfee7 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_10028: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
IGT_7549: bc3314b187318a4238c6fae583770b389afa83c3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_10028/index.html
[-- Attachment #2: Type: text/html, Size: 105705 bytes --]
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2023-10-24 0:11 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-19 9:34 [igt-dev] [i-g-t V2 0/5] Optimize kms tesplan documentation Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 1/5] tests/kms/testplan: Move testplan documentation to beginning of the file Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 2/5] tests/kms/testplan: Regroup testplan documentation Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 3/5] tests/kms/testplan: Optimize KMS " Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 4/5] tests/kms/testplan: Fix Mega Feature in " Bhanuprakash Modem
2023-10-19 9:34 ` [igt-dev] [i-g-t V2 5/5] tests/kms/testplan: Avoid duplicate names on Mega feature vs Functionality Bhanuprakash Modem
2023-10-19 14:46 ` Mauro Carvalho Chehab
2023-10-23 17:02 ` [igt-dev] ✓ Fi.CI.BAT: success for Optimize kms tesplan documentation (rev3) Patchwork
2023-10-23 18:11 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
2023-10-24 0:11 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.