All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests
@ 2023-05-05 10:31 Bhanuprakash Modem
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT Bhanuprakash Modem
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Bhanuprakash Modem @ 2023-05-05 10:31 UTC (permalink / raw)
  To: igt-dev, mchehab

Add documentation & testplan support for kms tests in
XE BAT list.

V2: - Cleanup
    - Drop hax

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

Bhanuprakash Modem (2):
  tests/kms: Document kms subtests for XE BAT
  testplan: Add testplan support for kms tests

 docs/testplan/meson.build              |   6 +-
 tests/chamelium/kms_chamelium_edid.c   |  27 +++++
 tests/chamelium/kms_chamelium_frames.c |  22 ++++
 tests/chamelium/kms_chamelium_hpd.c    |  39 +++++++
 tests/i915/kms_psr.c                   |  31 ++++++
 tests/kms_addfb_basic.c                | 138 +++++++++++++++++++++++++
 tests/kms_cursor_legacy.c              |  40 +++++++
 tests/kms_flip.c                       |  27 +++++
 tests/kms_force_connector_basic.c      |  29 ++++++
 tests/kms_pipe_crc_basic.c             |  58 +++++++++++
 tests/kms_prop_blob.c                  |  12 +++
 tests/kms_test_config.json             |  36 +++++++
 12 files changed, 463 insertions(+), 2 deletions(-)
 create mode 100644 tests/kms_test_config.json

--
2.40.0



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT
  2023-05-05 10:31 [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests Bhanuprakash Modem
@ 2023-05-05 10:31 ` Bhanuprakash Modem
  2023-05-07  7:58   ` Mauro Carvalho Chehab
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests Bhanuprakash Modem
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 7+ messages in thread
From: Bhanuprakash Modem @ 2023-05-05 10:31 UTC (permalink / raw)
  To: igt-dev, mchehab

Add documentation for kms tests those are in XE BAT which is used
by IGT test plan documentation.

Tests included in this patch:
- tests/chamelium/kms_chamelium_edid.c
- tests/chamelium/kms_chamelium_frames.c
- tests/chamelium/kms_chamelium_hpd.c
- tests/i915/kms_psr.c
- tests/kms_addfb_basic.c
- tests/kms_cursor_legacy.c
- tests/kms_flip.c
- tests/kms_force_connector_basic.c
- tests/kms_pipe_crc_basic.c
- tests/kms_prop_blob.c

V2: - Fine tune documentation (Mauro)

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/chamelium/kms_chamelium_edid.c   |  27 +++++
 tests/chamelium/kms_chamelium_frames.c |  22 ++++
 tests/chamelium/kms_chamelium_hpd.c    |  39 +++++++
 tests/i915/kms_psr.c                   |  31 ++++++
 tests/kms_addfb_basic.c                | 138 +++++++++++++++++++++++++
 tests/kms_cursor_legacy.c              |  40 +++++++
 tests/kms_flip.c                       |  27 +++++
 tests/kms_force_connector_basic.c      |  29 ++++++
 tests/kms_pipe_crc_basic.c             |  58 +++++++++++
 tests/kms_prop_blob.c                  |  12 +++
 10 files changed, 423 insertions(+)

diff --git a/tests/chamelium/kms_chamelium_edid.c b/tests/chamelium/kms_chamelium_edid.c
index 7e7262ed3..4a52e6922 100644
--- a/tests/chamelium/kms_chamelium_edid.c
+++ b/tests/chamelium/kms_chamelium_edid.c
@@ -24,6 +24,11 @@
  *    Lyude Paul <lyude@redhat.com>
  */
 
+/**
+ * TEST: Tests behaviour of edid & timings using chamelium
+ * Category: Display
+ */
+
 #include <fcntl.h>
 #include <stdint.h>
 #include <string.h>
@@ -139,6 +144,28 @@ 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
+ * Run type: BAT
+ * Functionality: dp
+ * Mega feature: DP
+ *
+ * SUBTEST: hdmi-edid-read
+ * Description: Make sure the EDID exposed by KMS is the same as the screen's
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: hdmi
+ * Mega feature: HDMI
+ *
+ * SUBTEST: vga-edid-read
+ * Description: Make sure the EDID exposed by KMS is the same as the screen's
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: vga
+ * Mega feature: VGA
+ */
 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,
diff --git a/tests/chamelium/kms_chamelium_frames.c b/tests/chamelium/kms_chamelium_frames.c
index 008bc34b6..22a7ba936 100644
--- a/tests/chamelium/kms_chamelium_frames.c
+++ b/tests/chamelium/kms_chamelium_frames.c
@@ -24,6 +24,11 @@
  *    Lyude Paul <lyude@redhat.com>
  */
 
+/**
+ * TEST: Tests to capture frames using chamelium
+ * Category: Display
+ */
+
 #include "igt_eld.h"
 #include "igt_infoframe.h"
 #include "kms_chamelium_helper.h"
@@ -534,6 +539,23 @@ 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
+ * Run type: BAT
+ * Functionality: dp
+ * Mega feature: DP
+ *
+ * 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
+ * Run type: BAT
+ * Functionality: hdmi
+ * Mega feature: HDMI
+ */
 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";
diff --git a/tests/chamelium/kms_chamelium_hpd.c b/tests/chamelium/kms_chamelium_hpd.c
index 2b17ce29d..efd40ba54 100644
--- a/tests/chamelium/kms_chamelium_hpd.c
+++ b/tests/chamelium/kms_chamelium_hpd.c
@@ -24,6 +24,11 @@
  *    Lyude Paul <lyude@redhat.com>
  */
 
+/**
+ * TEST: Tests behaviour of hpd using chamelium
+ * Category: Display
+ */
+
 #include "kms_chamelium_helper.h"
 
 #define HPD_STORM_PULSE_INTERVAL_DP 100 /* ms */
@@ -104,6 +109,31 @@ 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
+ * Run type: BAT
+ * Functionality: dp_hotplug
+ * Mega feature: DP
+ *
+ * SUBTEST: hdmi-hpd-fast
+ * Description: Check that we get uevents and updated connector status on
+ * 		hotplug and unplug
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: hdmi_hotplug
+ * Mega feature: HDMI
+ *
+ * SUBTEST: vga-hpd-fast
+ * Description: Check that we get uevents and updated connector status on
+ * 		hotplug and unplug
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: vga_hotplug
+ * Mega feature: VGA
+ */
 static const char test_basic_hotplug_desc[] =
 	"Check that we get uevents and updated connector status on "
 	"hotplug and unplug";
@@ -238,6 +268,15 @@ 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
+ * Run type: BAT
+ * Functionality: hotplug
+ * Mega feature: General Display Features
+ */
 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";
diff --git a/tests/i915/kms_psr.c b/tests/i915/kms_psr.c
index 0e8d7f4f0..6c89de45d 100644
--- a/tests/i915/kms_psr.c
+++ b/tests/i915/kms_psr.c
@@ -22,6 +22,11 @@
  *
  */
 
+/**
+ * TEST: Tests behaviour of PSR & PSR2
+ * Category: Display
+ */
+
 #include "igt.h"
 #include "igt_sysfs.h"
 #include "igt_psr.h"
@@ -300,6 +305,32 @@ 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
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: psr
+ * Mega feature: PSR
+ *
+ * SUBTEST: primary_page_flip
+ * Description: Check if psr is detecting page-flipping operations performed
+ *		on primary planes
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: psr
+ * Mega feature: PSR
+ *
+ * SUBTEST: sprite_plane_onoff
+ * Description: Check if psr is detecting the plane operations performed on
+ *		sprite planes
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: psr
+ * Mega feature: PSR
+ */
+
 static void run_test(data_t *data)
 {
 	uint32_t handle = data->fb_white.gem_handle;
diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
index e4783624f..e375f3ad2 100644
--- a/tests/kms_addfb_basic.c
+++ b/tests/kms_addfb_basic.c
@@ -25,6 +25,11 @@
  *
  */
 
+/**
+ * TEST: Sanity test for ioctls DRM_IOCTL_MODE_ADDFB2 & DRM_IOCTL_MODE_RMFB.
+ * Category: Display
+ */
+
 #include "igt.h"
 #include <unistd.h>
 #include <stdlib.h>
@@ -60,6 +65,35 @@ static int legacy_addfb(int fd, struct drm_mode_fb_cmd *arg)
 	return err;
 }
 
+/**
+ * SUBTEST: unused-handle
+ * Description: Test that addfb2 call fails correctly for unused handle
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: unused-pitches
+ * Description: Test that addfb2 call fails correctly for unused pitches
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: unused-offsets
+ * Description: Test that addfb2 call fails correctly for unused offset
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: unused-modifier
+ * Description: Test that addfb2 call fails correctly for unused modifier
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ */
 static void invalid_tests(int fd)
 {
 	struct drm_mode_fb_cmd2 f = {};
@@ -273,6 +307,30 @@ static void invalid_tests(int fd)
 	}
 }
 
