2021-03-11 03:08:19

by LI Qingwu

[permalink] [raw]
Subject: [PATCH V2 0/2] Add support for ST magnetometer IIS2MDC

Changes in V2:

Extend the exist st_magn* to support IIS2MDC, instead of adding a new
driver.


LI Qingwu (2):
dt-bindings: iio: st,st-sensors add IIS2MDC.
iio:magnetometer: Add Support for ST IIS2MDC

Documentation/devicetree/bindings/iio/st,st-sensors.yaml | 1 +
drivers/iio/magnetometer/st_magn.h | 2 ++
drivers/iio/magnetometer/st_magn_core.c | 1 +
drivers/iio/magnetometer/st_magn_i2c.c | 5 +++++
drivers/iio/magnetometer/st_magn_spi.c | 5 +++++
5 files changed, 14 insertions(+)

--
2.17.1


2021-03-11 03:10:33

by LI Qingwu

[permalink] [raw]
Subject: [PATCH V2 2/2] iio:magnetometer: Add Support for ST IIS2MDC

Add support for ST magnetometer IIS2MDC,
an I2C/SPI interface 3-axis magnetometer.
The patch was tested on the instrument with IIS2MDC via I2C interface.

Signed-off-by: LI Qingwu <[email protected]>
---
drivers/iio/magnetometer/st_magn.h | 2 ++
drivers/iio/magnetometer/st_magn_core.c | 1 +
drivers/iio/magnetometer/st_magn_i2c.c | 5 +++++
drivers/iio/magnetometer/st_magn_spi.c | 5 +++++
4 files changed, 13 insertions(+)

diff --git a/drivers/iio/magnetometer/st_magn.h b/drivers/iio/magnetometer/st_magn.h
index 204b285725c8..912963441307 100644
--- a/drivers/iio/magnetometer/st_magn.h
+++ b/drivers/iio/magnetometer/st_magn.h
@@ -21,6 +21,8 @@
#define LSM303AGR_MAGN_DEV_NAME "lsm303agr_magn"
#define LIS2MDL_MAGN_DEV_NAME "lis2mdl"
#define LSM9DS1_MAGN_DEV_NAME "lsm9ds1_magn"
+#define IIS2MDC_MAGN_DEV_NAME "iis2mdc"
+

const struct st_sensor_settings *st_magn_get_settings(const char *name);
int st_magn_common_probe(struct iio_dev *indio_dev);
diff --git a/drivers/iio/magnetometer/st_magn_core.c b/drivers/iio/magnetometer/st_magn_core.c
index 79de721e6015..71faebd07feb 100644
--- a/drivers/iio/magnetometer/st_magn_core.c
+++ b/drivers/iio/magnetometer/st_magn_core.c
@@ -337,6 +337,7 @@ static const struct st_sensor_settings st_magn_sensors_settings[] = {
.sensors_supported = {
[0] = LSM303AGR_MAGN_DEV_NAME,
[1] = LIS2MDL_MAGN_DEV_NAME,
+ [2] = IIS2MDC_MAGN_DEV_NAME,
},
.ch = (struct iio_chan_spec *)st_magn_3_16bit_channels,
.odr = {
diff --git a/drivers/iio/magnetometer/st_magn_i2c.c b/drivers/iio/magnetometer/st_magn_i2c.c
index c6bb4ce77594..36f4e7b53b24 100644
--- a/drivers/iio/magnetometer/st_magn_i2c.c
+++ b/drivers/iio/magnetometer/st_magn_i2c.c
@@ -46,6 +46,10 @@ static const struct of_device_id st_magn_of_match[] = {
.compatible = "st,lsm9ds1-magn",
.data = LSM9DS1_MAGN_DEV_NAME,
},
+ {
+ .compatible = "st,iis2mdc",
+ .data = IIS2MDC_MAGN_DEV_NAME,
+ },
{},
};
MODULE_DEVICE_TABLE(of, st_magn_of_match);
@@ -101,6 +105,7 @@ static const struct i2c_device_id st_magn_id_table[] = {
{ LSM303AGR_MAGN_DEV_NAME },
{ LIS2MDL_MAGN_DEV_NAME },
{ LSM9DS1_MAGN_DEV_NAME },
+ { IIS2MDC_MAGN_DEV_NAME },
{},
};
MODULE_DEVICE_TABLE(i2c, st_magn_id_table);
diff --git a/drivers/iio/magnetometer/st_magn_spi.c b/drivers/iio/magnetometer/st_magn_spi.c
index 3d08d74c367d..0e2323dfc687 100644
--- a/drivers/iio/magnetometer/st_magn_spi.c
+++ b/drivers/iio/magnetometer/st_magn_spi.c
@@ -41,6 +41,10 @@ static const struct of_device_id st_magn_of_match[] = {
.compatible = "st,lsm9ds1-magn",
.data = LSM9DS1_MAGN_DEV_NAME,
},
+ {
+ .compatible = "st,iis2mdc",
+ .data = IIS2MDC_MAGN_DEV_NAME,
+ },
{}
};
MODULE_DEVICE_TABLE(of, st_magn_of_match);
@@ -92,6 +96,7 @@ static const struct spi_device_id st_magn_id_table[] = {
{ LSM303AGR_MAGN_DEV_NAME },
{ LIS2MDL_MAGN_DEV_NAME },
{ LSM9DS1_MAGN_DEV_NAME },
+ { IIS2MDC_MAGN_DEV_NAME },
{},
};
MODULE_DEVICE_TABLE(spi, st_magn_id_table);
--
2.17.1

2021-03-13 16:16:11

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH V2 0/2] Add support for ST magnetometer IIS2MDC

On Thu, 11 Mar 2021 03:05:52 +0000
LI Qingwu <[email protected]> wrote:

> Changes in V2:
>
> Extend the exist st_magn* to support IIS2MDC, instead of adding a new
> driver.

Looks good to me. Will let it sit on the list a little longer so
Denis and others can take a look if they wish.

If it looks like I've lost it in 2 weeks time feel free to poke me!

Thanks,

Jonathan

>
>
> LI Qingwu (2):
> dt-bindings: iio: st,st-sensors add IIS2MDC.
> iio:magnetometer: Add Support for ST IIS2MDC
>
> Documentation/devicetree/bindings/iio/st,st-sensors.yaml | 1 +
> drivers/iio/magnetometer/st_magn.h | 2 ++
> drivers/iio/magnetometer/st_magn_core.c | 1 +
> drivers/iio/magnetometer/st_magn_i2c.c | 5 +++++
> drivers/iio/magnetometer/st_magn_spi.c | 5 +++++
> 5 files changed, 14 insertions(+)
>