From: "Nautiyal, Ankit K" <ankit.k.nautiyal@intel.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: <intel-gfx@lists.freedesktop.org>, <jani.nikula@linux.intel.com>,
<mitulkumar.ajitkumar.golani@intel.com>
Subject: Re: [PATCH 10/13] drm/i915/vrr: Avoid sending PUSH when VRR TG is used with Fixed refresh rate
Date: Wed, 4 Sep 2024 18:27:46 +0530 [thread overview]
Message-ID: <4c017155-e14c-4d37-af95-1b74379e3a03@intel.com> (raw)
In-Reply-To: <ZtcI2_aTCVI9kAvy@intel.com>
On 9/3/2024 6:32 PM, Ville Syrjälä wrote:
> On Mon, Sep 02, 2024 at 01:36:31PM +0530, Ankit Nautiyal wrote:
>> As per Bspec:68925: Push enable must be set if not configuring for a
>> fixed refresh rate (i.e Vmin == Flipline == Vmax is not true).
>>
>> Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
>> Reviewed-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com>
>> ---
>> drivers/gpu/drm/i915/display/intel_vrr.c | 9 +++++----
>> 1 file changed, 5 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/display/intel_vrr.c b/drivers/gpu/drm/i915/display/intel_vrr.c
>> index 03af50b9f9eb..5e947465c6e0 100644
>> --- a/drivers/gpu/drm/i915/display/intel_vrr.c
>> +++ b/drivers/gpu/drm/i915/display/intel_vrr.c
>> @@ -313,7 +313,7 @@ void intel_vrr_send_push(const struct intel_crtc_state *crtc_state)
>> struct intel_display *display = to_intel_display(crtc_state);
>> enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
>>
>> - if (!crtc_state->vrr.enable)
>> + if (!crtc_state->vrr.enable || crtc_state->vrr.fixed_rr)
> Hmm. I wonder if we should keep vrr.enable meaning VRR actually
> enabled... Maybe not as that would complicate the readout/check
> a bit too much perhaps.
I agree this perhaps need to be streamline.
Currently with this patch series vrr.enable
represents whether VRR timing generator is enabled or not.
When VRR timing generator is enabled we can be in one of 3 modes:
1. Acutal variable refresh rate modes (vrr.enable = true;
vrr.fixed_rr = false)
2. Fixed refresh rate modes (vrr.enable = true;
vrr.fixed_rr = true)
3. Content matched refresh rate mode. (vrr.enable = true; vrr.cmrr =
true)
I am open regarding any modification to this or have a new scheme
(perhaps an enum vrr.mode for the above 3)
>
> But we could have some kind of helper for these "do we need to use
> push?" checks (eg. intel_vrr_use_push()).
Makes sense. I will add these helpers.
Regards,
Ankit
>> return;
>>
>> intel_de_write(display, TRANS_PUSH(display, cpu_transcoder),
>> @@ -325,7 +325,7 @@ bool intel_vrr_is_push_sent(const struct intel_crtc_state *crtc_state)
>> struct intel_display *display = to_intel_display(crtc_state);
>> enum transcoder cpu_transcoder = crtc_state->cpu_transcoder;
>>
>> - if (!crtc_state->vrr.enable)
>> + if (!crtc_state->vrr.enable || crtc_state->vrr.fixed_rr)
>> return false;
>>
>> return intel_de_read(display, TRANS_PUSH(display, cpu_transcoder)) & TRANS_PUSH_SEND;
>> @@ -339,8 +339,9 @@ void intel_vrr_enable(const struct intel_crtc_state *crtc_state)
>> if (!crtc_state->vrr.enable)
>> return;
>>
>> - intel_de_write(display, TRANS_PUSH(display, cpu_transcoder),
>> - TRANS_PUSH_EN);
>> + if (!crtc_state->vrr.fixed_rr)
>> + intel_de_write(display, TRANS_PUSH(display, cpu_transcoder),
>> + TRANS_PUSH_EN);
>>
>> if (HAS_AS_SDP(display))
>> intel_de_write(display,
>> --
>> 2.45.2
next prev parent reply other threads:[~2024-09-04 12:58 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-02 8:06 [PATCH 00/13] Use VRR timing generator for fixed refresh rate modes Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 01/13] drm/i915/dp: Avoid vrr compute config for HDMI sink Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 02/13] drm/i915/dp: fix the Adaptive sync Operation mode for SDP Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 03/13] drm/i915/display: Add member fixed_rr to denote Fixed refresh rate with VRRTG Ankit Nautiyal
2024-09-03 12:51 ` Ville Syrjälä
2024-09-04 12:54 ` Nautiyal, Ankit K
2024-09-02 8:06 ` [PATCH 04/13] drm/i915/display: Enable MSA Ignore Timing PAR only when in not fixed_rr mode Ankit Nautiyal
2024-09-03 3:15 ` kernel test robot
2024-09-03 7:52 ` kernel test robot
2024-09-02 8:06 ` [PATCH 05/13] drm/i915/dp: Set FAVT mode in DP SDP with fixed refresh rate Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 06/13] drm/i915/vrr: Compute vrr vsync if platforms support it Ankit Nautiyal
2024-09-03 12:45 ` Ville Syrjälä
2024-09-04 12:55 ` Nautiyal, Ankit K
2024-09-02 8:06 ` [PATCH 07/13] drm/i915/hdmi: Use VRR Timing generator for HDMI Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 08/13] drm/i915/display: Disable PSR before disabling VRR Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 09/13] drm/i915/psr: Allow PSR for fixed refrsh rate with VRR TG Ankit Nautiyal
2024-09-02 8:06 ` [PATCH 10/13] drm/i915/vrr: Avoid sending PUSH when VRR TG is used with Fixed refresh rate Ankit Nautiyal
2024-09-03 13:02 ` Ville Syrjälä
2024-09-04 12:57 ` Nautiyal, Ankit K [this message]
2024-09-02 8:06 ` [PATCH 11/13] drm/i915/vrr: Handle joiner with vrr Ankit Nautiyal
2024-09-03 13:04 ` Ville Syrjälä
2024-09-04 13:02 ` Nautiyal, Ankit K
2024-09-02 8:06 ` [PATCH 12/13] drm/i915/vrr: Always use VRR timing generator for XELPD+ Ankit Nautiyal
2024-09-03 13:25 ` Ville Syrjälä
2024-09-04 13:08 ` Nautiyal, Ankit K
2024-09-02 8:06 ` [PATCH 13/13] drm/i915/display: Add fixed_rr to crtc_state_dump Ankit Nautiyal
2024-09-02 12:23 ` ✗ Fi.CI.SPARSE: warning for Use VRR timing generator for fixed refresh rate modes (rev5) Patchwork
2024-09-02 12:43 ` ✓ Fi.CI.BAT: success " Patchwork
2024-09-02 18:08 ` ✗ Fi.CI.IGT: failure " 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=4c017155-e14c-4d37-af95-1b74379e3a03@intel.com \
--to=ankit.k.nautiyal@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=mitulkumar.ajitkumar.golani@intel.com \
--cc=ville.syrjala@linux.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