Re: [PATCH v5 3/5] iio: pressure: bmp280: Add support for BMP380 sensor family
From: Jonathan Cameron
Date: Sun Aug 14 2022 - 12:57:26 EST
On Sun, 14 Aug 2022 16:37:58 +0200
Angel Iglesias <ang.iglesiasg@xxxxxxxxx> wrote:
> On Sun, 2022-08-14 at 15:15 +0100, Jonathan Cameron wrote:
> > On Sun, 7 Aug 2022 13:55:52 +0200
> > Angel Iglesias <ang.iglesiasg@xxxxxxxxx> wrote:
> >
> > > Adds compatibility with the new generation of this sensor, the BMP380
> > >
> > > Includes basic sensor initialization to do pressure and temp
> > > measurements and allows tuning oversampling settings for each channel.
> > >
> > > The compensation algorithms are adapted from the device datasheet and
> > > the repository https://github.com/BoschSensortec/BMP3-Sensor-API
> > >
> > > Signed-off-by: Angel Iglesias <ang.iglesiasg@xxxxxxxxx>
> >
> > One additional comment from me inline.
> >
> > Thanks,
> >
> > Jonathan
> >
> >
> > > }
> > > @@ -1124,6 +1471,13 @@ int bmp280_common_probe(struct device *dev,
> > > return -EINVAL;
> > > }
> > >
> > > + /* BMP3xx requires soft-reset as part of initialization */
> > > + if (chip_id == BMP380_CHIP_ID) {
> >
> > I'd prefer this to be based on a flag in chip_info so that we can
> > trivially add it to future devices by just setting that flag for the
> > chip_info added for the new device.
>
> How a new init or preinit callback? For now only BMP380 chip would use it, but I
> would like to get my hands on a BMP390 and the new BMP580 and extend the driver
> to support for them.
Hmm. Good point, I'd failed to noticed the register is bmp380 specific currently.
Maybe one to leave for a future refactor if you get those newer parts.
Jonathan
>
> > > + ret = bmp380_cmd(data, BMP380_CMD_SOFT_RESET);
> > > + if (ret < 0)
> > > + return ret;
> > > + }
> > > +
> > > ret = data->chip_info->chip_config(data);
> > > if (ret < 0)
> > > return ret;
> >
>
> Kind regards,
> Angel