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# Accelerometer drivers
4#
5# When adding new entries keep the list in alphabetical order
6
7menu "Accelerometers"
8
9config ADIS16201
10 tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer"
11 depends on SPI
12 select IIO_ADIS_LIB
13 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
14 help
15 Say Y here to build support for Analog Devices adis16201 dual-axis
16 digital inclinometer and accelerometer.
17
18 To compile this driver as a module, say M here: the module will
19 be called adis16201.
20
21config ADIS16209
22 tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer"
23 depends on SPI
24 select IIO_ADIS_LIB
25 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
26 help
27 Say Y here to build support for Analog Devices adis16209 dual-axis digital inclinometer
28 and accelerometer.
29
30 To compile this driver as a module, say M here: the module will be
31 called adis16209.
32
33config ADXL345
34 tristate
35
36config ADXL345_I2C
37 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"
38 depends on INPUT_ADXL34X=n
39 depends on I2C
40 select ADXL345
41 select REGMAP_I2C
42 help
43 Say Y here if you want to build support for the Analog Devices
44 ADXL345 or ADXL375 3-axis digital accelerometer.
45
46 To compile this driver as a module, choose M here: the module
47 will be called adxl345_i2c and you will also get adxl345_core
48 for the core module.
49
50config ADXL345_SPI
51 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver"
52 depends on INPUT_ADXL34X=n
53 depends on SPI
54 select ADXL345
55 select REGMAP_SPI
56 help
57 Say Y here if you want to build support for the Analog Devices
58 ADXL345 or ADXL375 3-axis digital accelerometer.
59
60 To compile this driver as a module, choose M here: the module
61 will be called adxl345_spi and you will also get adxl345_core
62 for the core module.
63
64config ADXL372
65 tristate
66 select IIO_BUFFER
67 select IIO_TRIGGERED_BUFFER
68
69config ADXL372_SPI
70 tristate "Analog Devices ADXL372 3-Axis Accelerometer SPI Driver"
71 depends on SPI
72 select ADXL372
73 select REGMAP_SPI
74 help
75 Say yes here to add support for the Analog Devices ADXL372 triaxial
76 acceleration sensor.
77 To compile this driver as a module, choose M here: the
78 module will be called adxl372_spi.
79
80config ADXL372_I2C
81 tristate "Analog Devices ADXL372 3-Axis Accelerometer I2C Driver"
82 depends on I2C
83 select ADXL372
84 select REGMAP_I2C
85 help
86 Say yes here to add support for the Analog Devices ADXL372 triaxial
87 acceleration sensor.
88 To compile this driver as a module, choose M here: the
89 module will be called adxl372_i2c.
90
91config BMA180
92 tristate "Bosch BMA023/BMA1x0/BMA25x 3-Axis Accelerometer Driver"
93 depends on I2C && INPUT_BMA150=n
94 select IIO_BUFFER
95 select IIO_TRIGGERED_BUFFER
96 help
97 Say Y here if you want to build a driver for the Bosch BMA023, BMA150
98 BMA180, SMB380, or BMA25x triaxial acceleration sensor.
99
100 To compile this driver as a module, choose M here: the
101 module will be called bma180.
102
103config BMA220
104 tristate "Bosch BMA220 3-Axis Accelerometer Driver"
105 depends on SPI
106 select IIO_BUFFER
107 select IIO_TRIGGERED_BUFFER
108 help
109 Say yes here to add support for the Bosch BMA220 triaxial
110 acceleration sensor.
111
112 To compile this driver as a module, choose M here: the
113 module will be called bma220_spi.
114
115config BMA400
116 tristate "Bosch BMA400 3-Axis Accelerometer Driver"
117 select REGMAP
118 select BMA400_I2C if I2C
119 select BMA400_SPI if SPI
120 help
121 Say Y here if you want to build a driver for the Bosch BMA400
122 triaxial acceleration sensor.
123
124 To compile this driver as a module, choose M here: the
125 module will be called bma400_core and you will also get
126 bma400_i2c if I2C is enabled and bma400_spi if SPI is
127 enabled.
128
129config BMA400_I2C
130 tristate
131 depends on BMA400
132
133config BMA400_SPI
134 tristate
135 depends on BMA400
136
137config BMC150_ACCEL
138 tristate "Bosch BMC150 Accelerometer Driver"
139 select IIO_BUFFER
140 select IIO_TRIGGERED_BUFFER
141 select REGMAP
142 select BMC150_ACCEL_I2C if I2C
143 select BMC150_ACCEL_SPI if SPI
144 help
145 Say yes here to build support for the following Bosch accelerometers:
146 BMC150, BMI055, BMA250E, BMA222E, BMA255, BMA280.
147
148 This is a combo module with both accelerometer and magnetometer.
149 This driver is only implementing accelerometer part, which has
150 its own address and register map.
151
152config BMC150_ACCEL_I2C
153 tristate
154 select REGMAP_I2C
155
156config BMC150_ACCEL_SPI
157 tristate
158 select REGMAP_SPI
159
160config DA280
161 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver"
162 depends on I2C
163 help
164 Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit
165 digital accelerometer.
166
167 To compile this driver as a module, choose M here: the
168 module will be called da280.
169
170config DA311
171 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver"
172 depends on I2C
173 help
174 Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit
175 digital accelerometer.
176
177 To compile this driver as a module, choose M here: the
178 module will be called da311.
179
180config DMARD06
181 tristate "Domintech DMARD06 Digital Accelerometer Driver"
182 depends on OF || COMPILE_TEST
183 depends on I2C
184 help
185 Say yes here to build support for the Domintech low-g tri-axial
186 digital accelerometers: DMARD05, DMARD06, DMARD07.
187
188 To compile this driver as a module, choose M here: the
189 module will be called dmard06.
190
191config DMARD09
192 tristate "Domintech DMARD09 3-axis Accelerometer Driver"
193 depends on I2C
194 help
195 Say yes here to get support for the Domintech DMARD09 3-axis
196 accelerometer.
197
198 Choosing M will build the driver as a module. If so, the module
199 will be called dmard09.
200
201config DMARD10
202 tristate "Domintech DMARD10 3-axis Accelerometer Driver"
203 depends on I2C
204 help
205 Say yes here to get support for the Domintech DMARD10 3-axis
206 accelerometer.
207
208 Choosing M will build the driver as a module. If so, the module
209 will be called dmard10.
210
211config HID_SENSOR_ACCEL_3D
212 depends on HID_SENSOR_HUB
213 select IIO_BUFFER
214 select IIO_TRIGGERED_BUFFER
215 select HID_SENSOR_IIO_COMMON
216 select HID_SENSOR_IIO_TRIGGER
217 tristate "HID Accelerometers 3D"
218 help
219 Say yes here to build support for the HID SENSOR
220 accelerometers 3D.
221
222 To compile this driver as a module, choose M here: the
223 module will be called hid-sensor-accel-3d.
224
225config IIO_CROS_EC_ACCEL_LEGACY
226 tristate "ChromeOS EC Legacy Accelerometer Sensor"
227 depends on IIO_CROS_EC_SENSORS_CORE
228 help
229 Say yes here to get support for accelerometers on Chromebook using
230 legacy EC firmware.
231 Sensor data is retrieved through IO memory.
232 Newer devices should use IIO_CROS_EC_SENSORS.
233
234config IIO_ST_ACCEL_3AXIS
235 tristate "STMicroelectronics accelerometers 3-Axis Driver"
236 depends on (I2C || SPI_MASTER) && SYSFS
237 depends on !SENSORS_LIS3_I2C
238 depends on !SENSORS_LIS3_SPI
239 select IIO_ST_SENSORS_CORE
240 select IIO_ST_ACCEL_I2C_3AXIS if (I2C)
241 select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER)
242 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
243 help
244 Say yes here to build support for STMicroelectronics accelerometers:
245 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
246 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
247 LNG2DM, LIS3DE, LIS2DE12, LIS2HH12
248
249 This driver can also be built as a module. If so, these modules
250 will be created:
251 - st_accel (core functions for the driver [it is mandatory]);
252 - st_accel_i2c (necessary for the I2C devices [optional*]);
253 - st_accel_spi (necessary for the SPI devices [optional*]);
254
255 (*) one of these is necessary to do something.
256
257config IIO_ST_ACCEL_I2C_3AXIS
258 tristate
259 depends on IIO_ST_ACCEL_3AXIS
260 depends on IIO_ST_SENSORS_I2C
261
262config IIO_ST_ACCEL_SPI_3AXIS
263 tristate
264 depends on IIO_ST_ACCEL_3AXIS
265 depends on IIO_ST_SENSORS_SPI
266
267config KXSD9
268 tristate "Kionix KXSD9 Accelerometer Driver"
269 select IIO_BUFFER
270 select IIO_TRIGGERED_BUFFER
271 help
272 Say yes here to build support for the Kionix KXSD9 accelerometer.
273 It can be accessed using an (optional) SPI or I2C interface.
274
275 To compile this driver as a module, choose M here: the module
276 will be called kxsd9.
277
278config KXSD9_SPI
279 tristate "Kionix KXSD9 SPI transport"
280 depends on KXSD9
281 depends on SPI
282 default KXSD9
283 select REGMAP_SPI
284 help
285 Say yes here to enable the Kionix KXSD9 accelerometer
286 SPI transport channel.
287
288config KXSD9_I2C
289 tristate "Kionix KXSD9 I2C transport"
290 depends on KXSD9
291 depends on I2C
292 default KXSD9
293 select REGMAP_I2C
294 help
295 Say yes here to enable the Kionix KXSD9 accelerometer
296 I2C transport channel.
297
298config KXCJK1013
299 tristate "Kionix 3-Axis Accelerometer Driver"
300 depends on I2C
301 select IIO_BUFFER
302 select IIO_TRIGGERED_BUFFER
303 help
304 Say Y here if you want to build a driver for the Kionix KXCJK-1013
305 triaxial acceleration sensor. This driver also supports KXCJ9-1008,
306 KXTJ2-1009 and KXTF9.
307
308 To compile this driver as a module, choose M here: the module will
309 be called kxcjk-1013.
310
311config MC3230
312 tristate "mCube MC3230 Digital Accelerometer Driver"
313 depends on I2C
314 help
315 Say yes here to build support for the mCube MC3230 low-g tri-axial
316 digital accelerometer.
317
318 To compile this driver as a module, choose M here: the
319 module will be called mc3230.
320
321config MMA7455
322 tristate
323 select IIO_BUFFER
324 select IIO_TRIGGERED_BUFFER
325
326config MMA7455_I2C
327 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"
328 depends on I2C
329 select MMA7455
330 select REGMAP_I2C
331 help
332 Say yes here to build support for the Freescale MMA7455L and
333 MMA7456L 3-axis accelerometer.
334
335 To compile this driver as a module, choose M here: the module
336 will be called mma7455_i2c.
337
338config MMA7455_SPI
339 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"
340 depends on SPI_MASTER
341 select MMA7455
342 select REGMAP_SPI
343 help
344 Say yes here to build support for the Freescale MMA7455L and
345 MMA7456L 3-axis accelerometer.
346
347 To compile this driver as a module, choose M here: the module
348 will be called mma7455_spi.
349
350config MMA7660
351 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"
352 depends on I2C
353 help
354 Say yes here to get support for the Freescale MMA7660FC 3-Axis
355 accelerometer.
356
357 Choosing M will build the driver as a module. If so, the module
358 will be called mma7660.
359
360config MMA8452
361 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"
362 depends on I2C
363 select IIO_BUFFER
364 select IIO_TRIGGERED_BUFFER
365 help
366 Say yes here to build support for the following Freescale / NXP 3-axis
367 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,
368 FXLS8471Q.
369
370 To compile this driver as a module, choose M here: the module
371 will be called mma8452.
372
373config MMA9551_CORE
374 tristate
375
376config MMA9551
377 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"
378 depends on I2C
379 select MMA9551_CORE
380
381 help
382 Say yes here to build support for the Freescale MMA9551L
383 Intelligent Motion-Sensing Platform Driver.
384
385 To compile this driver as a module, choose M here: the module
386 will be called mma9551.
387
388config MMA9553
389 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"
390 depends on I2C
391 select MMA9551_CORE
392 help
393 Say yes here to build support for the Freescale MMA9553L
394 Intelligent Pedometer Platform Driver.
395
396 To compile this driver as a module, choose M here: the module
397 will be called mma9553.
398
399config MXC4005
400 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"
401 depends on I2C
402 select IIO_BUFFER
403 select IIO_TRIGGERED_BUFFER
404 select REGMAP_I2C
405 help
406 Say yes here to build support for the Memsic MXC4005XC 3-axis
407 accelerometer.
408
409 To compile this driver as a module, choose M. The module will be
410 called mxc4005.
411
412config MXC6255
413 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"
414 depends on I2C
415 select REGMAP_I2C
416 help
417 Say yes here to build support for the Memsic MXC6255 Orientation
418 Sensing Accelerometer Driver.
419
420 To compile this driver as a module, choose M here: the module will be
421 called mxc6255.
422
423config SCA3000
424 select IIO_BUFFER
425 select IIO_KFIFO_BUF
426 depends on SPI
427 tristate "VTI SCA3000 series accelerometers"
428 help
429 Say Y here to build support for the VTI SCA3000 series of SPI
430 accelerometers. These devices use a hardware ring buffer.
431
432 To compile this driver as a module, say M here: the module will be
433 called sca3000.
434
435config STK8312
436 tristate "Sensortek STK8312 3-Axis Accelerometer Driver"
437 depends on I2C
438 select IIO_BUFFER
439 select IIO_TRIGGERED_BUFFER
440 help
441 Say yes here to get support for the Sensortek STK8312 3-axis
442 accelerometer.
443
444 Choosing M will build the driver as a module. If so, the module
445 will be called stk8312.
446
447config STK8BA50
448 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"
449 depends on I2C
450 select IIO_BUFFER
451 select IIO_TRIGGERED_BUFFER
452 help
453 Say yes here to get support for the Sensortek STK8BA50 3-axis
454 accelerometer.
455
456 Choosing M will build the driver as a module. If so, the module
457 will be called stk8ba50.
458
459endmenu