Skip to content

Commit

Permalink
iio:ad7266: Fix support for optional regulators
Browse files Browse the repository at this point in the history
The ad7266 driver attempts to support deciding between the use of internal
and external power supplies by checking to see if an error is returned when
requesting the regulator. This doesn't work with the current code since the
driver uses a normal regulator_get() which is for non-optional supplies
and so assumes that if a regulator is not provided by the platform then
this is a bug in the platform integration and so substitutes a dummy
regulator. Use regulator_get_optional() instead which indicates to the
framework that the regulator may be absent and provides a dummy regulator
instead.

Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
  • Loading branch information
Mark Brown authored and Jonathan Cameron committed Jun 26, 2016
1 parent 6b7f4e2 commit e5511c8
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/iio/adc/ad7266.c
Original file line number Diff line number Diff line change
Expand Up @@ -396,7 +396,7 @@ static int ad7266_probe(struct spi_device *spi)

st = iio_priv(indio_dev);

st->reg = devm_regulator_get(&spi->dev, "vref");
st->reg = devm_regulator_get_optional(&spi->dev, "vref");
if (!IS_ERR(st->reg)) {
ret = regulator_enable(st->reg);
if (ret)
Expand Down

0 comments on commit e5511c8

Please sign in to comment.