Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Mohammed Thasleem <mohammed.thasleem@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: imre.deak@intel.com, Mohammed Thasleem <mohammed.thasleem@intel.com>
Subject: [PATCH i-g-t v3] tests/intel/kms_pm_dc: Remove PKGC10 dependency to validate DC6
Date: Sun, 30 Mar 2025 16:15:44 +0530	[thread overview]
Message-ID: <20250330104544.41774-1-mohammed.thasleem@intel.com> (raw)
In-Reply-To: <20250217170809.175276-1-mohammed.thasleem@intel.com>

DC6 counter was removed MTL onwards, so pkc10 counter is used
to validated DC6 tests but with the new approach of kmd changes
created DC6 debugfs entry counter to validated DC6 tests and
removeing the existing PKGC10 code.

v2: Update debugfs message.
v3: Remove display version check. (Imre)
    Update commit subject and description.

Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/intel/kms_pm_dc.c | 76 +++++++++--------------------------------
 1 file changed, 17 insertions(+), 59 deletions(-)

diff --git a/tests/intel/kms_pm_dc.c b/tests/intel/kms_pm_dc.c
index 2491cd1f8..56488083d 100644
--- a/tests/intel/kms_pm_dc.c
+++ b/tests/intel/kms_pm_dc.c
@@ -285,7 +285,13 @@ static uint32_t read_dc_counter(uint32_t debugfs_fd, int dc_flag)
 		igt_assert_f(str, "DC5 counter is not available\n");
 	} else if (dc_flag & CHECK_DC6) {
 		str = strstr(buf, "DC5 -> DC6 count");
-		igt_assert_f(str, "DC6 counter is not available\n");
+		if (!str) {
+			str = strstr(buf, "DC5 -> DC6 allowed count");
+			igt_assert_f(str, "DC5 -> DC6 allowed count "
+					  "is not available\n");
+		} else {
+			igt_assert_f(str, "DC6 counter is not available\n");
+		}
 	} else if (dc_flag & CHECK_DC3CO) {
 		str = strstr(buf, "DC3CO count");
 		igt_assert_f(str, "DC3CO counter is not available\n");
@@ -376,6 +382,7 @@ static void check_dc3co_with_videoplayback_like_load(data_t *data)
 
 static void require_dc_counter(int debugfs_fd, int dc_flag)
 {
+	char *str;
 	char buf[4096];
 
 	igt_debugfs_simple_read(debugfs_fd, "i915_dmc_info",
@@ -391,8 +398,13 @@ static void require_dc_counter(int debugfs_fd, int dc_flag)
 			      "DC5 counter is not available\n");
 		break;
 	case CHECK_DC6:
-		igt_skip_on_f(!strstr(buf, "DC5 -> DC6 count"),
-			      "DC6 counter is not available\n");
+		str = strstr(buf, "DC5 -> DC6 count");
+		if (!str) {
+			str = strstr(buf, "DC5 -> DC6 allowed count");
+			igt_assert_f(str, "DC5 -> DC6 allowed count is not available\n");
+		} else {
+			igt_assert_f(str, "DC6 counter is not available\n");
+		}
 		break;
 	default:
 		igt_assert_f(0, "Unknown DC counter %d\n", dc_flag);
@@ -417,20 +429,6 @@ static void test_dc3co_vpb_simulation(data_t *data)
 	cleanup_dc3co_fbs(data);
 }
 
-static void psr_dpms(data_t *data, int mode)
-{
-	igt_output_t *output;
-
-	for_each_connected_output(&data->display, output) {
-		drmModeConnectorPtr connector = output->config.connector;
-
-		if (connector->connector_type == DRM_MODE_CONNECTOR_eDP)
-			continue;
-
-		kmstest_set_connector_dpms(data->drm_fd, connector, mode);
-	}
-}
-
 static void test_dc5_retention_flops(data_t *data, int dc_flag)
 {
 	uint32_t dc_counter_before_psr;
@@ -721,40 +719,6 @@ static void test_deep_pkgc_state(data_t *data)
 	igt_assert_f(pkgc_flag, "PKGC10 is not achieved.\n");
 }
 
-static void test_pkgc_state_dpms(data_t *data)
-{
-	unsigned int timeout_sec = 6;
-	unsigned int prev_value = 0, cur_value = 0;
-
-	prev_value = read_pkgc_counter(data->debugfs_root_fd);
-	setup_dc_dpms(data);
-	dpms_off(data);
-	igt_wait((cur_value = read_pkgc_counter(data->debugfs_root_fd)) > prev_value,
-		  timeout_sec * 1000, 100);
-	igt_assert_f(cur_value > prev_value, "PKGC10 is not achieved.\n");
-	dpms_on(data);
-	cleanup_dc_dpms(data);
-}
-
-static void test_pkgc_state_psr(data_t *data)
-{
-	unsigned int timeout_sec = 6;
-	unsigned int prev_value = 0, cur_value = 0;
-
-	prev_value = read_pkgc_counter(data->debugfs_root_fd);
-	setup_output(data);
-	setup_primary(data);
-	igt_require(!psr_disabled_check(data->debugfs_fd));
-	igt_assert(psr_wait_entry(data->debugfs_fd, data->op_psr_mode, NULL));
-	psr_dpms(data, DRM_MODE_DPMS_OFF);
-	igt_wait((cur_value = read_pkgc_counter(data->debugfs_root_fd)) > prev_value,
-		  timeout_sec * 1000, 100);
-	igt_assert_f(cur_value > prev_value, "PKGC10 is not achieved.\n");
-	psr_sink_error_check(data->debugfs_fd, data->op_psr_mode, data->output);
-	psr_dpms(data, DRM_MODE_DPMS_ON);
-	cleanup_dc_psr(data);
-}
-
 static void kms_poll_state_restore(int sig)
 {
 	int sysfs_fd;
@@ -818,10 +782,7 @@ igt_main
 		psr_enable(data.drm_fd, data.debugfs_fd, data.op_psr_mode, NULL);
 		igt_require_f(igt_pm_pc8_plus_residencies_enabled(data.msr_fd),
 			      "PC8+ residencies not supported\n");
-		if (intel_display_ver(data.devid) >= 14)
-			test_pkgc_state_psr(&data);
-		else
-			test_dc_state_psr(&data, CHECK_DC6);
+		test_dc_state_psr(&data, CHECK_DC6);
 	}
 
 	igt_describe("This test validates display engine entry to PKGC10 state "
@@ -866,10 +827,7 @@ igt_main
 	igt_subtest("dc6-dpms") {
 		igt_require_f(igt_pm_pc8_plus_residencies_enabled(data.msr_fd),
 			      "PC8+ residencies not supported\n");
-		if (intel_display_ver(data.devid) >= 14)
-			test_pkgc_state_dpms(&data);
-		else
-			test_dc_state_dpms(&data, CHECK_DC6);
+		test_dc_state_dpms(&data, CHECK_DC6);
 
 	}
 
-- 
2.34.1


  parent reply	other threads:[~2025-03-30 10:46 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-17 17:08 [PATCH i-g-t] tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 Mohammed Thasleem
2025-02-17 19:43 ` ✗ GitLab.Pipeline: warning for " Patchwork
2025-02-17 19:56 ` ✓ Xe.CI.BAT: success " Patchwork
2025-02-17 20:13 ` ✓ i915.CI.BAT: " Patchwork
2025-02-18  0:54 ` ✗ i915.CI.Full: failure " Patchwork
2025-02-18 12:14 ` ✗ Xe.CI.Full: " Patchwork
2025-03-12 21:04 ` [PATCH i-g-t v2] " Mohammed Thasleem
2025-03-25 16:26   ` Imre Deak
2025-03-13  3:59 ` ✓ Xe.CI.BAT: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev2) Patchwork
2025-03-13  4:22 ` ✗ i915.CI.BAT: failure " Patchwork
2025-03-14 11:50 ` ✗ Xe.CI.Full: " Patchwork
2025-03-30 10:28 ` [PATCH i-g-t v3] tests/intel/kms_pm_dc: Remove PKGC10 dependency to validate DC6 Mohammed Thasleem
2025-03-30 10:45 ` Mohammed Thasleem [this message]
2025-03-31 10:13   ` Imre Deak
2025-03-30 11:26 ` ✓ i915.CI.BAT: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev3) Patchwork
2025-03-30 11:33 ` ✓ Xe.CI.BAT: " Patchwork
2025-03-30 11:49 ` ✓ Xe.CI.BAT: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev4) Patchwork
2025-03-30 12:00 ` ✓ i915.CI.BAT: " Patchwork
2025-03-30 12:44 ` ✓ Xe.CI.Full: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev3) Patchwork
2025-03-30 13:02 ` ✗ i915.CI.Full: failure " Patchwork
2025-03-30 13:24 ` ✓ Xe.CI.Full: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev4) Patchwork
2025-03-30 13:57 ` ✗ i915.CI.Full: failure " Patchwork
2025-04-06 18:15 ` [PATCH i-g-t v4] tests/intel/kms_pm_dc: Remove PKGC10 dependency to validate DC6 Mohammed Thasleem
2025-04-07 14:04   ` Imre Deak
2025-04-06 19:02 ` ✓ i915.CI.BAT: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev5) Patchwork
2025-04-06 19:09 ` ✓ Xe.CI.BAT: " Patchwork
2025-04-06 20:59 ` ✗ Xe.CI.Full: failure for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev3) Patchwork
2025-04-06 21:02 ` ✗ i915.CI.Full: failure for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev5) Patchwork
2025-04-06 21:09 ` ✗ Xe.CI.Full: failure for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev4) Patchwork
2025-04-07 23:18 ` ✗ Xe.CI.Full: failure for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev5) Patchwork
2025-04-08 21:45 ` [PATCH i-g-t v5] tests/intel/kms_pm_dc: Remove PKGC10 dependency to validate DC6 Mohammed Thasleem
2025-04-10 10:35   ` Imre Deak
2025-04-08 23:29 ` ✓ i915.CI.BAT: success for tests/intel/kms_pm_dc: Remove PKC10 dependecy to validate DC6 (rev6) Patchwork
2025-04-08 23:33 ` ✓ Xe.CI.BAT: " Patchwork
2025-04-09  0:51 ` ✗ i915.CI.Full: failure " Patchwork
2025-04-09  1:20 ` ✗ Xe.CI.Full: " Patchwork
2025-04-11 12:11 ` ✓ i915.CI.Full: success " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250330104544.41774-1-mohammed.thasleem@intel.com \
    --to=mohammed.thasleem@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=imre.deak@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox