diff options
author | Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> | 2019-01-18 00:58:17 -0800 |
---|---|---|
committer | Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> | 2019-01-18 15:54:21 -0800 |
commit | 1c0790447d6c3827819eafa341aeacd6c076d10e (patch) | |
tree | 9acc1ad3ae4cb8dab66a041d1b166ff210552962 /tests/kms_available_modes_crc.c | |
parent | 58efc6ec445e758c3ff5bfe7980eaffe3abab349 (diff) |
tests/kms_available_modes_crc: Initialize fb struct
The test does not initialize data->fb, initializing stride and offset is
necessary to fill NV12 planes correctly. We should ideally be using
library functions in place of handrolled code in this test, but let's start
by fixing the failures.
Cc: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Diffstat (limited to 'tests/kms_available_modes_crc.c')
-rw-r--r-- | tests/kms_available_modes_crc.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/tests/kms_available_modes_crc.c b/tests/kms_available_modes_crc.c index 0c0282f8..3551061a 100644 --- a/tests/kms_available_modes_crc.c +++ b/tests/kms_available_modes_crc.c @@ -254,8 +254,6 @@ static bool setup_fb(data_t *data, igt_output_t *output, igt_plane_t *plane, uint64_t w, h; signed ret, gemsize = 0; unsigned tile_width, tile_height; - uint32_t strides[4] = {}; - uint32_t offsets[4] = {}; int num_planes = 1; uint64_t tiling; int bpp = 0; @@ -296,24 +294,26 @@ static bool setup_fb(data_t *data, igt_output_t *output, igt_plane_t *plane, igt_get_fb_tile_size(data->gfx_fd, tiling, bpp, &tile_width, &tile_height); - strides[0] = ALIGN(w * bpp / 8, tile_width); - gemsize = data->size = strides[0] * ALIGN(h, tile_height); + data->fb.offsets[0] = 0; + data->fb.strides[0] = ALIGN(w * bpp / 8, tile_width); + gemsize = data->size = data->fb.strides[0] * ALIGN(h, tile_height); if (fillers[i].bpp == P010 || fillers[i].bpp == NV12) { - offsets[1] = data->size; - strides[1] = strides[0]; + data->fb.offsets[1] = data->size; + data->fb.strides[1] = data->fb.strides[0]; gemsize = data->size * 2; num_planes = 2; } data->gem_handle = gem_create(data->gfx_fd, gemsize); ret = __gem_set_tiling(data->gfx_fd, data->gem_handle, - igt_fb_mod_to_tiling(tiling), strides[0]); + igt_fb_mod_to_tiling(tiling), + data->fb.strides[0]); igt_assert_eq(ret, 0); ret = __kms_addfb(data->gfx_fd, data->gem_handle, w, h, - format, tiling, strides, offsets, + format, tiling, data->fb.strides, data->fb.offsets, num_planes, LOCAL_DRM_MODE_FB_MODIFIERS, &data->fb.fb_id); |