Re: [PATCH v10 2/2] iio: health: add MAX86150 ECG and PPG biosensor driver

From: Andy Shevchenko

Date: Sat Jul 18 2026 - 02:56:41 EST


On Sat, Jul 18, 2026 at 09:54:50AM +0300, Andy Shevchenko wrote:
> On Fri, Jul 17, 2026 at 11:11:37PM +0300, Md Shofiqul Islam wrote:

...

> > +static int max86150_read_one_sample(struct max86150_data *data,
> > + u32 *ppg_red, u32 *ppg_ir, s32 *ecg)
> > +{
> > + int ret;
> > +
> > + ret = regmap_noinc_read(data->regmap, MAX86150_REG_FIFO_DATA,
> > + data->fifo_raw, MAX86150_SAMPLE_BYTES);
> > + if (ret)
> > + return ret;
> > +
> > + *ppg_red = (data->fifo_raw[0] & 0x07) << 16 |
> > + data->fifo_raw[1] << 8 | data->fifo_raw[2];
>
> Use get_unaligned_be16()

Actually it should be get_unaligned_be24().

> > + *ppg_ir = (data->fifo_raw[3] & 0x07) << 16 |
> > + data->fifo_raw[4] << 8 | data->fifo_raw[5];
>
> Ditto.
>
> > + *ecg = sign_extend32((data->fifo_raw[6] & 0x03) << 16 |
> > + data->fifo_raw[7] << 8 | data->fifo_raw[8], 17);
>
> Ditto.
>
> > + return 0;
> > +}

--
With Best Regards,
Andy Shevchenko