Lines Matching refs:ctrl
119 * ctrl->handler->lock is held when these ops are called, so no
123 int (*g_volatile_ctrl)(struct v4l2_ctrl *ctrl);
124 int (*try_ctrl)(struct v4l2_ctrl *ctrl);
125 int (*s_ctrl)(struct v4l2_ctrl *ctrl);
132 * @equal: return true if all ctrl->elems array elements are equal.
133 * @init: initialize the value for array elements from from_idx to ctrl->elems.
135 * @validate: validate the value for ctrl->new_elems array elements.
139 bool (*equal)(const struct v4l2_ctrl *ctrl,
141 void (*init)(const struct v4l2_ctrl *ctrl, u32 from_idx,
143 void (*log)(const struct v4l2_ctrl *ctrl);
144 int (*validate)(const struct v4l2_ctrl *ctrl, union v4l2_ctrl_ptr ptr);
151 * @ctrl: pointer to struct &v4l2_ctrl
157 typedef void (*v4l2_ctrl_notify_fnc)(struct v4l2_ctrl *ctrl, void *priv);
181 * uses ctrl->val).
316 * @ctrl: The actual control information.
318 * ``prepare_ext_ctrls`` function at ``v4l2-ctrl.c``.
319 * @from_other_dev: If true, then @ctrl was defined in another
329 * result in ENOMEM. Only valid if ctrl->is_array is true.
331 * array. Only valid if @p_req_valid and ctrl->is_array are
334 * ctrl->elems, except for dynamic arrays. In that case it is in
352 struct v4l2_ctrl *ctrl;
568 * @ctrl: The control to lock.
570 static inline void v4l2_ctrl_lock(struct v4l2_ctrl *ctrl)
572 mutex_lock(ctrl->handler->lock);
578 * @ctrl: The control to unlock.
580 static inline void v4l2_ctrl_unlock(struct v4l2_ctrl *ctrl)
582 mutex_unlock(ctrl->handler->lock);
761 * @ctrl: pointer to struct &v4l2_ctrl.
764 typedef bool (*v4l2_ctrl_filter)(const struct v4l2_ctrl *ctrl);
791 * @ctrl: The control that is filtered.
799 bool v4l2_ctrl_radio_filter(const struct v4l2_ctrl *ctrl);
860 * @ctrl: The control to (de)activate.
864 * Does nothing if @ctrl == NULL.
870 void v4l2_ctrl_activate(struct v4l2_ctrl *ctrl, bool active);
875 * @ctrl: The control to (de)activate.
879 * Does nothing if @ctrl == NULL.
886 void __v4l2_ctrl_grab(struct v4l2_ctrl *ctrl, bool grabbed);
891 * @ctrl: The control to (de)activate.
895 * Does nothing if @ctrl == NULL.
903 static inline void v4l2_ctrl_grab(struct v4l2_ctrl *ctrl, bool grabbed)
905 if (!ctrl)
908 v4l2_ctrl_lock(ctrl);
909 __v4l2_ctrl_grab(ctrl, grabbed);
910 v4l2_ctrl_unlock(ctrl);
916 * @ctrl: The control to update.
932 int __v4l2_ctrl_modify_range(struct v4l2_ctrl *ctrl,
938 * @ctrl: The control to update.
954 static inline int v4l2_ctrl_modify_range(struct v4l2_ctrl *ctrl,
959 v4l2_ctrl_lock(ctrl);
960 rval = __v4l2_ctrl_modify_range(ctrl, min, max, step, def);
961 v4l2_ctrl_unlock(ctrl);
969 * @ctrl: The control to update.
985 int __v4l2_ctrl_modify_dimensions(struct v4l2_ctrl *ctrl,
991 * @ctrl: The control to update.
1007 static inline int v4l2_ctrl_modify_dimensions(struct v4l2_ctrl *ctrl,
1012 v4l2_ctrl_lock(ctrl);
1013 rval = __v4l2_ctrl_modify_dimensions(ctrl, dims);
1014 v4l2_ctrl_unlock(ctrl);
1022 * @ctrl: The control.
1026 * This function sets a callback function for the control. If @ctrl is NULL,
1033 void v4l2_ctrl_notify(struct v4l2_ctrl *ctrl, v4l2_ctrl_notify_fnc notify,
1071 * @ctrl: The control.
1079 s32 v4l2_ctrl_g_ctrl(struct v4l2_ctrl *ctrl);
1084 * @ctrl: The control.
1093 int __v4l2_ctrl_s_ctrl(struct v4l2_ctrl *ctrl, s32 val);
1098 * @ctrl: The control.
1107 static inline int v4l2_ctrl_s_ctrl(struct v4l2_ctrl *ctrl, s32 val)
1111 v4l2_ctrl_lock(ctrl);
1112 rval = __v4l2_ctrl_s_ctrl(ctrl, val);
1113 v4l2_ctrl_unlock(ctrl);
1122 * @ctrl: The control.
1130 s64 v4l2_ctrl_g_ctrl_int64(struct v4l2_ctrl *ctrl);
1135 * @ctrl: The control.
1144 int __v4l2_ctrl_s_ctrl_int64(struct v4l2_ctrl *ctrl, s64 val);
1150 * @ctrl: The control.
1159 static inline int v4l2_ctrl_s_ctrl_int64(struct v4l2_ctrl *ctrl, s64 val)
1163 v4l2_ctrl_lock(ctrl);
1164 rval = __v4l2_ctrl_s_ctrl_int64(ctrl, val);
1165 v4l2_ctrl_unlock(ctrl);
1173 * @ctrl: The control.
1182 int __v4l2_ctrl_s_ctrl_string(struct v4l2_ctrl *ctrl, const char *s);
1188 * @ctrl: The control.
1197 static inline int v4l2_ctrl_s_ctrl_string(struct v4l2_ctrl *ctrl, const char *s)
1201 v4l2_ctrl_lock(ctrl);
1202 rval = __v4l2_ctrl_s_ctrl_string(ctrl, s);
1203 v4l2_ctrl_unlock(ctrl);
1211 * @ctrl: The control.
1221 int __v4l2_ctrl_s_ctrl_compound(struct v4l2_ctrl *ctrl,
1228 * @ctrl: The control.
1238 static inline int v4l2_ctrl_s_ctrl_compound(struct v4l2_ctrl *ctrl,
1244 v4l2_ctrl_lock(ctrl);
1245 rval = __v4l2_ctrl_s_ctrl_compound(ctrl, type, p);
1246 v4l2_ctrl_unlock(ctrl);
1252 #define __v4l2_ctrl_s_ctrl_area(ctrl, area) \
1253 __v4l2_ctrl_s_ctrl_compound((ctrl), V4L2_CTRL_TYPE_AREA, (area))
1254 #define v4l2_ctrl_s_ctrl_area(ctrl, area) \
1255 v4l2_ctrl_s_ctrl_compound((ctrl), V4L2_CTRL_TYPE_AREA, (area))
1435 * @ctrl: pointer to &struct v4l2_control
1439 int v4l2_g_ctrl(struct v4l2_ctrl_handler *hdl, struct v4l2_control *ctrl);
1448 * @ctrl: pointer to &struct v4l2_control
1453 struct v4l2_control *ctrl);
1551 * @ctrl: The v4l2_ctrl pointer.
1557 bool v4l2_ctrl_type_op_equal(const struct v4l2_ctrl *ctrl,
1563 * @ctrl: The v4l2_ctrl pointer.
1569 void v4l2_ctrl_type_op_init(const struct v4l2_ctrl *ctrl, u32 from_idx,
1575 * @ctrl: The v4l2_ctrl pointer.
1579 void v4l2_ctrl_type_op_log(const struct v4l2_ctrl *ctrl);
1584 * @ctrl: The v4l2_ctrl pointer.
1589 int v4l2_ctrl_type_op_validate(const struct v4l2_ctrl *ctrl, union v4l2_ctrl_ptr ptr);