On Sun, 23 Jan 2022 13:01:06 -0600 Jeff LaBundy <jeff@xxxxxxxxxxx> wrote: > 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@xxxxxxxxxxx> Trivial comment inline but I'm fine with this either way. Assuming it will go through mfd. Acked-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > --- > drivers/iio/temperature/iqs620at-temp.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > 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; Line is a bit long, so maybe it would be better to just use an if / else if (iqs6x->hw_num < IQS620_HW_NUM_V3) *val = IQS620_TEMP_OFFSET; else *val = IQS620_TEMP_OFFSET_V3; > return IIO_VAL_INT; > > default: