Skip to contentSkip to conversation

patch "iio:ad7266: Fix probe deferral for vref" added to staging-linus

PATCH [email protected] 1 participant 1 message Jun 29, 2016

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

iio:ad7266: Fix probe deferral for vref

to my staging git tree which can be found at
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging.git
in the staging-linus branch.

The patch will show up in the next release of the linux-next tree (usually sometime within the next 24 hours during the week.)

The patch will hopefully also be merged in Linus's tree for the next -rc kernel release.

If you have any questions about this process, please let me know.

Quoted 1 line

From 68b356eb3d9f5e38910fb62e22a78e2a18d544ae Mon Sep 17 00:00:00 2001

From: Mark Brown <[email protected]>
Date: Mon, 20 Jun 2016 13:53:34 +0100
Subject: iio:ad7266: Fix probe deferral for vref

Currently the ad7266 driver treats any failure to get vref as though the regulator were not present but this means that if probe deferral is triggered the driver will act as though the regulator were not present. Instead only use the internal reference if we explicitly got -ENODEV which is what is returned for absent regulators.

---
 drivers/iio/adc/ad7266.c | 3 +++
 1 file changed, 3 insertions(+)
drivers/iio/adc/ad7266.c +3 -0
index 655b36b4e9cb..2123f0ac2e2a 100644
@@ -408,6 +408,9 @@ static int ad7266_probe(struct spi_device *spi)
 
 		st->vref_mv = ret / 1000;
 	} else {
+		/* Any other error indicates that the regulator does exist */
+		if (PTR_ERR(st->reg) != -ENODEV)
+			return PTR_ERR(st->reg);
 		/* Use internal reference */
 		st->vref_mv = 2500;
 	}
Signature · 1 line
2.9.0