Commit 0bc96a4b authored by Jouni Högander's avatar Jouni Högander
Browse files

drm/i915/psr: HW will not allow PR on eDP when HDCP enabled



Take into account in Panel Replay compute config that  HW will not allow PR
on eDP when HDCP enabled.

v2: add debug message to print out why Panel Replay is not possible

Signed-off-by: default avatarJouni Högander <jouni.hogander@intel.com>
Reviewed-by: default avatarAnimesh Manna <animesh.manna@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240619062131.4021196-7-jouni.hogander@intel.com
parent 397b51ef
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -1523,6 +1523,9 @@ _panel_replay_compute_config(struct intel_dp *intel_dp,
			     const struct drm_connector_state *conn_state)
{
	struct drm_i915_private *i915 = dp_to_i915(intel_dp);
	struct intel_connector *connector =
		to_intel_connector(conn_state->connector);
	struct intel_hdcp *hdcp = &connector->hdcp;

	if (!CAN_PANEL_REPLAY(intel_dp))
		return false;
@@ -1544,6 +1547,17 @@ _panel_replay_compute_config(struct intel_dp *intel_dp,
		return false;
	}

	/* HW will not allow Panel Replay on eDP when HDCP enabled */
	if (conn_state->content_protection ==
	    DRM_MODE_CONTENT_PROTECTION_DESIRED ||
	    (conn_state->content_protection ==
	     DRM_MODE_CONTENT_PROTECTION_ENABLED && hdcp->value ==
	     DRM_MODE_CONTENT_PROTECTION_UNDESIRED)) {
		drm_dbg_kms(&i915->drm,
			    "Panel Replay is not supported with HDCP\n");
		return false;
	}

	return true;
}