Skip to contentSkip to conversation

v4l-test 0.15 for LTP

PATCH In review Németh Márton 2 participants 2 messages Jun 3, 2009 – Jun 4, 2009

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 v4l-test 0.15 for LTP

Hi,

this is the v4l-test 0.15 patch for LTP.

Changes:
Test cases added for VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS and VIDIOC_TRY_EXT_CTRLS

Regards,

Márton Németh

---
v4l-test project home page: http://v4l-test.sourceforge.net/

testcases/kernel/device-drivers/v4l/user_space/doc/index.html +45 -5
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/doc/index.html ltp/testcases/kernel/device-drivers/v4l/user_space/doc/index.html
@@ -95,7 +95,7 @@ a USB video device or ask the user if a 
 not.
 </p>
 <p>
-The following table gives an overview about the current state of
+The following tables give an overview about the current state of
 implemented test cases.</p>
 
 <table border="1" cellpadding="2"
@@ -235,17 +235,17 @@ implemented test cases.</p>
     </tr>
     <tr>
       <td>ioctl <a href="spec/r10386.htm">VIDIOC_G_EXT_CTRLS</a></td>
-      <td>no</td>
+      <td>yes, only when STREAM_OFF, currently only zero and one item</td>
       <td>Opt.</td>
     </tr>
     <tr>
       <td>ioctl <a href="spec/r10386.htm">VIDIOC_S_EXT_CTRLS</a></td>
-      <td>no</td>
+      <td>yes, only when STREAM_OFF, only with zero item</td>
       <td>Opt.</td>
     </tr>
     <tr>
       <td>ioctl <a href="spec/r10386.htm">VIDIOC_TRY_EXT_CTRLS</a></td>
-      <td>no</td>
+      <td>yes, only when STREAM_OFF, only with zero item</td>
       <td>Opt.</td>
     </tr>
     <tr>
@@ -474,6 +474,46 @@ Enum.: enumeration, will return EINVAL f
 Exp.: experimental, may change in future
 </p>
 
+<p>The following actions are not part of the V4L2 API but they might have
+influence on the V4L2 API functions:</p>
+
+<table border="1" cellpadding="2"
+ cellspacing="0">
+  <thead>
+    <tr>
+      <td><b>Action</b></td>
+      <td><b>Covered?</b></td>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>Load kernel module</td>
+      <td>no</td>
+    </tr>
+    <tr>
+      <td>Unload kernel module</td>
+      <td>no</td>
+    </tr>
+    <tr>
+      <td>USB connect event (in case of USB webcams)</td>
+      <td>no</td>
+    </tr>
+    <tr>
+      <td>USB disconnect event (in case of USB webcams)</td>
+      <td>no</td>
+    </tr>
+    <tr>
+      <td>Suspend</td>
+      <td>no</td>
+    </tr>
+    <tr>
+      <td>Resume</td>
+      <td>no</td>
+    </tr>
+  </tbody>
+</table>
+
+
 <h2><a name="others">Similar projects</a></h2>
 <p>
 There migth be similar projects which also tries to test the V4L2 API.
@@ -520,7 +560,7 @@ The following documents and articles are
 <p>Any feedbacks, comments, ideas, etc. are welcome at the author's email address.</p>
 <hr style="width: 100%; height: 2px;">
 <p>Last changed:
-Thu May  7 22:51:07 CEST 2009
+Mon May 25 08:08:11 CEST 2009
 </p>
 <p>
   <a href="http://validator.w3.org/check?uri=referer"><img
testcases/kernel/device-drivers/v4l/user_space/doc/results.html +7 -1
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/doc/results.html ltp/testcases/kernel/device-drivers/v4l/user_space/doc/results.html
@@ -55,6 +55,12 @@ project or during developing it.
 	</li>
 
 	<li>
+	<a href="http://bugzilla.kernel.org/show_bug.cgi?id=13357">
+	Bug 13357 -  uvcvideo: VIDIOC_G_EXT_CTRLS does not handle NULL pointer correctly
+	</a>
+	</li>
+
+	<li>
 	<a href="http://marc.info/?l=linux-kernel&amp;m=124103154820106&amp;w=2">
 	[PATCH] v4l2: modify return value of VIDIOC_REQBUFS ioctl
 	</a>
@@ -94,7 +100,7 @@ the following problems were identified w
 
 <hr style="width: 100%; height: 2px;">
 <p>Last changed:
