[igt-dev] [PATCH i-g-t v2] test/kms_plane_cursor: Honour max cursor size

Juha-Pekka Heikkila juhapekka.heikkila at gmail.com
Thu Oct 13 15:37:31 UTC 2022


Hi Aurabindo,

On 12.10.2022 23.01, Aurabindo Pillai wrote:
> Skip the tests for cursor sizes that are not supported by the hardware
> 
> Changes in v2
> =============
> 
> * Remove the duplicate definitions for DRM cursor width capability
> * Check for both cursor width and height when verifying the test cursor size
> 
> Signed-off-by: Aurabindo Pillai <aurabindo.pillai at amd.com>
> ---
>   tests/kms_plane_cursor.c | 12 ++++++++++++
>   1 file changed, 12 insertions(+)
> 
> diff --git a/tests/kms_plane_cursor.c b/tests/kms_plane_cursor.c
> index 43bcaaa4..37fc026c 100644
> --- a/tests/kms_plane_cursor.c
> +++ b/tests/kms_plane_cursor.c
> @@ -30,6 +30,8 @@
>    * - DRM index indicates z-ordering, higher index = higher z-order
>    */
>   
> +static uint64_t max_curw = 64, max_curh = 64;
I think these would look better as part of data_t structure since all 
other 'globals' are there.

> +
>   enum {
>   	TEST_PRIMARY = 0,
>   	TEST_OVERLAY = 1 << 0,
> @@ -222,6 +224,8 @@ static void test_cursor(data_t *data, int size, unsigned int flags)
>   	int sw, sh;
>   	int pad = 128;
>   
> +	igt_skip_on((size > max_curw) || (size > max_curh));
> +
>   	sw = data->mode->hdisplay;
>   	sh = data->mode->vdisplay;
>   
> @@ -270,8 +274,16 @@ igt_main
>   	};
>   
>   	igt_fixture {
> +		int ret;
> +
>   		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
>   
> +		ret = drmGetCap(data.drm_fd, DRM_CAP_CURSOR_WIDTH, &max_curw);
> +		igt_assert(ret == 0 || errno == EINVAL);
> +		/* Not making use of cursor_height since it is same as width, still reading */
What does this comment mean? I see you using cursor height in 
test_cursor function.

/Juha-Pekka

> +		ret = drmGetCap(data.drm_fd, DRM_CAP_CURSOR_HEIGHT, &max_curh);
> +		igt_assert(ret == 0 || errno == EINVAL);
> +
>   		kmstest_set_vt_graphics_mode();
>   
>   		igt_display_require(&data.display, data.drm_fd);



More information about the igt-dev mailing list