+/**
+ * SUBTEST: no-handle
+ * Description: Test that addfb2 call fails correctly without handle
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic
+ * Description: Check if addfb2 call works with given handle
+ * Test category: functionality test
+ * Run type: BAT
+ * 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
+ * Test category: functionality test
+ * Run type: BAT
+ * 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 = {};
@@ -399,6 +457,42 @@ static void tiling_tests(int fd)
 	}
 }
 
+/**
+ * SUBTEST: size-max
+ * Description: Check if addfb2 call works with max size of buffer object
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: too-wide
+ * Description: Test that addfb2 call fails correctly with increased width of fb
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: too-high
+ * Description: Test that addfb2 call fails correctly with increased height of fb
+ * Test category: functionality test
+ * Run type: BAT
+ * 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
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: small-bo
+ * Description: Check if addfb2 call works for given height
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ */
 static void size_tests(int fd)
 {
 	struct drm_mode_fb_cmd2 f = {};
@@ -514,6 +608,21 @@ static void size_tests(int fd)
 	}
 }
 
+/**
+ * SUBTEST: addfb25-modifier-no-flag
+ * Description: Test that addfb2 call fails correctly for x-tiling with given modifier
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: addfb25-bad-modifier
+ * Description: Test that addfb2 call fails correctly for irrelevant modifier
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ */
 static void addfb25_tests(int fd)
 {
 	struct drm_mode_fb_cmd2 f = {};
@@ -700,6 +809,35 @@ static void addfb25_4tile(int fd)
 		gem_close(fd, gem_bo);
 }
 
