Re: [PATCH v3 6/7] iio: adc: palmas: add support for iio threshold events

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Apr 07, 2023 at 06:19:47PM +0100, Jonathan Cameron wrote:
> On Wed,  5 Apr 2023 23:22:32 +0200
> Patrik Dahlström <risca@xxxxxxxxxxxxxx> wrote:
> 
> > The palmas gpadc block has support for monitoring up to 2 ADC channels
> > and issue an interrupt if they reach past a set threshold. This change
> > hooks into the IIO events system and exposes to userspace the ability to
> > configure these threshold values for each channel, but only allow up to
> > 2 such thresholds to be enabled at any given time. Trying to enable a
> > third channel will result in an error.
> > 
> > Userspace is expected to input calibrated, as opposed to raw, values as
> > threshold. However, it is not enough to do the opposite of what is done
> > when converting the other way around. To account for tolerances in the
> > ADC, the calculated raw threshold should be adjusted based on the ADC
> > specifications for the device. These specifications include the integral
> > nonlinearity (INL), offset, and gain error. To adjust the high
> > threshold, use the following equation:
> > 
> >   (calibrated value + INL) * Gain error + offset = maximum value  [1]
> > 
> > Likewise, use the following equation for the low threshold:
> > 
> >   (calibrated value - INL) * Gain error - offset = minimum value
> > 
> > The gain error is a combination of gain error, as listed in the
> > datasheet, and gain error drift due to temperature and supply. The exact
> > values for these specifications vary between palmas devices. This patch
> > sets the values found in TWL6035, TWL6037 datasheet.
> > 
> > [1] TI Application Report, SLIA087A, Guide to Using the GPADC in
> >     TPS65903x, TPS65917-Q1, TPS65919-Q1, and TPS65916 Devices.
> > 
> > Signed-off-by: Patrik Dahlström <risca@xxxxxxxxxxxxxx>
> Hi Patrik,
> 
> A few really trivial formatting things inline. If we don't end up
> with a v4 for other reasons I can tidy this stuff up whilst applying.

I'll send in a v4 later today :)

> 
> Jonathan
> 
> 




[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux