Re: [PATCH 00/16] iio: adc: at91-sama5d2_adc: add support for temperature sensor

From: Jonathan Cameron
Date: Sat Jun 11 2022 - 14:07:28 EST


On Thu, 9 Jun 2022 11:31:57 +0300
Claudiu Beznea <claudiu.beznea@xxxxxxxxxxxxx> wrote:

> Hi,
>
> The following series add support for temperature sensor available on
> SAMA7G5.
>
> Temperature sensor available on SAMA7G5 provides 2 outputs VTEMP and VBG.
> VTEMP is proportional to the absolute temperature voltage and VBG is a
> quasi-temperature independent voltage. Both are necessary in computing
> the temperature (for better accuracy). Also, for better accuracy the
> following settings were imposed when measusing the temperature:
> oversampling rate of 256, sampling frequency of 10MHz, a startup time of
> 512 ticks, MR.tracktim=0xf, EMR.trackx=0x3.
>
> For computing the temperature measured by ADC calibration data is
> necessary. This is provided via OTP memory available on SAMA7G5.
>
> Patches 1/16-3/16 provides some fixes.
> Patches 3/16-12/16 prepares for the addition of temperature sensor
> support.
> Patch 13/16 adds the temperature sensor support.
>
> Along with temperature sensor support I took the chance and added
> runtime PM support in this series, too (handled in patch 15/16).
>
> The rest of patches in this series are minor cleanups.
>
> Thank you,
> Claudiu Beznea

Hi CLaudiu,

Those patches I haven't replied to individually look good to me.

Thanks,

Jonathan

>
> Claudiu Beznea (16):
> iio: adc: at91-sama5d2_adc: fix AT91_SAMA5D2_MR_TRACKTIM_MAX
> iio: adc: at91-sama5d2_adc: lock around oversampling and sample freq
> iio: adc: at91-sama5d2_adc: exit from write_raw() when buffers are
> enabled
> iio: adc: at91-sama5d2_adc: handle different EMR.OSR for different hw
> versions
> iio: adc: at91-sama5d2_adc: adjust osr based on specific platform data
> iio: adc: at91-sama5d2_adc: add 64 and 256 oversampling ratio
> iio: adc: at91-sama5d2_adc: simplify the code in
> at91_adc_read_info_raw()
> iio: adc: at91-sama5d2_adc: move oversampling storage in its function
> iio: adc: at91-sama5d2_adc: update trackx on emr
> iio: adc: at91-sama5d2_adc: add startup and tracktim as parameter for
> at91_adc_setup_samp_freq()
> iio: adc: at91-sama5d2_adc: add locking parameter to
> at91_adc_read_info_raw()
> dt-bindings: iio: adc: at91-sama5d2_adc: add id for temperature
> channel
> iio: adc: at91-sama5d2_adc: add support for temperature sensor
> iio: adc: at91-sama5d2_adc: add empty line after functions
> iio: adc: at91-sama5d2_adc: add runtime pm support
> iio: adc: at91-sama5d2_adc: use pm_ptr()
>
> drivers/iio/adc/at91-sama5d2_adc.c | 633 +++++++++++++++---
> .../dt-bindings/iio/adc/at91-sama5d2_adc.h | 3 +
> 2 files changed, 548 insertions(+), 88 deletions(-)
>