blob: 15de262015df8a2b923e73232aab3f8954ae9786 [file] [log] [blame]
rjw1f884582022-01-06 17:20:42 +08001#
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_ST_ACCEL_3AXIS
152 tristate "STMicroelectronics accelerometers 3-Axis Driver"
153 depends on (I2C || SPI_MASTER) && SYSFS
154 depends on !SENSORS_LIS3_I2C
155 depends on !SENSORS_LIS3_SPI
156 select IIO_ST_SENSORS_CORE
157 select IIO_ST_ACCEL_I2C_3AXIS if (I2C)
158 select IIO_ST_ACCEL_SPI_3AXIS if (SPI_MASTER)
159 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
160 help
161 Say yes here to build support for STMicroelectronics accelerometers:
162 LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC,
163 LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL,
164 LNG2DM
165
166 This driver can also be built as a module. If so, these modules
167 will be created:
168 - st_accel (core functions for the driver [it is mandatory]);
169 - st_accel_i2c (necessary for the I2C devices [optional*]);
170 - st_accel_spi (necessary for the SPI devices [optional*]);
171
172 (*) one of these is necessary to do something.
173
174config IIO_ST_ACCEL_I2C_3AXIS
175 tristate
176 depends on IIO_ST_ACCEL_3AXIS
177 depends on IIO_ST_SENSORS_I2C
178
179config IIO_ST_ACCEL_SPI_3AXIS
180 tristate
181 depends on IIO_ST_ACCEL_3AXIS
182 depends on IIO_ST_SENSORS_SPI
183
184config KXSD9
185 tristate "Kionix KXSD9 Accelerometer Driver"
186 select IIO_BUFFER
187 select IIO_TRIGGERED_BUFFER
188 help
189 Say yes here to build support for the Kionix KXSD9 accelerometer.
190 It can be accessed using an (optional) SPI or I2C interface.
191
192 To compile this driver as a module, choose M here: the module
193 will be called kxsd9.
194
195config KXSD9_SPI
196 tristate "Kionix KXSD9 SPI transport"
197 depends on KXSD9
198 depends on SPI
199 default KXSD9
200 select REGMAP_SPI
201 help
202 Say yes here to enable the Kionix KXSD9 accelerometer
203 SPI transport channel.
204
205config KXSD9_I2C
206 tristate "Kionix KXSD9 I2C transport"
207 depends on KXSD9
208 depends on I2C
209 default KXSD9
210 select REGMAP_I2C
211 help
212 Say yes here to enable the Kionix KXSD9 accelerometer
213 I2C transport channel.
214
215config KXCJK1013
216 tristate "Kionix 3-Axis Accelerometer Driver"
217 depends on I2C
218 select IIO_BUFFER
219 select IIO_TRIGGERED_BUFFER
220 help
221 Say Y here if you want to build a driver for the Kionix KXCJK-1013
222 triaxial acceleration sensor. This driver also supports KXCJ9-1008
223 and KXTJ2-1009.
224
225 To compile this driver as a module, choose M here: the module will
226 be called kxcjk-1013.
227
228config MC3230
229 tristate "mCube MC3230 Digital Accelerometer Driver"
230 depends on I2C
231 help
232 Say yes here to build support for the mCube MC3230 low-g tri-axial
233 digital accelerometer.
234
235 To compile this driver as a module, choose M here: the
236 module will be called mc3230.
237
238config MMA7455
239 tristate
240 select IIO_BUFFER
241 select IIO_TRIGGERED_BUFFER
242
243config MMA7455_I2C
244 tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver"
245 depends on I2C
246 select MMA7455
247 select REGMAP_I2C
248 help
249 Say yes here to build support for the Freescale MMA7455L and
250 MMA7456L 3-axis accelerometer.
251
252 To compile this driver as a module, choose M here: the module
253 will be called mma7455_i2c.
254
255config MMA7455_SPI
256 tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver"
257 depends on SPI_MASTER
258 select MMA7455
259 select REGMAP_SPI
260 help
261 Say yes here to build support for the Freescale MMA7455L and
262 MMA7456L 3-axis accelerometer.
263
264 To compile this driver as a module, choose M here: the module
265 will be called mma7455_spi.
266
267config MMA7660
268 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver"
269 depends on I2C
270 help
271 Say yes here to get support for the Freescale MMA7660FC 3-Axis
272 accelerometer.
273
274 Choosing M will build the driver as a module. If so, the module
275 will be called mma7660.
276
277config MMA8452
278 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver"
279 depends on I2C
280 select IIO_BUFFER
281 select IIO_TRIGGERED_BUFFER
282 help
283 Say yes here to build support for the following Freescale / NXP 3-axis
284 accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC,
285 FXLS8471Q.
286
287 To compile this driver as a module, choose M here: the module
288 will be called mma8452.
289
290config MMA9551_CORE
291 tristate
292
293config MMA9551
294 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver"
295 depends on I2C
296 select MMA9551_CORE
297
298 help
299 Say yes here to build support for the Freescale MMA9551L
300 Intelligent Motion-Sensing Platform Driver.
301
302 To compile this driver as a module, choose M here: the module
303 will be called mma9551.
304
305config MMA9553
306 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver"
307 depends on I2C
308 select MMA9551_CORE
309 help
310 Say yes here to build support for the Freescale MMA9553L
311 Intelligent Pedometer Platform Driver.
312
313 To compile this driver as a module, choose M here: the module
314 will be called mma9553.
315
316config MXC4005
317 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver"
318 depends on I2C
319 select IIO_BUFFER
320 select IIO_TRIGGERED_BUFFER
321 select REGMAP_I2C
322 help
323 Say yes here to build support for the Memsic MXC4005XC 3-axis
324 accelerometer.
325
326 To compile this driver as a module, choose M. The module will be
327 called mxc4005.
328
329config MXC6255
330 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver"
331 depends on I2C
332 select REGMAP_I2C
333 help
334 Say yes here to build support for the Memsic MXC6255 Orientation
335 Sensing Accelerometer Driver.
336
337 To compile this driver as a module, choose M here: the module will be
338 called mxc6255.
339
340config SCA3000
341 select IIO_BUFFER
342 select IIO_KFIFO_BUF
343 depends on SPI
344 tristate "VTI SCA3000 series accelerometers"
345 help
346 Say Y here to build support for the VTI SCA3000 series of SPI
347 accelerometers. These devices use a hardware ring buffer.
348
349 To compile this driver as a module, say M here: the module will be
350 called sca3000.
351
352config STK8312
353 tristate "Sensortek STK8312 3-Axis Accelerometer Driver"
354 depends on I2C
355 select IIO_BUFFER
356 select IIO_TRIGGERED_BUFFER
357 help
358 Say yes here to get support for the Sensortek STK8312 3-axis
359 accelerometer.
360
361 Choosing M will build the driver as a module. If so, the module
362 will be called stk8312.
363
364config STK8BA50
365 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver"
366 depends on I2C
367 select IIO_BUFFER
368 select IIO_TRIGGERED_BUFFER
369 help
370 Say yes here to get support for the Sensortek STK8BA50 3-axis
371 accelerometer.
372
373 Choosing M will build the driver as a module. If so, the module
374 will be called stk8ba50.
375
376endmenu