xref: /OK3568_Linux_fs/kernel/drivers/iio/gyro/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# IIO Digital Gyroscope Sensor drivers configuration
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun# When adding new entries keep the list in alphabetical order
6*4882a593Smuzhiyun
7*4882a593Smuzhiyunmenu "Digital gyroscope sensors"
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunconfig ADIS16080
10*4882a593Smuzhiyun	tristate "Analog Devices ADIS16080/100 Yaw Rate Gyroscope with SPI driver"
11*4882a593Smuzhiyun	depends on SPI
12*4882a593Smuzhiyun	help
13*4882a593Smuzhiyun	  Say yes here to build support for Analog Devices ADIS16080, ADIS16100 Yaw
14*4882a593Smuzhiyun	  Rate Gyroscope with SPI.
15*4882a593Smuzhiyun
16*4882a593Smuzhiyunconfig ADIS16130
17*4882a593Smuzhiyun	tristate "Analog Devices ADIS16130 High Precision Angular Rate Sensor driver"
18*4882a593Smuzhiyun	depends on SPI
19*4882a593Smuzhiyun	help
20*4882a593Smuzhiyun	  Say yes here to build support for Analog Devices ADIS16130 High Precision
21*4882a593Smuzhiyun	  Angular Rate Sensor driver.
22*4882a593Smuzhiyun
23*4882a593Smuzhiyunconfig ADIS16136
24*4882a593Smuzhiyun	tristate "Analog devices ADIS16136 and similar gyroscopes driver"
25*4882a593Smuzhiyun	depends on SPI_MASTER
26*4882a593Smuzhiyun	select IIO_ADIS_LIB
27*4882a593Smuzhiyun	select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
28*4882a593Smuzhiyun	help
29*4882a593Smuzhiyun	  Say yes here to build support for the Analog Devices ADIS16133, ADIS16135,
30*4882a593Smuzhiyun	  ADIS16136 gyroscope devices.
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunconfig ADIS16260
33*4882a593Smuzhiyun	tristate "Analog Devices ADIS16260 Digital Gyroscope Sensor SPI driver"
34*4882a593Smuzhiyun	depends on SPI
35*4882a593Smuzhiyun	select IIO_ADIS_LIB
36*4882a593Smuzhiyun	select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
37*4882a593Smuzhiyun	help
38*4882a593Smuzhiyun	  Say yes here to build support for Analog Devices ADIS16260 ADIS16265
39*4882a593Smuzhiyun	  ADIS16250 ADIS16255 and ADIS16251 programmable digital gyroscope sensors.
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun	  This driver can also be built as a module.  If so, the module
42*4882a593Smuzhiyun	  will be called adis16260.
43*4882a593Smuzhiyun
44*4882a593Smuzhiyunconfig ADXRS290
45*4882a593Smuzhiyun	tristate "Analog Devices ADXRS290 Dual-Axis MEMS Gyroscope SPI driver"
46*4882a593Smuzhiyun	depends on SPI
47*4882a593Smuzhiyun	select IIO_BUFFER
48*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER
49*4882a593Smuzhiyun	help
50*4882a593Smuzhiyun	  Say yes here to build support for Analog Devices ADXRS290 programmable
51*4882a593Smuzhiyun	  digital output gyroscope.
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun	  This driver can also be built as a module. If so, the module will be
54*4882a593Smuzhiyun	  called adxrs290.
55*4882a593Smuzhiyun
56*4882a593Smuzhiyunconfig ADXRS450
57*4882a593Smuzhiyun	tristate "Analog Devices ADXRS450/3 Digital Output Gyroscope SPI driver"
58*4882a593Smuzhiyun	depends on SPI
59*4882a593Smuzhiyun	help
60*4882a593Smuzhiyun	  Say yes here to build support for Analog Devices ADXRS450 and ADXRS453
61*4882a593Smuzhiyun	  programmable digital output gyroscope.
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun	  This driver can also be built as a module.  If so, the module
64*4882a593Smuzhiyun	  will be called adxrs450.
65*4882a593Smuzhiyun
66*4882a593Smuzhiyunconfig BMG160
67*4882a593Smuzhiyun	tristate "BOSCH BMG160 Gyro Sensor"
68*4882a593Smuzhiyun	depends on (I2C || SPI_MASTER)
69*4882a593Smuzhiyun	select IIO_BUFFER
70*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER
71*4882a593Smuzhiyun	select BMG160_I2C if (I2C)
72*4882a593Smuzhiyun	select BMG160_SPI if (SPI)
73*4882a593Smuzhiyun	help
74*4882a593Smuzhiyun	  Say yes here to build support for BOSCH BMG160 Tri-axis Gyro Sensor
75*4882a593Smuzhiyun	  driver connected via I2C or SPI. This driver also supports BMI055
76*4882a593Smuzhiyun	  and BMI088 gyroscope.
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun	  This driver can also be built as a module.  If so, the module
79*4882a593Smuzhiyun	  will be called bmg160_i2c or bmg160_spi.
80*4882a593Smuzhiyun
81*4882a593Smuzhiyunconfig BMG160_I2C
82*4882a593Smuzhiyun	tristate
83*4882a593Smuzhiyun	select REGMAP_I2C
84*4882a593Smuzhiyun
85*4882a593Smuzhiyunconfig BMG160_SPI
86*4882a593Smuzhiyun	tristate
87*4882a593Smuzhiyun	select REGMAP_SPI
88*4882a593Smuzhiyun
89*4882a593Smuzhiyunconfig FXAS21002C
90*4882a593Smuzhiyun	tristate "NXP FXAS21002C Gyro Sensor"
91*4882a593Smuzhiyun	select IIO_BUFFER
92*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER
93*4882a593Smuzhiyun	select FXAS21002C_I2C if (I2C)
94*4882a593Smuzhiyun	select FXAS21002C_SPI if (SPI)
95*4882a593Smuzhiyun	depends on (I2C || SPI_MASTER)
96*4882a593Smuzhiyun	help
97*4882a593Smuzhiyun	  Say yes here to build support for NXP FXAS21002C Tri-axis Gyro
98*4882a593Smuzhiyun	  Sensor driver connected via I2C or SPI.
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun	  This driver can also be built as a module.  If so, the module
101*4882a593Smuzhiyun	  will be called fxas21002c_i2c or fxas21002c_spi.
102*4882a593Smuzhiyun
103*4882a593Smuzhiyunconfig FXAS21002C_I2C
104*4882a593Smuzhiyun	tristate
105*4882a593Smuzhiyun	select REGMAP_I2C
106*4882a593Smuzhiyun
107*4882a593Smuzhiyunconfig FXAS21002C_SPI
108*4882a593Smuzhiyun	tristate
109*4882a593Smuzhiyun	select REGMAP_SPI
110*4882a593Smuzhiyun
111*4882a593Smuzhiyunconfig HID_SENSOR_GYRO_3D
112*4882a593Smuzhiyun	depends on HID_SENSOR_HUB
113*4882a593Smuzhiyun	select IIO_BUFFER
114*4882a593Smuzhiyun	select HID_SENSOR_IIO_COMMON
115*4882a593Smuzhiyun	select HID_SENSOR_IIO_TRIGGER
116*4882a593Smuzhiyun	tristate "HID Gyroscope 3D"
117*4882a593Smuzhiyun	help
118*4882a593Smuzhiyun	  Say yes here to build support for the HID SENSOR
119*4882a593Smuzhiyun	  Gyroscope 3D.
120*4882a593Smuzhiyun
121*4882a593Smuzhiyunconfig MPU3050
122*4882a593Smuzhiyun	tristate
123*4882a593Smuzhiyun	select IIO_BUFFER
124*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER
125*4882a593Smuzhiyun	select REGMAP
126*4882a593Smuzhiyun
127*4882a593Smuzhiyunconfig MPU3050_I2C
128*4882a593Smuzhiyun	tristate "Invensense MPU3050 devices on I2C"
129*4882a593Smuzhiyun	depends on !(INPUT_MPU3050=y || INPUT_MPU3050=m)
130*4882a593Smuzhiyun	depends on I2C
131*4882a593Smuzhiyun	select MPU3050
132*4882a593Smuzhiyun	select REGMAP_I2C
133*4882a593Smuzhiyun	select I2C_MUX
134*4882a593Smuzhiyun	help
135*4882a593Smuzhiyun	  This driver supports the Invensense MPU3050 gyroscope over I2C.
136*4882a593Smuzhiyun	  This driver can be built as a module. The module will be called
137*4882a593Smuzhiyun	  inv-mpu3050-i2c.
138*4882a593Smuzhiyun
139*4882a593Smuzhiyunconfig IIO_ST_GYRO_3AXIS
140*4882a593Smuzhiyun	tristate "STMicroelectronics gyroscopes 3-Axis Driver"
141*4882a593Smuzhiyun	depends on (I2C || SPI_MASTER) && SYSFS
142*4882a593Smuzhiyun	select IIO_ST_SENSORS_CORE
143*4882a593Smuzhiyun	select IIO_ST_GYRO_I2C_3AXIS if (I2C)
144*4882a593Smuzhiyun	select IIO_ST_GYRO_SPI_3AXIS if (SPI_MASTER)
145*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
146*4882a593Smuzhiyun	help
147*4882a593Smuzhiyun	  Say yes here to build support for STMicroelectronics gyroscopes:
148*4882a593Smuzhiyun	  L3G4200D, LSM330DL, L3GD20, LSM330DLC, L3G4IS, LSM330, LSM9DS0.
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun	  This driver can also be built as a module. If so, these modules
151*4882a593Smuzhiyun	  will be created:
152*4882a593Smuzhiyun	  - st_gyro (core functions for the driver [it is mandatory]);
153*4882a593Smuzhiyun	  - st_gyro_i2c (necessary for the I2C devices [optional*]);
154*4882a593Smuzhiyun	  - st_gyro_spi (necessary for the SPI devices [optional*]);
155*4882a593Smuzhiyun
156*4882a593Smuzhiyun	  (*) one of these is necessary to do something.
157*4882a593Smuzhiyun
158*4882a593Smuzhiyunconfig IIO_ST_GYRO_I2C_3AXIS
159*4882a593Smuzhiyun	tristate
160*4882a593Smuzhiyun	depends on IIO_ST_GYRO_3AXIS
161*4882a593Smuzhiyun	depends on IIO_ST_SENSORS_I2C
162*4882a593Smuzhiyun
163*4882a593Smuzhiyunconfig IIO_ST_GYRO_SPI_3AXIS
164*4882a593Smuzhiyun	tristate
165*4882a593Smuzhiyun	depends on IIO_ST_GYRO_3AXIS
166*4882a593Smuzhiyun	depends on IIO_ST_SENSORS_SPI
167*4882a593Smuzhiyun
168*4882a593Smuzhiyunconfig ITG3200
169*4882a593Smuzhiyun	tristate "InvenSense ITG3200 Digital 3-Axis Gyroscope I2C driver"
170*4882a593Smuzhiyun	depends on I2C
171*4882a593Smuzhiyun	select IIO_TRIGGERED_BUFFER if IIO_BUFFER
172*4882a593Smuzhiyun	help
173*4882a593Smuzhiyun	  Say yes here to add support for the InvenSense ITG3200 digital
174*4882a593Smuzhiyun	  3-axis gyroscope sensor.
175*4882a593Smuzhiyun
176*4882a593Smuzhiyunendmenu
177