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