[igt-dev] [PATCH i-g-t 1/9] chamelium: Pass dimensions instead of mode to pattern generation helper

Lyude Paul lyude at redhat.com
Thu Dec 6 21:43:07 UTC 2018


Are there some patches missing here? This doesn't seem to apply cleanly to
master, and it looks like this is relying on some changes to
chamelium_paint_xr24_pattern() that aren't in the tree

(otherwise, this patch lgtm, Reviewed-by: Lyude Paul <lyude at redhat.com>)

On Thu, 2018-12-06 at 15:11 +0100, Paul Kocialkowski wrote:
> In order to reuse the pattern generation helper for overlay planes,
> let's provide the pattern generation helper with the explicit dimensions
> instead of the mode (that only applies to the primary plane).
> 
> Signed-off-by: Paul Kocialkowski <paul.kocialkowski at bootlin.com>
> ---
>  tests/kms_chamelium.c | 11 +++++------
>  1 file changed, 5 insertions(+), 6 deletions(-)
> 
> diff --git a/tests/kms_chamelium.c b/tests/kms_chamelium.c
> index 8a9f6bfe..b8cab927 100644
> --- a/tests/kms_chamelium.c
> +++ b/tests/kms_chamelium.c
> @@ -504,7 +504,7 @@ static void chamelium_paint_xr24_pattern(uint32_t *data,
>  			*(data + i * stride / 4 + j) = colors[((j / 64) + (i /
> 64)) % 5];
>  }
>  
> -static int chamelium_get_pattern_fb(data_t *data, drmModeModeInfo *mode,
> +static int chamelium_get_pattern_fb(data_t *data, size_t width, size_t
> height,
>  				    uint32_t fourcc, struct igt_fb *fb)
>  {
>  	int fb_id;
> @@ -512,15 +512,14 @@ static int chamelium_get_pattern_fb(data_t *data,
> drmModeModeInfo *mode,
>  
>  	igt_assert(fourcc == DRM_FORMAT_XRGB8888);
>  
> -	fb_id = igt_create_fb(data->drm_fd, mode->hdisplay, mode->vdisplay,
> -			      fourcc, LOCAL_DRM_FORMAT_MOD_NONE, fb);
> +	fb_id = igt_create_fb(data->drm_fd, width, height, fourcc,
> +			      LOCAL_DRM_FORMAT_MOD_NONE, fb);
>  	igt_assert(fb_id > 0);
>  
>  	ptr = igt_fb_map_buffer(fb->fd, fb);
>  	igt_assert(ptr);
>  
> -	chamelium_paint_xr24_pattern(ptr, mode->hdisplay, mode->vdisplay,
> -				     fb->strides[0]);
> +	chamelium_paint_xr24_pattern(ptr, width, height, fb->strides[0]);
>  	igt_fb_unmap_buffer(fb, ptr);
>  
>  	return fb_id;
> @@ -541,7 +540,7 @@ static void do_test_display(data_t *data, struct
> chamelium_port *port,
>  	int i, fb_id, captured_frame_count;
>  	int frame_id;
>  
> -	fb_id = chamelium_get_pattern_fb(data, mode,
> +	fb_id = chamelium_get_pattern_fb(data, mode->hdisplay, mode->vdisplay,
>  					 DRM_FORMAT_XRGB8888, &fb);
>  	igt_assert(fb_id > 0);
>  
-- 
Cheers,
	Lyude Paul



More information about the igt-dev mailing list