[PATCH 01/18] drm/i915: Extract intel_crtc_vblank_delay()
Nautiyal, Ankit K
ankit.k.nautiyal at intel.com
Fri Jan 10 05:09:52 UTC 2025
On 1/9/2025 9:13 PM, Ville Syrjälä wrote:
> On Fri, Jan 03, 2025 at 04:54:53PM +0530, Nautiyal, Ankit K wrote:
>> On 12/11/2024 2:39 AM, Ville Syrjala wrote:
>>> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>>>
>>> Pull the vblank delay computation into a separate function.
>>> We'll need more logic here soon and we don't want to pollute
>>> intel_crtc_compute_config() with low level details.
>>>
>>> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
>>> ---
>>> drivers/gpu/drm/i915/display/intel_display.c | 24 +++++++++++++++-----
>>> 1 file changed, 18 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
>>> index 8e90e99a25d6..ff907afa6451 100644
>>> --- a/drivers/gpu/drm/i915/display/intel_display.c
>>> +++ b/drivers/gpu/drm/i915/display/intel_display.c
>>> @@ -2610,16 +2610,29 @@ static int intel_crtc_compute_pipe_mode(struct intel_crtc_state *crtc_state)
>>> return 0;
>>> }
>>>
>>> -static bool intel_crtc_needs_wa_14015401596(struct intel_crtc_state *crtc_state)
>>> +static bool intel_crtc_needs_wa_14015401596(const struct intel_crtc_state *crtc_state)
>>> {
>>> struct intel_display *display = to_intel_display(crtc_state);
>>> - const struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode;
>>>
>>> return intel_vrr_possible(crtc_state) && crtc_state->has_psr &&
>>> - adjusted_mode->crtc_vblank_start == adjusted_mode->crtc_vdisplay &&
>>> IS_DISPLAY_VER(display, 13, 14);
>>> }
>>>
>>> +static int intel_crtc_vblank_delay(const struct intel_crtc_state *crtc_state)
>>> +{
>>> + struct intel_display *display = to_intel_display(crtc_state);
>>> + int vblank_delay = 0;
>>> +
>>> + if (!HAS_DSB(display))
>>> + return 0;
>> Is this because W2 window is configured to be non zero only when
>> platforms support DSB and DSB is in use?
> It's only a thing for platforms with DSB, and there should be no
> need for the extra delay when not using the DSB. I was mildly tempted
> to even check i915_params.enable_dsb here, but that can changed
> dynamically via debufs which would require us to reconfigure the
> vblank delay on the fly (and that we can't currently do).
Alright, it seems this check was missing earlier.
Perhaps can be mentioned in commit message.
In any case, patch lgtm.
Reviewed-by: Ankit Nautiyal <ankit.k.nautiyal at intel.com>
>
More information about the Intel-gfx
mailing list