media: amphion: Remove lock in s_ctrl callback

There is no need to add a lock in s_ctrl callback, it has been
synchronized by the ctrl_handler's lock, otherwise it may led to
a deadlock if the driver calls v4l2_ctrl_s_ctrl().

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Sebastian Fricke <sebastian.fricke@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
Ming Qian 2024-05-06 17:49:17 +09:00 committed by Hans Verkuil
parent 62096c4839
commit 065927b51e
2 changed files with 0 additions and 4 deletions

View file

@ -195,7 +195,6 @@ static int vdec_op_s_ctrl(struct v4l2_ctrl *ctrl)
struct vdec_t *vdec = inst->priv; struct vdec_t *vdec = inst->priv;
int ret = 0; int ret = 0;
vpu_inst_lock(inst);
switch (ctrl->id) { switch (ctrl->id) {
case V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY_ENABLE: case V4L2_CID_MPEG_VIDEO_DEC_DISPLAY_DELAY_ENABLE:
vdec->params.display_delay_enable = ctrl->val; vdec->params.display_delay_enable = ctrl->val;
@ -207,7 +206,6 @@ static int vdec_op_s_ctrl(struct v4l2_ctrl *ctrl)
ret = -EINVAL; ret = -EINVAL;
break; break;
} }
vpu_inst_unlock(inst);
return ret; return ret;
} }

View file

@ -518,7 +518,6 @@ static int venc_op_s_ctrl(struct v4l2_ctrl *ctrl)
struct venc_t *venc = inst->priv; struct venc_t *venc = inst->priv;
int ret = 0; int ret = 0;
vpu_inst_lock(inst);
switch (ctrl->id) { switch (ctrl->id) {
case V4L2_CID_MPEG_VIDEO_H264_PROFILE: case V4L2_CID_MPEG_VIDEO_H264_PROFILE:
venc->params.profile = ctrl->val; venc->params.profile = ctrl->val;
@ -579,7 +578,6 @@ static int venc_op_s_ctrl(struct v4l2_ctrl *ctrl)
ret = -EINVAL; ret = -EINVAL;
break; break;
} }
vpu_inst_unlock(inst);
return ret; return ret;
} }