Message ID | 20230306172249.74003-6-stefan.wahren@i2se.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | ARM: dts: imx6ull: Add chargebyte Tarragon support | expand |
On Mon, 6 Mar 2023 18:22:46 +0100 Stefan Wahren <stefan.wahren@i2se.com> wrote: > From: Stefan Wahren <stefan.wahren@chargebyte.com> > > Add support for ST IIS328DQ accelerometer to the st_accel framework. > The chip is compatible to the LIS331DL. > > Link: https://www.st.com/resource/en/datasheet/iis328dq.pdf > Signed-off-by: Stefan Wahren <stefan.wahren@chargebyte.com> > Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com> LGTM. I'll pick up when the binding discussion concludes. (assuming no other issues raised!) Jonathan > --- > drivers/iio/accel/st_accel.h | 1 + > drivers/iio/accel/st_accel_core.c | 1 + > drivers/iio/accel/st_accel_i2c.c | 5 +++++ > drivers/iio/accel/st_accel_spi.c | 5 +++++ > 4 files changed, 12 insertions(+) > > diff --git a/drivers/iio/accel/st_accel.h b/drivers/iio/accel/st_accel.h > index 56ed0c776d4a..e7525615712b 100644 > --- a/drivers/iio/accel/st_accel.h > +++ b/drivers/iio/accel/st_accel.h > @@ -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 > diff --git a/drivers/iio/accel/st_accel_core.c b/drivers/iio/accel/st_accel_core.c > index 6b8562f684d5..5f7d81b44b1d 100644 > --- a/drivers/iio/accel/st_accel_core.c > +++ b/drivers/iio/accel/st_accel_core.c > @@ -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 = { > diff --git a/drivers/iio/accel/st_accel_i2c.c b/drivers/iio/accel/st_accel_i2c.c > index 3f02fd5d5946..fb9e2d6f4210 100644 > --- a/drivers/iio/accel/st_accel_i2c.c > +++ b/drivers/iio/accel/st_accel_i2c.c > @@ -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); > diff --git a/drivers/iio/accel/st_accel_spi.c b/drivers/iio/accel/st_accel_spi.c > index 5740dc1820bd..f72a24f45322 100644 > --- a/drivers/iio/accel/st_accel_spi.c > +++ b/drivers/iio/accel/st_accel_spi.c > @@ -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);
diff --git a/drivers/iio/accel/st_accel.h b/drivers/iio/accel/st_accel.h index 56ed0c776d4a..e7525615712b 100644 --- a/drivers/iio/accel/st_accel.h +++ b/drivers/iio/accel/st_accel.h @@ -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 diff --git a/drivers/iio/accel/st_accel_core.c b/drivers/iio/accel/st_accel_core.c index 6b8562f684d5..5f7d81b44b1d 100644 --- a/drivers/iio/accel/st_accel_core.c +++ b/drivers/iio/accel/st_accel_core.c @@ -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 = { diff --git a/drivers/iio/accel/st_accel_i2c.c b/drivers/iio/accel/st_accel_i2c.c index 3f02fd5d5946..fb9e2d6f4210 100644 --- a/drivers/iio/accel/st_accel_i2c.c +++ b/drivers/iio/accel/st_accel_i2c.c @@ -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); diff --git a/drivers/iio/accel/st_accel_spi.c b/drivers/iio/accel/st_accel_spi.c index 5740dc1820bd..f72a24f45322 100644 --- a/drivers/iio/accel/st_accel_spi.c +++ b/drivers/iio/accel/st_accel_spi.c @@ -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);