Niklas, Did you look at this? If I should take it, can you Ack it? If you are going to squash or add it to our of your own patch series, then let me know and I can remove it from my todo queue. Regards, Hans On 05/12/17 21:41, Jacopo Mondi wrote: > When rcar-csi interface is not connected to any endpoint, it fails and > bails out from probe before registering its own video subdevice. > This prevents rcar-vin registered notifier from completing and no > subdevice is ever registered, also for other properly connected csi > interfaces. > > Fix this not returning an error when no endpoint is connected to a csi > interface and let the driver complete its probe function and register its > own video subdevice. > > --- > Niklas, > please squash this patch in your next rcar-csi2 series (if you like it ;) > > As we have discussed this is particularly useful for gmsl setup, where adv748x > is connected to CSI20 and max9286 to CSI40/CSI41. If we disable adv748x from DTS > we need CSI20 probe to complete anyhow otherwise no subdevice gets registered > for the two deserializers. > > Please note we cannot disable CSI20 entirely otherwise VIN's graph parsing > breaks. > > Thanks > j > > --- > drivers/media/platform/rcar-vin/rcar-csi2.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/media/platform/rcar-vin/rcar-csi2.c b/drivers/media/platform/rcar-vin/rcar-csi2.c > index 2793efb..90c4062 100644 > --- a/drivers/media/platform/rcar-vin/rcar-csi2.c > +++ b/drivers/media/platform/rcar-vin/rcar-csi2.c > @@ -928,8 +928,8 @@ static int rcar_csi2_parse_dt(struct rcar_csi2 *priv) > > ep = of_graph_get_endpoint_by_regs(priv->dev->of_node, 0, 0); > if (!ep) { > - dev_err(priv->dev, "Not connected to subdevice\n"); > - return -EINVAL; > + dev_dbg(priv->dev, "Not connected to subdevice\n"); > + return 0; > } > > ret = v4l2_fwnode_endpoint_parse(of_fwnode_handle(ep), &v4l2_ep); > -- > 2.7.4 >