提交 aab84f55 编写于 作者: S Sakari Ailus 提交者: Mauro Carvalho Chehab

[media] omap3isp: Find source pad from external entity

No longer assume pad number 0 is the source pad of the external entity. Find
the source pad from the external entity and use it instead.
Signed-off-by: NSakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: NMauro Carvalho Chehab <mchehab@redhat.com>
上级 a7b21061
......@@ -1767,6 +1767,7 @@ static int isp_register_entities(struct isp_device *isp)
struct media_entity *input;
unsigned int flags;
unsigned int pad;
unsigned int i;
sensor = isp_register_subdev_group(isp, subdevs->subdevs);
if (sensor == NULL)
......@@ -1814,7 +1815,19 @@ static int isp_register_entities(struct isp_device *isp)
goto done;
}
ret = media_entity_create_link(&sensor->entity, 0, input, pad,
for (i = 0; i < sensor->entity.num_pads; i++) {
if (sensor->entity.pads[i].flags & MEDIA_PAD_FL_SOURCE)
break;
}
if (i == sensor->entity.num_pads) {
dev_err(isp->dev,
"%s: no source pad in external entity\n",
__func__);
ret = -EINVAL;
goto done;
}
ret = media_entity_create_link(&sensor->entity, i, input, pad,
flags);
if (ret < 0)
goto done;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册