libcamera: V4L2Device: Support v4l2 menu control

This adds a support of v4l2 menu. The control info for v4l2 menu
contains indices without names and 64bit values of querymenu.

Signed-off-by: Hirokazu Honda <hiroh@chromium.org>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
This commit is contained in:
Hirokazu Honda
2021-06-10 17:25:35 +09:00
committed by Jacopo Mondi
parent b8302cd44a
commit c520531884
2 changed files with 124 additions and 68 deletions
+5
View File
@@ -56,6 +56,11 @@ protected:
int fd() const { return fd_; }
private:
static ControlType v4l2CtrlType(uint32_t ctrlType);
static std::unique_ptr<ControlId> v4l2ControlId(const v4l2_query_ext_ctrl &ctrl);
ControlInfo v4l2ControlInfo(const v4l2_query_ext_ctrl &ctrl);
ControlInfo v4l2MenuControlInfo(const v4l2_query_ext_ctrl &ctrl);
void listControls();
void updateControls(ControlList *ctrls,
Span<const v4l2_ext_control> v4l2Ctrls);