iio: accel: add support for IIS328DQ variant
authorStefan Wahren <stefan.wahren@chargebyte.com>
Fri, 17 Mar 2023 10:33:20 +0000 (11:33 +0100)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Sun, 19 Mar 2023 15:41:22 +0000 (15:41 +0000)
Since the ST IIS328DQ accelerometer is compatible to the ST LIS331DL,
just add the new compatible to the st_accel framework.

Link: https://www.st.com/resource/en/datasheet/iis328dq.pdf
Signed-off-by: Stefan Wahren <stefan.wahren@chargebyte.com>
Link: https://lore.kernel.org/r/20230317103323.7741-6-stefan.wahren@chargebyte.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/accel/st_accel.h
drivers/iio/accel/st_accel_core.c
drivers/iio/accel/st_accel_i2c.c
drivers/iio/accel/st_accel_spi.c

index 56ed0c7..e752561 100644 (file)
@@ -39,6 +39,7 @@
 #define LIS302DL_ACCEL_DEV_NAME                "lis302dl"
 #define LSM303C_ACCEL_DEV_NAME         "lsm303c_accel"
 #define SC7A20_ACCEL_DEV_NAME          "sc7a20"
+#define IIS328DQ_ACCEL_DEV_NAME                "iis328dq"
 
 
 #ifdef CONFIG_IIO_BUFFER
index 6b8562f..5f7d81b 100644 (file)
@@ -517,6 +517,7 @@ static const struct st_sensor_settings st_accel_sensors_settings[] = {
                .wai_addr = ST_SENSORS_DEFAULT_WAI_ADDRESS,
                .sensors_supported = {
                        [0] = H3LIS331DL_ACCEL_DEV_NAME,
+                       [1] = IIS328DQ_ACCEL_DEV_NAME,
                },
                .ch = (struct iio_chan_spec *)st_accel_12bit_channels,
                .odr = {
index 3f02fd5..fb9e2d6 100644 (file)
@@ -119,6 +119,10 @@ static const struct of_device_id st_accel_of_match[] = {
                .compatible = "silan,sc7a20",
                .data = SC7A20_ACCEL_DEV_NAME,
        },
+       {
+               .compatible = "st,iis328dq",
+               .data = IIS328DQ_ACCEL_DEV_NAME,
+       },
        {},
 };
 MODULE_DEVICE_TABLE(of, st_accel_of_match);
@@ -157,6 +161,7 @@ static const struct i2c_device_id st_accel_id_table[] = {
        { LIS302DL_ACCEL_DEV_NAME },
        { LSM303C_ACCEL_DEV_NAME },
        { SC7A20_ACCEL_DEV_NAME },
+       { IIS328DQ_ACCEL_DEV_NAME },
        {},
 };
 MODULE_DEVICE_TABLE(i2c, st_accel_id_table);
index 5740dc1..f72a24f 100644 (file)
@@ -100,6 +100,10 @@ static const struct of_device_id st_accel_of_match[] = {
                .compatible = "st,lsm303c-accel",
                .data = LSM303C_ACCEL_DEV_NAME,
        },
+       {
+               .compatible = "st,iis328dq",
+               .data = IIS328DQ_ACCEL_DEV_NAME,
+       },
        {}
 };
 MODULE_DEVICE_TABLE(of, st_accel_of_match);
@@ -157,6 +161,7 @@ static const struct spi_device_id st_accel_id_table[] = {
        { LIS3DE_ACCEL_DEV_NAME },
        { LIS302DL_ACCEL_DEV_NAME },
        { LSM303C_ACCEL_DEV_NAME },
+       { IIS328DQ_ACCEL_DEV_NAME },
        {},
 };
 MODULE_DEVICE_TABLE(spi, st_accel_id_table);