media: staging/imx: Move add_video_device into capture_device_register

Move imx_media_add_video_device() into imx_media_capture_device_register().
Also the former has no error conditions to convert to void.

Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
This commit is contained in:
Steve Longerbeam 2019-05-10 17:50:07 -04:00 committed by Mauro Carvalho Chehab
parent 34ff38745b
commit 3e80d125b5
6 changed files with 11 additions and 29 deletions

View file

@ -1237,7 +1237,6 @@ static int prp_s_frame_interval(struct v4l2_subdev *sd,
static int prp_registered(struct v4l2_subdev *sd)
{
struct prp_priv *priv = sd_to_priv(sd);
struct imx_ic_priv *ic_priv = priv->ic_priv;
int i, ret;
u32 code;
@ -1267,10 +1266,6 @@ static int prp_registered(struct v4l2_subdev *sd)
if (ret)
return ret;
ret = imx_media_add_video_device(ic_priv->md, priv->vdev);
if (ret)
goto unreg;
ret = prp_init_controls(priv);
if (ret)
goto unreg;

View file

@ -774,6 +774,9 @@ int imx_media_capture_device_register(struct imx_media_video_dev *vdev)
vfd->ctrl_handler = &priv->ctrl_hdlr;
/* add vdev to the video device list */
imx_media_add_video_device(priv->md, vdev);
return 0;
unreg:
video_unregister_device(vfd);

View file

@ -1816,13 +1816,8 @@ static int csi_registered(struct v4l2_subdev *sd)
if (ret)
goto free_fim;
ret = imx_media_add_video_device(priv->md, priv->vdev);
if (ret)
goto unreg;
return 0;
unreg:
imx_media_capture_device_unregister(priv->vdev);
free_fim:
if (priv->fim)
imx_media_fim_free(priv->fim);

View file

@ -763,18 +763,17 @@ imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd,
EXPORT_SYMBOL_GPL(imx_media_find_subdev_by_devname);
/*
* Adds a video device to the master video device list. This is called by
* an async subdev that owns a video device when it is registered.
* Adds a video device to the master video device list. This is called
* when a video device is registered.
*/
int imx_media_add_video_device(struct imx_media_dev *imxmd,
struct imx_media_video_dev *vdev)
void imx_media_add_video_device(struct imx_media_dev *imxmd,
struct imx_media_video_dev *vdev)
{
mutex_lock(&imxmd->mutex);
list_add_tail(&vdev->list, &imxmd->vdev_list);
mutex_unlock(&imxmd->mutex);
return 0;
}
EXPORT_SYMBOL_GPL(imx_media_add_video_device);

View file

@ -185,8 +185,8 @@ imx_media_find_subdev_by_fwnode(struct imx_media_dev *imxmd,
struct v4l2_subdev *
imx_media_find_subdev_by_devname(struct imx_media_dev *imxmd,
const char *devname);
int imx_media_add_video_device(struct imx_media_dev *imxmd,
struct imx_media_video_dev *vdev);
void imx_media_add_video_device(struct imx_media_dev *imxmd,
struct imx_media_video_dev *vdev);
int imx_media_find_mipi_csi2_channel(struct imx_media_dev *imxmd,
struct media_entity *start_entity);
struct media_pad *

View file

@ -1126,17 +1126,7 @@ static int imx7_csi_registered(struct v4l2_subdev *sd)
if (ret < 0)
return ret;
ret = imx_media_capture_device_register(csi->vdev);
if (ret < 0)
return ret;
ret = imx_media_add_video_device(csi->imxmd, csi->vdev);
if (ret < 0) {
imx_media_capture_device_unregister(csi->vdev);
return ret;
}
return 0;
return imx_media_capture_device_register(csi->vdev);
}
static void imx7_csi_unregistered(struct v4l2_subdev *sd)