[PATCH] drm: Print the fb dimensions when the src coord check fails

Daniel Vetter daniel at ffwll.ch
Thu Nov 2 09:50:08 UTC 2017


On Wed, Nov 01, 2017 at 08:35:33PM +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> When debugging bad plane source coordinates it helps to have an
> idea of what the framebuffer dimensions are.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

Makes sense.

Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>

> ---
>  drivers/gpu/drm/drm_atomic.c      | 5 +++--
>  drivers/gpu/drm/drm_framebuffer.c | 5 +++--
>  2 files changed, 6 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index c2da5585e201..83fd86534552 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -907,11 +907,12 @@ static int drm_atomic_plane_check(struct drm_plane *plane,
>  	    state->src_h > fb_height ||
>  	    state->src_y > fb_height - state->src_h) {
>  		DRM_DEBUG_ATOMIC("Invalid source coordinates "
> -				 "%u.%06ux%u.%06u+%u.%06u+%u.%06u\n",
> +				 "%u.%06ux%u.%06u+%u.%06u+%u.%06u (fb %ux%u)\n",
>  				 state->src_w >> 16, ((state->src_w & 0xffff) * 15625) >> 10,
>  				 state->src_h >> 16, ((state->src_h & 0xffff) * 15625) >> 10,
>  				 state->src_x >> 16, ((state->src_x & 0xffff) * 15625) >> 10,
> -				 state->src_y >> 16, ((state->src_y & 0xffff) * 15625) >> 10);
> +				 state->src_y >> 16, ((state->src_y & 0xffff) * 15625) >> 10,
> +				 state->fb->width, state->fb->height);
>  		return -ENOSPC;
>  	}
>  
> diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c
> index 2affe53f3fda..0354dcf57038 100644
> --- a/drivers/gpu/drm/drm_framebuffer.c
> +++ b/drivers/gpu/drm/drm_framebuffer.c
> @@ -78,11 +78,12 @@ int drm_framebuffer_check_src_coords(uint32_t src_x, uint32_t src_y,
>  	    src_h > fb_height ||
>  	    src_y > fb_height - src_h) {
>  		DRM_DEBUG_KMS("Invalid source coordinates "
> -			      "%u.%06ux%u.%06u+%u.%06u+%u.%06u\n",
> +			      "%u.%06ux%u.%06u+%u.%06u+%u.%06u (fb %ux%u)\n",
>  			      src_w >> 16, ((src_w & 0xffff) * 15625) >> 10,
>  			      src_h >> 16, ((src_h & 0xffff) * 15625) >> 10,
>  			      src_x >> 16, ((src_x & 0xffff) * 15625) >> 10,
> -			      src_y >> 16, ((src_y & 0xffff) * 15625) >> 10);
> +			      src_y >> 16, ((src_y & 0xffff) * 15625) >> 10,
> +			      fb->width, fb->height);
>  		return -ENOSPC;
>  	}
>  
> -- 
> 2.13.6
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

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


More information about the dri-devel mailing list