-Wed Apr 29 21:21:38 CEST 2009
+Mon May 25 07:38:56 CEST 2009
 </p>
 <p>
   <a href="http://validator.w3.org/check?uri=referer"><img
testcases/kernel/device-drivers/v4l/user_space/Makefile +2 -0
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/Makefile ltp/testcases/kernel/device-drivers/v4l/user_space/Makefile
@@ -1,6 +1,7 @@
 #
 # v4l-test: Test environment for Video For Linux Two API
 #
+# 19 May 2009  0.17 test_VIDIOC_EXT_CTRLS.c added
 #  7 May 2009  0.16 v4l2_show.c added
 #  5 May 2009  0.15 test_VIDIOC_QUERYBUF.c added
 # 25 Apr 2009  0.14 test_VIDIOC_REQBUFS.c added
@@ -61,6 +62,7 @@ OBJS = dev_video.o \
        test_VIDIOC_AUDIO.o \
        test_VIDIOC_AUDOUT.o \
        test_VIDIOC_CTRL.o \
+       test_VIDIOC_EXT_CTRLS.o \
        test_VIDIOC_PARM.o \
        test_VIDIOC_FMT.o \
        test_VIDIOC_REQBUFS.o \
testcases/kernel/device-drivers/v4l/user_space/README +2 -0
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/README ltp/testcases/kernel/device-drivers/v4l/user_space/README
@@ -3,6 +3,8 @@
 
 Release History
 ---------------
+25 May 2009  0.15 Test cases added for VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS
+                  and VIDIOC_TRY_EXT_CTRLS
  7 May 2009  0.14 Test cases added for VIDIOC_QUERYBUF;
                   Debug functions separated
 29 Apr 2009  0.13 Added string content validation;
testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_CTRL.c +2 -2
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_CTRL.c ltp/testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_CTRL.c
@@ -31,7 +31,7 @@
 
 #include "test_VIDIOC_CTRL.h"
 
