mirror of https://gitee.com/openkylin/linux.git
[media] davinci_vpfe: Revert "staging: media: davinci_vpfe: remove,unnecessary ret variable"
This reverts commit afa5d19a2b
("staging: media: davinci_vpfe: remove
unnecessary ret variable").
This patch is completely bogus and messed up the code big time.
I'm not sure what was intended, but this isn't it.
Cc: Thaissa Falbo <thaissa.falbo@gmail.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
d5468d7afa
commit
8bbb656842
|
@ -172,9 +172,11 @@ static int vpfe_prepare_pipeline(struct vpfe_video_device *video)
|
|||
static int vpfe_update_pipe_state(struct vpfe_video_device *video)
|
||||
{
|
||||
struct vpfe_pipeline *pipe = &video->pipe;
|
||||
int ret;
|
||||
|
||||
if (vpfe_prepare_pipeline(video))
|
||||
return vpfe_prepare_pipeline(video);
|
||||
ret = vpfe_prepare_pipeline(video);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
/*
|
||||
* Find out if there is any input video
|
||||
|
@ -182,9 +184,10 @@ static int vpfe_update_pipe_state(struct vpfe_video_device *video)
|
|||
*/
|
||||
if (pipe->input_num == 0) {
|
||||
pipe->state = VPFE_PIPELINE_STREAM_CONTINUOUS;
|
||||
if (vpfe_update_current_ext_subdev(video)) {
|
||||
ret = vpfe_update_current_ext_subdev(video);
|
||||
if (ret) {
|
||||
pr_err("Invalid external subdev\n");
|
||||
return vpfe_update_current_ext_subdev(video);
|
||||
return ret;
|
||||
}
|
||||
} else {
|
||||
pipe->state = VPFE_PIPELINE_STREAM_SINGLESHOT;
|
||||
|
@ -667,6 +670,7 @@ static int vpfe_enum_fmt(struct file *file, void *priv,
|
|||
struct v4l2_subdev *subdev;
|
||||
struct v4l2_format format;
|
||||
struct media_pad *remote;
|
||||
int ret;
|
||||
|
||||
v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_enum_fmt\n");
|
||||
|
||||
|
@ -695,10 +699,11 @@ static int vpfe_enum_fmt(struct file *file, void *priv,
|
|||
sd_fmt.pad = remote->index;
|
||||
sd_fmt.which = V4L2_SUBDEV_FORMAT_ACTIVE;
|
||||
/* get output format of remote subdev */
|
||||
if (v4l2_subdev_call(subdev, pad, get_fmt, NULL, &sd_fmt)) {
|
||||
ret = v4l2_subdev_call(subdev, pad, get_fmt, NULL, &sd_fmt);
|
||||
if (ret) {
|
||||
v4l2_err(&vpfe_dev->v4l2_dev,
|
||||
"invalid remote subdev for video node\n");
|
||||
return v4l2_subdev_call(subdev, pad, get_fmt, NULL, &sd_fmt);
|
||||
return ret;
|
||||
}
|
||||
/* convert to pix format */
|
||||
mbus.code = sd_fmt.format.code;
|
||||
|
@ -725,6 +730,7 @@ static int vpfe_s_fmt(struct file *file, void *priv,
|
|||
struct vpfe_video_device *video = video_drvdata(file);
|
||||
struct vpfe_device *vpfe_dev = video->vpfe_dev;
|
||||
struct v4l2_format format;
|
||||
int ret;
|
||||
|
||||
v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_s_fmt\n");
|
||||
/* If streaming is started, return error */
|
||||
|
@ -733,8 +739,9 @@ static int vpfe_s_fmt(struct file *file, void *priv,
|
|||
return -EBUSY;
|
||||
}
|
||||
/* get adjacent subdev's output pad format */
|
||||
if (__vpfe_video_get_format(video, &format))
|
||||
return __vpfe_video_get_format(video, &format);
|
||||
ret = __vpfe_video_get_format(video, &format);
|
||||
if (ret)
|
||||
return ret;
|
||||
*fmt = format;
|
||||
video->fmt = *fmt;
|
||||
return 0;
|
||||
|
@ -757,11 +764,13 @@ static int vpfe_try_fmt(struct file *file, void *priv,
|
|||
struct vpfe_video_device *video = video_drvdata(file);
|
||||
struct vpfe_device *vpfe_dev = video->vpfe_dev;
|
||||
struct v4l2_format format;
|
||||
int ret;
|
||||
|
||||
v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_try_fmt\n");
|
||||
/* get adjacent subdev's output pad format */
|
||||
if (__vpfe_video_get_format(video, &format))
|
||||
return __vpfe_video_get_format(video, &format);
|
||||
ret = __vpfe_video_get_format(video, &format);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
*fmt = format;
|
||||
return 0;
|
||||
|
@ -838,8 +847,9 @@ static int vpfe_s_input(struct file *file, void *priv, unsigned int index)
|
|||
|
||||
v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_s_input\n");
|
||||
|
||||
if (mutex_lock_interruptible(&video->lock))
|
||||
return mutex_lock_interruptible(&video->lock);
|
||||
ret = mutex_lock_interruptible(&video->lock);
|
||||
if (ret)
|
||||
return ret;
|
||||
/*
|
||||
* If streaming is started return device busy
|
||||
* error
|
||||
|
@ -940,8 +950,9 @@ static int vpfe_s_std(struct file *file, void *priv, v4l2_std_id std_id)
|
|||
v4l2_dbg(1, debug, &vpfe_dev->v4l2_dev, "vpfe_s_std\n");
|
||||
|
||||
/* Call decoder driver function to set the standard */
|
||||
if (mutex_lock_interruptible(&video->lock))
|
||||
return mutex_lock_interruptible(&video->lock);
|
||||
ret = mutex_lock_interruptible(&video->lock);
|
||||
if (ret)
|
||||
return ret;
|
||||
sdinfo = video->current_ext_subdev;
|
||||
/* If streaming is started, return device busy error */
|
||||
if (video->started) {
|
||||
|
@ -1327,8 +1338,9 @@ static int vpfe_reqbufs(struct file *file, void *priv,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (mutex_lock_interruptible(&video->lock))
|
||||
return mutex_lock_interruptible(&video->lock);
|
||||
ret = mutex_lock_interruptible(&video->lock);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
if (video->io_usrs != 0) {
|
||||
v4l2_err(&vpfe_dev->v4l2_dev, "Only one IO user allowed\n");
|
||||
|
@ -1354,10 +1366,11 @@ static int vpfe_reqbufs(struct file *file, void *priv,
|
|||
q->buf_struct_size = sizeof(struct vpfe_cap_buffer);
|
||||
q->timestamp_flags = V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC;
|
||||
|
||||
if (vb2_queue_init(q)) {
|
||||
ret = vb2_queue_init(q);
|
||||
if (ret) {
|
||||
v4l2_err(&vpfe_dev->v4l2_dev, "vb2_queue_init() failed\n");
|
||||
vb2_dma_contig_cleanup_ctx(vpfe_dev->pdev);
|
||||
return vb2_queue_init(q);
|
||||
return ret;
|
||||
}
|
||||
|
||||
fh->io_allowed = 1;
|
||||
|
@ -1533,8 +1546,9 @@ static int vpfe_streamoff(struct file *file, void *priv,
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (mutex_lock_interruptible(&video->lock))
|
||||
return mutex_lock_interruptible(&video->lock);
|
||||
ret = mutex_lock_interruptible(&video->lock);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
vpfe_stop_capture(video);
|
||||
ret = vb2_streamoff(&video->buffer_queue, buf_type);
|
||||
|
|
Loading…
Reference in New Issue