xref: /linux/drivers/iio/accel/Kconfig (revision 4097da40f9264ab75f256ec7f097cfff2710cc0a)
1#
2# Accelerometer drivers
3#
4# When adding new entries keep the list in alphabetical order
5
6menu "Accelerometers"
7
8config ADIS16201
9        tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer"
10        depends on SPI
11        select IIO_ADIS_LIB
12        select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
13        help
14          Say Y here to build support for Analog Devices adis16201 dual-axis
15          digital inclinometer and accelerometer.
16
17          To compile this driver as a module, say M here: the module will
18          be called adis16201.
19
20config ADIS16209
21        tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer"
22        depends on SPI
23        select IIO_ADIS_LIB
24        select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
25        help
26          Say Y here to build support for Analog Devices adis16209 dual-axis digital inclinometer
27          and accelerometer.
28
29          To compile this driver as a module, say M here: the module will be
30          called adis16209.
31
32config ADXL345
33	tristate
34
35config ADXL345_I2C
36	tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver"
37	depends on INPUT_ADXL34X=n
38	depends on I2C
39	select ADXL345
40	select REGMAP_I2C
41	help
42	  Say Y here if you want to build support for the Analog Devices
43	  ADXL345 or ADXL375 3-axis digital accelerometer.
44
45	  To compile this driver as a module, choose M here: the module
46	  will be called adxl345_i2c and you will also get adxl345_core
47	  for the core module.
48
49config ADXL345_SPI
50	tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver"
51	depends on INPUT_ADXL34X=n
52	depends on SPI
53	select ADXL345
54	select REGMAP_SPI
55	help
56	  Say Y here if you want to build support for the Analog Devices
57	  ADXL345 or ADXL375 3-axis digital accelerometer.
58
59	  To compile this driver as a module, choose M here: the module
60	  will be called adxl345_spi and you will also get adxl345_core
61	  for the core module.
62
63config ADXL372
64	tristate "Analog Devices ADXL372 3-Axis Accelerometer Driver"
65	depends on SPI
66	select IIO_BUFFER
67	select IIO_TRIGGERED_BUFFER
68	help
69	  Say yes here to add support for the Analog Devices ADXL372 triaxial
70	  acceleration sensor.
71	  To compile this driver as a module, choose M here: the
72	  module will be called adxl372.
73
74config BMA180
75	tristate "Bosch BMA180/BMA250 3-Axis Accelerometer Driver"
76	depends on I2C
77	select IIO_BUFFER
78	select IIO_TRIGGERED_BUFFER
79	help
80	  Say Y here if you want to build a driver for the Bosch BMA180 or
81	  BMA250 triaxial acceleration sensor.
82
83	  To compile this driver as a module, choose M here: the
84	  module will be called bma180.
85
86config BMA220
87    tristate "Bosch BMA220 3-Axis Accelerometer Driver"
88	depends on SPI
89	select IIO_BUFFER
90	select IIO_TRIGGERED_BUFFER
91    help
92      Say yes here to add support for the Bosch BMA220 triaxial
93      acceleration sensor.
94
95      To compile this driver as a module, choose M here: the
96      module will be called bma220_spi.
97
98config BMC150_ACCEL
99	tristate "Bosch BMC150 Accelerometer Driver"
100	select IIO_BUFFER
101	select IIO_TRIGGERED_BUFFER
102	select REGMAP
103	select BMC150_ACCEL_I2C if I2C
104	select BMC150_ACCEL_SPI if SPI
105	help
106	  Say yes here to build support for the following Bosch accelerometers:
107	  BMC150, BMI055, BMA250E, BMA222E, BMA255, BMA280.
108
109	  This is a combo module with both accelerometer and magnetometer.
110	  This driver is only implementing accelerometer part, which has
111	  its own address and register map.
112
113config BMC150_ACCEL_I2C
114	tristate
115	select REGMAP_I2C
116
117config BMC150_ACCEL_SPI
118	tristate
119	select REGMAP_SPI
120
121config DA280
122	tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver"
123	depends on I2C
124	help
125	  Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit
126	  digital accelerometer.
127
128	  To compile this driver as a module, choose M here: the
129	  module will be called da280.
130
131config DA311
132	tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver"
133	depends on I2C
134	help
135	  Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit
136	  digital accelerometer.
137
138	  To compile this driver as a module, choose M here: the
139	  module will be called da311.
140
141config DMARD06
142	tristate "Domintech DMARD06 Digital Accelerometer Driver"
143	depends on OF || COMPILE_TEST
144	depends on I2C
145	help
146	  Say yes here to build support for the Domintech low-g tri-axial
147	  digital accelerometers: DMARD05, DMARD06, DMARD07.
148
149	  To compile this driver as a module, choose M here: the
150	  module will be called dmard06.
151
152config DMARD09
153	tristate "Domintech DMARD09 3-axis Accelerometer Driver"
154	depends on I2C
155	help
156	  Say yes here to get support for the Domintech DMARD09 3-axis
157	  accelerometer.
158
159	  Choosing M will build the driver as a module. If so, the module
160	  will be called dmard09.
161
162config DMARD10
163	tristate "Domintech DMARD10 3-axis Accelerometer Driver"
164	depends on I2C
165	help
166	  Say yes here to get support for the Domintech DMARD10 3-axis
167	  accelerometer.
168
169	  Choosing M will build the driver as a module. If so, the module
170	  will be called dmard10.
171
172config HID_SENSOR_ACCEL_3D
173	depends on HID_SENSOR_HUB
174	select IIO_BUFFER
175	select IIO_TRIGGERED_BUFFER
176	select HID_SENSOR_IIO_COMMON
177	select HID_SENSOR_IIO_TRIGGER
178	tristate "HID Accelerometers 3D"
179	help
180	  Say yes here to build support for the HID SENSOR
181	  accelerometers 3D.
182
183	  To compile this driver as a module, choose M here: the
184	  module will be called hid-sensor-accel-3d.
185
186config IIO_CROS_EC_ACCEL_LEGACY
187	tristate "ChromeOS EC Legacy Accelerometer Sensor"
188	select IIO_BUFFER
189	select IIO_TRIGGERED_BUFFER
190	select CROS_EC_LPC_REGISTER_DEVICE
191	help
192	  Say yes here to get support for accelerometers on Chromebook using
193	  legacy EC firmware.
194	  Sensor data is retrieved through IO memory.
195	  Newer devices should use IIO_CROS_EC_SENSORS.
196
197config IIO_ST_ACCEL_3AXIS
198	tristate "STMicroelectronics accelerometers 3-Axis Driver"
199	depends on (I2C || SPI_MASTER) && SYSFS
200	depends on !SENSORS_LIS3_I2C
201	depends on !SENSORS_LIS3_SPI
202	select IIO_ST_SENSORS_CORE
203	select IIO_ST_ACCEL_I2C_3AXIS if (I2C)
204	select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER)
205	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
206	help
207	  Say yes here to build support for STMicroelectronics accelerometers:
208	  LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
209	  LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
210	  LNG2DM
211
212	  This driver can also be built as a module. If so, these modules
213	  will be created:
214	  - st_accel (core functions for the driver [it is mandatory]);
215	  - st_accel_i2c (necessary for the I2C devices [optional*]);
216	  - st_accel_spi (necessary for the SPI devices [optional*]);
217
218	  (*) one of these is necessary to do something.
219
220config IIO_ST_ACCEL_I2C_3AXIS
221	tristate
222	depends on IIO_ST_ACCEL_3AXIS
223	depends on IIO_ST_SENSORS_I2C
224
225config IIO_ST_ACCEL_SPI_3AXIS
226	tristate
227	depends on IIO_ST_ACCEL_3AXIS
228	depends on IIO_ST_SENSORS_SPI
229
230config KXSD9
231	tristate "Kionix KXSD9 Accelerometer Driver"
232	select IIO_BUFFER
233	select IIO_TRIGGERED_BUFFER
234	help
235	  Say yes here to build support for the Kionix KXSD9 accelerometer.
236	  It can be accessed using an (optional) SPI or I2C interface.
237
238	  To compile this driver as a module, choose M here: the module
239	  will be called kxsd9.
240
241config KXSD9_SPI
242	tristate "Kionix KXSD9 SPI transport"
243	depends on KXSD9
244	depends on SPI
245	default KXSD9
246	select REGMAP_SPI
247	help
248	  Say yes here to enable the Kionix KXSD9 accelerometer
249	  SPI transport channel.
250
251config KXSD9_I2C
252	tristate "Kionix KXSD9 I2C transport"
253	depends on KXSD9
254	depends on I2C
255	default KXSD9
256	select REGMAP_I2C
257	help
258	  Say yes here to enable the Kionix KXSD9 accelerometer
259	  I2C transport channel.
260
261config KXCJK1013
262	tristate "Kionix 3-Axis Accelerometer Driver"
263	depends on I2C
264	select IIO_BUFFER
265	select IIO_TRIGGERED_BUFFER
266	help
267	  Say Y here if you want to build a driver for the Kionix KXCJK-1013
268	  triaxial acceleration sensor. This driver also supports KXCJ9-1008,
269	  KXTJ2-1009 and KXTF9.
270
271	  To compile this driver as a module, choose M here: the module will
272	  be called kxcjk-1013.
273
274config MC3230
275	tristate "mCube MC3230 Digital Accelerometer Driver"
276	depends on I2C
277	help
278	  Say yes here to build support for the mCube MC3230 low-g tri-axial
279	  digital accelerometer.
280
281	  To compile this driver as a module, choose M here: the
282	  module will be called mc3230.
283
284config MMA7455
285	tristate
286	select IIO_BUFFER
287	select IIO_TRIGGERED_BUFFER
288
289config MMA7455_I2C
290	tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"
291	depends on I2C
292	select MMA7455
293	select REGMAP_I2C
294	help
295	  Say yes here to build support for the Freescale MMA7455L and
296	  MMA7456L 3-axis accelerometer.
297
298	  To compile this driver as a module, choose M here: the module
299	  will be called mma7455_i2c.
300
301config MMA7455_SPI
302	tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"
303	depends on SPI_MASTER
304	select MMA7455
305	select REGMAP_SPI
306	help
307	  Say yes here to build support for the Freescale MMA7455L and
308	  MMA7456L 3-axis accelerometer.
309
310	  To compile this driver as a module, choose M here: the module
311	  will be called mma7455_spi.
312
313config MMA7660
314	tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"
315	depends on I2C
316	help
317	  Say yes here to get support for the Freescale MMA7660FC 3-Axis
318	  accelerometer.
319
320	  Choosing M will build the driver as a module. If so, the module
321	  will be called mma7660.
322
323config MMA8452
324	tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"
325	depends on I2C
326	select IIO_BUFFER
327	select IIO_TRIGGERED_BUFFER
328	help
329	  Say yes here to build support for the following Freescale / NXP 3-axis
330	  accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,
331	  FXLS8471Q.
332
333	  To compile this driver as a module, choose M here: the module
334	  will be called mma8452.
335
336config MMA9551_CORE
337	tristate
338
339config MMA9551
340	tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"
341	depends on I2C
342	select MMA9551_CORE
343
344	help
345	  Say yes here to build support for the Freescale MMA9551L
346	  Intelligent Motion-Sensing Platform Driver.
347
348	  To compile this driver as a module, choose M here: the module
349	  will be called mma9551.
350
351config MMA9553
352	tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"
353	depends on I2C
354	select MMA9551_CORE
355	help
356	  Say yes here to build support for the Freescale MMA9553L
357	  Intelligent Pedometer Platform Driver.
358
359	  To compile this driver as a module, choose M here: the module
360	  will be called mma9553.
361
362config MXC4005
363	tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"
364	depends on I2C
365	select IIO_BUFFER
366	select IIO_TRIGGERED_BUFFER
367	select REGMAP_I2C
368	help
369	  Say yes here to build support for the Memsic MXC4005XC 3-axis
370	  accelerometer.
371
372	  To compile this driver as a module, choose M. The module will be
373	  called mxc4005.
374
375config MXC6255
376	tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"
377	depends on I2C
378	select REGMAP_I2C
379	help
380	  Say yes here to build support for the Memsic MXC6255 Orientation
381	  Sensing Accelerometer Driver.
382
383	  To compile this driver as a module, choose M here: the module will be
384	  called mxc6255.
385
386config SCA3000
387	select IIO_BUFFER
388	select IIO_KFIFO_BUF
389	depends on SPI
390	tristate "VTI SCA3000 series accelerometers"
391	help
392	  Say Y here to build support for the VTI SCA3000 series of SPI
393	  accelerometers. These devices use a hardware ring buffer.
394
395	  To compile this driver as a module, say M here: the module will be
396	  called sca3000.
397
398config STK8312
399	tristate "Sensortek STK8312 3-Axis Accelerometer Driver"
400	depends on I2C
401	select IIO_BUFFER
402	select IIO_TRIGGERED_BUFFER
403	help
404	  Say yes here to get support for the Sensortek STK8312 3-axis
405	  accelerometer.
406
407	  Choosing M will build the driver as a module. If so, the module
408	  will be called stk8312.
409
410config STK8BA50
411	tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"
412	depends on I2C
413	select IIO_BUFFER
414	select IIO_TRIGGERED_BUFFER
415	help
416	  Say yes here to get support for the Sensortek STK8BA50 3-axis
417	  accelerometer.
418
419	  Choosing M will build the driver as a module. If so, the module
420	  will be called stk8ba50.
421
422endmenu
423