692 lines · plain
1# SPDX-License-Identifier: GPL-2.0-only2#3# Accelerometer drivers4#5# When adding new entries keep the list in alphabetical order6 7menu "Accelerometers"8 9config ADIS1620110 tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer"11 depends on SPI12 select IIO_ADIS_LIB13 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER14 help15 Say Y here to build support for Analog Devices adis16201 dual-axis16 digital inclinometer and accelerometer.17 18 To compile this driver as a module, say M here: the module will19 be called adis16201.20 21config ADIS1620922 tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer"23 depends on SPI24 select IIO_ADIS_LIB25 select IIO_ADIS_LIB_BUFFER if IIO_BUFFER26 help27 Say Y here to build support for Analog Devices adis16209 dual-axis digital inclinometer28 and accelerometer.29 30 To compile this driver as a module, say M here: the module will be31 called adis16209.32 33config ADXL31334 tristate35 36config ADXL313_I2C37 tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer I2C Driver"38 depends on I2C39 select ADXL31340 select REGMAP_I2C41 help42 Say Y here if you want to build i2c support for the Analog Devices43 ADXL313 3-axis digital accelerometer.44 45 To compile this driver as a module, choose M here: the module46 will be called adxl313_i2c and you will also get adxl313_core47 for the core module.48 49config ADXL313_SPI50 tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer SPI Driver"51 depends on SPI52 select ADXL31353 select REGMAP_SPI54 help55 Say Y here if you want to build spi support for the Analog Devices56 ADXL313 3-axis digital accelerometer.57 58 To compile this driver as a module, choose M here: the module59 will be called adxl313_spi and you will also get adxl313_core60 for the core module.61 62config ADXL34563 tristate64 65config ADXL345_I2C66 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"67 depends on INPUT_ADXL34X=n68 depends on I2C69 select ADXL34570 select REGMAP_I2C71 help72 Say Y here if you want to build support for the Analog Devices73 ADXL345 or ADXL375 3-axis digital accelerometer.74 75 To compile this driver as a module, choose M here: the module76 will be called adxl345_i2c and you will also get adxl345_core77 for the core module.78 79config ADXL345_SPI80 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver"81 depends on INPUT_ADXL34X=n82 depends on SPI83 select ADXL34584 select REGMAP_SPI85 help86 Say Y here if you want to build support for the Analog Devices87 ADXL345 or ADXL375 3-axis digital accelerometer.88 89 To compile this driver as a module, choose M here: the module90 will be called adxl345_spi and you will also get adxl345_core91 for the core module.92 93config ADXL35594 tristate95 96config ADXL355_I2C97 tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer I2C Driver"98 depends on I2C99 select ADXL355100 select REGMAP_I2C101 select IIO_BUFFER102 select IIO_TRIGGERED_BUFFER103 help104 Say Y here if you want to build i2c support for the Analog Devices105 ADXL355 3-axis digital accelerometer.106 107 To compile this driver as a module, choose M here: the module108 will be called adxl355_i2c and you will also get adxl355_core109 for the core module.110 111config ADXL355_SPI112 tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer SPI Driver"113 depends on SPI114 select ADXL355115 select REGMAP_SPI116 select IIO_BUFFER117 select IIO_TRIGGERED_BUFFER118 help119 Say Y here if you want to build spi support for the Analog Devices120 ADXL355 3-axis digital accelerometer.121 122 To compile this driver as a module, choose M here: the module123 will be called adxl355_spi and you will also get adxl355_core124 for the core module.125 126config ADXL367127 tristate128 select IIO_BUFFER129 select IIO_TRIGGERED_BUFFER130 131config ADXL367_SPI132 tristate "Analog Devices ADXL367 3-Axis Accelerometer SPI Driver"133 depends on SPI134 select ADXL367135 select REGMAP_SPI136 help137 Say yes here to add support for the Analog Devices ADXL367 triaxial138 acceleration sensor.139 To compile this driver as a module, choose M here: the140 module will be called adxl367_spi.141 142config ADXL367_I2C143 tristate "Analog Devices ADXL367 3-Axis Accelerometer I2C Driver"144 depends on I2C145 select ADXL367146 select REGMAP_I2C147 help148 Say yes here to add support for the Analog Devices ADXL367 triaxial149 acceleration sensor.150 To compile this driver as a module, choose M here: the151 module will be called adxl367_i2c.152 153config ADXL372154 tristate155 select IIO_BUFFER156 select IIO_TRIGGERED_BUFFER157 158config ADXL372_SPI159 tristate "Analog Devices ADXL372 3-Axis Accelerometer SPI Driver"160 depends on SPI161 select ADXL372162 select REGMAP_SPI163 help164 Say yes here to add support for the Analog Devices ADXL372 triaxial165 acceleration sensor.166 To compile this driver as a module, choose M here: the167 module will be called adxl372_spi.168 169config ADXL372_I2C170 tristate "Analog Devices ADXL372 3-Axis Accelerometer I2C Driver"171 depends on I2C172 select ADXL372173 select REGMAP_I2C174 help175 Say yes here to add support for the Analog Devices ADXL372 triaxial176 acceleration sensor.177 To compile this driver as a module, choose M here: the178 module will be called adxl372_i2c.179 180config ADXL380181 tristate182 select IIO_BUFFER183 select IIO_TRIGGERED_BUFFER184 185config ADXL380_SPI186 tristate "Analog Devices ADXL380 3-Axis Accelerometer SPI Driver"187 depends on SPI188 select ADXL380189 select REGMAP_SPI190 help191 Say yes here to add support for the Analog Devices ADXL380 triaxial192 acceleration sensor.193 To compile this driver as a module, choose M here: the194 module will be called adxl380_spi.195 196config ADXL380_I2C197 tristate "Analog Devices ADXL380 3-Axis Accelerometer I2C Driver"198 depends on I2C199 select ADXL380200 select REGMAP_I2C201 help202 Say yes here to add support for the Analog Devices ADXL380 triaxial203 acceleration sensor.204 To compile this driver as a module, choose M here: the205 module will be called adxl380_i2c.206 207config BMA180208 tristate "Bosch BMA023/BMA1x0/BMA250 3-Axis Accelerometer Driver"209 depends on I2C && INPUT_BMA150=n210 select IIO_BUFFER211 select IIO_TRIGGERED_BUFFER212 help213 Say Y here if you want to build a driver for the Bosch BMA023, BMA150214 BMA180, BMA250 or SMB380 triaxial acceleration sensor.215 216 To compile this driver as a module, choose M here: the217 module will be called bma180.218 219config BMA220220 tristate "Bosch BMA220 3-Axis Accelerometer Driver"221 depends on SPI222 select IIO_BUFFER223 select IIO_TRIGGERED_BUFFER224 help225 Say yes here to add support for the Bosch BMA220 triaxial226 acceleration sensor.227 228 To compile this driver as a module, choose M here: the229 module will be called bma220_spi.230 231config BMA400232 tristate "Bosch BMA400 3-Axis Accelerometer Driver"233 select REGMAP234 select IIO_BUFFER235 select IIO_TRIGGERED_BUFFER236 select BMA400_I2C if I2C237 select BMA400_SPI if SPI238 help239 Say Y here if you want to build a driver for the Bosch BMA400240 triaxial acceleration sensor.241 242 To compile this driver as a module, choose M here: the243 module will be called bma400_core and you will also get244 bma400_i2c if I2C is enabled and bma400_spi if SPI is245 enabled.246 247config BMA400_I2C248 tristate249 select REGMAP_I2C250 depends on BMA400251 252config BMA400_SPI253 tristate254 select REGMAP_SPI255 depends on BMA400256 257config BMC150_ACCEL258 tristate "Bosch BMC150 Accelerometer Driver"259 select IIO_BUFFER260 select IIO_TRIGGERED_BUFFER261 select REGMAP262 select BMC150_ACCEL_I2C if I2C263 select BMC150_ACCEL_SPI if SPI264 help265 Say yes here to build support for the following Bosch accelerometers:266 BMA222, BMA222E, BMA250E, BMA253, BMA254, BMA255, BMA280, BMC150, BMC156267 BMI055.268 269 Note that some of these are combo modules:270 - BMC150/BMC156: accelerometer and magnetometer271 - BMI055: accelerometer and gyroscope272 273 This driver is only implementing accelerometer part, which has274 its own address and register map.275 276config BMC150_ACCEL_I2C277 tristate278 select REGMAP_I2C279 280config BMC150_ACCEL_SPI281 tristate282 select REGMAP_SPI283 284config BMI088_ACCEL285 tristate "Bosch BMI088 Accelerometer Driver"286 select IIO_BUFFER287 select IIO_TRIGGERED_BUFFER288 select REGMAP289 select BMI088_ACCEL_SPI if SPI290 select BMI088_ACCEL_I2C if I2C291 help292 Say yes here to build support for the following Bosch accelerometers:293 BMI088, BMI085, BMI090L. Note that all of these are combo module that294 include both accelerometer and gyroscope.295 296 This driver only implements the accelerometer part, which has its own297 address and register map. BMG160 provides the gyroscope driver.298 299config BMI088_ACCEL_I2C300 tristate301 select REGMAP_I2C302 303config BMI088_ACCEL_SPI304 tristate305 select REGMAP_SPI306 307config DA280308 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver"309 depends on I2C310 help311 Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit312 digital accelerometer.313 314 To compile this driver as a module, choose M here: the315 module will be called da280.316 317config DA311318 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver"319 depends on I2C320 help321 Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit322 digital accelerometer.323 324 To compile this driver as a module, choose M here: the325 module will be called da311.326 327config DMARD06328 tristate "Domintech DMARD06 Digital Accelerometer Driver"329 depends on I2C330 help331 Say yes here to build support for the Domintech low-g tri-axial332 digital accelerometers: DMARD05, DMARD06, DMARD07.333 334 To compile this driver as a module, choose M here: the335 module will be called dmard06.336 337config DMARD09338 tristate "Domintech DMARD09 3-axis Accelerometer Driver"339 depends on I2C340 help341 Say yes here to get support for the Domintech DMARD09 3-axis342 accelerometer.343 344 Choosing M will build the driver as a module. If so, the module345 will be called dmard09.346 347config DMARD10348 tristate "Domintech DMARD10 3-axis Accelerometer Driver"349 depends on I2C350 help351 Say yes here to get support for the Domintech DMARD10 3-axis352 accelerometer.353 354 Choosing M will build the driver as a module. If so, the module355 will be called dmard10.356 357config FXLS8962AF358 tristate359 depends on I2C || !I2C # cannot be built-in for modular I2C360 select IIO_BUFFER361 select IIO_KFIFO_BUF362 363config FXLS8962AF_I2C364 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer I2C Driver"365 depends on I2C366 select FXLS8962AF367 select REGMAP_I2C368 help369 Say yes here to build support for the NXP 3-axis automotive370 accelerometer FXLS8962AF/FXLS8964AF with I2C support.371 372 To compile this driver as a module, choose M here: the module373 will be called fxls8962af_i2c.374 375config FXLS8962AF_SPI376 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer SPI Driver"377 depends on SPI378 depends on I2C || !I2C379 select FXLS8962AF380 select REGMAP_SPI381 help382 Say yes here to build support for the NXP 3-axis automotive383 accelerometer FXLS8962AF/FXLS8964AF with SPI support.384 385 To compile this driver as a module, choose M here: the module386 will be called fxls8962af_spi.387 388config HID_SENSOR_ACCEL_3D389 depends on HID_SENSOR_HUB390 select IIO_BUFFER391 select HID_SENSOR_IIO_COMMON392 select HID_SENSOR_IIO_TRIGGER393 tristate "HID Accelerometers 3D"394 help395 Say yes here to build support for the HID SENSOR396 accelerometers 3D.397 398 To compile this driver as a module, choose M here: the399 module will be called hid-sensor-accel-3d.400 401config IIO_CROS_EC_ACCEL_LEGACY402 tristate "ChromeOS EC Legacy Accelerometer Sensor"403 depends on IIO_CROS_EC_SENSORS_CORE404 help405 Say yes here to get support for accelerometers on Chromebook using406 legacy EC firmware.407 Sensor data is retrieved through IO memory.408 Newer devices should use IIO_CROS_EC_SENSORS.409 410config IIO_ST_ACCEL_3AXIS411 tristate "STMicroelectronics accelerometers 3-Axis Driver"412 depends on (I2C || SPI_MASTER) && SYSFS413 depends on !SENSORS_LIS3_I2C414 depends on !SENSORS_LIS3_SPI415 select IIO_ST_SENSORS_CORE416 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)417 help418 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, LIS2HH12422 423 Also need to enable at least one of I2C and SPI interface drivers424 below.425 426config IIO_ST_ACCEL_I2C_3AXIS427 tristate "STMicroelectronics accelerometers 3-Axis I2C Interface"428 depends on I2C && IIO_ST_ACCEL_3AXIS429 default I2C && IIO_ST_ACCEL_3AXIS430 select IIO_ST_SENSORS_I2C431 help432 Build support for STMicroelectronics accelerometers I2C interface.433 434 To compile this driver as a module, choose M here. The module435 will be called st_accel_i2c.436 437config IIO_ST_ACCEL_SPI_3AXIS438 tristate "STMicroelectronics accelerometers 3-Axis SPI Interface"439 depends on SPI_MASTER && IIO_ST_ACCEL_3AXIS440 default SPI_MASTER && IIO_ST_ACCEL_3AXIS441 select IIO_ST_SENSORS_SPI442 help443 Build support for STMicroelectronics accelerometers SPI interface.444 445 To compile this driver as a module, choose M here. The module446 will be called st_accel_spi.447 448config IIO_KX022A449 tristate450 select IIO_BUFFER451 select IIO_TRIGGERED_BUFFER452 453config IIO_KX022A_SPI454 tristate "Kionix KX022A tri-axis digital accelerometer SPI interface"455 depends on SPI456 select IIO_KX022A457 select REGMAP_SPI458 help459 Enable support for the Kionix digital tri-axis accelerometers460 connected to SPI interface. Supported devices are:461 KX022A, KX132-1211, KX132ACR-LBZ462 463config IIO_KX022A_I2C464 tristate "Kionix KX022A tri-axis digital accelerometer I2C interface"465 depends on I2C466 select IIO_KX022A467 select REGMAP_I2C468 help469 Enable support for the Kionix digital tri-axis accelerometers470 connected to I2C interface. Supported devices are:471 KX022A, KX132-1211, KX132ACR-LBZ472 473config KXSD9474 tristate "Kionix KXSD9 Accelerometer Driver"475 select IIO_BUFFER476 select IIO_TRIGGERED_BUFFER477 help478 Say yes here to build support for the Kionix KXSD9 accelerometer.479 It can be accessed using an (optional) SPI or I2C interface.480 481 To compile this driver as a module, choose M here: the module482 will be called kxsd9.483 484config KXSD9_SPI485 tristate "Kionix KXSD9 SPI transport"486 depends on KXSD9487 depends on SPI488 default KXSD9489 select REGMAP_SPI490 help491 Say yes here to enable the Kionix KXSD9 accelerometer492 SPI transport channel.493 494config KXSD9_I2C495 tristate "Kionix KXSD9 I2C transport"496 depends on KXSD9497 depends on I2C498 default KXSD9499 select REGMAP_I2C500 help501 Say yes here to enable the Kionix KXSD9 accelerometer502 I2C transport channel.503 504config KXCJK1013505 tristate "Kionix 3-Axis Accelerometer Driver"506 depends on I2C507 select IIO_BUFFER508 select IIO_TRIGGERED_BUFFER509 help510 Say Y here if you want to build a driver for the Kionix KXCJK-1013511 triaxial acceleration sensor. This driver also supports KXCJ9-1008,512 KXTJ2-1009 and KXTF9.513 514 To compile this driver as a module, choose M here: the module will515 be called kxcjk-1013.516 517config MC3230518 tristate "mCube MC3230 Digital Accelerometer Driver"519 depends on I2C520 help521 Say yes here to build support for the mCube MC3230 low-g tri-axial522 digital accelerometer.523 524 To compile this driver as a module, choose M here: the525 module will be called mc3230.526 527config MMA7455528 tristate529 select IIO_BUFFER530 select IIO_TRIGGERED_BUFFER531 532config MMA7455_I2C533 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"534 depends on I2C535 select MMA7455536 select REGMAP_I2C537 help538 Say yes here to build support for the Freescale MMA7455L and539 MMA7456L 3-axis accelerometer.540 541 To compile this driver as a module, choose M here: the module542 will be called mma7455_i2c.543 544config MMA7455_SPI545 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"546 depends on SPI_MASTER547 select MMA7455548 select REGMAP_SPI549 help550 Say yes here to build support for the Freescale MMA7455L and551 MMA7456L 3-axis accelerometer.552 553 To compile this driver as a module, choose M here: the module554 will be called mma7455_spi.555 556config MMA7660557 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"558 depends on I2C559 help560 Say yes here to get support for the Freescale MMA7660FC 3-Axis561 accelerometer.562 563 Choosing M will build the driver as a module. If so, the module564 will be called mma7660.565 566config MMA8452567 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"568 depends on I2C569 select IIO_BUFFER570 select IIO_TRIGGERED_BUFFER571 help572 Say yes here to build support for the following Freescale / NXP 3-axis573 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,574 FXLS8471Q.575 576 To compile this driver as a module, choose M here: the module577 will be called mma8452.578 579config MMA9551_CORE580 tristate581 582config MMA9551583 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"584 depends on I2C585 select MMA9551_CORE586 587 help588 Say yes here to build support for the Freescale MMA9551L589 Intelligent Motion-Sensing Platform Driver.590 591 To compile this driver as a module, choose M here: the module592 will be called mma9551.593 594config MMA9553595 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"596 depends on I2C597 select MMA9551_CORE598 help599 Say yes here to build support for the Freescale MMA9553L600 Intelligent Pedometer Platform Driver.601 602 To compile this driver as a module, choose M here: the module603 will be called mma9553.604 605config MSA311606 tristate "MEMSensing Digital 3-Axis Accelerometer Driver"607 depends on I2C608 select IIO_BUFFER609 select IIO_TRIGGERED_BUFFER610 select REGMAP_I2C611 help612 Say yes here to build support for the MEMSensing MSA311613 accelerometer driver.614 615 To compile this driver as a module, choose M here: the module will be616 called msa311.617 618config MXC4005619 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"620 depends on I2C621 select IIO_BUFFER622 select IIO_TRIGGERED_BUFFER623 select REGMAP_I2C624 help625 Say yes here to build support for the Memsic MXC4005XC 3-axis626 accelerometer.627 628 To compile this driver as a module, choose M. The module will be629 called mxc4005.630 631config MXC6255632 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"633 depends on I2C634 select REGMAP_I2C635 help636 Say yes here to build support for the Memsic MXC6255 Orientation637 Sensing Accelerometer Driver.638 639 To compile this driver as a module, choose M here: the module will be640 called mxc6255.641 642config SCA3000643 select IIO_BUFFER644 select IIO_KFIFO_BUF645 depends on SPI646 tristate "VTI SCA3000 series accelerometers"647 help648 Say Y here to build support for the VTI SCA3000 series of SPI649 accelerometers. These devices use a hardware ring buffer.650 651 To compile this driver as a module, say M here: the module will be652 called sca3000.653 654config SCA3300655 tristate "Murata SCA3300 3-Axis Accelerometer Driver"656 depends on SPI657 select CRC8658 select IIO_BUFFER659 select IIO_TRIGGERED_BUFFER660 help661 Say yes here to build support for Murata SCA3300 3-Axis662 accelerometer.663 664 To compile this driver as a module, choose M here: the module will be665 called sca3300.666 667config STK8312668 tristate "Sensortek STK8312 3-Axis Accelerometer Driver"669 depends on I2C670 select IIO_BUFFER671 select IIO_TRIGGERED_BUFFER672 help673 Say yes here to get support for the Sensortek STK8312 3-axis674 accelerometer.675 676 Choosing M will build the driver as a module. If so, the module677 will be called stk8312.678 679config STK8BA50680 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"681 depends on I2C682 select IIO_BUFFER683 select IIO_TRIGGERED_BUFFER684 help685 Say yes here to get support for the Sensortek STK8BA50 3-axis686 accelerometer.687 688 Choosing M will build the driver as a module. If so, the module689 will be called stk8ba50.690 691endmenu692