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 ADXL345 3-Axis Digital Accelerometer I2C Driver"
38 depends on INPUT_ADXL34X=n
43 Say Y here if you want to build support for the Analog Devices
44 ADXL345 or ADXL375 3-axis digital accelerometer.
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
51 tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver"
52 depends on INPUT_ADXL34X=n
57 Say Y here if you want to build support for the Analog Devices
58 ADXL345 or ADXL375 3-axis digital accelerometer.
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
67 select IIO_TRIGGERED_BUFFER
70 tristate "Analog Devices ADXL372 3-Axis Accelerometer SPI Driver"
75 Say yes here to add support for the Analog Devices ADXL372 triaxial
77 To compile this driver as a module, choose M here: the
78 module will be called adxl372_spi.
81 tristate "Analog Devices ADXL372 3-Axis Accelerometer I2C Driver"
86 Say yes here to add support for the Analog Devices ADXL372 triaxial
88 To compile this driver as a module, choose M here: the
89 module will be called adxl372_i2c.
92 tristate "Bosch BMA023/BMA1x0/BMA250 3-Axis Accelerometer Driver"
93 depends on I2C && INPUT_BMA150=n
95 select IIO_TRIGGERED_BUFFER
97 Say Y here if you want to build a driver for the Bosch BMA023, BMA150
98 BMA180, BMA250 or SMB380 triaxial acceleration sensor.
100 To compile this driver as a module, choose M here: the
101 module will be called bma180.
104 tristate "Bosch BMA220 3-Axis Accelerometer Driver"
107 select IIO_TRIGGERED_BUFFER
109 Say yes here to add support for the Bosch BMA220 triaxial
112 To compile this driver as a module, choose M here: the
113 module will be called bma220_spi.
116 tristate "Bosch BMA400 3-Axis Accelerometer Driver"
118 select BMA400_I2C if I2C
119 select BMA400_SPI if SPI
121 Say Y here if you want to build a driver for the Bosch BMA400
122 triaxial acceleration sensor.
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
138 tristate "Bosch BMC150 Accelerometer Driver"
140 select IIO_TRIGGERED_BUFFER
142 select BMC150_ACCEL_I2C if I2C
143 select BMC150_ACCEL_SPI if SPI
145 Say yes here to build support for the following Bosch accelerometers:
146 BMA222, BMA222E, BMA250E, BMA253, BMA254, BMA255, BMA280, BMC150, BMC156
149 Note that some of these are combo modules:
150 - BMC150/BMC156: accelerometer and magnetometer
151 - BMI055: accelerometer and gyroscope
153 This driver is only implementing accelerometer part, which has
154 its own address and register map.
156 config BMC150_ACCEL_I2C
160 config BMC150_ACCEL_SPI
165 tristate "Bosch BMI088 Accelerometer Driver"
168 select IIO_TRIGGERED_BUFFER
170 select BMI088_ACCEL_SPI
172 Say yes here to build support for the Bosch BMI088 accelerometer.
174 This is a combo module with both accelerometer and gyroscope. This
175 driver only implements the accelerometer part, which has its own
176 address and register map. BMG160 provides the gyroscope driver.
178 config BMI088_ACCEL_SPI
183 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver"
186 Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit
187 digital accelerometer.
189 To compile this driver as a module, choose M here: the
190 module will be called da280.
193 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver"
196 Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit
197 digital accelerometer.
199 To compile this driver as a module, choose M here: the
200 module will be called da311.
203 tristate "Domintech DMARD06 Digital Accelerometer Driver"
204 depends on OF || COMPILE_TEST
207 Say yes here to build support for the Domintech low-g tri-axial
208 digital accelerometers: DMARD05, DMARD06, DMARD07.
210 To compile this driver as a module, choose M here: the
211 module will be called dmard06.
214 tristate "Domintech DMARD09 3-axis Accelerometer Driver"
217 Say yes here to get support for the Domintech DMARD09 3-axis
220 Choosing M will build the driver as a module. If so, the module
221 will be called dmard09.
224 tristate "Domintech DMARD10 3-axis Accelerometer Driver"
227 Say yes here to get support for the Domintech DMARD10 3-axis
230 Choosing M will build the driver as a module. If so, the module
231 will be called dmard10.
235 depends on I2C || !I2C # cannot be built-in for modular I2C
237 config FXLS8962AF_I2C
238 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer I2C Driver"
243 Say yes here to build support for the NXP 3-axis automotive
244 accelerometer FXLS8962AF/FXLS8964AF with I2C support.
246 To compile this driver as a module, choose M here: the module
247 will be called fxls8962af_i2c.
249 config FXLS8962AF_SPI
250 tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer SPI Driver"
252 depends on I2C || !I2C
256 Say yes here to build support for the NXP 3-axis automotive
257 accelerometer FXLS8962AF/FXLS8964AF with SPI support.
259 To compile this driver as a module, choose M here: the module
260 will be called fxls8962af_spi.
262 config HID_SENSOR_ACCEL_3D
263 depends on HID_SENSOR_HUB
265 select HID_SENSOR_IIO_COMMON
266 select HID_SENSOR_IIO_TRIGGER
267 tristate "HID Accelerometers 3D"
269 Say yes here to build support for the HID SENSOR
272 To compile this driver as a module, choose M here: the
273 module will be called hid-sensor-accel-3d.
275 config IIO_CROS_EC_ACCEL_LEGACY
276 tristate "ChromeOS EC Legacy Accelerometer Sensor"
277 depends on IIO_CROS_EC_SENSORS_CORE
279 Say yes here to get support for accelerometers on Chromebook using
281 Sensor data is retrieved through IO memory.
282 Newer devices should use IIO_CROS_EC_SENSORS.
284 config IIO_ST_ACCEL_3AXIS
285 tristate "STMicroelectronics accelerometers 3-Axis Driver"
286 depends on (I2C || SPI_MASTER) && SYSFS
287 depends on !SENSORS_LIS3_I2C
288 depends on !SENSORS_LIS3_SPI
289 select IIO_ST_SENSORS_CORE
290 select IIO_ST_ACCEL_I2C_3AXIS if (I2C)
291 select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER)
292 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
294 Say yes here to build support for STMicroelectronics accelerometers:
295 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
296 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
297 LNG2DM, LIS3DE, LIS2DE12, LIS2HH12
299 This driver can also be built as a module. If so, these modules
301 - st_accel (core functions for the driver [it is mandatory]);
302 - st_accel_i2c (necessary for the I2C devices [optional*]);
303 - st_accel_spi (necessary for the SPI devices [optional*]);
305 (*) one of these is necessary to do something.
307 config IIO_ST_ACCEL_I2C_3AXIS
309 depends on IIO_ST_ACCEL_3AXIS
310 depends on IIO_ST_SENSORS_I2C
312 config IIO_ST_ACCEL_SPI_3AXIS
314 depends on IIO_ST_ACCEL_3AXIS
315 depends on IIO_ST_SENSORS_SPI
318 tristate "Kionix KXSD9 Accelerometer Driver"
320 select IIO_TRIGGERED_BUFFER
322 Say yes here to build support for the Kionix KXSD9 accelerometer.
323 It can be accessed using an (optional) SPI or I2C interface.
325 To compile this driver as a module, choose M here: the module
326 will be called kxsd9.
329 tristate "Kionix KXSD9 SPI transport"
335 Say yes here to enable the Kionix KXSD9 accelerometer
336 SPI transport channel.
339 tristate "Kionix KXSD9 I2C transport"
345 Say yes here to enable the Kionix KXSD9 accelerometer
346 I2C transport channel.
349 tristate "Kionix 3-Axis Accelerometer Driver"
352 select IIO_TRIGGERED_BUFFER
354 Say Y here if you want to build a driver for the Kionix KXCJK-1013
355 triaxial acceleration sensor. This driver also supports KXCJ9-1008,
356 KXTJ2-1009 and KXTF9.
358 To compile this driver as a module, choose M here: the module will
359 be called kxcjk-1013.
362 tristate "mCube MC3230 Digital Accelerometer Driver"
365 Say yes here to build support for the mCube MC3230 low-g tri-axial
366 digital accelerometer.
368 To compile this driver as a module, choose M here: the
369 module will be called mc3230.
374 select IIO_TRIGGERED_BUFFER
377 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"
382 Say yes here to build support for the Freescale MMA7455L and
383 MMA7456L 3-axis accelerometer.
385 To compile this driver as a module, choose M here: the module
386 will be called mma7455_i2c.
389 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"
390 depends on SPI_MASTER
394 Say yes here to build support for the Freescale MMA7455L and
395 MMA7456L 3-axis accelerometer.
397 To compile this driver as a module, choose M here: the module
398 will be called mma7455_spi.
401 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"
404 Say yes here to get support for the Freescale MMA7660FC 3-Axis
407 Choosing M will build the driver as a module. If so, the module
408 will be called mma7660.
411 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"
414 select IIO_TRIGGERED_BUFFER
416 Say yes here to build support for the following Freescale / NXP 3-axis
417 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,
420 To compile this driver as a module, choose M here: the module
421 will be called mma8452.
427 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"
432 Say yes here to build support for the Freescale MMA9551L
433 Intelligent Motion-Sensing Platform Driver.
435 To compile this driver as a module, choose M here: the module
436 will be called mma9551.
439 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"
443 Say yes here to build support for the Freescale MMA9553L
444 Intelligent Pedometer Platform Driver.
446 To compile this driver as a module, choose M here: the module
447 will be called mma9553.
450 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"
453 select IIO_TRIGGERED_BUFFER
456 Say yes here to build support for the Memsic MXC4005XC 3-axis
459 To compile this driver as a module, choose M. The module will be
463 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"
467 Say yes here to build support for the Memsic MXC6255 Orientation
468 Sensing Accelerometer Driver.
470 To compile this driver as a module, choose M here: the module will be
477 tristate "VTI SCA3000 series accelerometers"
479 Say Y here to build support for the VTI SCA3000 series of SPI
480 accelerometers. These devices use a hardware ring buffer.
482 To compile this driver as a module, say M here: the module will be
486 tristate "Murata SCA3300 3-Axis Accelerometer Driver"
490 select IIO_TRIGGERED_BUFFER
492 Say yes here to build support for Murata SCA3300 3-Axis
495 To compile this driver as a module, choose M here: the module will be
499 tristate "Sensortek STK8312 3-Axis Accelerometer Driver"
502 select IIO_TRIGGERED_BUFFER
504 Say yes here to get support for the Sensortek STK8312 3-axis
507 Choosing M will build the driver as a module. If so, the module
508 will be called stk8312.
511 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"
514 select IIO_TRIGGERED_BUFFER
516 Say yes here to get support for the Sensortek STK8BA50 3-axis
519 Choosing M will build the driver as a module. If so, the module
520 will be called stk8ba50.