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