diff options
author | Jacopo Mondi <jacopo@jmondi.org> | 2020-03-04 14:01:26 +0100 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2020-03-23 16:45:30 +0200 |
commit | 9b838b87c75f1825f73df05d30cd71926d11f079 (patch) | |
tree | fe3b732fb4127e1f4b6863fb0e00fdfce997c5cc | |
parent | 55ead4647794072a4f4a866a65d18f8483c2998d (diff) |
libcamera: v4l2_device: Enable enumeration of U8 controls
Enable the enumeration of V4L2 array controls with V4L2_CTRL_TYPE_U8
type.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-rw-r--r-- | src/libcamera/v4l2_device.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/libcamera/v4l2_device.cpp b/src/libcamera/v4l2_device.cpp index 3c91eb3f..03e30516 100644 --- a/src/libcamera/v4l2_device.cpp +++ b/src/libcamera/v4l2_device.cpp @@ -386,7 +386,8 @@ void V4L2Device::listControls() /* \todo Add support for menu and compound controls. */ while (1) { - ctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL; + ctrl.id |= V4L2_CTRL_FLAG_NEXT_CTRL | + V4L2_CTRL_FLAG_NEXT_COMPOUND; if (ioctl(VIDIOC_QUERY_EXT_CTRL, &ctrl)) break; @@ -394,13 +395,6 @@ void V4L2Device::listControls() ctrl.flags & V4L2_CTRL_FLAG_DISABLED) continue; - if (ctrl.elems != 1 || ctrl.nr_of_dims) { - LOG(V4L2, Debug) - << "Array control " << utils::hex(ctrl.id) - << " not supported"; - continue; - } - switch (ctrl.type) { case V4L2_CTRL_TYPE_INTEGER: case V4L2_CTRL_TYPE_BOOLEAN: @@ -409,8 +403,9 @@ void V4L2Device::listControls() case V4L2_CTRL_TYPE_INTEGER64: case V4L2_CTRL_TYPE_BITMASK: case V4L2_CTRL_TYPE_INTEGER_MENU: + case V4L2_CTRL_TYPE_U8: break; - /* \todo Support compound controls. */ + /* \todo Support other control types. */ default: LOG(V4L2, Debug) << "Control " << utils::hex(ctrl.id) |