|
@@ -1869,6 +1869,7 @@ static int tsl2x7x_probe(struct i2c_client *clientp,
|
|
|
dev_info(&chip->client->dev,
|
|
|
"%s: i2c device found does not match expected id\n",
|
|
|
__func__);
|
|
|
+ ret = -EINVAL;
|
|
|
goto fail1;
|
|
|
}
|
|
|
|
|
@@ -1907,7 +1908,7 @@ static int tsl2x7x_probe(struct i2c_client *clientp,
|
|
|
if (ret) {
|
|
|
dev_err(&clientp->dev,
|
|
|
"%s: irq request failed", __func__);
|
|
|
- goto fail2;
|
|
|
+ goto fail1;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -1920,17 +1921,17 @@ static int tsl2x7x_probe(struct i2c_client *clientp,
|
|
|
if (ret) {
|
|
|
dev_err(&clientp->dev,
|
|
|
"%s: iio registration failed\n", __func__);
|
|
|
- goto fail1;
|
|
|
+ goto fail2;
|
|
|
}
|
|
|
|
|
|
dev_info(&clientp->dev, "%s Light sensor found.\n", id->name);
|
|
|
|
|
|
return 0;
|
|
|
|
|
|
-fail1:
|
|
|
+fail2:
|
|
|
if (clientp->irq)
|
|
|
free_irq(clientp->irq, indio_dev);
|
|
|
-fail2:
|
|
|
+fail1:
|
|
|
iio_device_free(indio_dev);
|
|
|
|
|
|
return ret;
|