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