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