Skip to contentSkip to conversation

iio: adc: ad7266: Don't set error code to st->vref_uv

PATCH In review Axel Lin 2 participants 7 messages Dec 14, 2012

Subsystems (2)
lore
Share & tools
lore

Axel Lin

author
#0 lore raw

PATCH 1/6 iio: adc: ad7266: Don't set error code to st->vref_uv

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to st->vref_uv.

---
 drivers/iio/adc/ad7266.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/adc/ad7266.c +5 -1
index a6f4fc5..e36107d 100644
@@ -411,7 +411,11 @@ static int __devinit ad7266_probe(struct spi_device *spi)
 		if (ret)
 			goto error_put_reg;
 
-		st->vref_uv = regulator_get_voltage(st->reg);
+		ret = regulator_get_voltage(st->reg);
+		if (ret < 0)
+			goto error_disable_reg;
+
+		st->vref_uv = ret;
 	} else {
 		/* Use internal reference */
 		st->vref_uv = 2500000;
Signature · 1 line
1.7.9.5
author
#1 lore raw

PATCH 2/6 iio: dac: ad5380: Don't set error code to st->vref

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to st->vref_uv.

---
 drivers/iio/dac/ad5380.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/dac/ad5380.c +5 -1
index 14991ac..4aca189 100644
@@ -406,7 +406,11 @@ static int __devinit ad5380_probe(struct device *dev, struct regmap *regmap,
 			goto error_free_reg;
 		}
 
-		st->vref = regulator_get_voltage(st->vref_reg);
+		ret = regulator_get_voltage(st->vref_reg);
+		if (ret < 0)
+			goto error_disable_reg;
+
+		st->vref = ret;
 	} else {
 		st->vref = st->chip_info->int_vref;
 		ctrl |= AD5380_CTRL_INT_VREF_EN;
Signature · 1 line
1.7.9.5
author
#2 lore raw

PATCH 3/6 iio: dac: ad5504: Don't set error code to voltage_uv

In reply to Axel Lin

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to voltage_uv.

---
 drivers/iio/dac/ad5504.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/dac/ad5504.c +5 -1
index 242bdc7..1e9a1f4 100644
@@ -296,7 +296,11 @@ static int __devinit ad5504_probe(struct spi_device *spi)
 		if (ret)
 			goto error_put_reg;
 
-		voltage_uv = regulator_get_voltage(reg);
+		ret = regulator_get_voltage(reg);
+		if (ret)
+			goto error_disable_reg;
+
+		voltage_uv = ret;
 	}
 
 	spi_set_drvdata(spi, indio_dev);
Signature · 1 line
1.7.9.5
author
#3 lore raw

PATCH 4/6 iio: dac: ad5624r_spi: Don't set error code to voltage_uv

In reply to Axel Lin

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to voltage_uv.

---
 drivers/iio/dac/ad5624r_spi.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/dac/ad5624r_spi.c +5 -1
index 6a7d6a4..ae7fb64 100644
@@ -238,7 +238,11 @@ static int __devinit ad5624r_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)
+			goto error_disable_reg;
+
+		voltage_uv = ret;
 	}
 
 	spi_set_drvdata(spi, indio_dev);
Signature · 1 line
1.7.9.5
author
#4 lore raw

PATCH 5/6 iio: dac: ad5686: Don't set error code to voltage_uv

In reply to Axel Lin

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to voltage_uv.

---
 drivers/iio/dac/ad5686.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/dac/ad5686.c +5 -1
index bc92ff9..28f2e59 100644
@@ -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)
+			goto error_disable_reg;
+
+		voltage_uv = ret;
 	}
 
 	st->chip_info =
Signature · 1 line
1.7.9.5
author
#5 lore raw

PATCH 6/6 iio: dac: ad5791: Don't set error code to [pos|neg]_voltage_uv

In reply to Axel Lin

regulator_get_voltage() may return negative error code. Don't set error code to to pos_voltage_uv and neg_voltage_uv.

---
 drivers/iio/dac/ad5791.c |   13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)
drivers/iio/dac/ad5791.c +11 -2
index 2bd2e37..6efe83e 100644
@@ -365,7 +365,11 @@ static int __devinit ad5791_probe(struct spi_device *spi)
 		if (ret)
 			goto error_put_reg_pos;
 
-		pos_voltage_uv = regulator_get_voltage(st->reg_vdd);
+		ret = regulator_get_voltage(st->reg_vdd);
+		if (ret < 0)
+			goto error_disable_reg_pos;
+
+		pos_voltage_uv = ret;
 	}
 
 	st->reg_vss = regulator_get(&spi->dev, "vss");
@@ -374,7 +378,11 @@ static int __devinit ad5791_probe(struct spi_device *spi)
 		if (ret)
 			goto error_put_reg_neg;
 
-		neg_voltage_uv = regulator_get_voltage(st->reg_vss);
+		ret = regulator_get_voltage(st->reg_vss);
+		if (ret < 0)
+			goto error_disable_reg_neg;
+
+		neg_voltage_uv = ret;
 	}
 
 	st->pwr_down = true;
@@ -428,6 +436,7 @@ error_put_reg_neg:
 	if (!IS_ERR(st->reg_vss))
 		regulator_put(st->reg_vss);
 
+error_disable_reg_pos:
 	if (!IS_ERR(st->reg_vdd))
 		regulator_disable(st->reg_vdd);
 error_put_reg_pos:
Signature · 1 line
1.7.9.5
Acked-by on v1 1/6
#6 lore raw
In reply to Axel Lin
Quoted 4 lines · Axel Lin

regulator_get_voltage() may return negative error code. Add error checking to avoid setting error code to st->vref_uv.

Thanks Axel, for the whole series:

Quoted 21 lines
---
 drivers/iio/adc/ad7266.c |    6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
drivers/iio/adc/ad7266.c +5 -1
index a6f4fc5..e36107d 100644
@@ -411,7 +411,11 @@ static int __devinit ad7266_probe(struct spi_device *spi)
 		if (ret)
 			goto error_put_reg;
 
-		st->vref_uv = regulator_get_voltage(st->reg);
+		ret = regulator_get_voltage(st->reg);
+		if (ret < 0)
+			goto error_disable_reg;
+
+		st->vref_uv = ret;
 	} else {
 		/* Use internal reference */
 		st->vref_uv = 2500000;