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