Commit 721a2a7e authored by Stephan Gerhold's avatar Stephan Gerhold Committed by Jonathan Cameron
Browse files

iio: magnetometer: st_magn: Add LSM303C



The magnetometer part of ST LSM303C is similar (perhaps even identical)
to the already supported standalone LIS3MDL magnetometer, so just
add the new st,lsm303c-magn compatible for the existing definitions.

Signed-off-by: default avatarStephan Gerhold <stephan@gerhold.net>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Link: https://lore.kernel.org/r/20230106102239.9647-4-stephan@gerhold.net


Signed-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 23fd6f0b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -119,7 +119,7 @@ config IIO_ST_MAGN_3AXIS
	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
	help
	  Say yes here to build support for STMicroelectronics magnetometers:
	  LSM303DLHC, LSM303DLM, LIS3MDL.
	  LSM303C, LSM303DLHC, LSM303DLM, LIS3MDL.

	  Also need to enable at least one of I2C and SPI interface drivers
	  below.
+1 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
#define LIS2MDL_MAGN_DEV_NAME		"lis2mdl"
#define LSM9DS1_MAGN_DEV_NAME		"lsm9ds1_magn"
#define IIS2MDC_MAGN_DEV_NAME		"iis2mdc"
#define LSM303C_MAGN_DEV_NAME		"lsm303c_magn"

#ifdef CONFIG_IIO_BUFFER
int st_magn_allocate_ring(struct iio_dev *indio_dev);
+1 −0
Original line number Diff line number Diff line
@@ -305,6 +305,7 @@ static const struct st_sensor_settings st_magn_sensors_settings[] = {
		.sensors_supported = {
			[0] = LIS3MDL_MAGN_DEV_NAME,
			[1] = LSM9DS1_MAGN_DEV_NAME,
			[2] = LSM303C_MAGN_DEV_NAME,
		},
		.ch = (struct iio_chan_spec *)st_magn_2_16bit_channels,
		.odr = {
+5 −0
Original line number Diff line number Diff line
@@ -50,6 +50,10 @@ static const struct of_device_id st_magn_of_match[] = {
		.compatible = "st,iis2mdc",
		.data = IIS2MDC_MAGN_DEV_NAME,
	},
	{
		.compatible = "st,lsm303c-magn",
		.data = LSM303C_MAGN_DEV_NAME,
	},
	{},
};
MODULE_DEVICE_TABLE(of, st_magn_of_match);
@@ -97,6 +101,7 @@ static const struct i2c_device_id st_magn_id_table[] = {
	{ LIS2MDL_MAGN_DEV_NAME },
	{ LSM9DS1_MAGN_DEV_NAME },
	{ IIS2MDC_MAGN_DEV_NAME },
	{ LSM303C_MAGN_DEV_NAME },
	{},
};
MODULE_DEVICE_TABLE(i2c, st_magn_id_table);
+5 −0
Original line number Diff line number Diff line
@@ -45,6 +45,10 @@ static const struct of_device_id st_magn_of_match[] = {
		.compatible = "st,iis2mdc",
		.data = IIS2MDC_MAGN_DEV_NAME,
	},
	{
		.compatible = "st,lsm303c-magn",
		.data = LSM303C_MAGN_DEV_NAME,
	},
	{}
};
MODULE_DEVICE_TABLE(of, st_magn_of_match);
@@ -89,6 +93,7 @@ static const struct spi_device_id st_magn_id_table[] = {
	{ LIS2MDL_MAGN_DEV_NAME },
	{ LSM9DS1_MAGN_DEV_NAME },
	{ IIS2MDC_MAGN_DEV_NAME },
	{ LSM303C_MAGN_DEV_NAME },
	{},
};
MODULE_DEVICE_TABLE(spi, st_magn_id_table);