-int do_get_control(__u32 id) {
+static int do_get_control(__u32 id) {
 	int ret_query, errno_query;
 	int ret_get, errno_get;
 	struct v4l2_queryctrl queryctrl;
@@ -103,7 +103,7 @@ int do_get_control(__u32 id) {
 		case V4L2_CTRL_TYPE_CTRL_CLASS:
 		default:
 			CU_ASSERT_EQUAL(ret_get, -1);
-			CU_ASSERT_EQUAL(errno_get, -1);
+			CU_ASSERT_EQUAL(errno_get, EINVAL);
 		}
 	} else {
 		CU_ASSERT_EQUAL(ret_query, -1);
testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_EXT_CTRLS.c +673 -0

673 lines not on this page · raw message

testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_EXT_CTRLS.h +21 -0
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_EXT_CTRLS.h ltp/testcases/kernel/device-drivers/v4l/user_space/test_VIDIOC_EXT_CTRLS.h
@@ -0,0 +1,21 @@
+/*
+ * v4l-test: Test environment for Video For Linux Two API
+ *
+ * 19 May 2009  0.1  First release
+ *
+ * Written by M�rton N�meth <[email protected]>
+ * Released under GPL
+ */
+
+void test_VIDIOC_G_EXT_CTRLS_zero(void);
+void test_VIDIOC_G_EXT_CTRLS_zero_invalid_count(void);
+void test_VIDIOC_G_EXT_CTRLS_one(void);
+void test_VIDIOC_G_EXT_CTRLS_NULL(void);
+
+void test_VIDIOC_S_EXT_CTRLS_zero(void);
+void test_VIDIOC_S_EXT_CTRLS_zero_invalid_count(void);
+void test_VIDIOC_S_EXT_CTRLS_NULL(void);
+
+void test_VIDIOC_TRY_EXT_CTRLS_zero(void);
+void test_VIDIOC_TRY_EXT_CTRLS_zero_invalid_count(void);
+void test_VIDIOC_TRY_EXT_CTRLS_NULL(void);
testcases/kernel/device-drivers/v4l/user_space/v4l2_test.c +18 -3
diff -uprN ltp.orig/testcases/kernel/device-drivers/v4l/user_space/v4l2_test.c ltp/testcases/kernel/device-drivers/v4l/user_space/v4l2_test.c
@@ -1,6 +1,7 @@
 /*
  * v4l-test: Test environment for Video For Linux Two API
  *
+ * 23 May 2009  0.23 Test cases added for VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS
  *  5 May 2009  0.22 Test cases added for VIDIOC_QUERYBUF
  * 29 Apr 2009  0.21 Test cases added for VIDIOC_REQBUFS
  * 18 Apr 2009  0.20 NULL parameter test suite split to read only, write only
@@ -80,6 +81,7 @@
 #include "test_VIDIOC_AUDOUT.h"
 #include "test_VIDIOC_CROP.h"
 #include "test_VIDIOC_CTRL.h"
+#include "test_VIDIOC_EXT_CTRLS.h"
 #include "test_VIDIOC_PARM.h"
 #include "test_VIDIOC_FMT.h"
 
@@ -221,6 +223,19 @@ static CU_TestInfo suite_get_set_try[] =
   { "VIDIOC_S_CTRL, gain control", test_VIDIOC_S_CTRL_gain },
   { "VIDIOC_S_CTRL, gain control with invalid value parameter", test_VIDIOC_S_CTRL_gain_invalid },
 
+  { "VIDIOC_G_EXT_CTRLS with zero items to get", test_VIDIOC_G_EXT_CTRLS_zero },
+  { "VIDIOC_G_EXT_CTRLS with zero items to get, but with invalid count values", 
+	test_VIDIOC_G_EXT_CTRLS_zero_invalid_count },
+  { "VIDIOC_G_EXT_CTRLS with only one item to get", test_VIDIOC_G_EXT_CTRLS_one },
+
+  { "VIDIOC_S_EXT_CTRLS with zero items to set", test_VIDIOC_S_EXT_CTRLS_zero },
+  { "VIDIOC_S_EXT_CTRLS with zero items to set, but with invalid count values", 
+	test_VIDIOC_S_EXT_CTRLS_zero_invalid_count },
+
+  { "VIDIOC_TRY_EXT_CTRLS with zero items to try", test_VIDIOC_TRY_EXT_CTRLS_zero },
+  { "VIDIOC_TRY_EXT_CTRLS with zero items to try, but with invalid count values", 
+	test_VIDIOC_TRY_EXT_CTRLS_zero_invalid_count },
+
   { "VIDIOC_G_PARM", test_VIDIOC_G_PARM },
   { "VIDIOC_G_PARM with invalid type parameter", test_VIDIOC_G_PARM_invalid },
 
@@ -327,9 +342,9 @@ static CU_TestInfo suite_null_writeread[
   { "VIDIOC_ENUMAUDIO with NULL parameter", test_VIDIOC_ENUMAUDIO_NULL },
   { "VIDIOC_ENUMAUDOUT with NULL parameter", test_VIDIOC_ENUMAUDOUT_NULL },
   { "VIDIOC_G_SLICED_VBI_CAP with NULL parameter", test_VIDIOC_G_SLICED_VBI_CAP_NULL },
-  /* { "VIDIOC_G_EXT_CTRLS with NULL parameter", }, */
-  /* { "VIDIOC_S_EXT_CTRLS with NULL parameter", }, */
-  /* { "VIDIOC_TRY_EXT_CTRLS with NULL parameter", }, */
+  { "VIDIOC_G_EXT_CTRLS with NULL parameter", test_VIDIOC_G_EXT_CTRLS_NULL },
+  { "VIDIOC_S_EXT_CTRLS with NULL parameter", test_VIDIOC_S_EXT_CTRLS_NULL },
+  { "VIDIOC_TRY_EXT_CTRLS with NULL parameter", test_VIDIOC_TRY_EXT_CTRLS_NULL },
   /* { "VIDIOC_ENUM_FRAMESIZES with NULL parameter", }, */
   /* { "VIDIOC_ENUM_FRAMEINTERVALS with NULL parameter", }, */
   /* { "VIDIOC_ENCODER_CMD with NULL parameter", }, */

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises looking to deploy the next generation of Solaris that includes the latest innovations from Sun and the OpenSource community. Download a copy and enjoy capabilities such as Networking, Storage and Virtualization. Go to: http://p.sf.net/sfu/opensolaris-get

_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list

#1 lore raw
Quoted 9 lines · Németh Márton

Hi,

this is the v4l-test 0.15 patch for LTP.

Changes:
Test cases added for VIDIOC_G_EXT_CTRLS, VIDIOC_S_EXT_CTRLS and VIDIOC_TRY_EXT_CTRLS

Thanks.

Regards--
Subrata

Quoted 7 lines

Regards,

Márton Németh

---
v4l-test project home page: http://v4l-test.sourceforge.net/

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises looking to deploy the next generation of Solaris that includes the latest innovations from Sun and the OpenSource community. Download a copy and enjoy capabilities such as Networking, Storage and Virtualization. Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list