diff options
author | Jeff LaBundy <jeff@labundy.com> | 2022-01-23 13:01:06 -0600 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2022-02-14 13:07:33 +0000 |
commit | 9e444dbf278c604110762b25d8e0b4e9f1d27dbc (patch) | |
tree | 651b72d34370622073472fd588304d633722c1dd /drivers/iio/temperature | |
parent | 1de785a58035031f81a43c42f355fa1db510dc36 (diff) | |
download | linux-9e444dbf278c604110762b25d8e0b4e9f1d27dbc.tar.gz linux-9e444dbf278c604110762b25d8e0b4e9f1d27dbc.tar.bz2 linux-9e444dbf278c604110762b25d8e0b4e9f1d27dbc.zip |
iio: temperature: iqs620at-temp: Add support for V3 silicon
The vendor introduced an updated revision of IQS620A(T) silicon
which is backwards-compatible with previous revisions, the only
exception being the offset used to derive temperature.
Enable this new revision by returning the appropriate offset as
a function of the hardware number provided by the parent MFD.
Signed-off-by: Jeff LaBundy <jeff@labundy.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/iio/temperature')
-rw-r--r-- | drivers/iio/temperature/iqs620at-temp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/iio/temperature/iqs620at-temp.c b/drivers/iio/temperature/iqs620at-temp.c index fe126e1fb783..e2f878d57af7 100644 --- a/drivers/iio/temperature/iqs620at-temp.c +++ b/drivers/iio/temperature/iqs620at-temp.c @@ -17,6 +17,7 @@ #define IQS620_TEMP_SCALE 1000 #define IQS620_TEMP_OFFSET (-100) +#define IQS620_TEMP_OFFSET_V3 (-40) static int iqs620_temp_read_raw(struct iio_dev *indio_dev, struct iio_chan_spec const *chan, @@ -41,7 +42,8 @@ static int iqs620_temp_read_raw(struct iio_dev *indio_dev, return IIO_VAL_INT; case IIO_CHAN_INFO_OFFSET: - *val = IQS620_TEMP_OFFSET; + *val = iqs62x->hw_num < IQS620_HW_NUM_V3 ? IQS620_TEMP_OFFSET + : IQS620_TEMP_OFFSET_V3; return IIO_VAL_INT; default: |