static int fmi_s_ctrl(struct v4l2_ctrl *ctrl) { struct fmi *fmi = container_of(ctrl->handler, struct fmi, hdl); switch (ctrl->id) { case V4L2_CID_AUDIO_MUTE: if (ctrl->val) fmi_mute(fmi); else fmi_unmute(fmi); fmi->mute = ctrl->val; return 0; } return -EINVAL; }
static int vidioc_s_ctrl(struct file *file, void *priv, struct v4l2_control *ctrl) { struct fmi *fmi = video_drvdata(file); switch (ctrl->id) { case V4L2_CID_AUDIO_MUTE: if (ctrl->value) fmi_mute(fmi); else fmi_unmute(fmi); fmi->mute = ctrl->value; return 0; } return -EINVAL; }