Linux IIO development
 help / color / mirror / Atom feed
* [PATCH] iio: dac: ad3552r: clear reset status flag
@ 2025-01-22 20:32 Angelo Dureghello
  2025-01-25 12:35 ` Jonathan Cameron
  0 siblings, 1 reply; 2+ messages in thread
From: Angelo Dureghello @ 2025-01-22 20:32 UTC (permalink / raw)
  To: Lars-Peter Clausen, Michael Hennerich, Nuno Sá,
	Jonathan Cameron
  Cc: linux-iio, linux-kernel, Angelo Dureghello

From: Angelo Dureghello <adureghello@baylibre.com>

Clear reset status flag, to keep error status register
clean after reset (ad3552r manual, rev B table 38).

Reset error flag was left to 1, so debugging registers, the
"Error Status Register" was dirty (0x01). It is important
to clear this bit, so if there is any reset event over normal
working mode, it is possible to detect it.

Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>
---
 drivers/iio/dac/ad3552r.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/iio/dac/ad3552r.c b/drivers/iio/dac/ad3552r.c
index e7206af53af6..7944f5c1d264 100644
--- a/drivers/iio/dac/ad3552r.c
+++ b/drivers/iio/dac/ad3552r.c
@@ -410,6 +410,12 @@ static int ad3552r_reset(struct ad3552r_desc *dac)
 		return ret;
 	}
 
+	/* Clear reset error flag, see ad3552r manual, rev B table 38. */
+	ret = ad3552r_write_reg(dac, AD3552R_REG_ADDR_ERR_STATUS,
+				AD3552R_MASK_RESET_STATUS);
+	if (ret)
+		return ret;
+
 	return ad3552r_update_reg_field(dac,
 					AD3552R_REG_ADDR_INTERFACE_CONFIG_A,
 					AD3552R_MASK_ADDR_ASCENSION,

---
base-commit: 07fa5fa97959422bbd663df056c9de0dec55e34f
change-id: 20250122-wip-bl-ad3552r-clear-reset-330bdf2ff56e

Best regards,
-- 
Angelo Dureghello <adureghello@baylibre.com>


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

* Re: [PATCH] iio: dac: ad3552r: clear reset status flag
  2025-01-22 20:32 [PATCH] iio: dac: ad3552r: clear reset status flag Angelo Dureghello
@ 2025-01-25 12:35 ` Jonathan Cameron
  0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Cameron @ 2025-01-25 12:35 UTC (permalink / raw)
  To: Angelo Dureghello
  Cc: Lars-Peter Clausen, Michael Hennerich, Nuno Sá, linux-iio,
	linux-kernel

On Wed, 22 Jan 2025 21:32:43 +0100
Angelo Dureghello <adureghello@baylibre.com> wrote:

> From: Angelo Dureghello <adureghello@baylibre.com>
> 
> Clear reset status flag, to keep error status register
> clean after reset (ad3552r manual, rev B table 38).
> 
> Reset error flag was left to 1, so debugging registers, the
> "Error Status Register" was dirty (0x01). It is important
> to clear this bit, so if there is any reset event over normal
> working mode, it is possible to detect it.

Oddly short wrap. for commit descriptions wrap at 75 chars.

> 
> Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>
Sounds like a fix, so does it want a fixes tag / go in quick
of is this only visible in debug related activities?

Jonathan

> ---
>  drivers/iio/dac/ad3552r.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/iio/dac/ad3552r.c b/drivers/iio/dac/ad3552r.c
> index e7206af53af6..7944f5c1d264 100644
> --- a/drivers/iio/dac/ad3552r.c
> +++ b/drivers/iio/dac/ad3552r.c
> @@ -410,6 +410,12 @@ static int ad3552r_reset(struct ad3552r_desc *dac)
>  		return ret;
>  	}
>  
> +	/* Clear reset error flag, see ad3552r manual, rev B table 38. */
> +	ret = ad3552r_write_reg(dac, AD3552R_REG_ADDR_ERR_STATUS,
> +				AD3552R_MASK_RESET_STATUS);
> +	if (ret)
> +		return ret;
> +
>  	return ad3552r_update_reg_field(dac,
>  					AD3552R_REG_ADDR_INTERFACE_CONFIG_A,
>  					AD3552R_MASK_ADDR_ASCENSION,
> 
> ---
> base-commit: 07fa5fa97959422bbd663df056c9de0dec55e34f
> change-id: 20250122-wip-bl-ad3552r-clear-reset-330bdf2ff56e
> 
> Best regards,


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

end of thread, other threads:[~2025-01-25 12:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-22 20:32 [PATCH] iio: dac: ad3552r: clear reset status flag Angelo Dureghello
2025-01-25 12:35 ` Jonathan Cameron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox