mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
[media] v4l: ctrls: Provide an unlocked variant of v4l2_ctrl_modify_range()
Drivers may use the v4l2_ctrl_modify_range() internally as part of other operations that need to be both serialised using a driver's lock which can also be used to serialise access to the control handler. Provide an unlocked version of the function, __v4l2_ctrl_modify_range() which then may be used by drivers for the purpose. Signed-off-by: Sakari Ailus <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
This commit is contained in:
parent
605b38403b
commit
5a57392515
2 changed files with 20 additions and 6 deletions
|
|
@ -620,6 +620,11 @@ void v4l2_ctrl_activate(struct v4l2_ctrl *ctrl, bool active);
|
|||
*/
|
||||
void v4l2_ctrl_grab(struct v4l2_ctrl *ctrl, bool grabbed);
|
||||
|
||||
|
||||
/** __v4l2_ctrl_modify_range() - Unlocked variant of v4l2_ctrl_modify_range() */
|
||||
int __v4l2_ctrl_modify_range(struct v4l2_ctrl *ctrl,
|
||||
s64 min, s64 max, u64 step, s64 def);
|
||||
|
||||
/** v4l2_ctrl_modify_range() - Update the range of a control.
|
||||
* @ctrl: The control to update.
|
||||
* @min: The control's minimum value.
|
||||
|
|
@ -637,8 +642,17 @@ void v4l2_ctrl_grab(struct v4l2_ctrl *ctrl, bool grabbed);
|
|||
* This function assumes that the control handler is not locked and will
|
||||
* take the lock itself.
|
||||
*/
|
||||
int v4l2_ctrl_modify_range(struct v4l2_ctrl *ctrl,
|
||||
s64 min, s64 max, u64 step, s64 def);
|
||||
static inline int v4l2_ctrl_modify_range(struct v4l2_ctrl *ctrl,
|
||||
s64 min, s64 max, u64 step, s64 def)
|
||||
{
|
||||
int rval;
|
||||
|
||||
v4l2_ctrl_lock(ctrl);
|
||||
rval = __v4l2_ctrl_modify_range(ctrl, min, max, step, def);
|
||||
v4l2_ctrl_unlock(ctrl);
|
||||
|
||||
return rval;
|
||||
}
|
||||
|
||||
/** v4l2_ctrl_notify() - Function to set a notify callback for a control.
|
||||
* @ctrl: The control.
|
||||
|
|
|
|||
Loading…
Reference in a new issue