diff options
Diffstat (limited to 'drivers/iio/dac/ad5686.c')
| -rw-r--r-- | drivers/iio/dac/ad5686.c | 12 | 
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/iio/dac/ad5686.c b/drivers/iio/dac/ad5686.c index bc92ff9309c..ca9609d7a15 100644 --- a/drivers/iio/dac/ad5686.c +++ b/drivers/iio/dac/ad5686.c @@ -313,7 +313,7 @@ static const struct ad5686_chip_info ad5686_chip_info_tbl[] = {  }; -static int __devinit ad5686_probe(struct spi_device *spi) +static int ad5686_probe(struct spi_device *spi)  {  	struct ad5686_state *st;  	struct iio_dev *indio_dev; @@ -332,7 +332,11 @@ static int __devinit ad5686_probe(struct spi_device *spi)  		if (ret)  			goto error_put_reg; -		voltage_uv = regulator_get_voltage(st->reg); +		ret = regulator_get_voltage(st->reg); +		if (ret < 0) +			goto error_disable_reg; + +		voltage_uv = ret;  	}  	st->chip_info = @@ -379,7 +383,7 @@ error_put_reg:  	return ret;  } -static int __devexit ad5686_remove(struct spi_device *spi) +static int ad5686_remove(struct spi_device *spi)  {  	struct iio_dev *indio_dev = spi_get_drvdata(spi);  	struct ad5686_state *st = iio_priv(indio_dev); @@ -408,7 +412,7 @@ static struct spi_driver ad5686_driver = {  		   .owner = THIS_MODULE,  		   },  	.probe = ad5686_probe, -	.remove = __devexit_p(ad5686_remove), +	.remove = ad5686_remove,  	.id_table = ad5686_id,  };  module_spi_driver(ad5686_driver);  |