All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
To: intel-gfx@lists.freedesktop.org
Cc: ankit.k.nautiyal@intel.com, dri-devel@lists.freedesktop.org,
	jani.nikula@intel.com,
	Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
Subject: [PATCH v17 7/9] drm/i915/display: Add state checker for Adaptive Sync SDP
Date: Mon, 11 Mar 2024 15:12:36 +0530	[thread overview]
Message-ID: <20240311094238.3320888-8-mitulkumar.ajitkumar.golani@intel.com> (raw)
In-Reply-To: <20240311094238.3320888-1-mitulkumar.ajitkumar.golani@intel.com>

Enable infoframe and add state checker for Adaptive Sync
SDP enablement.

--v1:
- crtc_state->infoframes.enable, to add on correct place holder.

Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
---
 drivers/gpu/drm/i915/display/intel_display.c | 46 ++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index b88f214e111a..8f1d948408d3 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -4791,6 +4791,17 @@ intel_compare_dp_vsc_sdp(const struct drm_dp_vsc_sdp *a,
 		a->content_type == b->content_type;
 }
 
+static bool
+intel_compare_dp_as_sdp(const struct drm_dp_as_sdp *a,
+			const struct drm_dp_as_sdp *b)
+{
+	return a->vtotal == b->vtotal &&
+		a->target_rr == b->target_rr &&
+		a->duration_incr_ms == b->duration_incr_ms &&
+		a->duration_decr_ms == b->duration_decr_ms &&
+		a->mode == b->mode;
+}
+
 static bool
 intel_compare_buffer(const u8 *a, const u8 *b, size_t len)
 {
@@ -4846,6 +4857,30 @@ pipe_config_dp_vsc_sdp_mismatch(struct drm_i915_private *i915,
 	drm_dp_vsc_sdp_log(&p, b);
 }
 
+static void
+pipe_config_dp_as_sdp_mismatch(struct drm_i915_private *i915,
+			       bool fastset, const char *name,
+			       const struct drm_dp_as_sdp *a,
+			       const struct drm_dp_as_sdp *b)
+{
+	struct drm_printer p;
+
+	if (fastset) {
+		p = drm_dbg_printer(&i915->drm, DRM_UT_KMS, NULL);
+
+		drm_printf(&p, "fastset requirement not met in %s dp sdp\n", name);
+	} else {
+		p = drm_err_printer(&i915->drm, NULL);
+
+		drm_printf(&p, "mismatch in %s dp sdp\n", name);
+	}
+
+	drm_printf(&p, "expected:\n");
+	drm_dp_as_sdp_log(&p, a);
+	drm_printf(&p, "found:\n");
+	drm_dp_as_sdp_log(&p, b);
+}
+
 /* Returns the length up to and including the last differing byte */
 static size_t
 memcmp_diff_len(const u8 *a, const u8 *b, size_t len)
@@ -5099,6 +5134,16 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
 	} \
 } while (0)
 
+#define PIPE_CONF_CHECK_DP_AS_SDP(name) do { \
+	if (!intel_compare_dp_as_sdp(&current_config->infoframes.name, \
+				      &pipe_config->infoframes.name)) { \
+		pipe_config_dp_as_sdp_mismatch(dev_priv, fastset, __stringify(name), \
+						&current_config->infoframes.name, \
+						&pipe_config->infoframes.name); \
+		ret = false; \
+	} \
+} while (0)
+
 #define PIPE_CONF_CHECK_BUFFER(name, len) do { \
 	BUILD_BUG_ON(sizeof(current_config->name) != (len)); \
 	BUILD_BUG_ON(sizeof(pipe_config->name) != (len)); \
@@ -5280,6 +5325,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
 	PIPE_CONF_CHECK_INFOFRAME(hdmi);
 	PIPE_CONF_CHECK_INFOFRAME(drm);
 	PIPE_CONF_CHECK_DP_VSC_SDP(vsc);
+	PIPE_CONF_CHECK_DP_AS_SDP(as_sdp);
 
 	PIPE_CONF_CHECK_X(sync_mode_slaves_mask);
 	PIPE_CONF_CHECK_I(master_transcoder);
