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-ctl: add support for U32 control type.
Author:  Hans Verkuil <[email protected]>
Date:    Thu Nov 6 11:45:07 2014 +0100

Signed-off-by: Hans Verkuil <[email protected]>
(cherry picked from commit 62fa03e21a73d64e364071085727034cbf182bf9)

 utils/v4l2-ctl/v4l2-ctl-common.cpp |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

---

http://git.linuxtv.org/cgit.cgi/v4l-utils.git/commit/?id=7810b6f32e6f7901f278fec133901811cb2b02ca

diff --git a/utils/v4l2-ctl/v4l2-ctl-common.cpp 
b/utils/v4l2-ctl/v4l2-ctl-common.cpp
index e00b428..dd8faef 100644
--- a/utils/v4l2-ctl/v4l2-ctl-common.cpp
+++ b/utils/v4l2-ctl/v4l2-ctl-common.cpp
@@ -343,6 +343,12 @@ static void print_qctrl(int fd, struct v4l2_query_ext_ctrl 
*queryctrl,
                                queryctrl->minimum, queryctrl->maximum,
                                queryctrl->step, queryctrl->default_value);
                break;
+       case V4L2_CTRL_TYPE_U32:
+               printf("%31s (u32)    : min=%lld max=%lld step=%lld 
default=%lld",
+                               s.c_str(),
+                               queryctrl->minimum, queryctrl->maximum,
+                               queryctrl->step, queryctrl->default_value);
+               break;
        default:
                printf("%31s (unknown): type=%x", s.c_str(), queryctrl->type);
                break;
@@ -821,6 +827,12 @@ void common_set(int fd)
                                                if (idx_in_subset(qc, subset, 
divide, i))
                                                        ctrl.p_u16[i] = v;
                                        break;
+                               case V4L2_CTRL_TYPE_U32:
+                                       v = strtoul(iter->second.c_str(), NULL, 
0);
+                                       for (i = 0; i < qc.elems; i++)
+                                               if (idx_in_subset(qc, subset, 
divide, i))
+                                                       ctrl.p_u32[i] = v;
+                                       break;
                                case V4L2_CTRL_TYPE_STRING:
                                        strncpy(ctrl.string, 
iter->second.c_str(), qc.maximum);
                                        ctrl.string[qc.maximum] = 0;
@@ -925,6 +937,14 @@ static void print_array(const struct v4l2_query_ext_ctrl 
&qc, void *p)
                        }
                        printf("\n");
                        break;
+               case V4L2_CTRL_TYPE_U32:
+                       for (i = from; i <= to; i++) {
+                               printf("%6d", ((__u32 *)p)[idx + i]);
+                               if (i < to)
+                                       printf(", ");
+                       }
+                       printf("\n");
+                       break;
                }
        }
 }
@@ -983,6 +1003,7 @@ void common_get(int fd)
                                                switch (qc.type) {
                                                case V4L2_CTRL_TYPE_U8:
                                                case V4L2_CTRL_TYPE_U16:
+                                               case V4L2_CTRL_TYPE_U32:
                                                        print_array(qc, 
ctrl.ptr);
                                                        break;
                                                case V4L2_CTRL_TYPE_STRING:

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to