From: Miquel Raynal Date: Fri, 11 Oct 2019 14:43:42 +0000 (+0200) Subject: iio: adc: max1027: Reset the device at probe time X-Git-Tag: v4.19.92~140 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=eec8f08dc8b3fa8a3ed1e1c88187b7694e640c40;p=thirdparty%2Fkernel%2Fstable.git iio: adc: max1027: Reset the device at probe time [ Upstream commit db033831b4f5589f9fcbadb837614a7c4eac0308 ] All the registers are configured by the driver, let's reset the chip at probe time, avoiding any conflict with a possible earlier configuration. Signed-off-by: Miquel Raynal Signed-off-by: Jonathan Cameron Signed-off-by: Sasha Levin --- diff --git a/drivers/iio/adc/max1027.c b/drivers/iio/adc/max1027.c index 311c1a89c329e..0939eb0384f1c 100644 --- a/drivers/iio/adc/max1027.c +++ b/drivers/iio/adc/max1027.c @@ -460,6 +460,14 @@ static int max1027_probe(struct spi_device *spi) goto fail_dev_register; } + /* Internal reset */ + st->reg = MAX1027_RST_REG; + ret = spi_write(st->spi, &st->reg, 1); + if (ret < 0) { + dev_err(&indio_dev->dev, "Failed to reset the ADC\n"); + return ret; + } + /* Disable averaging */ st->reg = MAX1027_AVG_REG; ret = spi_write(st->spi, &st->reg, 1);