Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Magnetometer sensors
4#
5# When adding new entries keep the list in alphabetical order
6
7menu "Magnetometer sensors"
8
9config AF8133J
10 tristate "Voltafield AF8133J 3-Axis Magnetometer"
11 depends on I2C
12 depends on OF
13 select REGMAP_I2C
14 select IIO_BUFFER
15 select IIO_TRIGGERED_BUFFER
16 help
17 Say yes here to build support for Voltafield AF8133J I2C-based
18 3-axis magnetometer chip.
19
20 To compile this driver as a module, choose M here: the module
21 will be called af8133j.
22
23config AK8974
24 tristate "Asahi Kasei AK8974 3-Axis Magnetometer"
25 depends on I2C
26 select REGMAP_I2C
27 select IIO_BUFFER
28 select IIO_TRIGGERED_BUFFER
29 help
30 Say yes here to build support for Asahi Kasei AK8974, AMI305 or
31 AMI306 I2C-based 3-axis magnetometer chips.
32
33 To compile this driver as a module, choose M here: the module
34 will be called ak8974.
35
36config AK8975
37 tristate "Asahi Kasei AK8975 3-Axis Magnetometer"
38 depends on I2C
39 depends on GPIOLIB || COMPILE_TEST
40 select IIO_BUFFER
41 select IIO_TRIGGERED_BUFFER
42 help
43 Say yes here to build support for Asahi Kasei AK8975, AK8963,
44 AK09911, AK09912, AK09916 or AK09918 3-Axis Magnetometer.
45
46 To compile this driver as a module, choose M here: the module
47 will be called ak8975.
48
49config AK09911
50 tristate "Asahi Kasei AK09911 3-axis Compass"
51 depends on I2C
52 depends on GPIOLIB || COMPILE_TEST
53 select AK8975
54 help
55 Deprecated: AK09911 is now supported by AK8975 driver.
56
57config ALS31300
58 tristate "Allegro MicroSystems ALS31300 3-D Linear Hall Effect Sensor"
59 depends on I2C
60 select REGMAP_I2C
61 select IIO_BUFFER
62 select IIO_TRIGGERED_BUFFER
63 help
64 Say yes here to build support for the Allegro MicroSystems
65 ALS31300 Hall Effect Sensor through its I2C interface.
66
67 To compile this driver as a module, choose M here: the
68 module will be called als31300.
69
70config BMC150_MAGN
71 tristate
72 select IIO_BUFFER
73 select IIO_TRIGGERED_BUFFER
74
75config BMC150_MAGN_I2C
76 tristate "Bosch BMC150 I2C Magnetometer Driver"
77 depends on I2C
78 select BMC150_MAGN
79 select REGMAP_I2C
80 help
81 Say yes here to build support for the BMC150 magnetometer with
82 I2C interface.
83
84 This is a combo module with both accelerometer and magnetometer.
85 This driver is only implementing magnetometer part, which has
86 its own address and register map.
87
88 This driver also supports I2C Bosch BMC156 and BMM150 chips.
89 To compile this driver as a module, choose M here: the module will be
90 called bmc150_magn_i2c.
91
92config BMC150_MAGN_SPI
93 tristate "Bosch BMC150 SPI Magnetometer Driver"
94 depends on SPI
95 select BMC150_MAGN
96 select REGMAP_SPI
97 help
98 Say yes here to build support for the BMC150 magnetometer with
99 SPI interface.
100
101 This is a combo module with both accelerometer and magnetometer.
102 This driver is only implementing magnetometer part, which has
103 its own address and register map.
104
105 This driver also supports SPI Bosch BMC156 and BMM150 chips.
106 To compile this driver as a module, choose M here: the module will be
107 called bmc150_magn_spi.
108
109config MAG3110
110 tristate "Freescale MAG3110 3-Axis Magnetometer"
111 depends on I2C
112 select IIO_BUFFER
113 select IIO_TRIGGERED_BUFFER
114 help
115 Say yes here to build support for the Freescale MAG3110 3-Axis
116 magnetometer.
117
118 To compile this driver as a module, choose M here: the module
119 will be called mag3110.
120
121config HID_SENSOR_MAGNETOMETER_3D
122 depends on HID_SENSOR_HUB
123 select IIO_BUFFER
124 select HID_SENSOR_IIO_COMMON
125 select HID_SENSOR_IIO_TRIGGER
126 tristate "HID Magnetometer 3D"
127 help
128 Say yes here to build support for the HID SENSOR
129 Magnetometer 3D.
130
131config MMC35240
132 tristate "MEMSIC MMC35240 3-axis magnetic sensor"
133 select REGMAP_I2C
134 depends on I2C
135 help
136 Say yes here to build support for the MEMSIC MMC35240 3-axis
137 magnetic sensor.
138
139 To compile this driver as a module, choose M here: the module
140 will be called mmc35240.
141
142config MMC5633
143 tristate "MEMSIC MMC5633 3-axis magnetic sensor"
144 select REGMAP_I2C
145 select REGMAP_I3C if I3C
146 depends on I3C_OR_I2C
147 help
148 Say yes here to build support for the MEMSIC MMC5633 3-axis
149 magnetic sensor.
150
151 To compile this driver as a module, choose M here: the module
152 will be called mmc5633
153
154config IIO_ST_MAGN_3AXIS
155 tristate "STMicroelectronics magnetometers 3-Axis Driver"
156 depends on (I2C || SPI_MASTER) && SYSFS
157 select IIO_ST_SENSORS_CORE
158 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
159 help
160 Say yes here to build support for STMicroelectronics magnetometers:
161 LSM303C, LSM303DLHC, LSM303DLM, LIS3MDL.
162
163 Also need to enable at least one of I2C and SPI interface drivers
164 below.
165
166config IIO_ST_MAGN_I2C_3AXIS
167 tristate "STMicroelectronics magnetometers 3-Axis I2C Interface"
168 depends on I2C && IIO_ST_MAGN_3AXIS
169 default I2C && IIO_ST_MAGN_3AXIS
170 select IIO_ST_SENSORS_I2C
171 help
172 Build support for STMicroelectronics magnetometers I2C interface.
173
174 To compile this driver as a module, choose M here. The module
175 will be called st_magn_i2c.
176
177config IIO_ST_MAGN_SPI_3AXIS
178 tristate "STMicroelectronics magnetometers 3-Axis SPI Interface"
179 depends on SPI_MASTER && IIO_ST_MAGN_3AXIS
180 default SPI_MASTER && IIO_ST_MAGN_3AXIS
181 select IIO_ST_SENSORS_SPI
182 help
183 Build support for STMicroelectronics magnetometers SPI interface.
184
185 To compile this driver as a module, choose M here. The module
186 will be called st_magn_spi.
187
188config INFINEON_TLV493D
189 tristate "Infineon TLV493D Low-Power 3D Magnetic Sensor"
190 depends on I2C
191 select IIO_BUFFER
192 select IIO_TRIGGERED_BUFFER
193 help
194 Say Y here to add support for the Infineon TLV493D-A1B6 Low-
195 Power 3D Magnetic Sensor.
196
197 This driver can also be compiled as a module.
198 To compile this driver as a module, choose M here: the module
199 will be called tlv493d.
200
201config SENSORS_HMC5843
202 tristate
203 select IIO_BUFFER
204 select IIO_TRIGGERED_BUFFER
205
206config SENSORS_HMC5843_I2C
207 tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)"
208 depends on I2C
209 select SENSORS_HMC5843
210 select REGMAP_I2C
211 help
212 Say Y here to add support for the Honeywell HMC5843, HMC5883 and
213 HMC5883L 3-Axis Magnetometer (digital compass).
214
215 This driver can also be compiled as a set of modules.
216 If so, these modules will be created:
217 - hmc5843_core (core functions)
218 - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983)
219
220config SENSORS_HMC5843_SPI
221 tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)"
222 depends on SPI_MASTER
223 select SENSORS_HMC5843
224 select REGMAP_SPI
225 help
226 Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer
227 (digital compass).
228
229 This driver can also be compiled as a set of modules.
230 If so, these modules will be created:
231 - hmc5843_core (core functions)
232 - hmc5843_spi (support for HMC5983)
233
234config SENSORS_RM3100
235 tristate
236 select IIO_BUFFER
237 select IIO_TRIGGERED_BUFFER
238
239config SENSORS_RM3100_I2C
240 tristate "PNI RM3100 3-Axis Magnetometer (I2C)"
241 depends on I2C
242 select SENSORS_RM3100
243 select REGMAP_I2C
244 help
245 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer.
246
247 This driver can also be compiled as a module.
248 To compile this driver as a module, choose M here: the module
249 will be called rm3100-i2c.
250
251config SENSORS_RM3100_SPI
252 tristate "PNI RM3100 3-Axis Magnetometer (SPI)"
253 depends on SPI_MASTER
254 select SENSORS_RM3100
255 select REGMAP_SPI
256 help
257 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer.
258
259 This driver can also be compiled as a module.
260 To compile this driver as a module, choose M here: the module
261 will be called rm3100-spi.
262
263config SI7210
264 tristate "SI7210 Hall effect sensor"
265 depends on I2C
266 select REGMAP_I2C
267 help
268 Say Y here to add support for the SI7210 Hall effect sensor.
269
270 This driver can also be compiled as a module.
271 To compile this driver as a module, choose M here: the module
272 will be called si7210.
273
274config TI_TMAG5273
275 tristate "TI TMAG5273 Low-Power Linear 3D Hall-Effect Sensor"
276 depends on I2C
277 select REGMAP_I2C
278 help
279 Say Y here to add support for the TI TMAG5273 Low-Power
280 Linear 3D Hall-Effect Sensor.
281
282 This driver can also be compiled as a module.
283 To compile this driver as a module, choose M here: the module
284 will be called tmag5273.
285
286config YAMAHA_YAS530
287 tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)"
288 depends on I2C
289 select REGMAP_I2C
290 select IIO_BUFFER
291 select IIO_TRIGGERED_BUFFER
292 help
293 Say Y here to add support for the Yamaha YAS530 series of
294 3-Axis Magnetometers. YAS530, YAS532, YAS533 and YAS537 are
295 supported.
296
297 This driver can also be compiled as a module.
298 To compile this driver as a module, choose M here: the module
299 will be called yamaha-yas.
300
301endmenu