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