Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Naladala Ramanaidu <ramanaidu.naladala@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: jouni.hogander@intel.com,
	Naladala Ramanaidu <ramanaidu.naladala@intel.com>
Subject: [PATCH v2 1/2] lib/igt_psr: Remove SRD status change check for DP2.1 Panel Replay
Date: Tue, 10 Sep 2024 13:09:07 +0530	[thread overview]
Message-ID: <20240910073908.1608661-2-ramanaidu.naladala@intel.com> (raw)
In-Reply-To: <20240910073908.1608661-1-ramanaidu.naladala@intel.com>

We do not have ALPM on the DP2.1 Panel Replay. Due to this, the
SRD_STATUS [SRD State] doesn't change from SRDENT_ON after Panel
Replay is enabled until it gets disabled. As a result, the igt
tests fail. To resolve this issue, add a condition to skip the
check in the 'psr_wait_update' and 'psr_long_wait_update'
functions for DP2.1 PR.

v1: Update change for all users of psr_wait_update and
    psr_long_wait_update. (Jouni)

Signed-off-by: Naladala Ramanaidu <ramanaidu.naladala@intel.com>
---
 lib/igt_psr.c | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/lib/igt_psr.c b/lib/igt_psr.c
index e3e7577eb..2677d4822 100644
--- a/lib/igt_psr.c
+++ b/lib/igt_psr.c
@@ -113,12 +113,28 @@ bool psr_wait_entry(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
 
 bool psr_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
 {
-	return igt_wait(!psr_active_check(debugfs_fd, mode, output), 40, 1);
+	/*
+	 * TODO: After enabling Panel Replay on DP2.1, observe that the SRD status
+	 * remains in the SRDENT_ON state. Remove the polling mechanism for the SRD
+	 * status change for the DP2.1 output.
+	 */
+	if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort)
+		return igt_wait(psr_active_check(debugfs_fd, mode, output), 40, 1);
+	else
+		return igt_wait(!psr_active_check(debugfs_fd, mode, output), 40, 1);
 }
 
 bool psr_long_wait_update(int debugfs_fd, enum psr_mode mode, igt_output_t *output)
 {
-	return igt_wait(!psr_active_check(debugfs_fd, mode, output), 500, 1);
+	/*
+	 * TODO: After enabling Panel Replay on DP2.1, observe that the SRD status
+	 * remains in the SRDENT_ON state. Remove the polling mechanism for the SRD
+	 * status change for the DP2.1 output.
+	 */
+	if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort)
+		return igt_wait(psr_active_check(debugfs_fd, mode, output), 500, 1);
+	else
+		return igt_wait(!psr_active_check(debugfs_fd, mode, output), 500, 1);
 }
 
 static ssize_t psr_write(int debugfs_fd, const char *buf, igt_output_t *output)
-- 
2.43.0


  reply	other threads:[~2024-09-10  7:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-10  7:39 [PATCH v2 0/2] tests/intel/kms_psr: DP2.1 PR IGT Fixes Naladala Ramanaidu
2024-09-10  7:39 ` Naladala Ramanaidu [this message]
2024-09-10  7:39 ` [PATCH v2 2/2] lib/igt_psr: Fix PR state check for DisplayPort connectors Naladala Ramanaidu
2024-09-10  9:56 ` [PATCH v2 0/2] tests/intel/kms_psr: DP2.1 PR IGT Fixes Hogander, Jouni

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=20240910073908.1608661-2-ramanaidu.naladala@intel.com \
    --to=ramanaidu.naladala@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=jouni.hogander@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