[PATCH] drm: Fix timestamp docs for variable refresh properties.

Daniel Vetter daniel at ffwll.ch
Thu Apr 18 08:20:03 UTC 2019


On Thu, Apr 18, 2019 at 08:01:57AM +0200, Mario Kleiner wrote:
> As discussed with Nicholas and Daniel Vetter (patchwork
> link to discussion below), the VRR timestamping behaviour
> produced utterly useless and bogus vblank/pageflip
> timestamps. We have found a way to fix this and provide
> sane behaviour.
> 
> As of Linux 5.2, the amdgpu driver will be able to
> provide exactly the same vblank / pageflip timestamp
> semantic in variable refresh rate mode as in standard
> fixed refresh rate mode. This is achieved by deferring
> core vblank handling (drm_crtc_handle_vblank()) until
> the end of front porch, and also defer the sending of
> pageflip completion events until end of front porch,
> when we can safely compute correct pageflip/vblank
> timestamps.
> 
> The same approach will be possible for other VRR
> capable kms drivers, so we can actually have sane
> and useful timestamps in VRR mode.
> 
> This patch removes the section of the docs that
> describes the broken timestamp behaviour present
> in Linux 5.0/5.1.
> 
> Fixes: ab7a664f7a2d ("drm: Document variable refresh properties")
> Link: https://patchwork.freedesktop.org/patch/285333/
> Signed-off-by: Mario Kleiner <mario.kleiner.de at gmail.com>
> ---
>  drivers/gpu/drm/drm_connector.c | 6 ------
>  1 file changed, 6 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
> index 2355124849db..b34c3d38bf15 100644
> --- a/drivers/gpu/drm/drm_connector.c
> +++ b/drivers/gpu/drm/drm_connector.c
> @@ -1416,12 +1416,6 @@ EXPORT_SYMBOL(drm_mode_create_scaling_mode_property);
>   *
>   *	The driver may place further restrictions within these minimum
>   *	and maximum bounds.
> - *
> - *	The semantics for the vertical blank timestamp differ when
> - *	variable refresh rate is active. The vertical blank timestamp
> - *	is defined to be an estimate using the current mode's fixed
> - *	refresh rate timings. The semantics for the page-flip event
> - *	timestamp remain the same.

Yay! Thanks for all your work to polish VRR in linux.

Acked-by: Daniel Vetter <daniel.vetter at ffwll.ch>
>   */
>  
>  /**
> -- 
> 2.20.1
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list