media: imx: imx7-media-csi: Don't lock access to is_csi2
The is_csi2 field can't be accessed concurrently by imx7_csi_pad_link_validate() and imx7_csi_configure(), as the latter is called from imx7_csi_s_stream(), which is called after link validation. Drop the lock. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Rui Miguel Silva <rmfrfs@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
This commit is contained in:
parent
c6f02291d1
commit
3c1dbc71c6
@ -1001,7 +1001,6 @@ static int imx7_csi_pad_link_validate(struct v4l2_subdev *sd,
|
||||
struct imx_media_video_dev *vdev = csi->vdev;
|
||||
const struct v4l2_pix_format *out_pix = &vdev->fmt;
|
||||
struct media_pad *pad;
|
||||
bool is_csi2;
|
||||
int ret;
|
||||
|
||||
if (!csi->src_sd)
|
||||
@ -1018,7 +1017,7 @@ static int imx7_csi_pad_link_validate(struct v4l2_subdev *sd,
|
||||
switch (csi->src_sd->entity.function) {
|
||||
case MEDIA_ENT_F_VID_IF_BRIDGE:
|
||||
/* The input is the CSI-2 receiver. */
|
||||
is_csi2 = true;
|
||||
csi->is_csi2 = true;
|
||||
break;
|
||||
|
||||
case MEDIA_ENT_F_VID_MUX:
|
||||
@ -1027,7 +1026,7 @@ static int imx7_csi_pad_link_validate(struct v4l2_subdev *sd,
|
||||
if (!pad)
|
||||
return -ENODEV;
|
||||
|
||||
is_csi2 = pad->entity->function == MEDIA_ENT_F_VID_IF_BRIDGE;
|
||||
csi->is_csi2 = pad->entity->function == MEDIA_ENT_F_VID_IF_BRIDGE;
|
||||
break;
|
||||
|
||||
default:
|
||||
@ -1035,14 +1034,10 @@ static int imx7_csi_pad_link_validate(struct v4l2_subdev *sd,
|
||||
* The input is an external entity, it must use the parallel
|
||||
* bus.
|
||||
*/
|
||||
is_csi2 = false;
|
||||
csi->is_csi2 = false;
|
||||
break;
|
||||
}
|
||||
|
||||
mutex_lock(&csi->lock);
|
||||
csi->is_csi2 = is_csi2;
|
||||
mutex_unlock(&csi->lock);
|
||||
|
||||
/* Validate the sink link, ensure the pixel format is supported. */
|
||||
switch (out_pix->pixelformat) {
|
||||
case V4L2_PIX_FMT_UYVY:
|
||||
|
Loading…
x
Reference in New Issue
Block a user