+/**
+ * SUBTEST: invalid-get-prop-any
+ * Description: Test that get-properties ioctl call fails correctly for invalid object type
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: invalid-get-prop
+ * Description: Test that get-properties ioctl call fails correctly for fb mode object
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: invalid-set-prop-any
+ * Description: Test that set-properties ioctl call fails correctly for invalid object type
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: invalid-set-prop
+ * Description: Test that get-properties ioctl call fails correctly for fb mode object
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_gem_interop
+ * Mega feature: General Display Features
+ */
 static void prop_tests(int fd)
 {
 	struct drm_mode_fb_cmd2 f = {};
diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 7df6a6125..f7a6202cf 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -22,6 +22,11 @@
  *
  */
 
+/**
+ * TEST: Stress legacy cursor ioctl
+ * Category: Display
+ */
+
 #include <sched.h>
 #include <sys/poll.h>
 
@@ -536,6 +541,41 @@ enum basic_flip_cursor {
 
 #define BASIC_BUSY 0x1
 
+/**
+ * SUBTEST: basic-busy-flip-before-cursor-%s
+ * Description: Cursor test with %arg[1] mode
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @atomic:	atomic
+ * @legacy:	legacy
+ */
+
+/**
+ * SUBTEST: basic-flip-after-cursor-%s
+ * Description: Cursor test with %arg[1]
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: basic-flip-before-cursor-%s
+ * Description: Cursor test with %arg[1]
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: cursor
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @atomic:        atomic mode
+ * @legacy:        legacy mode
+ * @varying-size:  varying size
+ */
 static void basic_flip_cursor(igt_display_t *display,
 			      enum flip_test mode,
 			      enum basic_flip_cursor order,
diff --git a/tests/kms_flip.c b/tests/kms_flip.c
index e4c98b8ec..0adb356d6 100755
--- a/tests/kms_flip.c
+++ b/tests/kms_flip.c
@@ -21,6 +21,11 @@
  * IN THE SOFTWARE.
  */
 
+/**
+ * TEST: Tests for validating modeset, dpms and pageflips
+ * Category: Display
+ */
+
 #include "config.h"
 
 #include "igt.h"
@@ -1557,6 +1562,28 @@ 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-%s
+ * Description: Basic test to valide %arg[1]
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ *
+ * arg[1]:
+ *
+ * @dpms:         dpms
+ * @modeset:      modeset
+ * @wf_vblank:    wait for vblank
+ *
+ * SUBTEST: basic-plain-flip
+ * Description: Basic test for validating page flip
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: vblank
+ * Mega feature: General Display Features
+ */
+
 static void run_test(int duration, int flags)
 {
 	struct test_output o;
diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c
index f1508efba..7e35693cf 100644
--- a/tests/kms_force_connector_basic.c
+++ b/tests/kms_force_connector_basic.c
@@ -22,6 +22,11 @@
  *
  */
 
+/**
+ * TEST: Check the debugfs force connector/edid features work correctly
+ * Category: Display
+ */
+
 #include "igt.h"
 
 IGT_TEST_DESCRIPTION("Check the debugfs force connector/edid features work"
@@ -151,6 +156,14 @@ static void force_load_detect(int drm_fd, drmModeConnectorPtr connector, drmMode
 	}
 }
 
+/**
+ * SUBTEST: force-connector-state
+ * Description: Test to check the forced connector state
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ */
 static void force_connector_state(int drm_fd, drmModeConnectorPtr connector)
 {
 	igt_display_t display;
@@ -190,6 +203,14 @@ 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
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: force_connector
+ * Mega feature: General Display Features
+ */
 static void force_edid(int drm_fd, drmModeConnectorPtr connector)
 {
 	drmModeConnector *temp;
@@ -231,6 +252,14 @@ static void force_edid(int drm_fd, drmModeConnectorPtr connector)
 
 }
 
+/**
+ * SUBTEST: prune-stale-modes
+ * Description: Tests pruning of stale modes
+ * Test category: functionality test
+ * Run type: BAT
+ * 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_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
index 65afc9f60..84c73fd7f 100644
--- a/tests/kms_pipe_crc_basic.c
+++ b/tests/kms_pipe_crc_basic.c
@@ -22,6 +22,11 @@
  *
  */
 
+/**
+ * TEST: Tests behaviour of CRC
+ * Category: Display
+ */
+
 #include "igt.h"
 #include "igt_sysfs.h"
 #include <errno.h>
@@ -80,6 +85,50 @@ enum {
 	TEST_HANG = 1 << 3,
 };
 
+/**
+ * SUBTEST: read-crc
+ * Description: Test for pipe CRC reads
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: read-crc-frame-sequence
+ * Description: Tests the pipe CRC read and ensure frame sequence
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-crc
+ * Description: Test for O_NONBLOCK CRC reads
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: nonblocking-crc-frame-sequence
+ * Description: Test for O_NONBLOCK CRC reads and ensure frame sequence
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: suspend-read-crc
+ * Description: Suspend test for pipe CRC reads
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ *
+ * SUBTEST: hang-read-crc
+ * Description: Hang test for pipe CRC read
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ */
+
 static void test_read_crc(data_t *data, enum pipe pipe,
 			  igt_output_t *output, unsigned flags)
 {
@@ -177,6 +226,15 @@ static void test_read_crc(data_t *data, enum pipe pipe,
 	igt_display_commit(display);
 }
 
+/**
+ * SUBTEST: compare-crc-sanitycheck
+ * Description: Basic sanity check for CRC mismatches
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: crc
+ * Mega feature: General Display Features
+ */
+
 /*
  * CRC-sanity test, to make sure there would be no CRC mismatches
  *
diff --git a/tests/kms_prop_blob.c b/tests/kms_prop_blob.c
index 96aa6d8d6..6a5a5f410 100644
--- a/tests/kms_prop_blob.c
+++ b/tests/kms_prop_blob.c
@@ -25,6 +25,10 @@
  *   Daniel Stone <daniels@collabora.com>
  */
 
+/**
+ * TEST: Tests behaviour of mass-data 'blob' properties
+ * Category: Display
+ */
 #include "igt.h"
 #include <errno.h>
 #include <stdbool.h>
@@ -238,6 +242,14 @@ test_core(int fd)
 	igt_assert_eq(validate_prop(fd, 0), ENOENT);
 }
 
+/**
+ * SUBTEST: basic
+ * Description: Test to ensure property support exists
+ * Test category: functionality test
+ * Run type: BAT
+ * Functionality: kms_core
+ * Mega feature: General Display Features
+ */
 static void
 test_basic(int fd)
 {
-- 
2.40.0



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests
  2023-05-05 10:31 [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests Bhanuprakash Modem
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT Bhanuprakash Modem
@ 2023-05-05 10:31 ` Bhanuprakash Modem
  2023-05-07  8:00   ` Mauro Carvalho Chehab
  2023-05-05 13:08 ` [igt-dev] ✓ Fi.CI.BAT: success for Add testplan support for kms tests (rev2) Patchwork
  2023-05-06  2:55 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  3 siblings, 1 reply; 7+ messages in thread
From: Bhanuprakash Modem @ 2023-05-05 10:31 UTC (permalink / raw)
  To: igt-dev, mchehab

Add testplan support for kms tests.
The documentation for kms tests will be like:

	/**
	 * TEST: Test foo.
	 * Category: Display
	 *
	 * SUBTEST: bar
	 * Description: bar description
	 * Test category: functionality test
	 * Run type: BAT
	 * Functionality: dp
	 * Mega feature: DP 2.0
	 */

V2: - Empty 'extra_args' to avoid failures for missing docs
    - Use wildcards instead of adding full list of files

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 docs/testplan/meson.build  |  6 ++++--
 tests/kms_test_config.json | 36 ++++++++++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+), 2 deletions(-)
 create mode 100644 tests/kms_test_config.json

diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
index e36713960..b65ee964d 100644
--- a/docs/testplan/meson.build
+++ b/docs/testplan/meson.build
@@ -7,6 +7,7 @@ rst2pdf = find_program('rst2pdf', required: false)
 stylesheet = join_paths(meson.current_source_dir(), 'testplan.css')
 
 xe_test_config = join_paths(source_root, 'tests', 'xe', 'xe_test_config.json')
+kms_test_config = join_paths(source_root, 'tests', 'kms_test_config.json')
 
 check_testlist = []
 if build_tests
@@ -22,8 +23,9 @@ else
 	doc_dependencies = []
 endif
 
-test_dict = { 'xe_tests':
-		{ 'input': xe_test_config, 'extra_args': check_testlist }
+test_dict = {
+	      'xe_tests': { 'input': xe_test_config, 'extra_args': check_testlist },
+	      'kms_tests': { 'input': kms_test_config, 'extra_args': [] }
 	    }
 
 foreach testplan, fields: test_dict
diff --git a/tests/kms_test_config.json b/tests/kms_test_config.json
new file mode 100644
index 000000000..d2d6357d1
--- /dev/null
+++ b/tests/kms_test_config.json
@@ -0,0 +1,36 @@
+{
+    "description": "JSON file to be used to parse KMS documentation",
+    "files": [ "chamelium/kms_*.c", "i915/kms_*.c", "kms_*.c" ],
+    "fields": {
+        "Category": {
+            "_properties_": {
+                "description": "Contains the major group for the tested functionality 'Display'"
+            }
+        },
+        "Mega feature": {
+            "_properties_": {
+                "description": "Contains the mega feature for end to end use case, e.g. the 'PSR' feature."
+            },
+            "Functionality": {
+                "_properties_": {
+                    "description": "Groups tests on buckets containg more detailed functionality"
+                }
+            }
+        },
+        "Run type": {
+            "_properties_": {
+                "description": "Defines what category of testlist it belongs"
+            }
+        },
+        "Test category": {
+            "_properties_": {
+                "description": "Defines the test category. Usually used at subtest level."
+            }
+        },
+        "Description" : {
+            "_properties_": {
+                "description": "Provides a description for the test/subtest."
+            }
+        }
+    }
+}
-- 
2.40.0



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for Add testplan support for kms tests (rev2)
  2023-05-05 10:31 [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests Bhanuprakash Modem
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT Bhanuprakash Modem
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests Bhanuprakash Modem
@ 2023-05-05 13:08 ` Patchwork
  2023-05-06  2:55 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  3 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2023-05-05 13:08 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 4349 bytes --]

== Series Details ==

Series: Add testplan support for kms tests (rev2)
URL   : https://patchwork.freedesktop.org/series/117274/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13112 -> IGTPW_8921
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/index.html

Participating hosts (40 -> 39)
------------------------------

  Missing    (1): fi-snb-2520m 

Known issues
------------

  Here are the changes found in IGTPW_8921 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_suspend@basic-s3@smem:
    - bat-rpls-1:         [PASS][1] -> [ABORT][2] ([i915#6687] / [i915#7978] / [i915#8407])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html

  * igt@i915_suspend@basic-s3-without-i915:
    - bat-atsm-1:         NOTRUN -> [SKIP][3] ([i915#6645])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/bat-atsm-1/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_chamelium_hpd@common-hpd-after-suspend:
    - bat-atsm-1:         NOTRUN -> [SKIP][4] ([i915#6078])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/bat-atsm-1/igt@kms_chamelium_hpd@common-hpd-after-suspend.html

  * igt@kms_pipe_crc_basic@suspend-read-crc:
    - bat-atsm-1:         NOTRUN -> [SKIP][5] ([i915#1836])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/bat-atsm-1/igt@kms_pipe_crc_basic@suspend-read-crc.html

  
#### Possible fixes ####

  * igt@gem_exec_fence@basic-await@bcs0:
    - bat-rplp-1:         [FAIL][6] -> [PASS][7]
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/bat-rplp-1/igt@gem_exec_fence@basic-await@bcs0.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/bat-rplp-1/igt@gem_exec_fence@basic-await@bcs0.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-kbl-soraka:      [DMESG-FAIL][8] ([i915#5334] / [i915#7872]) -> [PASS][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/fi-kbl-soraka/igt@i915_selftest@live@gt_heartbeat.html
    - fi-kbl-guc:         [DMESG-FAIL][10] ([i915#5334] / [i915#7872]) -> [PASS][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/fi-kbl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/fi-kbl-guc/igt@i915_selftest@live@gt_heartbeat.html

  * igt@i915_selftest@live@hangcheck:
    - fi-hsw-4770:        [DMESG-WARN][12] -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
  [i915#7872]: https://gitlab.freedesktop.org/drm/intel/issues/7872
  [i915#7920]: https://gitlab.freedesktop.org/drm/intel/issues/7920
  [i915#7978]: https://gitlab.freedesktop.org/drm/intel/issues/7978
  [i915#8407]: https://gitlab.freedesktop.org/drm/intel/issues/8407


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7279 -> IGTPW_8921

  CI-20190529: 20190529
  CI_DRM_13112: 90ecd907cd4b9c1fe1275a9da536e79e10ca85ec @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8921: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/index.html
  IGT_7279: 3c22c8491f753d513892c479e9f4ab2f1336d5bb @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/index.html

[-- Attachment #2: Type: text/html, Size: 5140 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [igt-dev] ✗ Fi.CI.IGT: failure for Add testplan support for kms tests (rev2)
  2023-05-05 10:31 [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests Bhanuprakash Modem
                   ` (2 preceding siblings ...)
  2023-05-05 13:08 ` [igt-dev] ✓ Fi.CI.BAT: success for Add testplan support for kms tests (rev2) Patchwork
@ 2023-05-06  2:55 ` Patchwork
  3 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2023-05-06  2:55 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 15139 bytes --]

== Series Details ==

Series: Add testplan support for kms tests (rev2)
URL   : https://patchwork.freedesktop.org/series/117274/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13112_full -> IGTPW_8921_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_8921_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_8921_full, please notify your bug team 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_8921/index.html

Participating hosts (7 -> 7)
------------------------------

  No changes in participating hosts

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_8921_full:

### IGT changes ###

#### Possible regressions ####

  * igt@gem_softpin@softpin:
    - shard-apl:          [PASS][1] -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-apl3/igt@gem_softpin@softpin.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl7/igt@gem_softpin@softpin.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@kms_dsc@dsc-with-output-formats:
    - {shard-rkl}:        NOTRUN -> [SKIP][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-rkl-2/igt@kms_dsc@dsc-with-output-formats.html
    - {shard-tglu}:       NOTRUN -> [SKIP][4]
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-tglu-8/igt@kms_dsc@dsc-with-output-formats.html

  
Known issues
------------

  Here are the changes found in IGTPW_8921_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_exec_capture@capture-invisible@smem0:
    - shard-apl:          NOTRUN -> [SKIP][5] ([fdo#109271] / [i915#6334])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl6/igt@gem_exec_capture@capture-invisible@smem0.html

  * igt@gem_lmem_swapping@heavy-verify-multi-ccs:
    - shard-apl:          NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#4613])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl4/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html

  * igt@gem_ppgtt@blt-vs-render-ctxn:
    - shard-snb:          [PASS][7] -> [INCOMPLETE][8] ([i915#8295])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-snb6/igt@gem_ppgtt@blt-vs-render-ctxn.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-snb1/igt@gem_ppgtt@blt-vs-render-ctxn.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][9] ([fdo#109271] / [i915#3886]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl7/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][10] ([fdo#109271]) +28 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl4/igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [PASS][11] -> [FAIL][12] ([i915#2346])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b-vga-1:
    - shard-snb:          NOTRUN -> [SKIP][13] ([fdo#109271]) +90 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-snb5/igt@kms_plane_scaling@planes-downscale-factor-0-5-unity-scaling@pipe-b-vga-1.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-apl:          NOTRUN -> [SKIP][14] ([fdo#109271] / [i915#658])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl3/igt@kms_psr2_su@page_flip-nv12.html

  
#### Possible fixes ####

  * igt@gem_ctx_freq@sysfs:
    - {shard-dg1}:        [FAIL][15] ([i915#6786]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-dg1-16/igt@gem_ctx_freq@sysfs.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-dg1-15/igt@gem_ctx_freq@sysfs.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-glk:          [FAIL][17] ([i915#2846]) -> [PASS][18]
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-glk2/igt@gem_exec_fair@basic-deadline.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-glk8/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [FAIL][19] ([i915#2842]) -> [PASS][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-glk4/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-glk7/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-apl:          [ABORT][21] ([i915#5566]) -> [PASS][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-apl4/igt@gen9_exec_parse@allowed-single.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl7/igt@gen9_exec_parse@allowed-single.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [SKIP][23] ([fdo#109271]) -> [PASS][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-apl7/igt@i915_pm_dc@dc9-dpms.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl7/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rc6_residency@rc6-idle@rcs0:
    - {shard-dg1}:        [FAIL][25] ([i915#3591]) -> [PASS][26]
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-dg1-15/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-dg1-14/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html

  * igt@i915_pm_rpm@dpms-mode-unset-lpsp:
    - {shard-rkl}:        [SKIP][27] ([i915#1397]) -> [PASS][28] +4 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-rkl-2/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-rkl-7/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html

  * igt@i915_selftest@live@sanitycheck:
    - shard-snb:          [ABORT][29] ([i915#4528]) -> [PASS][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-snb2/igt@i915_selftest@live@sanitycheck.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-snb4/igt@i915_selftest@live@sanitycheck.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [FAIL][31] ([i915#2346]) -> [PASS][32]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-glk7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - {shard-tglu}:       [FAIL][33] ([i915#4767]) -> [PASS][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-tglu-10/igt@kms_fbcon_fbt@fbc-suspend.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-tglu-7/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1:
    - shard-glk:          [FAIL][35] ([i915#79]) -> [PASS][36]
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-glk4/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a1.html

  * igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1:
    - shard-apl:          [FAIL][37] ([i915#1188]) -> [PASS][38]
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-apl1/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-apl3/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html

  * igt@kms_plane@pixel-format-source-clamping@pipe-a-planes:
    - shard-glk:          [DMESG-FAIL][39] ([i915#118]) -> [PASS][40]
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13112/shard-glk2/igt@kms_plane@pixel-format-source-clamping@pipe-a-planes.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/shard-glk9/igt@kms_plane@pixel-format-source-clamping@pipe-a-planes.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
  [i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
  [i915#2435]: https://gitlab.freedesktop.org/drm/intel/issues/2435
  [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#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [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#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [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#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3936]: https://gitlab.freedesktop.org/drm/intel/issues/3936
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6786]: https://gitlab.freedesktop.org/drm/intel/issues/6786
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#8253]: https://gitlab.freedesktop.org/drm/intel/issues/8253
  [i915#8295]: https://gitlab.freedesktop.org/drm/intel/issues/8295
  [i915#8399]: https://gitlab.freedesktop.org/drm/intel/issues/8399
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7279 -> IGTPW_8921
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_13112: 90ecd907cd4b9c1fe1275a9da536e79e10ca85ec @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8921: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8921/index.html
  IGT_7279: 3c22c8491f753d513892c479e9f4ab2f1336d5bb @ 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_8921/index.html

[-- Attachment #2: Type: text/html, Size: 12570 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT Bhanuprakash Modem
@ 2023-05-07  7:58   ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 7+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-07  7:58 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

Em Fri,  5 May 2023 16:01:18 +0530
Bhanuprakash Modem <bhanuprakash.modem@intel.com> escreveu:

> Add documentation for kms tests those are in XE BAT which is used
> by IGT test plan documentation.
> 
> Tests included in this patch:
> - tests/chamelium/kms_chamelium_edid.c
> - tests/chamelium/kms_chamelium_frames.c
> - tests/chamelium/kms_chamelium_hpd.c
> - tests/i915/kms_psr.c
> - tests/kms_addfb_basic.c
> - tests/kms_cursor_legacy.c
> - tests/kms_flip.c
> - tests/kms_force_connector_basic.c
> - tests/kms_pipe_crc_basic.c
> - tests/kms_prop_blob.c
> 
> V2: - Fine tune documentation (Mauro)
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

Reviewed-by: Mauro Carvalho Chehab <mchehab@kernel.org>

> ---
>  tests/chamelium/kms_chamelium_edid.c   |  27 +++++
>  tests/chamelium/kms_chamelium_frames.c |  22 ++++
>  tests/chamelium/kms_chamelium_hpd.c    |  39 +++++++
>  tests/i915/kms_psr.c                   |  31 ++++++
>  tests/kms_addfb_basic.c                | 138 +++++++++++++++++++++++++
>  tests/kms_cursor_legacy.c              |  40 +++++++
>  tests/kms_flip.c                       |  27 +++++
>  tests/kms_force_connector_basic.c      |  29 ++++++
>  tests/kms_pipe_crc_basic.c             |  58 +++++++++++
>  tests/kms_prop_blob.c                  |  12 +++
>  10 files changed, 423 insertions(+)
> 
> diff --git a/tests/chamelium/kms_chamelium_edid.c b/tests/chamelium/kms_chamelium_edid.c
> index 7e7262ed3..4a52e6922 100644
> --- a/tests/chamelium/kms_chamelium_edid.c
> +++ b/tests/chamelium/kms_chamelium_edid.c
> @@ -24,6 +24,11 @@
>   *    Lyude Paul <lyude@redhat.com>
>   */
>  
> +/**
> + * TEST: Tests behaviour of edid & timings using chamelium
> + * Category: Display
> + */
> +
>  #include <fcntl.h>
>  #include <stdint.h>
>  #include <string.h>
> @@ -139,6 +144,28 @@ 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
> + * Run type: BAT
> + * Functionality: dp
> + * Mega feature: DP
> + *
> + * SUBTEST: hdmi-edid-read
> + * Description: Make sure the EDID exposed by KMS is the same as the screen's
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: hdmi
> + * Mega feature: HDMI
> + *
> + * SUBTEST: vga-edid-read
> + * Description: Make sure the EDID exposed by KMS is the same as the screen's
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: vga
> + * Mega feature: VGA
> + */
>  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,
> diff --git a/tests/chamelium/kms_chamelium_frames.c b/tests/chamelium/kms_chamelium_frames.c
> index 008bc34b6..22a7ba936 100644
> --- a/tests/chamelium/kms_chamelium_frames.c
> +++ b/tests/chamelium/kms_chamelium_frames.c
> @@ -24,6 +24,11 @@
>   *    Lyude Paul <lyude@redhat.com>
>   */
>  
> +/**
> + * TEST: Tests to capture frames using chamelium
> + * Category: Display
> + */
> +
>  #include "igt_eld.h"
>  #include "igt_infoframe.h"
>  #include "kms_chamelium_helper.h"
> @@ -534,6 +539,23 @@ 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
> + * Run type: BAT
> + * Functionality: dp
> + * Mega feature: DP
> + *
> + * 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
> + * Run type: BAT
> + * Functionality: hdmi
> + * Mega feature: HDMI
> + */
>  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";
> diff --git a/tests/chamelium/kms_chamelium_hpd.c b/tests/chamelium/kms_chamelium_hpd.c
> index 2b17ce29d..efd40ba54 100644
> --- a/tests/chamelium/kms_chamelium_hpd.c
> +++ b/tests/chamelium/kms_chamelium_hpd.c
> @@ -24,6 +24,11 @@
>   *    Lyude Paul <lyude@redhat.com>
>   */
>  
> +/**
> + * TEST: Tests behaviour of hpd using chamelium
> + * Category: Display
> + */
> +
>  #include "kms_chamelium_helper.h"
>  
>  #define HPD_STORM_PULSE_INTERVAL_DP 100 /* ms */
> @@ -104,6 +109,31 @@ 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
> + * Run type: BAT
> + * Functionality: dp_hotplug
> + * Mega feature: DP
> + *
> + * SUBTEST: hdmi-hpd-fast
> + * Description: Check that we get uevents and updated connector status on
> + * 		hotplug and unplug
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: hdmi_hotplug
> + * Mega feature: HDMI
> + *
> + * SUBTEST: vga-hpd-fast
> + * Description: Check that we get uevents and updated connector status on
> + * 		hotplug and unplug
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: vga_hotplug
> + * Mega feature: VGA
> + */
>  static const char test_basic_hotplug_desc[] =
>  	"Check that we get uevents and updated connector status on "
>  	"hotplug and unplug";
> @@ -238,6 +268,15 @@ 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
> + * Run type: BAT
> + * Functionality: hotplug
> + * Mega feature: General Display Features
> + */
>  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";
> diff --git a/tests/i915/kms_psr.c b/tests/i915/kms_psr.c
> index 0e8d7f4f0..6c89de45d 100644
> --- a/tests/i915/kms_psr.c
> +++ b/tests/i915/kms_psr.c
> @@ -22,6 +22,11 @@
>   *
>   */
>  
> +/**
> + * TEST: Tests behaviour of PSR & PSR2
> + * Category: Display
> + */
> +
>  #include "igt.h"
>  #include "igt_sysfs.h"
>  #include "igt_psr.h"
> @@ -300,6 +305,32 @@ 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
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: psr
> + * Mega feature: PSR
> + *
> + * SUBTEST: primary_page_flip
> + * Description: Check if psr is detecting page-flipping operations performed
> + *		on primary planes
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: psr
> + * Mega feature: PSR
> + *
> + * SUBTEST: sprite_plane_onoff
> + * Description: Check if psr is detecting the plane operations performed on
> + *		sprite planes
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: psr
> + * Mega feature: PSR
> + */
> +
>  static void run_test(data_t *data)
>  {
>  	uint32_t handle = data->fb_white.gem_handle;
> diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
> index e4783624f..e375f3ad2 100644
> --- a/tests/kms_addfb_basic.c
> +++ b/tests/kms_addfb_basic.c
> @@ -25,6 +25,11 @@
>   *
>   */
>  
> +/**
> + * TEST: Sanity test for ioctls DRM_IOCTL_MODE_ADDFB2 & DRM_IOCTL_MODE_RMFB.
> + * Category: Display
> + */
> +
>  #include "igt.h"
>  #include <unistd.h>
>  #include <stdlib.h>
> @@ -60,6 +65,35 @@ static int legacy_addfb(int fd, struct drm_mode_fb_cmd *arg)
>  	return err;
>  }
>  
> +/**
> + * SUBTEST: unused-handle
> + * Description: Test that addfb2 call fails correctly for unused handle
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: unused-pitches
> + * Description: Test that addfb2 call fails correctly for unused pitches
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: unused-offsets
> + * Description: Test that addfb2 call fails correctly for unused offset
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: unused-modifier
> + * Description: Test that addfb2 call fails correctly for unused modifier
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + */
>  static void invalid_tests(int fd)
>  {
>  	struct drm_mode_fb_cmd2 f = {};
> @@ -273,6 +307,30 @@ static void invalid_tests(int fd)
>  	}
>  }
>  
> +/**
> + * SUBTEST: no-handle
> + * Description: Test that addfb2 call fails correctly without handle
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: basic
> + * Description: Check if addfb2 call works with given handle
> + * Test category: functionality test
> + * Run type: BAT
> + * 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
> + * Test category: functionality test
> + * Run type: BAT
> + * 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 = {};
> @@ -399,6 +457,42 @@ static void tiling_tests(int fd)
>  	}
>  }
>  
> +/**
> + * SUBTEST: size-max
> + * Description: Check if addfb2 call works with max size of buffer object
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: too-wide
> + * Description: Test that addfb2 call fails correctly with increased width of fb
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: too-high
> + * Description: Test that addfb2 call fails correctly with increased height of fb
> + * Test category: functionality test
> + * Run type: BAT
> + * 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
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: small-bo
> + * Description: Check if addfb2 call works for given height
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + */
>  static void size_tests(int fd)
>  {
>  	struct drm_mode_fb_cmd2 f = {};
> @@ -514,6 +608,21 @@ static void size_tests(int fd)
>  	}
>  }
>  
> +/**
> + * SUBTEST: addfb25-modifier-no-flag
> + * Description: Test that addfb2 call fails correctly for x-tiling with given modifier
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: addfb25-bad-modifier
> + * Description: Test that addfb2 call fails correctly for irrelevant modifier
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + */
>  static void addfb25_tests(int fd)
>  {
>  	struct drm_mode_fb_cmd2 f = {};
> @@ -700,6 +809,35 @@ static void addfb25_4tile(int fd)
>  		gem_close(fd, gem_bo);
>  }
>  
> +/**
> + * SUBTEST: invalid-get-prop-any
> + * Description: Test that get-properties ioctl call fails correctly for invalid object type
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: invalid-get-prop
> + * Description: Test that get-properties ioctl call fails correctly for fb mode object
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: invalid-set-prop-any
> + * Description: Test that set-properties ioctl call fails correctly for invalid object type
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: invalid-set-prop
> + * Description: Test that get-properties ioctl call fails correctly for fb mode object
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_gem_interop
> + * Mega feature: General Display Features
> + */
>  static void prop_tests(int fd)
>  {
>  	struct drm_mode_fb_cmd2 f = {};
> diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
> index 7df6a6125..f7a6202cf 100644
> --- a/tests/kms_cursor_legacy.c
> +++ b/tests/kms_cursor_legacy.c
> @@ -22,6 +22,11 @@
>   *
>   */
>  
> +/**
> + * TEST: Stress legacy cursor ioctl
> + * Category: Display
> + */
> +
>  #include <sched.h>
>  #include <sys/poll.h>
>  
> @@ -536,6 +541,41 @@ enum basic_flip_cursor {
>  
>  #define BASIC_BUSY 0x1
>  
> +/**
> + * SUBTEST: basic-busy-flip-before-cursor-%s
> + * Description: Cursor test with %arg[1] mode
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: cursor
> + * Mega feature: General Display Features
> + *
> + * arg[1]:
> + *
> + * @atomic:	atomic
> + * @legacy:	legacy
> + */
> +
> +/**
> + * SUBTEST: basic-flip-after-cursor-%s
> + * Description: Cursor test with %arg[1]
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: cursor
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: basic-flip-before-cursor-%s
> + * Description: Cursor test with %arg[1]
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: cursor
> + * Mega feature: General Display Features
> + *
> + * arg[1]:
> + *
> + * @atomic:        atomic mode
> + * @legacy:        legacy mode
> + * @varying-size:  varying size
> + */
>  static void basic_flip_cursor(igt_display_t *display,
>  			      enum flip_test mode,
>  			      enum basic_flip_cursor order,
> diff --git a/tests/kms_flip.c b/tests/kms_flip.c
> index e4c98b8ec..0adb356d6 100755
> --- a/tests/kms_flip.c
> +++ b/tests/kms_flip.c
> @@ -21,6 +21,11 @@
>   * IN THE SOFTWARE.
>   */
>  
> +/**
> + * TEST: Tests for validating modeset, dpms and pageflips
> + * Category: Display
> + */
> +
>  #include "config.h"
>  
>  #include "igt.h"
> @@ -1557,6 +1562,28 @@ 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-%s
> + * Description: Basic test to valide %arg[1]
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: vblank
> + * Mega feature: General Display Features
> + *
> + * arg[1]:
> + *
> + * @dpms:         dpms
> + * @modeset:      modeset
> + * @wf_vblank:    wait for vblank
> + *
> + * SUBTEST: basic-plain-flip
> + * Description: Basic test for validating page flip
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: vblank
> + * Mega feature: General Display Features
> + */
> +
>  static void run_test(int duration, int flags)
>  {
>  	struct test_output o;
> diff --git a/tests/kms_force_connector_basic.c b/tests/kms_force_connector_basic.c
> index f1508efba..7e35693cf 100644
> --- a/tests/kms_force_connector_basic.c
> +++ b/tests/kms_force_connector_basic.c
> @@ -22,6 +22,11 @@
>   *
>   */
>  
> +/**
> + * TEST: Check the debugfs force connector/edid features work correctly
> + * Category: Display
> + */
> +
>  #include "igt.h"
>  
>  IGT_TEST_DESCRIPTION("Check the debugfs force connector/edid features work"
> @@ -151,6 +156,14 @@ static void force_load_detect(int drm_fd, drmModeConnectorPtr connector, drmMode
>  	}
>  }
>  
> +/**
> + * SUBTEST: force-connector-state
> + * Description: Test to check the forced connector state
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: force_connector
> + * Mega feature: General Display Features
> + */
>  static void force_connector_state(int drm_fd, drmModeConnectorPtr connector)
>  {
>  	igt_display_t display;
> @@ -190,6 +203,14 @@ 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
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: force_connector
> + * Mega feature: General Display Features
> + */
>  static void force_edid(int drm_fd, drmModeConnectorPtr connector)
>  {
>  	drmModeConnector *temp;
> @@ -231,6 +252,14 @@ static void force_edid(int drm_fd, drmModeConnectorPtr connector)
>  
>  }
>  
> +/**
> + * SUBTEST: prune-stale-modes
> + * Description: Tests pruning of stale modes
> + * Test category: functionality test
> + * Run type: BAT
> + * 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_pipe_crc_basic.c b/tests/kms_pipe_crc_basic.c
> index 65afc9f60..84c73fd7f 100644
> --- a/tests/kms_pipe_crc_basic.c
> +++ b/tests/kms_pipe_crc_basic.c
> @@ -22,6 +22,11 @@
>   *
>   */
>  
> +/**
> + * TEST: Tests behaviour of CRC
> + * Category: Display
> + */
> +
>  #include "igt.h"
>  #include "igt_sysfs.h"
>  #include <errno.h>
> @@ -80,6 +85,50 @@ enum {
>  	TEST_HANG = 1 << 3,
>  };
>  
> +/**
> + * SUBTEST: read-crc
> + * Description: Test for pipe CRC reads
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: read-crc-frame-sequence
> + * Description: Tests the pipe CRC read and ensure frame sequence
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: nonblocking-crc
> + * Description: Test for O_NONBLOCK CRC reads
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: nonblocking-crc-frame-sequence
> + * Description: Test for O_NONBLOCK CRC reads and ensure frame sequence
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: suspend-read-crc
> + * Description: Suspend test for pipe CRC reads
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + *
> + * SUBTEST: hang-read-crc
> + * Description: Hang test for pipe CRC read
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + */
> +
>  static void test_read_crc(data_t *data, enum pipe pipe,
>  			  igt_output_t *output, unsigned flags)
>  {
> @@ -177,6 +226,15 @@ static void test_read_crc(data_t *data, enum pipe pipe,
>  	igt_display_commit(display);
>  }
>  
> +/**
> + * SUBTEST: compare-crc-sanitycheck
> + * Description: Basic sanity check for CRC mismatches
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: crc
> + * Mega feature: General Display Features
> + */
> +
>  /*
>   * CRC-sanity test, to make sure there would be no CRC mismatches
>   *
> diff --git a/tests/kms_prop_blob.c b/tests/kms_prop_blob.c
> index 96aa6d8d6..6a5a5f410 100644
> --- a/tests/kms_prop_blob.c
> +++ b/tests/kms_prop_blob.c
> @@ -25,6 +25,10 @@
>   *   Daniel Stone <daniels@collabora.com>
>   */
>  
> +/**
> + * TEST: Tests behaviour of mass-data 'blob' properties
> + * Category: Display
> + */
>  #include "igt.h"
>  #include <errno.h>
>  #include <stdbool.h>
> @@ -238,6 +242,14 @@ test_core(int fd)
>  	igt_assert_eq(validate_prop(fd, 0), ENOENT);
>  }
>  
> +/**
> + * SUBTEST: basic
> + * Description: Test to ensure property support exists
> + * Test category: functionality test
> + * Run type: BAT
> + * Functionality: kms_core
> + * Mega feature: General Display Features
> + */
>  static void
>  test_basic(int fd)
>  {


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests
  2023-05-05 10:31 ` [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests Bhanuprakash Modem
@ 2023-05-07  8:00   ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 7+ messages in thread
From: Mauro Carvalho Chehab @ 2023-05-07  8:00 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

Em Fri,  5 May 2023 16:01:19 +0530
Bhanuprakash Modem <bhanuprakash.modem@intel.com> escreveu:

> Add testplan support for kms tests.
> The documentation for kms tests will be like:
> 
> 	/**
> 	 * TEST: Test foo.
> 	 * Category: Display
> 	 *
> 	 * SUBTEST: bar
> 	 * Description: bar description
> 	 * Test category: functionality test
> 	 * Run type: BAT
> 	 * Functionality: dp
> 	 * Mega feature: DP 2.0
> 	 */
> 
> V2: - Empty 'extra_args' to avoid failures for missing docs
>     - Use wildcards instead of adding full list of files
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

Reviewed-by: Mauro Carvalho Chehab <mchehab@kernel.org>

> ---
>  docs/testplan/meson.build  |  6 ++++--
>  tests/kms_test_config.json | 36 ++++++++++++++++++++++++++++++++++++
>  2 files changed, 40 insertions(+), 2 deletions(-)
>  create mode 100644 tests/kms_test_config.json
> 
> diff --git a/docs/testplan/meson.build b/docs/testplan/meson.build
> index e36713960..b65ee964d 100644
> --- a/docs/testplan/meson.build
> +++ b/docs/testplan/meson.build
> @@ -7,6 +7,7 @@ rst2pdf = find_program('rst2pdf', required: false)
>  stylesheet = join_paths(meson.current_source_dir(), 'testplan.css')
>  
>  xe_test_config = join_paths(source_root, 'tests', 'xe', 'xe_test_config.json')
> +kms_test_config = join_paths(source_root, 'tests', 'kms_test_config.json')
>  
>  check_testlist = []
>  if build_tests
> @@ -22,8 +23,9 @@ else
>  	doc_dependencies = []
>  endif
>  
> -test_dict = { 'xe_tests':
> -		{ 'input': xe_test_config, 'extra_args': check_testlist }
> +test_dict = {
> +	      'xe_tests': { 'input': xe_test_config, 'extra_args': check_testlist },
> +	      'kms_tests': { 'input': kms_test_config, 'extra_args': [] }
>  	    }
>  
>  foreach testplan, fields: test_dict
> diff --git a/tests/kms_test_config.json b/tests/kms_test_config.json
> new file mode 100644
> index 000000000..d2d6357d1
> --- /dev/null
> +++ b/tests/kms_test_config.json
> @@ -0,0 +1,36 @@
> +{
> +    "description": "JSON file to be used to parse KMS documentation",
> +    "files": [ "chamelium/kms_*.c", "i915/kms_*.c", "kms_*.c" ],
> +    "fields": {
> +        "Category": {
> +            "_properties_": {
> +                "description": "Contains the major group for the tested functionality 'Display'"
> +            }
> +        },
> +        "Mega feature": {
> +            "_properties_": {
> +                "description": "Contains the mega feature for end to end use case, e.g. the 'PSR' feature."
> +            },
> +            "Functionality": {
> +                "_properties_": {
> +                    "description": "Groups tests on buckets containg more detailed functionality"
> +                }
> +            }
> +        },
> +        "Run type": {
> +            "_properties_": {
> +                "description": "Defines what category of testlist it belongs"
> +            }
> +        },
> +        "Test category": {
> +            "_properties_": {
> +                "description": "Defines the test category. Usually used at subtest level."
> +            }
> +        },
> +        "Description" : {
> +            "_properties_": {
> +                "description": "Provides a description for the test/subtest."
> +            }
> +        }
> +    }
> +}


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-05-07  8:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-05 10:31 [igt-dev] [i-g-t V2 0/2] Add testplan support for kms tests Bhanuprakash Modem
2023-05-05 10:31 ` [igt-dev] [i-g-t V2 1/2] tests/kms: Document kms subtests for XE BAT Bhanuprakash Modem
2023-05-07  7:58   ` Mauro Carvalho Chehab
2023-05-05 10:31 ` [igt-dev] [i-g-t V2 2/2] testplan: Add testplan support for kms tests Bhanuprakash Modem
2023-05-07  8:00   ` Mauro Carvalho Chehab
2023-05-05 13:08 ` [igt-dev] ✓ Fi.CI.BAT: success for Add testplan support for kms tests (rev2) Patchwork
2023-05-06  2:55 ` [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.