OSDN Git Service

media: i2c: Defer probe if not endpoint found
authorDaniel Scally <djrscally@gmail.com>
Tue, 23 Nov 2021 00:00:05 +0000 (01:00 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Tue, 30 Nov 2021 09:54:07 +0000 (10:54 +0100)
The ov8865 driver is one of those that can be connected to a CIO2
device by the cio2-bridge code. This means that the absence of an
endpoint for this device is not necessarily fatal, as one might be
built by the cio2-bridge when it probes. Return -EPROBE_DEFER if no
endpoint is found rather than a fatal error.

Signed-off-by: Daniel Scally <djrscally@gmail.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/i2c/ov8865.c

index a6372a0..68fdb1c 100644 (file)
@@ -2796,10 +2796,8 @@ static int ov8865_probe(struct i2c_client *client)
        /* Graph Endpoint */
 
        handle = fwnode_graph_get_next_endpoint(dev_fwnode(dev), NULL);
-       if (!handle) {
-               dev_err(dev, "unable to find endpoint node\n");
-               return -EINVAL;
-       }
+       if (!handle)
+               return -EPROBE_DEFER;
 
        sensor->endpoint.bus_type = V4L2_MBUS_CSI2_DPHY;