summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2018-07-18 17:38:07 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2018-09-25 16:27:39 +0300
commitc7b3e2465773f9fb30bf45976732028e4e4dc365 (patch)
tree6703d13493ffc7804e55f4f1af3dea9a50e49524 /tests
parent42359edda12e5ebf715f2a978944a18baaba6490 (diff)
lib/kms: Pass the number of planes explicitly to __kms_addfb()
Currently __kms_addfb() assumes that only the first plane can be at offset 0. I don't particularly like such assumptions so let's just pass in the number of planes explicitly. We'll also require offsets[] to be passed in always. Nothing really to gain by making it optional. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/kms_available_modes_crc.c5
-rw-r--r--tests/kms_draw_crc.c3
-rw-r--r--tests/prime_vgem.c3
3 files changed, 8 insertions, 3 deletions
diff --git a/tests/kms_available_modes_crc.c b/tests/kms_available_modes_crc.c
index e77bd80f..09fb2e99 100644
--- a/tests/kms_available_modes_crc.c
+++ b/tests/kms_available_modes_crc.c
@@ -256,6 +256,7 @@ static bool setup_fb(data_t *data, igt_output_t *output, igt_plane_t *plane,
unsigned tile_width, tile_height;
uint32_t strides[4] = {};
uint32_t offsets[4] = {};
+ int num_planes = 1;
uint64_t tiling;
int bpp = 0;
int i;
@@ -302,6 +303,7 @@ static bool setup_fb(data_t *data, igt_output_t *output, igt_plane_t *plane,
offsets[1] = data->size;
strides[1] = strides[0];
gemsize = data->size * 2;
+ num_planes = 2;
}
data->gem_handle = gem_create(data->gfx_fd, gemsize);
@@ -312,7 +314,8 @@ static bool setup_fb(data_t *data, igt_output_t *output, igt_plane_t *plane,
ret = __kms_addfb(data->gfx_fd, data->gem_handle, w, h,
format, tiling, strides, offsets,
- LOCAL_DRM_MODE_FB_MODIFIERS, &data->fb.fb_id);
+ num_planes, LOCAL_DRM_MODE_FB_MODIFIERS,
+ &data->fb.fb_id);
if(ret < 0) {
igt_info("Creating fb for format %s failed, return code %d\n",
diff --git a/tests/kms_draw_crc.c b/tests/kms_draw_crc.c
index fb10d7cc..90904714 100644
--- a/tests/kms_draw_crc.c
+++ b/tests/kms_draw_crc.c
@@ -156,6 +156,7 @@ static void get_method_crc(enum igt_draw_method method, uint32_t drm_format,
static bool format_is_supported(uint32_t format, uint64_t modifier)
{
uint32_t gem_handle, fb_id;
+ unsigned int offsets[4] = {};
unsigned int strides[4] = {};
int ret;
@@ -163,7 +164,7 @@ static bool format_is_supported(uint32_t format, uint64_t modifier)
format, modifier,
0, NULL, &strides[0], NULL);
ret = __kms_addfb(drm_fd, gem_handle, 64, 64,
- format, modifier, strides, NULL,
+ format, modifier, strides, offsets, 1,
LOCAL_DRM_MODE_FB_MODIFIERS, &fb_id);
drmModeRmFB(drm_fd, fb_id);
gem_close(drm_fd, gem_handle);
diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
index b95fd4f5..5e0c4e28 100644
--- a/tests/prime_vgem.c
+++ b/tests/prime_vgem.c
@@ -751,6 +751,7 @@ static void test_flip(int i915, int vgem, unsigned hang)
for (int i = 0; i < 2; i++) {
uint32_t strides[4] = {};
+ uint32_t offsets[4] = {};
int fd;
bo[i].width = 1024;
@@ -768,7 +769,7 @@ static void test_flip(int i915, int vgem, unsigned hang)
do_or_die(__kms_addfb(i915, handle[i],
bo[i].width, bo[i].height,
DRM_FORMAT_XRGB8888, I915_TILING_NONE,
- strides, NULL,
+ strides, offsets, 1,
LOCAL_DRM_MODE_FB_MODIFIERS, &fb_id[i]));
igt_assert(fb_id[i]);
}