[igt-dev] [PATCH i-g-t] tests/kms_rmfb: Ignore plane configuration errors

Daniel Vetter daniel at ffwll.ch
Fri Mar 29 08:53:39 UTC 2019


On Wed, Mar 27, 2019 at 10:08:39PM +0200, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> We may not be able to turn on all the planes (eg. due to memory
> bandwidth limitations). Let's accept that fact and simply turn
> on as many planes as we can.
> 
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> ---
>  tests/kms_rmfb.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/tests/kms_rmfb.c b/tests/kms_rmfb.c
> index b1c81cb80b54..a7fcab87233a 100644
> --- a/tests/kms_rmfb.c
> +++ b/tests/kms_rmfb.c
> @@ -58,6 +58,7 @@ test_rmfb(struct rmfb_data *data, igt_output_t *output, enum pipe pipe, bool reo
>  	igt_plane_t *plane;
>  	drmModeCrtc *crtc;
>  	uint64_t cursor_width, cursor_height;
> +	int num_active_planes = 0;
>  
>  	igt_output_set_pipe(output, pipe);
>  
> @@ -85,8 +86,25 @@ test_rmfb(struct rmfb_data *data, igt_output_t *output, enum pipe pipe, bool reo
>  		} else {
>  			igt_plane_set_fb(plane, &fb);
>  		}
> +
> +		if (igt_display_try_commit2(&data->display, data->display.is_atomic ?
> +					    COMMIT_ATOMIC : COMMIT_LEGACY)) {
> +			/*
> +			 * Disable any plane that fails (presumably
> +			 * due to exceeding some hardware limit).
> +			 */
> +			igt_plane_set_fb(plane, NULL);
> +		} else {
> +			num_active_planes++;
> +		}
>  	}

I guess if we're really unlucky we might not test all that much anymore,
but primary plane should be first so hopefully we're good.

Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
>  
> +	/*
> +	 * Make sure we were able to enable at least one
> +	 * plane so that we actually test something.
> +	 */
> +	igt_assert_lt(0, num_active_planes);
> +
>  	igt_display_commit2(&data->display, data->display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY);
>  
>  	crtc = drmModeGetCrtc(data->drm_fd, output->config.crtc->crtc_id);
> -- 
> 2.19.2
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

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


More information about the igt-dev mailing list