linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 3/3] iio: accel: adxl372: Perform a reset at start up
@ 2019-09-10 14:44 Stefan Popa
  2019-09-15 13:33 ` Jonathan Cameron
  0 siblings, 1 reply; 2+ messages in thread
From: Stefan Popa @ 2019-09-10 14:44 UTC (permalink / raw)
  To: jic23
  Cc: Michael.Hennerich, knaack.h, lars, pmeerw, linux-kernel,
	linux-iio, stefan.popa

We need to perform a reset a start up to make sure that the chip is in a
consistent state. This reset also disables all the interrupts which
should only be enabled together with the iio buffer. Not doing this, was
sometimes causing unwanted interrupts to trigger.

Signed-off-by: Stefan Popa <stefan.popa@analog.com>
---
Changes in v2:
	- Instead of disabling the interrupts, now this patch performs
	  a software reset.

 drivers/iio/accel/adxl372.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/iio/accel/adxl372.c b/drivers/iio/accel/adxl372.c
index 33edca8..8a00528 100644
--- a/drivers/iio/accel/adxl372.c
+++ b/drivers/iio/accel/adxl372.c
@@ -575,6 +575,14 @@ static int adxl372_setup(struct adxl372_state *st)
 		return -ENODEV;
 	}
 
+	/*
+	 * Perform a software reset to make sure the device is in a consistent
+	 * state after start up.
+	 */
+	ret = regmap_write(st->regmap, ADXL372_RESET, ADXL372_RESET_CODE);
+	if (ret < 0)
+		return ret;
+
 	ret = adxl372_set_op_mode(st, ADXL372_STANDBY);
 	if (ret < 0)
 		return ret;
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2 3/3] iio: accel: adxl372: Perform a reset at start up
  2019-09-10 14:44 [PATCH v2 3/3] iio: accel: adxl372: Perform a reset at start up Stefan Popa
@ 2019-09-15 13:33 ` Jonathan Cameron
  0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Cameron @ 2019-09-15 13:33 UTC (permalink / raw)
  To: Stefan Popa
  Cc: Michael.Hennerich, knaack.h, lars, pmeerw, linux-kernel, linux-iio

On Tue, 10 Sep 2019 17:44:46 +0300
Stefan Popa <stefan.popa@analog.com> wrote:

> We need to perform a reset a start up to make sure that the chip is in a
> consistent state. This reset also disables all the interrupts which
> should only be enabled together with the iio buffer. Not doing this, was
> sometimes causing unwanted interrupts to trigger.
> 
> Signed-off-by: Stefan Popa <stefan.popa@analog.com>
Added the same fixes tag, and cc for stable. We'll have to keep an eye
on this though as there are other patches after the one hightlighted so
they may not go on cleanly.

Thanks,

Jonathan

> ---
> Changes in v2:
> 	- Instead of disabling the interrupts, now this patch performs
> 	  a software reset.
> 
>  drivers/iio/accel/adxl372.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/iio/accel/adxl372.c b/drivers/iio/accel/adxl372.c
> index 33edca8..8a00528 100644
> --- a/drivers/iio/accel/adxl372.c
> +++ b/drivers/iio/accel/adxl372.c
> @@ -575,6 +575,14 @@ static int adxl372_setup(struct adxl372_state *st)
>  		return -ENODEV;
>  	}
>  
> +	/*
> +	 * Perform a software reset to make sure the device is in a consistent
> +	 * state after start up.
> +	 */
> +	ret = regmap_write(st->regmap, ADXL372_RESET, ADXL372_RESET_CODE);
> +	if (ret < 0)
> +		return ret;
> +
>  	ret = adxl372_set_op_mode(st, ADXL372_STANDBY);
>  	if (ret < 0)
>  		return ret;


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-09-15 13:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-10 14:44 [PATCH v2 3/3] iio: accel: adxl372: Perform a reset at start up Stefan Popa
2019-09-15 13:33 ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).