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 select IIO_BUFFER 206 select IIO_TRIGGERED_BUFFER 207 select CROS_EC_LPC_REGISTER_DEVICE 208 help 209 Say yes here to get support for accelerometers on Chromebook using 210 legacy EC firmware. 211 Sensor data is retrieved through IO memory. 212 Newer devices should use IIO_CROS_EC_SENSORS. 213 214config IIO_ST_ACCEL_3AXIS 215 tristate "STMicroelectronics accelerometers 3-Axis Driver" 216 depends on (I2C || SPI_MASTER) && SYSFS 217 depends on !SENSORS_LIS3_I2C 218 depends on !SENSORS_LIS3_SPI 219 select IIO_ST_SENSORS_CORE 220 select IIO_ST_ACCEL_I2C_3AXIS if (I2C) 221 select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER) 222 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 223 help 224 Say yes here to build support for STMicroelectronics accelerometers: 225 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC, 226 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL, 227 LNG2DM, LIS3DE, LIS2DE12 228 229 This driver can also be built as a module. If so, these modules 230 will be created: 231 - st_accel (core functions for the driver [it is mandatory]); 232 - st_accel_i2c (necessary for the I2C devices [optional*]); 233 - st_accel_spi (necessary for the SPI devices [optional*]); 234 235 (*) one of these is necessary to do something. 236 237config IIO_ST_ACCEL_I2C_3AXIS 238 tristate 239 depends on IIO_ST_ACCEL_3AXIS 240 depends on IIO_ST_SENSORS_I2C 241 242config IIO_ST_ACCEL_SPI_3AXIS 243 tristate 244 depends on IIO_ST_ACCEL_3AXIS 245 depends on IIO_ST_SENSORS_SPI 246 247config KXSD9 248 tristate "Kionix KXSD9 Accelerometer Driver" 249 select IIO_BUFFER 250 select IIO_TRIGGERED_BUFFER 251 help 252 Say yes here to build support for the Kionix KXSD9 accelerometer. 253 It can be accessed using an (optional) SPI or I2C interface. 254 255 To compile this driver as a module, choose M here: the module 256 will be called kxsd9. 257 258config KXSD9_SPI 259 tristate "Kionix KXSD9 SPI transport" 260 depends on KXSD9 261 depends on SPI 262 default KXSD9 263 select REGMAP_SPI 264 help 265 Say yes here to enable the Kionix KXSD9 accelerometer 266 SPI transport channel. 267 268config KXSD9_I2C 269 tristate "Kionix KXSD9 I2C transport" 270 depends on KXSD9 271 depends on I2C 272 default KXSD9 273 select REGMAP_I2C 274 help 275 Say yes here to enable the Kionix KXSD9 accelerometer 276 I2C transport channel. 277 278config KXCJK1013 279 tristate "Kionix 3-Axis Accelerometer Driver" 280 depends on I2C 281 select IIO_BUFFER 282 select IIO_TRIGGERED_BUFFER 283 help 284 Say Y here if you want to build a driver for the Kionix KXCJK-1013 285 triaxial acceleration sensor. This driver also supports KXCJ9-1008, 286 KXTJ2-1009 and KXTF9. 287 288 To compile this driver as a module, choose M here: the module will 289 be called kxcjk-1013. 290 291config MC3230 292 tristate "mCube MC3230 Digital Accelerometer Driver" 293 depends on I2C 294 help 295 Say yes here to build support for the mCube MC3230 low-g tri-axial 296 digital accelerometer. 297 298 To compile this driver as a module, choose M here: the 299 module will be called mc3230. 300 301config MMA7455 302 tristate 303 select IIO_BUFFER 304 select IIO_TRIGGERED_BUFFER 305 306config MMA7455_I2C 307 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver" 308 depends on I2C 309 select MMA7455 310 select REGMAP_I2C 311 help 312 Say yes here to build support for the Freescale MMA7455L and 313 MMA7456L 3-axis accelerometer. 314 315 To compile this driver as a module, choose M here: the module 316 will be called mma7455_i2c. 317 318config MMA7455_SPI 319 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver" 320 depends on SPI_MASTER 321 select MMA7455 322 select REGMAP_SPI 323 help 324 Say yes here to build support for the Freescale MMA7455L and 325 MMA7456L 3-axis accelerometer. 326 327 To compile this driver as a module, choose M here: the module 328 will be called mma7455_spi. 329 330config MMA7660 331 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver" 332 depends on I2C 333 help 334 Say yes here to get support for the Freescale MMA7660FC 3-Axis 335 accelerometer. 336 337 Choosing M will build the driver as a module. If so, the module 338 will be called mma7660. 339 340config MMA8452 341 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver" 342 depends on I2C 343 select IIO_BUFFER 344 select IIO_TRIGGERED_BUFFER 345 help 346 Say yes here to build support for the following Freescale / NXP 3-axis 347 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC, 348 FXLS8471Q. 349 350 To compile this driver as a module, choose M here: the module 351 will be called mma8452. 352 353config MMA9551_CORE 354 tristate 355 356config MMA9551 357 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver" 358 depends on I2C 359 select MMA9551_CORE 360 361 help 362 Say yes here to build support for the Freescale MMA9551L 363 Intelligent Motion-Sensing Platform Driver. 364 365 To compile this driver as a module, choose M here: the module 366 will be called mma9551. 367 368config MMA9553 369 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver" 370 depends on I2C 371 select MMA9551_CORE 372 help 373 Say yes here to build support for the Freescale MMA9553L 374 Intelligent Pedometer Platform Driver. 375 376 To compile this driver as a module, choose M here: the module 377 will be called mma9553. 378 379config MXC4005 380 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver" 381 depends on I2C 382 select IIO_BUFFER 383 select IIO_TRIGGERED_BUFFER 384 select REGMAP_I2C 385 help 386 Say yes here to build support for the Memsic MXC4005XC 3-axis 387 accelerometer. 388 389 To compile this driver as a module, choose M. The module will be 390 called mxc4005. 391 392config MXC6255 393 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver" 394 depends on I2C 395 select REGMAP_I2C 396 help 397 Say yes here to build support for the Memsic MXC6255 Orientation 398 Sensing Accelerometer Driver. 399 400 To compile this driver as a module, choose M here: the module will be 401 called mxc6255. 402 403config SCA3000 404 select IIO_BUFFER 405 select IIO_KFIFO_BUF 406 depends on SPI 407 tristate "VTI SCA3000 series accelerometers" 408 help 409 Say Y here to build support for the VTI SCA3000 series of SPI 410 accelerometers. These devices use a hardware ring buffer. 411 412 To compile this driver as a module, say M here: the module will be 413 called sca3000. 414 415config STK8312 416 tristate "Sensortek STK8312 3-Axis Accelerometer Driver" 417 depends on I2C 418 select IIO_BUFFER 419 select IIO_TRIGGERED_BUFFER 420 help 421 Say yes here to get support for the Sensortek STK8312 3-axis 422 accelerometer. 423 424 Choosing M will build the driver as a module. If so, the module 425 will be called stk8312. 426 427config STK8BA50 428 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver" 429 depends on I2C 430 select IIO_BUFFER 431 select IIO_TRIGGERED_BUFFER 432 help 433 Say yes here to get support for the Sensortek STK8BA50 3-axis 434 accelerometer. 435 436 Choosing M will build the driver as a module. If so, the module 437 will be called stk8ba50. 438 439endmenu 440