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
7menu "Digital gyroscope sensors"
8
9config 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
16config 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
23config 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
32config 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
44config 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
56config 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
66config 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
81config BMG160_I2C
82	tristate
83	select REGMAP_I2C
84
85config BMG160_SPI
86	tristate
87	select REGMAP_SPI
88
89config 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
103config FXAS21002C_I2C
104	tristate
105	select REGMAP_I2C
106
107config FXAS21002C_SPI
108	tristate
109	select REGMAP_SPI
110
111config 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
121config MPU3050
122	tristate
123	select IIO_BUFFER
124	select IIO_TRIGGERED_BUFFER
125	select REGMAP
126
127config 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
138config 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
150config 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
162config 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
174config 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
182endmenu
183