Browse Source

media: i2c: ov2659: Fix sensor detection to actually fail when device is not present

Make sure that if the expected sensor device id register
is not recognized properly the failure is propagated
up so devices are not left partially initialized.

Signed-off-by: Benoit Parrot <bparrot@ti.com>
Signed-off-by: Jyri Sarha <jsarha@ti.com>
Benoit Parrot 10 years ago
parent
commit
039f095f93
1 changed files with 3 additions and 2 deletions
  1. 3 2
      drivers/media/i2c/ov2659.c

+ 3 - 2
drivers/media/i2c/ov2659.c

@@ -1330,11 +1330,12 @@ static int ov2659_detect(struct v4l2_subdev *sd)
 		unsigned short id;
 		unsigned short id;
 
 
 		id = OV265X_ID(pid, ver);
 		id = OV265X_ID(pid, ver);
-		if (id != OV2659_ID)
+		if (id != OV2659_ID) {
 			dev_err(&client->dev,
 			dev_err(&client->dev,
 				"Sensor detection failed (%04X, %d)\n",
 				"Sensor detection failed (%04X, %d)\n",
 				id, ret);
 				id, ret);
-		else {
+			ret = -ENODEV;
+		} else {
 			dev_info(&client->dev, "Found OV%04X sensor\n", id);
 			dev_info(&client->dev, "Found OV%04X sensor\n", id);
 			ret = ov2659_init(sd, 0);
 			ret = ov2659_init(sd, 0);
 		}
 		}