Lines Matching refs:qctrl
546 static int cx2341x_ctrl_query_fill(struct v4l2_queryctrl *qctrl, in cx2341x_ctrl_query_fill() argument
551 switch (qctrl->id) { in cx2341x_ctrl_query_fill()
565 cx2341x_ctrl_fill(qctrl->id, &name, &qctrl->type, in cx2341x_ctrl_query_fill()
566 &min, &max, &step, &def, &qctrl->flags); in cx2341x_ctrl_query_fill()
567 qctrl->minimum = min; in cx2341x_ctrl_query_fill()
568 qctrl->maximum = max; in cx2341x_ctrl_query_fill()
569 qctrl->step = step; in cx2341x_ctrl_query_fill()
570 qctrl->default_value = def; in cx2341x_ctrl_query_fill()
571 qctrl->reserved[0] = qctrl->reserved[1] = 0; in cx2341x_ctrl_query_fill()
572 strlcpy(qctrl->name, name, sizeof(qctrl->name)); in cx2341x_ctrl_query_fill()
576 return v4l2_ctrl_query_fill(qctrl, min, max, step, def); in cx2341x_ctrl_query_fill()
581 struct v4l2_queryctrl *qctrl) in cx2341x_ctrl_query() argument
585 switch (qctrl->id) { in cx2341x_ctrl_query()
587 return v4l2_ctrl_query_fill(qctrl, 0, 0, 0, 0); in cx2341x_ctrl_query()
589 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
596 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
600 return cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
606 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
619 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
625 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
631 err = v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
639 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
643 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
649 err = v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
655 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
659 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
665 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
671 return v4l2_ctrl_query_fill(qctrl, 0, 1, 1, 0); in cx2341x_ctrl_query()
674 err = v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
683 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
685 qctrl->flags |= V4L2_CTRL_FLAG_DISABLED; in cx2341x_ctrl_query()
692 err = v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
697 qctrl->flags |= V4L2_CTRL_FLAG_READ_ONLY; in cx2341x_ctrl_query()
701 return v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
707 return v4l2_ctrl_query_fill(qctrl, 0, 33, 1, 2); in cx2341x_ctrl_query()
710 return v4l2_ctrl_query_fill(qctrl, 1, 34, 1, in cx2341x_ctrl_query()
714 return v4l2_ctrl_query_fill(qctrl, 0, 1, 1, 1); in cx2341x_ctrl_query()
717 err = v4l2_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
723 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
727 return v4l2_ctrl_query_fill(qctrl, 0, 27000000, 1, 6000000); in cx2341x_ctrl_query()
730 err = v4l2_ctrl_query_fill(qctrl, 0, 27000000, 1, 8000000); in cx2341x_ctrl_query()
734 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
738 return v4l2_ctrl_query_fill(qctrl, 0, 255, 1, 0); in cx2341x_ctrl_query()
741 return v4l2_ctrl_query_fill(qctrl, 0, 1, 1, 0); in cx2341x_ctrl_query()
744 return v4l2_ctrl_query_fill(qctrl, 0, 0xffffff, 1, 0x008080); in cx2341x_ctrl_query()
748 return cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
754 cx2341x_ctrl_query_fill(qctrl, 0, 15, 1, in cx2341x_ctrl_query()
756 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
759 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
763 cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
770 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
774 cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
781 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
785 return cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
791 cx2341x_ctrl_query_fill(qctrl, 0, 31, 1, in cx2341x_ctrl_query()
793 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
796 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
800 return cx2341x_ctrl_query_fill(qctrl, in cx2341x_ctrl_query()
806 cx2341x_ctrl_query_fill(qctrl, 0, 255, 1, in cx2341x_ctrl_query()
808 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
811 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
815 cx2341x_ctrl_query_fill(qctrl, 0, 255, 1, in cx2341x_ctrl_query()
817 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
820 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
824 cx2341x_ctrl_query_fill(qctrl, 0, 255, 1, in cx2341x_ctrl_query()
826 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
829 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
833 cx2341x_ctrl_query_fill(qctrl, 0, 255, 1, in cx2341x_ctrl_query()
835 qctrl->flags |= V4L2_CTRL_FLAG_SLIDER; in cx2341x_ctrl_query()
838 qctrl->flags |= V4L2_CTRL_FLAG_INACTIVE; in cx2341x_ctrl_query()
842 return cx2341x_ctrl_query_fill(qctrl, 0, 1, 1, in cx2341x_ctrl_query()
933 static int v4l2_ctrl_check(struct v4l2_ext_control *ctrl, struct v4l2_queryctrl *qctrl, in v4l2_ctrl_check() argument
936 if (qctrl->flags & V4L2_CTRL_FLAG_DISABLED) in v4l2_ctrl_check()
938 if (qctrl->flags & V4L2_CTRL_FLAG_GRABBED) in v4l2_ctrl_check()
940 if (qctrl->type == V4L2_CTRL_TYPE_STRING) in v4l2_ctrl_check()
942 if (qctrl->type == V4L2_CTRL_TYPE_BUTTON || in v4l2_ctrl_check()
943 qctrl->type == V4L2_CTRL_TYPE_INTEGER64 || in v4l2_ctrl_check()
944 qctrl->type == V4L2_CTRL_TYPE_CTRL_CLASS) in v4l2_ctrl_check()
946 if (ctrl->value < qctrl->minimum || ctrl->value > qctrl->maximum) in v4l2_ctrl_check()
948 if (qctrl->type == V4L2_CTRL_TYPE_MENU && menu_items != NULL) { in v4l2_ctrl_check()
953 if (qctrl->type == V4L2_CTRL_TYPE_BITMASK && in v4l2_ctrl_check()
954 (ctrl->value & ~qctrl->maximum)) in v4l2_ctrl_check()
979 struct v4l2_queryctrl qctrl; in cx2341x_ext_ctrls() local
982 qctrl.id = ctrl->id; in cx2341x_ext_ctrls()
983 err = cx2341x_ctrl_query(params, &qctrl); in cx2341x_ext_ctrls()
986 if (qctrl.type == V4L2_CTRL_TYPE_MENU) in cx2341x_ext_ctrls()
987 menu_items = cx2341x_ctrl_get_menu(params, qctrl.id); in cx2341x_ext_ctrls()
988 err = v4l2_ctrl_check(ctrl, &qctrl, menu_items); in cx2341x_ext_ctrls()