This is an automatic generated email to let you know that the following patch were queued at the http://git.linuxtv.org/cgit.cgi/v4l-utils.git tree:
Subject: v4l2-compliance: improve VIDIOC_CREATE_BUFS checks Author: Hans Verkuil <hans.verk...@cisco.com> Date: Thu Sep 6 09:19:32 2018 +0200 Add tests for the multiplanar case: - check that a mismatch in num_planes will return -EINVAL - check handling of too small plane sizes The second test was only done when streaming, now it is also done when v4l2-compliance is called without the -s option. Signed-off-by: Hans Verkuil <hans.verk...@cisco.com> utils/v4l2-compliance/v4l2-test-buffers.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) --- http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=a8c766b75f82d0facbeed5a392d91f4469ffd716 diff --git a/utils/v4l2-compliance/v4l2-test-buffers.cpp b/utils/v4l2-compliance/v4l2-test-buffers.cpp index d654a7cdb843..6864f924daec 100644 --- a/utils/v4l2-compliance/v4l2-test-buffers.cpp +++ b/utils/v4l2-compliance/v4l2-test-buffers.cpp @@ -506,6 +506,26 @@ int testReqBufs(struct node *node) fail_on_test(doioctl(node, VIDIOC_CREATE_BUFS, &crbufs)); fail_on_test(check_0(crbufs.reserved, sizeof(crbufs.reserved))); fail_on_test(crbufs.index != q.g_buffers()); + + if (node->is_video) { + cv4l_fmt fmt; + + node->g_fmt(fmt, q.g_type()); + if (V4L2_TYPE_IS_MULTIPLANAR(q.g_type())) { + fmt.s_num_planes(fmt.g_num_planes() + 1); + fail_on_test(q.create_bufs(node, 1, &fmt) != EINVAL); + node->g_fmt(fmt, q.g_type()); + } + fmt.s_height(fmt.g_height() / 2); + for (unsigned p = 0; p < fmt.g_num_planes(); p++) + fmt.s_sizeimage(fmt.g_sizeimage(p) / 2, p); + fail_on_test(q.create_bufs(node, 1, &fmt) != EINVAL); + fail_on_test(testQueryBuf(node, fmt.type, q.g_buffers())); + node->g_fmt(fmt, q.g_type()); + for (unsigned p = 0; p < fmt.g_num_planes(); p++) + fmt.s_sizeimage(fmt.g_sizeimage(p) * 2, p); + fail_on_test(q.create_bufs(node, 1, &fmt)); + } } fail_on_test(q.reqbufs(node)); } _______________________________________________ linuxtv-commits mailing list linuxtv-commits@linuxtv.org https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits