From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Animesh Manna <animesh.manna@intel.com>
Cc: intel-gfx@lists.freedesktop.org, jouni.hogander@intel.com,
arun.r.murthy@intel.com
Subject: Re: [PATCH v2] drm/i915/panelreplay: Panel replay workaround with VRR
Date: Fri, 9 Feb 2024 18:03:13 +0200 [thread overview]
Message-ID: <ZcZMwWzHayyJqxEx@intel.com> (raw)
In-Reply-To: <20240209154300.2747529-1-animesh.manna@intel.com>
On Fri, Feb 09, 2024 at 09:13:00PM +0530, Animesh Manna wrote:
> Panel Replay VSC SDP not getting sent when VRR is enabled
> and W1 and W2 are 0. So Program Set Context Latency in
> TRANS_SET_CONTEXT_LATENCY register to at least a value of 1.
>
> HSD: 14015406119
>
> v1: Initial version.
> v2: Update timings stored in adjusted_mode struct. [Ville]
>
> Signed-off-by: Animesh Manna <animesh.manna@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_vblank.c | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_vblank.c b/drivers/gpu/drm/i915/display/intel_vblank.c
> index baf7354cb6e2..2e11629e4e9f 100644
> --- a/drivers/gpu/drm/i915/display/intel_vblank.c
> +++ b/drivers/gpu/drm/i915/display/intel_vblank.c
> @@ -552,6 +552,19 @@ void intel_crtc_update_active_timings(const struct intel_crtc_state *crtc_state,
> adjusted_mode.crtc_vtotal = crtc_state->vrr.vmax;
> adjusted_mode.crtc_vblank_end = crtc_state->vrr.vmax;
> adjusted_mode.crtc_vblank_start = intel_vrr_vmin_vblank_start(crtc_state);
> +
> + /*
> + * WA: HSD-14015406119
> + * Program Set Context Latency in TRANS_SET_CONTEXT_LATENCY register
> + * to at least a value of 1 when Panel Replay is enabled with VRR.
> + * Value for TRANS_SET_CONTEXT_LATENCY is calculated by substracting
> + * crtc_vdisplay from crtc_vblank_start, so incrementing crtc_vblank_start
> + * by 1 if both are equal.
> + */
> + if (DISPLAY_VER(i915) >= 13 && crtc_state->has_panel_replay &&
> + adjusted_mode.crtc_vblank_start == adjusted_mode.crtc_vdisplay)
> + adjusted_mode.crtc_vblank_start += 1;
Wrong place. It needs to done during compute_config/etc.
> +
> vmax_vblank_start = intel_vrr_vmax_vblank_start(crtc_state);
> } else {
> mode_flags &= ~I915_MODE_FLAG_VRR;
> --
> 2.29.0
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2024-02-09 16:03 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-09 15:43 [PATCH v2] drm/i915/panelreplay: Panel replay workaround with VRR Animesh Manna
2024-02-09 16:03 ` Ville Syrjälä [this message]
2024-02-09 17:27 ` ✓ Fi.CI.BAT: success for drm/i915/panelreplay: Panel replay workaround with VRR (rev2) Patchwork
2024-02-10 0:20 ` ✓ Fi.CI.IGT: " 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=ZcZMwWzHayyJqxEx@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=animesh.manna@intel.com \
--cc=arun.r.murthy@intel.com \
--cc=intel-gfx@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 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.