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 BMA180/BMA250 3-Axis Accelerometer Driver" 93 depends on I2C 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 BMA180 or 98 BMA250 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 BMC150_ACCEL 116 tristate "Bosch BMC150 Accelerometer Driver" 117 select IIO_BUFFER 118 select IIO_TRIGGERED_BUFFER 119 select REGMAP 120 select BMC150_ACCEL_I2C if I2C 121 select BMC150_ACCEL_SPI if SPI 122 help 123 Say yes here to build support for the following Bosch accelerometers: 124 BMC150, BMI055, BMA250E, BMA222E, BMA255, BMA280. 125 126 This is a combo module with both accelerometer and magnetometer. 127 This driver is only implementing accelerometer part, which has 128 its own address and register map. 129 130config BMC150_ACCEL_I2C 131 tristate 132 select REGMAP_I2C 133 134config BMC150_ACCEL_SPI 135 tristate 136 select REGMAP_SPI 137 138config DA280 139 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver" 140 depends on I2C 141 help 142 Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit 143 digital accelerometer. 144 145 To compile this driver as a module, choose M here: the 146 module will be called da280. 147 148config DA311 149 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver" 150 depends on I2C 151 help 152 Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit 153 digital accelerometer. 154 155 To compile this driver as a module, choose M here: the 156 module will be called da311. 157 158config DMARD06 159 tristate "Domintech DMARD06 Digital Accelerometer Driver" 160 depends on OF || COMPILE_TEST 161 depends on I2C 162 help 163 Say yes here to build support for the Domintech low-g tri-axial 164 digital accelerometers: DMARD05, DMARD06, DMARD07. 165 166 To compile this driver as a module, choose M here: the 167 module will be called dmard06. 168 169config DMARD09 170 tristate "Domintech DMARD09 3-axis Accelerometer Driver" 171 depends on I2C 172 help 173 Say yes here to get support for the Domintech DMARD09 3-axis 174 accelerometer. 175 176 Choosing M will build the driver as a module. If so, the module 177 will be called dmard09. 178 179config DMARD10 180 tristate "Domintech DMARD10 3-axis Accelerometer Driver" 181 depends on I2C 182 help 183 Say yes here to get support for the Domintech DMARD10 3-axis 184 accelerometer. 185 186 Choosing M will build the driver as a module. If so, the module 187 will be called dmard10. 188 189config HID_SENSOR_ACCEL_3D 190 depends on HID_SENSOR_HUB 191 select IIO_BUFFER 192 select IIO_TRIGGERED_BUFFER 193 select HID_SENSOR_IIO_COMMON 194 select HID_SENSOR_IIO_TRIGGER 195 tristate "HID Accelerometers 3D" 196 help 197 Say yes here to build support for the HID SENSOR 198 accelerometers 3D. 199 200 To compile this driver as a module, choose M here: the 201 module will be called hid-sensor-accel-3d. 202 203config IIO_CROS_EC_ACCEL_LEGACY 204 tristate "ChromeOS EC Legacy Accelerometer Sensor" 205 depends on IIO_CROS_EC_SENSORS_CORE 206 help 207 Say yes here to get support for accelerometers on Chromebook using 208 legacy EC firmware. 209 Sensor data is retrieved through IO memory. 210 Newer devices should use IIO_CROS_EC_SENSORS. 211 212config IIO_ST_ACCEL_3AXIS 213 tristate "STMicroelectronics accelerometers 3-Axis Driver" 214 depends on (I2C || SPI_MASTER) && SYSFS 215 depends on !SENSORS_LIS3_I2C 216 depends on !SENSORS_LIS3_SPI 217 select IIO_ST_SENSORS_CORE 218 select IIO_ST_ACCEL_I2C_3AXIS if (I2C) 219 select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER) 220 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 221 help 222 Say yes here to build support for STMicroelectronics accelerometers: 223 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC, 224 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL, 225 LNG2DM, LIS3DE, LIS2DE12 226 227 This driver can also be built as a module. If so, these modules 228 will be created: 229 - st_accel (core functions for the driver [it is mandatory]); 230 - st_accel_i2c (necessary for the I2C devices [optional*]); 231 - st_accel_spi (necessary for the SPI devices [optional*]); 232 233 (*) one of these is necessary to do something. 234 235config IIO_ST_ACCEL_I2C_3AXIS 236 tristate 237 depends on IIO_ST_ACCEL_3AXIS 238 depends on IIO_ST_SENSORS_I2C 239 240config IIO_ST_ACCEL_SPI_3AXIS 241 tristate 242 depends on IIO_ST_ACCEL_3AXIS 243 depends on IIO_ST_SENSORS_SPI 244 245config KXSD9 246 tristate "Kionix KXSD9 Accelerometer Driver" 247 select IIO_BUFFER 248 select IIO_TRIGGERED_BUFFER 249 help 250 Say yes here to build support for the Kionix KXSD9 accelerometer. 251 It can be accessed using an (optional) SPI or I2C interface. 252 253 To compile this driver as a module, choose M here: the module 254 will be called kxsd9. 255 256config KXSD9_SPI 257 tristate "Kionix KXSD9 SPI transport" 258 depends on KXSD9 259 depends on SPI 260 default KXSD9 261 select REGMAP_SPI 262 help 263 Say yes here to enable the Kionix KXSD9 accelerometer 264 SPI transport channel. 265 266config KXSD9_I2C 267 tristate "Kionix KXSD9 I2C transport" 268 depends on KXSD9 269 depends on I2C 270 default KXSD9 271 select REGMAP_I2C 272 help 273 Say yes here to enable the Kionix KXSD9 accelerometer 274 I2C transport channel. 275 276config KXCJK1013 277 tristate "Kionix 3-Axis Accelerometer Driver" 278 depends on I2C 279 select IIO_BUFFER 280 select IIO_TRIGGERED_BUFFER 281 help 282 Say Y here if you want to build a driver for the Kionix KXCJK-1013 283 triaxial acceleration sensor. This driver also supports KXCJ9-1008, 284 KXTJ2-1009 and KXTF9. 285 286 To compile this driver as a module, choose M here: the module will 287 be called kxcjk-1013. 288 289config MC3230 290 tristate "mCube MC3230 Digital Accelerometer Driver" 291 depends on I2C 292 help 293 Say yes here to build support for the mCube MC3230 low-g tri-axial 294 digital accelerometer. 295 296 To compile this driver as a module, choose M here: the 297 module will be called mc3230. 298 299config MMA7455 300 tristate 301 select IIO_BUFFER 302 select IIO_TRIGGERED_BUFFER 303 304config MMA7455_I2C 305 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver" 306 depends on I2C 307 select MMA7455 308 select REGMAP_I2C 309 help 310 Say yes here to build support for the Freescale MMA7455L and 311 MMA7456L 3-axis accelerometer. 312 313 To compile this driver as a module, choose M here: the module 314 will be called mma7455_i2c. 315 316config MMA7455_SPI 317 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver" 318 depends on SPI_MASTER 319 select MMA7455 320 select REGMAP_SPI 321 help 322 Say yes here to build support for the Freescale MMA7455L and 323 MMA7456L 3-axis accelerometer. 324 325 To compile this driver as a module, choose M here: the module 326 will be called mma7455_spi. 327 328config MMA7660 329 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver" 330 depends on I2C 331 help 332 Say yes here to get support for the Freescale MMA7660FC 3-Axis 333 accelerometer. 334 335 Choosing M will build the driver as a module. If so, the module 336 will be called mma7660. 337 338config MMA8452 339 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver" 340 depends on I2C 341 select IIO_BUFFER 342 select IIO_TRIGGERED_BUFFER 343 help 344 Say yes here to build support for the following Freescale / NXP 3-axis 345 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC, 346 FXLS8471Q. 347 348 To compile this driver as a module, choose M here: the module 349 will be called mma8452. 350 351config MMA9551_CORE 352 tristate 353 354config MMA9551 355 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver" 356 depends on I2C 357 select MMA9551_CORE 358 359 help 360 Say yes here to build support for the Freescale MMA9551L 361 Intelligent Motion-Sensing Platform Driver. 362 363 To compile this driver as a module, choose M here: the module 364 will be called mma9551. 365 366config MMA9553 367 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver" 368 depends on I2C 369 select MMA9551_CORE 370 help 371 Say yes here to build support for the Freescale MMA9553L 372 Intelligent Pedometer Platform Driver. 373 374 To compile this driver as a module, choose M here: the module 375 will be called mma9553. 376 377config MXC4005 378 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver" 379 depends on I2C 380 select IIO_BUFFER 381 select IIO_TRIGGERED_BUFFER 382 select REGMAP_I2C 383 help 384 Say yes here to build support for the Memsic MXC4005XC 3-axis 385 accelerometer. 386 387 To compile this driver as a module, choose M. The module will be 388 called mxc4005. 389 390config MXC6255 391 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver" 392 depends on I2C 393 select REGMAP_I2C 394 help 395 Say yes here to build support for the Memsic MXC6255 Orientation 396 Sensing Accelerometer Driver. 397 398 To compile this driver as a module, choose M here: the module will be 399 called mxc6255. 400 401config SCA3000 402 select IIO_BUFFER 403 select IIO_KFIFO_BUF 404 depends on SPI 405 tristate "VTI SCA3000 series accelerometers" 406 help 407 Say Y here to build support for the VTI SCA3000 series of SPI 408 accelerometers. These devices use a hardware ring buffer. 409 410 To compile this driver as a module, say M here: the module will be 411 called sca3000. 412 413config STK8312 414 tristate "Sensortek STK8312 3-Axis Accelerometer Driver" 415 depends on I2C 416 select IIO_BUFFER 417 select IIO_TRIGGERED_BUFFER 418 help 419 Say yes here to get support for the Sensortek STK8312 3-axis 420 accelerometer. 421 422 Choosing M will build the driver as a module. If so, the module 423 will be called stk8312. 424 425config STK8BA50 426 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver" 427 depends on I2C 428 select IIO_BUFFER 429 select IIO_TRIGGERED_BUFFER 430 help 431 Say yes here to get support for the Sensortek STK8BA50 3-axis 432 accelerometer. 433 434 Choosing M will build the driver as a module. If so, the module 435 will be called stk8ba50. 436 437endmenu 438