1 # SPDX-License-Identifier: GPL-2.0-only
3 # Accelerometer drivers
5 # When adding new entries keep the list in alphabetical order
10 tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer"
13 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
15 Say Y here to build support for Analog Devices adis16201 dual-axis
16 digital inclinometer and accelerometer.
18 To compile this driver as a module, say M here: the module will
22 tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer"
25 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
27 Say Y here to build support for Analog Devices adis16209 dual-axis digital inclinometer
30 To compile this driver as a module, say M here: the module will be
37 tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer I2C Driver"
42 Say Y here if you want to build i2c support for the Analog Devices
43 ADXL313 3-axis digital accelerometer.
45 To compile this driver as a module, choose M here: the module
46 will be called adxl313_i2c and you will also get adxl313_core
50 tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer SPI Driver"
55 Say Y here if you want to build spi support for the Analog Devices
56 ADXL313 3-axis digital accelerometer.
58 To compile this driver as a module, choose M here: the module
59 will be called adxl313_spi and you will also get adxl313_core
66 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"
67 depends on INPUT_ADXL34X=n
72 Say Y here if you want to build support for the Analog Devices
73 ADXL345 or ADXL375 3-axis digital accelerometer.
75 To compile this driver as a module, choose M here: the module
76 will be called adxl345_i2c and you will also get adxl345_core
80 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver"
81 depends on INPUT_ADXL34X=n
86 Say Y here if you want to build support for the Analog Devices
87 ADXL345 or ADXL375 3-axis digital accelerometer.
89 To compile this driver as a module, choose M here: the module
90 will be called adxl345_spi and you will also get adxl345_core
97 tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer I2C Driver"
102 select IIO_TRIGGERED_BUFFER
104 Say Y here if you want to build i2c support for the Analog Devices
105 ADXL355 3-axis digital accelerometer.
107 To compile this driver as a module, choose M here: the module
108 will be called adxl355_i2c and you will also get adxl355_core
112 tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer SPI Driver"
117 select IIO_TRIGGERED_BUFFER
119 Say Y here if you want to build spi support for the Analog Devices
120 ADXL355 3-axis digital accelerometer.
122 To compile this driver as a module, choose M here: the module
123 will be called adxl355_spi and you will also get adxl355_core
129 select IIO_TRIGGERED_BUFFER
132 tristate "Analog Devices ADXL367 3-Axis Accelerometer SPI Driver"
137 Say yes here to add support for the Analog Devices ADXL367 triaxial
139 To compile this driver as a module, choose M here: the
140 module will be called adxl367_spi.
143 tristate "Analog Devices ADXL367 3-Axis Accelerometer I2C Driver"
148 Say yes here to add support for the Analog Devices ADXL367 triaxial
150 To compile this driver as a module, choose M here: the
151 module will be called adxl367_i2c.
156 select IIO_TRIGGERED_BUFFER
159 tristate "Analog Devices ADXL372 3-Axis Accelerometer SPI Driver"
164 Say yes here to add support for the Analog Devices ADXL372 triaxial
166 To compile this driver as a module, choose M here: the
167 module will be called adxl372_spi.
170 tristate "Analog Devices ADXL372 3-Axis Accelerometer I2C Driver"
175 Say yes here to add support for the Analog Devices ADXL372 triaxial
177 To compile this driver as a module, choose M here: the
178 module will be called adxl372_i2c.
183 select IIO_TRIGGERED_BUFFER
186 tristate "Analog Devices ADXL380 3-Axis Accelerometer SPI Driver"
191 Say yes here to add support for the Analog Devices ADXL380 triaxial
193 To compile this driver as a module, choose M here: the
194 module will be called adxl380_spi.
197 tristate "Analog Devices ADXL380 3-Axis Accelerometer I2C Driver"
202 Say yes here to add support for the Analog Devices ADXL380 triaxial
204 To compile this driver as a module, choose M here: the
205 module will be called adxl380_i2c.
208 tristate "Bosch BMA023/BMA1x0/BMA250 3-Axis Accelerometer Driver"
209 depends on I2C && INPUT_BMA150=n
211 select IIO_TRIGGERED_BUFFER
213 Say Y here if you want to build a driver for the Bosch BMA023, BMA150
214 BMA180, BMA250 or SMB380 triaxial acceleration sensor.
216 To compile this driver as a module, choose M here: the
217 module will be called bma180.
220 tristate "Bosch BMA220 3-Axis Accelerometer Driver"
223 select IIO_TRIGGERED_BUFFER
225 Say yes here to add support for the Bosch BMA220 triaxial
228 To compile this driver as a module, choose M here: the
229 module will be called bma220_spi.
232 tristate "Bosch BMA400 3-Axis Accelerometer Driver"
235 select IIO_TRIGGERED_BUFFER
236 select BMA400_I2C if I2C
237 select BMA400_SPI if SPI
239 Say Y here if you want to build a driver for the Bosch BMA400
240 triaxial acceleration sensor.
242 To compile this driver as a module, choose M here: the
243 module will be called bma400_core and you will also get
244 bma400_i2c if I2C is enabled and bma400_spi if SPI is
258 tristate "Bosch BMC150 Accelerometer Driver"
260 select IIO_TRIGGERED_BUFFER
262 select BMC150_ACCEL_I2C if I2C
263 select BMC150_ACCEL_SPI if SPI
265 Say yes here to build support for the following Bosch accelerometers:
266 BMA222, BMA222E, BMA250E, BMA253, BMA254, BMA255, BMA280, BMC150, BMC156
269 Note that some of these are combo modules:
270 - BMC150/BMC156: accelerometer and magnetometer
271 - BMI055: accelerometer and gyroscope
273 This driver is only implementing accelerometer part, which has
274 its own address and register map.
276 config BMC150_ACCEL_I2C
280 config BMC150_ACCEL_SPI
285 tristate "Bosch BMI088 Accelerometer Driver"
287 select IIO_TRIGGERED_BUFFER
289 select BMI088_ACCEL_SPI if SPI
290 select BMI088_ACCEL_I2C if I2C
292 Say yes here to build support for the following Bosch accelerometers:
293 BMI088, BMI085, BMI090L. Note that all of these are combo module that
294 include both accelerometer and gyroscope.
296 This driver only implements the accelerometer part, which has its own
297 address and register map. BMG160 provides the gyroscope driver.
299 config BMI088_ACCEL_I2C
303 config BMI088_ACCEL_SPI
308 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver"
311 Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit
312 digital accelerometer.
314 To compile this driver as a module, choose M here: the
315 module will be called da280.
318 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver"
321 Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit
322 digital accelerometer.
324 To compile this driver as a module, choose M here: the
325 module will be called da311.
328 tristate "Domintech DMARD06 Digital Accelerometer Driver"
331 Say yes here to build support for the Domintech low-g tri-axial
332 digital accelerometers: DMARD05, DMARD06, DMARD07.
334 To compile this driver as a module, choose M here: the
335 module will be called dmard06.
338 tristate "Domintech DMARD09 3-axis Accelerometer Driver"
341 Say yes here to get support for the Domintech DMARD09 3-axis
344 Choosing M will build the driver as a module. If so, the module
345 will be called dmard09.
348 tristate "Domintech DMARD10 3-axis Accelerometer Driver"
351 Say yes here to get support for the Domintech DMARD10 3-axis
354 Choosing M will build the driver as a module. If so, the module
355 will be called dmard10.
359 depends on I2C || !I2C # cannot be built-in for modular I2C
363 config FXLS8962AF_I2C
364 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer I2C Driver"
369 Say yes here to build support for the NXP 3-axis automotive
370 accelerometer FXLS8962AF/FXLS8964AF with I2C support.
372 To compile this driver as a module, choose M here: the module
373 will be called fxls8962af_i2c.
375 config FXLS8962AF_SPI
376 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer SPI Driver"
378 depends on I2C || !I2C
382 Say yes here to build support for the NXP 3-axis automotive
383 accelerometer FXLS8962AF/FXLS8964AF with SPI support.
385 To compile this driver as a module, choose M here: the module
386 will be called fxls8962af_spi.
388 config HID_SENSOR_ACCEL_3D
389 depends on HID_SENSOR_HUB
391 select HID_SENSOR_IIO_COMMON
392 select HID_SENSOR_IIO_TRIGGER
393 tristate "HID Accelerometers 3D"
395 Say yes here to build support for the HID SENSOR
398 To compile this driver as a module, choose M here: the
399 module will be called hid-sensor-accel-3d.
401 config IIO_CROS_EC_ACCEL_LEGACY
402 tristate "ChromeOS EC Legacy Accelerometer Sensor"
403 depends on IIO_CROS_EC_SENSORS_CORE
405 Say yes here to get support for accelerometers on Chromebook using
407 Sensor data is retrieved through IO memory.
408 Newer devices should use IIO_CROS_EC_SENSORS.
410 config IIO_ST_ACCEL_3AXIS
411 tristate "STMicroelectronics accelerometers 3-Axis Driver"
412 depends on (I2C || SPI_MASTER) && SYSFS
413 depends on !SENSORS_LIS3_I2C
414 depends on !SENSORS_LIS3_SPI
415 select IIO_ST_SENSORS_CORE
416 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
418 Say yes here to build support for STMicroelectronics accelerometers:
419 LSM303C, LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
420 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
421 LNG2DM, LIS3DE, LIS2DE12, LIS2HH12
423 Also need to enable at least one of I2C and SPI interface drivers
426 config IIO_ST_ACCEL_I2C_3AXIS
427 tristate "STMicroelectronics accelerometers 3-Axis I2C Interface"
428 depends on I2C && IIO_ST_ACCEL_3AXIS
429 default I2C && IIO_ST_ACCEL_3AXIS
430 select IIO_ST_SENSORS_I2C
432 Build support for STMicroelectronics accelerometers I2C interface.
434 To compile this driver as a module, choose M here. The module
435 will be called st_accel_i2c.
437 config IIO_ST_ACCEL_SPI_3AXIS
438 tristate "STMicroelectronics accelerometers 3-Axis SPI Interface"
439 depends on SPI_MASTER && IIO_ST_ACCEL_3AXIS
440 default SPI_MASTER && IIO_ST_ACCEL_3AXIS
441 select IIO_ST_SENSORS_SPI
443 Build support for STMicroelectronics accelerometers SPI interface.
445 To compile this driver as a module, choose M here. The module
446 will be called st_accel_spi.
451 select IIO_TRIGGERED_BUFFER
453 config IIO_KX022A_SPI
454 tristate "Kionix KX022A tri-axis digital accelerometer SPI interface"
459 Enable support for the Kionix digital tri-axis accelerometers
460 connected to SPI interface. Supported devices are:
461 KX022A, KX132-1211, KX132ACR-LBZ
463 config IIO_KX022A_I2C
464 tristate "Kionix KX022A tri-axis digital accelerometer I2C interface"
469 Enable support for the Kionix digital tri-axis accelerometers
470 connected to I2C interface. Supported devices are:
471 KX022A, KX132-1211, KX132ACR-LBZ
474 tristate "Kionix KXSD9 Accelerometer Driver"
476 select IIO_TRIGGERED_BUFFER
478 Say yes here to build support for the Kionix KXSD9 accelerometer.
479 It can be accessed using an (optional) SPI or I2C interface.
481 To compile this driver as a module, choose M here: the module
482 will be called kxsd9.
485 tristate "Kionix KXSD9 SPI transport"
491 Say yes here to enable the Kionix KXSD9 accelerometer
492 SPI transport channel.
495 tristate "Kionix KXSD9 I2C transport"
501 Say yes here to enable the Kionix KXSD9 accelerometer
502 I2C transport channel.
505 tristate "Kionix 3-Axis Accelerometer Driver"
508 select IIO_TRIGGERED_BUFFER
510 Say Y here if you want to build a driver for the Kionix KXCJK-1013
511 triaxial acceleration sensor. This driver also supports KXCJ9-1008,
512 KXTJ2-1009 and KXTF9.
514 To compile this driver as a module, choose M here: the module will
515 be called kxcjk-1013.
518 tristate "mCube MC3230 Digital Accelerometer Driver"
521 Say yes here to build support for the mCube MC3230 low-g tri-axial
522 digital accelerometer.
524 To compile this driver as a module, choose M here: the
525 module will be called mc3230.
530 select IIO_TRIGGERED_BUFFER
533 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"
538 Say yes here to build support for the Freescale MMA7455L and
539 MMA7456L 3-axis accelerometer.
541 To compile this driver as a module, choose M here: the module
542 will be called mma7455_i2c.
545 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"
546 depends on SPI_MASTER
550 Say yes here to build support for the Freescale MMA7455L and
551 MMA7456L 3-axis accelerometer.
553 To compile this driver as a module, choose M here: the module
554 will be called mma7455_spi.
557 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"
560 Say yes here to get support for the Freescale MMA7660FC 3-Axis
563 Choosing M will build the driver as a module. If so, the module
564 will be called mma7660.
567 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"
570 select IIO_TRIGGERED_BUFFER
572 Say yes here to build support for the following Freescale / NXP 3-axis
573 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,
576 To compile this driver as a module, choose M here: the module
577 will be called mma8452.
583 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"
588 Say yes here to build support for the Freescale MMA9551L
589 Intelligent Motion-Sensing Platform Driver.
591 To compile this driver as a module, choose M here: the module
592 will be called mma9551.
595 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"
599 Say yes here to build support for the Freescale MMA9553L
600 Intelligent Pedometer Platform Driver.
602 To compile this driver as a module, choose M here: the module
603 will be called mma9553.
606 tristate "MEMSensing Digital 3-Axis Accelerometer Driver"
609 select IIO_TRIGGERED_BUFFER
612 Say yes here to build support for the MEMSensing MSA311
613 accelerometer driver.
615 To compile this driver as a module, choose M here: the module will be
619 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"
622 select IIO_TRIGGERED_BUFFER
625 Say yes here to build support for the Memsic MXC4005XC 3-axis
628 To compile this driver as a module, choose M. The module will be
632 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"
636 Say yes here to build support for the Memsic MXC6255 Orientation
637 Sensing Accelerometer Driver.
639 To compile this driver as a module, choose M here: the module will be
646 tristate "VTI SCA3000 series accelerometers"
648 Say Y here to build support for the VTI SCA3000 series of SPI
649 accelerometers. These devices use a hardware ring buffer.
651 To compile this driver as a module, say M here: the module will be
655 tristate "Murata SCA3300 3-Axis Accelerometer Driver"
659 select IIO_TRIGGERED_BUFFER
661 Say yes here to build support for Murata SCA3300 3-Axis
664 To compile this driver as a module, choose M here: the module will be
668 tristate "Sensortek STK8312 3-Axis Accelerometer Driver"
671 select IIO_TRIGGERED_BUFFER
673 Say yes here to get support for the Sensortek STK8312 3-axis
676 Choosing M will build the driver as a module. If so, the module
677 will be called stk8312.
680 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"
683 select IIO_TRIGGERED_BUFFER
685 Say yes here to get support for the Sensortek STK8BA50 3-axis
688 Choosing M will build the driver as a module. If so, the module
689 will be called stk8ba50.