-- 
2.25.1


  parent reply	other threads:[~2024-03-11  9:49 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-11  9:42 [PATCH v17 0/9] Enable Adaptive Sync SDP Support for DP Mitul Golani
2024-03-11  9:42 ` [PATCH v17 1/9] drm/dp: Add support to indicate if sink supports AS SDP Mitul Golani
2024-03-21 15:38   ` [v17,1/9] " Mitul Golani
2024-03-21 15:38   ` [PATCH v18 0/9] Enable Adaptive Sync SDP Support for DP Mitul Golani
2024-03-21 15:38   ` [PATCH v18 1/9] drm/dp: Add support to indicate if sink supports AS SDP Mitul Golani
2024-03-21 15:38   ` [PATCH v18 2/9] drm: Add Adaptive Sync SDP logging Mitul Golani
2024-03-21 15:38   ` [PATCH v18 3/9] drm/i915/display: Add crtc state dump for Adaptive Sync SDP Mitul Golani
2024-03-21 15:38   ` [PATCH v18 4/9] drm/i915/dp: Add Read/Write support " Mitul Golani
2024-03-21 15:38   ` [PATCH v18 5/9] drm/i915/dp: Add wrapper function to check AS SDP Mitul Golani
2024-03-21 15:38   ` [PATCH v18 6/9] drm/i915/display: Compute AS SDP parameters Mitul Golani
2024-03-21 15:38   ` [PATCH v18 7/9] drm/i915/display: Add state checker for Adaptive Sync SDP Mitul Golani
2024-03-21 15:38   ` [PATCH v18 8/9] drm/i915/display: Compute vrr_vsync params Mitul Golani
2024-03-21 15:38   ` [PATCH v18 9/9] drm/i915/display: Read/Write Adaptive Sync SDP Mitul Golani
2024-03-11  9:42 ` [PATCH v17 2/9] drm: Add Adaptive Sync SDP logging Mitul Golani
2024-03-11  9:42 ` [PATCH v17 3/9] drm/i915/display: Add crtc state dump for Adaptive Sync SDP Mitul Golani
2024-03-19  6:53   ` [PATCH v18 " Mitul Golani
2024-03-11  9:42 ` [PATCH v17 4/9] drm/i915/dp: Add Read/Write support " Mitul Golani
2024-03-11  9:42 ` [PATCH v17 5/9] drm/i915/dp: Add wrapper function to check AS SDP Mitul Golani
2024-03-11  9:42 ` [PATCH v17 6/9] drm/i915/display: Compute AS SDP parameters Mitul Golani
2024-03-11  9:42 ` Mitul Golani [this message]
2024-03-11  9:42 ` [PATCH v17 8/9] drm/i915/display: Compute vrr_vsync params Mitul Golani
2024-03-13  3:56   ` [PATCH v18 " Mitul Golani
2024-03-14  9:04     ` Nautiyal, Ankit K
2024-03-18 11:12     ` [PATCH v19 " Mitul Golani
2024-03-20  4:29       ` Murthy, Arun R
2024-03-20  5:00       ` [PATCH v20 " Mitul Golani
2024-03-21  4:08         ` Nautiyal, Ankit K
2024-03-11  9:42 ` [PATCH v17 9/9] drm/i915/display: Read/Write Adaptive Sync SDP Mitul Golani
2024-03-12  1:01 ` ✗ Fi.CI.CHECKPATCH: warning for Enable Adaptive Sync SDP Support for DP (rev17) Patchwork
2024-03-12  1:01 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-03-12  1:18 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-03-13  4:51 ` ✗ Fi.CI.CHECKPATCH: warning for Enable Adaptive Sync SDP Support for DP (rev18) Patchwork
2024-03-13  4:51 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-03-13  5:06 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-03-18 14:37 ` [PATCH v17 0/9] Enable Adaptive Sync SDP Support for DP Jani Nikula
2024-03-19  9:46   ` Maxime Ripard
2024-04-04 14:59     ` Nautiyal, Ankit K
2024-04-19 12:35       ` Jani Nikula
2024-04-19 12:51         ` Maxime Ripard
2024-04-19 14:09           ` Jani Nikula
2024-04-19 14:33             ` Maxime Ripard
2024-04-21  4:11         ` Nautiyal, Ankit K
2024-03-18 21:12 ` ✗ Fi.CI.BUILD: failure for Enable Adaptive Sync SDP Support for DP (rev19) Patchwork
2024-03-19  7:28 ` ✗ Fi.CI.CHECKPATCH: warning for Enable Adaptive Sync SDP Support for DP (rev20) Patchwork
2024-03-19  7:28 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-03-19  7:46 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-03-19 10:17 ` ✓ Fi.CI.BAT: success " Patchwork
2024-03-19 14:27 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-03-20  5:44 ` ✗ Fi.CI.CHECKPATCH: warning for Enable Adaptive Sync SDP Support for DP (rev21) Patchwork
2024-03-20  5:44 ` ✗ Fi.CI.SPARSE: " Patchwork
2024-03-20  5:57 ` ✓ Fi.CI.BAT: success " Patchwork
2024-03-20 17:08 ` ✗ Fi.CI.IGT: failure " Patchwork
2024-03-21  9:35 ` Patchwork
2024-03-21 10:42 ` ✓ Fi.CI.IGT: success " Patchwork
2024-03-21 21:36 ` ✗ Fi.CI.BUILD: failure for Enable Adaptive Sync SDP Support for DP (rev30) 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=20240311094238.3320888-8-mitulkumar.ajitkumar.golani@intel.com \
    --to=mitulkumar.ajitkumar.golani@intel.com \
    --cc=ankit.k.nautiyal@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@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 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.