iio: st_sensors: Add lsm303d support to the LSM9DS0 IMU driver
authorMarius Hoch <mail@mariushoch.de>
Sat, 15 Apr 2023 23:11:27 +0000 (01:11 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sat, 13 May 2023 16:56:04 +0000 (17:56 +0100)
The lsm303d is basically the lsm9ds0 without the gyroscope
(which the LSM9DS0 IMU driver doesn't handle), as far as I
can tell.

Signed-off-by: Marius Hoch <mail@mariushoch.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Hans de Goede <hansg@kernel.org>
Link: https://lore.kernel.org/r/20230415231130.115094-4-mail@mariushoch.de
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/imu/st_lsm9ds0/Kconfig
drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_i2c.c
drivers/iio/imu/st_lsm9ds0/st_lsm9ds0_spi.c

index d29558e..7aef714 100644 (file)
@@ -10,7 +10,8 @@ config IIO_ST_LSM9DS0
 
        help
          Say yes here to build support for STMicroelectronics LSM9DS0 IMU
-         sensor. Supported devices: accelerometer/magnetometer of lsm9ds0.
+         sensor. Supported devices: accelerometer/magnetometer of lsm9ds0
+         and lsm303d.
 
          To compile this driver as a module, choose M here: the module
          will be called st_lsm9ds0.
index a90138d..611515c 100644 (file)
 
 static const struct of_device_id st_lsm9ds0_of_match[] = {
        {
+               .compatible = "st,lsm303d-imu",
+               .data = LSM303D_IMU_DEV_NAME,
+       },
+       {
                .compatible = "st,lsm9ds0-imu",
                .data = LSM9DS0_IMU_DEV_NAME,
        },
@@ -27,6 +31,7 @@ static const struct of_device_id st_lsm9ds0_of_match[] = {
 MODULE_DEVICE_TABLE(of, st_lsm9ds0_of_match);
 
 static const struct i2c_device_id st_lsm9ds0_id_table[] = {
+       { LSM303D_IMU_DEV_NAME },
        { LSM9DS0_IMU_DEV_NAME },
        {}
 };
index b743bf3..8cc041d 100644 (file)
 
 static const struct of_device_id st_lsm9ds0_of_match[] = {
        {
+               .compatible = "st,lsm303d-imu",
+               .data = LSM303D_IMU_DEV_NAME,
+       },
+       {
                .compatible = "st,lsm9ds0-imu",
                .data = LSM9DS0_IMU_DEV_NAME,
        },
@@ -27,6 +31,7 @@ static const struct of_device_id st_lsm9ds0_of_match[] = {
 MODULE_DEVICE_TABLE(of, st_lsm9ds0_of_match);
 
 static const struct spi_device_id st_lsm9ds0_id_table[] = {
+       { LSM303D_IMU_DEV_NAME },
        { LSM9DS0_IMU_DEV_NAME },
        {}
 };