1 # SPDX-License-Identifier: GPL-2.0-only
5 # When adding new entries keep the list in alphabetical order
7 menu "Magnetometer sensors"
10 tristate "Asahi Kasei AK8974 3-Axis Magnetometer"
15 select IIO_TRIGGERED_BUFFER
17 Say yes here to build support for Asahi Kasei AK8974, AMI305 or
18 AMI306 I2C-based 3-axis magnetometer chips.
20 To compile this driver as a module, choose M here: the module
21 will be called ak8974.
24 tristate "Asahi Kasei AK8975 3-Axis Magnetometer"
26 depends on GPIOLIB || COMPILE_TEST
28 select IIO_TRIGGERED_BUFFER
30 Say yes here to build support for Asahi Kasei AK8975, AK8963,
31 AK09911 or AK09912 3-Axis Magnetometer.
33 To compile this driver as a module, choose M here: the module
34 will be called ak8975.
37 tristate "Asahi Kasei AK09911 3-axis Compass"
39 depends on GPIOLIB || COMPILE_TEST
42 Deprecated: AK09911 is now supported by AK8975 driver.
47 select IIO_TRIGGERED_BUFFER
49 config BMC150_MAGN_I2C
50 tristate "Bosch BMC150 I2C Magnetometer Driver"
55 Say yes here to build support for the BMC150 magnetometer with
58 This is a combo module with both accelerometer and magnetometer.
59 This driver is only implementing magnetometer part, which has
60 its own address and register map.
62 This driver also supports I2C Bosch BMC156 and BMM150 chips.
63 To compile this driver as a module, choose M here: the module will be
64 called bmc150_magn_i2c.
66 config BMC150_MAGN_SPI
67 tristate "Bosch BMC150 SPI Magnetometer Driver"
72 Say yes here to build support for the BMC150 magnetometer with
75 This is a combo module with both accelerometer and magnetometer.
76 This driver is only implementing magnetometer part, which has
77 its own address and register map.
79 This driver also supports SPI Bosch BMC156 and BMM150 chips.
80 To compile this driver as a module, choose M here: the module will be
81 called bmc150_magn_spi.
84 tristate "Freescale MAG3110 3-Axis Magnetometer"
87 select IIO_TRIGGERED_BUFFER
89 Say yes here to build support for the Freescale MAG3110 3-Axis
92 To compile this driver as a module, choose M here: the module
93 will be called mag3110.
95 config HID_SENSOR_MAGNETOMETER_3D
96 depends on HID_SENSOR_HUB
98 select IIO_TRIGGERED_BUFFER
99 select HID_SENSOR_IIO_COMMON
100 select HID_SENSOR_IIO_TRIGGER
101 tristate "HID Magenetometer 3D"
103 Say yes here to build support for the HID SENSOR
107 tristate "MEMSIC MMC35240 3-axis magnetic sensor"
111 Say yes here to build support for the MEMSIC MMC35240 3-axis
114 To compile this driver as a module, choose M here: the module
115 will be called mmc35240.
117 config IIO_ST_MAGN_3AXIS
118 tristate "STMicroelectronics magnetometers 3-Axis Driver"
119 depends on (I2C || SPI_MASTER) && SYSFS
120 select IIO_ST_SENSORS_CORE
121 select IIO_ST_MAGN_I2C_3AXIS if (I2C)
122 select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER)
123 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
125 Say yes here to build support for STMicroelectronics magnetometers:
126 LSM303DLHC, LSM303DLM, LIS3MDL.
128 This driver can also be built as a module. If so, these modules
130 - st_magn (core functions for the driver [it is mandatory]);
131 - st_magn_i2c (necessary for the I2C devices [optional*]);
132 - st_magn_spi (necessary for the SPI devices [optional*]);
134 (*) one of these is necessary to do something.
136 config IIO_ST_MAGN_I2C_3AXIS
138 depends on IIO_ST_MAGN_3AXIS
139 depends on IIO_ST_SENSORS_I2C
141 config IIO_ST_MAGN_SPI_3AXIS
143 depends on IIO_ST_MAGN_3AXIS
144 depends on IIO_ST_SENSORS_SPI
146 config SENSORS_HMC5843
149 select IIO_TRIGGERED_BUFFER
151 config SENSORS_HMC5843_I2C
152 tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)"
154 select SENSORS_HMC5843
157 Say Y here to add support for the Honeywell HMC5843, HMC5883 and
158 HMC5883L 3-Axis Magnetometer (digital compass).
160 This driver can also be compiled as a set of modules.
161 If so, these modules will be created:
162 - hmc5843_core (core functions)
163 - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983)
165 config SENSORS_HMC5843_SPI
166 tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)"
167 depends on SPI_MASTER
168 select SENSORS_HMC5843
171 Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer
174 This driver can also be compiled as a set of modules.
175 If so, these modules will be created:
176 - hmc5843_core (core functions)
177 - hmc5843_spi (support for HMC5983)
179 config SENSORS_RM3100
182 select IIO_TRIGGERED_BUFFER
184 config SENSORS_RM3100_I2C
185 tristate "PNI RM3100 3-Axis Magnetometer (I2C)"
187 select SENSORS_RM3100
190 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer.
192 This driver can also be compiled as a module.
193 To compile this driver as a module, choose M here: the module
194 will be called rm3100-i2c.
196 config SENSORS_RM3100_SPI
197 tristate "PNI RM3100 3-Axis Magnetometer (SPI)"
198 depends on SPI_MASTER
199 select SENSORS_RM3100
202 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer.
204 This driver can also be compiled as a module.
205 To compile this driver as a module, choose M here: the module
206 will be called rm3100-spi.