|
@@ -717,7 +717,7 @@ static int ad799x_probe(struct i2c_client *client,
|
|
|
ret = iio_triggered_buffer_setup(indio_dev, NULL,
|
|
|
&ad799x_trigger_handler, NULL);
|
|
|
if (ret)
|
|
|
- goto error_disable_reg;
|
|
|
+ goto error_disable_vref;
|
|
|
|
|
|
if (client->irq > 0) {
|
|
|
ret = devm_request_threaded_irq(&client->dev,
|
|
@@ -739,11 +739,10 @@ static int ad799x_probe(struct i2c_client *client,
|
|
|
|
|
|
error_cleanup_ring:
|
|
|
iio_triggered_buffer_cleanup(indio_dev);
|
|
|
+error_disable_vref:
|
|
|
+ regulator_disable(st->vref);
|
|
|
error_disable_reg:
|
|
|
- if (!IS_ERR(st->vref))
|
|
|
- regulator_disable(st->vref);
|
|
|
- if (!IS_ERR(st->reg))
|
|
|
- regulator_disable(st->reg);
|
|
|
+ regulator_disable(st->reg);
|
|
|
|
|
|
return ret;
|
|
|
}
|
|
@@ -756,10 +755,8 @@ static int ad799x_remove(struct i2c_client *client)
|
|
|
iio_device_unregister(indio_dev);
|
|
|
|
|
|
iio_triggered_buffer_cleanup(indio_dev);
|
|
|
- if (!IS_ERR(st->vref))
|
|
|
- regulator_disable(st->vref);
|
|
|
- if (!IS_ERR(st->reg))
|
|
|
- regulator_disable(st->reg);
|
|
|
+ regulator_disable(st->vref);
|
|
|
+ regulator_disable(st->reg);
|
|
|
kfree(st->rx_buf);
|
|
|
|
|
|
return 0;
|