Lines Matching refs:ctrl
189 static int m5mols_3a_lock(struct m5mols_info *info, struct v4l2_ctrl *ctrl) in m5mols_3a_lock() argument
191 bool af_lock = ctrl->val & V4L2_LOCK_FOCUS; in m5mols_3a_lock()
194 if ((ctrl->val ^ ctrl->cur.val) & V4L2_LOCK_EXPOSURE) { in m5mols_3a_lock()
195 bool ae_lock = ctrl->val & V4L2_LOCK_EXPOSURE; in m5mols_3a_lock()
203 if (((ctrl->val ^ ctrl->cur.val) & V4L2_LOCK_WHITE_BALANCE) in m5mols_3a_lock()
205 bool awb_lock = ctrl->val & V4L2_LOCK_WHITE_BALANCE; in m5mols_3a_lock()
216 if ((ctrl->val ^ ctrl->cur.val) & V4L2_LOCK_FOCUS) in m5mols_3a_lock()
403 static int m5mols_g_volatile_ctrl(struct v4l2_ctrl *ctrl) in m5mols_g_volatile_ctrl() argument
405 struct v4l2_subdev *sd = to_sd(ctrl); in m5mols_g_volatile_ctrl()
411 __func__, ctrl->name, info->isp_ready); in m5mols_g_volatile_ctrl()
416 switch (ctrl->id) { in m5mols_g_volatile_ctrl()
420 ctrl->val = !status; in m5mols_g_volatile_ctrl()
426 ctrl->val &= ~0x7; in m5mols_g_volatile_ctrl()
449 static int m5mols_s_ctrl(struct v4l2_ctrl *ctrl) in m5mols_s_ctrl() argument
451 unsigned int ctrl_mode = m5mols_get_ctrl_mode(ctrl); in m5mols_s_ctrl()
452 struct v4l2_subdev *sd = to_sd(ctrl); in m5mols_s_ctrl()
467 __func__, ctrl->name, ctrl->val, ctrl->priv); in m5mols_s_ctrl()
475 switch (ctrl->id) { in m5mols_s_ctrl()
477 ret = m5mols_3a_lock(info, ctrl); in m5mols_s_ctrl()
481 ret = m5mols_write(sd, MON_ZOOM, ctrl->val); in m5mols_s_ctrl()
485 ret = m5mols_set_exposure(info, ctrl->val); in m5mols_s_ctrl()
489 ret = m5mols_set_iso(info, ctrl->val); in m5mols_s_ctrl()
493 ret = m5mols_set_white_balance(info, ctrl->val); in m5mols_s_ctrl()
497 ret = m5mols_set_saturation(info, ctrl->val); in m5mols_s_ctrl()
501 ret = m5mols_set_color_effect(info, ctrl->val); in m5mols_s_ctrl()
505 ret = m5mols_set_wdr(info, ctrl->val); in m5mols_s_ctrl()
509 ret = m5mols_set_stabilization(info, ctrl->val); in m5mols_s_ctrl()
513 ret = m5mols_write(sd, CAPP_JPEG_RATIO, ctrl->val); in m5mols_s_ctrl()