Message ID | 20220510141753.3878390-6-Qing-wu.Li@leica-geosystems.com.cn (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | iio: accel: bmi088: support BMI085 BMI090L | expand |
On Tue, 10 May 2022 14:17:52 +0000 LI Qingwu <Qing-wu.Li@leica-geosystems.com.cn> wrote: > Add supports for BMI090L, it's a high-performance Inertial > Measurement Unit, with an accelerometer and gyroscope. > The commit adds the accelerometer driver for the SPI interface. > The gyroscope part is already supported by the BMG160 driver. > Same as BMI088, BMI090L have the range of +/-3, 6, 12, and 24g. > > Reviewed-by: Alexandru Ardelean <ardeleanalex@gmail.com> > Signed-off-by: LI Qingwu <Qing-wu.Li@leica-geosystems.com.cn> > --- > drivers/iio/accel/bmi088-accel-core.c | 7 +++++++ > drivers/iio/accel/bmi088-accel-spi.c | 1 + > 2 files changed, 8 insertions(+) > > diff --git a/drivers/iio/accel/bmi088-accel-core.c b/drivers/iio/accel/bmi088-accel-core.c > index 13bb3d96a3a6..6d44e97b4906 100644 > --- a/drivers/iio/accel/bmi088-accel-core.c > +++ b/drivers/iio/accel/bmi088-accel-core.c > @@ -472,6 +472,13 @@ static const struct bmi088_accel_chip_info bmi088_accel_chip_info_tbl[] = { > .num_channels = ARRAY_SIZE(bmi088_accel_channels), > .scale_table = {{0, 598}, {0, 1196}, {0, 2393}, {0, 4785}}, > }, > + [2] = { > + .name = "bmi090l-accel", > + .chip_id = 0x1A, Either order by chip_id or by name. I don't mind which but we do want some logical ordering in this table so we know where to put future entries. Thanks, Jonathan > + .channels = bmi088_accel_channels, > + .num_channels = ARRAY_SIZE(bmi088_accel_channels), > + .scale_table = {{0, 897}, {0, 1795}, {0, 3590}, {0, 7179}}, > + }, > }; > > static const struct iio_info bmi088_accel_info = { > diff --git a/drivers/iio/accel/bmi088-accel-spi.c b/drivers/iio/accel/bmi088-accel-spi.c > index e7a1daab8f3c..58be73ebd2dd 100644 > --- a/drivers/iio/accel/bmi088-accel-spi.c > +++ b/drivers/iio/accel/bmi088-accel-spi.c > @@ -62,6 +62,7 @@ static int bmi088_accel_remove(struct spi_device *spi) > static const struct spi_device_id bmi088_accel_id[] = { > {"bmi088-accel", }, > {"bmi085-accel", }, > + {"bmi090l-accel", }, > {} > }; > MODULE_DEVICE_TABLE(spi, bmi088_accel_id);
diff --git a/drivers/iio/accel/bmi088-accel-core.c b/drivers/iio/accel/bmi088-accel-core.c index 13bb3d96a3a6..6d44e97b4906 100644 --- a/drivers/iio/accel/bmi088-accel-core.c +++ b/drivers/iio/accel/bmi088-accel-core.c @@ -472,6 +472,13 @@ static const struct bmi088_accel_chip_info bmi088_accel_chip_info_tbl[] = { .num_channels = ARRAY_SIZE(bmi088_accel_channels), .scale_table = {{0, 598}, {0, 1196}, {0, 2393}, {0, 4785}}, }, + [2] = { + .name = "bmi090l-accel", + .chip_id = 0x1A, + .channels = bmi088_accel_channels, + .num_channels = ARRAY_SIZE(bmi088_accel_channels), + .scale_table = {{0, 897}, {0, 1795}, {0, 3590}, {0, 7179}}, + }, }; static const struct iio_info bmi088_accel_info = { diff --git a/drivers/iio/accel/bmi088-accel-spi.c b/drivers/iio/accel/bmi088-accel-spi.c index e7a1daab8f3c..58be73ebd2dd 100644 --- a/drivers/iio/accel/bmi088-accel-spi.c +++ b/drivers/iio/accel/bmi088-accel-spi.c @@ -62,6 +62,7 @@ static int bmi088_accel_remove(struct spi_device *spi) static const struct spi_device_id bmi088_accel_id[] = { {"bmi088-accel", }, {"bmi085-accel", }, + {"bmi090l-accel", }, {} }; MODULE_DEVICE_TABLE(spi, bmi088_accel_id);