mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-09 22:14:36 -04:00
drm/i915/display: Skip state checker for AS SDP infoframe enable
Avoid full modeset by skipping infoframe.enable check when toggling AS SDP while enabling VRR, preventing full modeset while pipe config changes. --v2: - Add check for exclude_infoframe. (Ankit) - Update commit message. (Ankit) --v3: - Optimise PIPE_CONF_CHECK for infoframes.enable. [Ankit] Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> Reviewed-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20250206045001.2919360-2-mitulkumar.ajitkumar.golani@intel.com
This commit is contained in:
committed by
Ankit Nautiyal
parent
a5efc8dcfe
commit
faa5259b1e
@@ -5388,6 +5388,7 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
|
||||
struct drm_i915_private *dev_priv = to_i915(current_config->uapi.crtc->dev);
|
||||
struct intel_crtc *crtc = to_intel_crtc(pipe_config->uapi.crtc);
|
||||
struct drm_printer p;
|
||||
u32 exclude_infoframes = 0;
|
||||
bool ret = true;
|
||||
|
||||
if (fastset)
|
||||
@@ -5743,11 +5744,12 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
|
||||
PIPE_CONF_CHECK_I(min_voltage_level);
|
||||
|
||||
if (current_config->has_psr || pipe_config->has_psr)
|
||||
PIPE_CONF_CHECK_X_WITH_MASK(infoframes.enable,
|
||||
~intel_hdmi_infoframe_enable(DP_SDP_VSC));
|
||||
else
|
||||
PIPE_CONF_CHECK_X(infoframes.enable);
|
||||
exclude_infoframes |= intel_hdmi_infoframe_enable(DP_SDP_VSC);
|
||||
|
||||
if (current_config->vrr.enable || pipe_config->vrr.enable)
|
||||
exclude_infoframes |= intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC);
|
||||
|
||||
PIPE_CONF_CHECK_X_WITH_MASK(infoframes.enable, ~exclude_infoframes);
|
||||
PIPE_CONF_CHECK_X(infoframes.gcp);
|
||||
PIPE_CONF_CHECK_INFOFRAME(avi);
|
||||
PIPE_CONF_CHECK_INFOFRAME(spd);
|
||||
|
||||
Reference in New Issue
Block a user