提交 7d4b6f55 编写于 作者: R Russell King 提交者: Mauro Carvalho Chehab

media: staging/imx: fix complete handler

The complete handler walks all entities, expecting to find an imx
subdevice for each and every entity.

However, camera drivers such as smiapp can themselves contain multiple
entities, for which there will not be an imx subdevice.  This causes
imx_media_find_subdev_by_sd() to fail, making the imx capture system
unusable with such cameras.

Work around this by killing the error entirely, thereby allowing
the imx capture to be used with such cameras.
Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk>
Acked-by: NSteve Longerbeam <steve_longerbeam@mentor.com>
Signed-off-by: NMauro Carvalho Chehab <mchehab@s-opensource.com>
上级 7bf7a711
......@@ -345,8 +345,11 @@ static int imx_media_add_vdev_to_pad(struct imx_media_dev *imxmd,
sd = media_entity_to_v4l2_subdev(entity);
imxsd = imx_media_find_subdev_by_sd(imxmd, sd);
if (IS_ERR(imxsd))
return PTR_ERR(imxsd);
if (IS_ERR(imxsd)) {
v4l2_err(&imxmd->v4l2_dev, "failed to find subdev for entity %s, sd %p err %ld\n",
entity->name, sd, PTR_ERR(imxsd));
return 0;
}
imxpad = &imxsd->pad[srcpad->index];
vdev_idx = imxpad->num_vdevs;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册