xref: /openbmc/linux/drivers/iio/gyro/Kconfig (revision 1802d0be)
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 ADXRS450
45	tristate "Analog Devices ADXRS450/3 Digital Output Gyroscope SPI driver"
46	depends on SPI
47	help
48	  Say yes here to build support for Analog Devices ADXRS450 and ADXRS453
49	  programmable digital output gyroscope.
50
51	  This driver can also be built as a module.  If so, the module
52	  will be called adxrs450.
53
54config BMG160
55	tristate "BOSCH BMG160 Gyro Sensor"
56	depends on (I2C || SPI_MASTER)
57	select IIO_BUFFER
58	select IIO_TRIGGERED_BUFFER
59	select BMG160_I2C if (I2C)
60	select BMG160_SPI if (SPI)
61	help
62	  Say yes here to build support for BOSCH BMG160 Tri-axis Gyro Sensor
63	  driver connected via I2C or SPI. This driver also supports BMI055
64	  gyroscope.
65
66	  This driver can also be built as a module.  If so, the module
67	  will be called bmg160_i2c or bmg160_spi.
68
69config BMG160_I2C
70	tristate
71	select REGMAP_I2C
72
73config BMG160_SPI
74	tristate
75	select REGMAP_SPI
76
77config FXAS21002C
78       tristate "NXP FXAS21002C Gyro Sensor"
79       select IIO_BUFFER
80       select IIO_TRIGGERED_BUFFER
81       select FXAS21002C_I2C if (I2C)
82       select FXAS21002C_SPI if (SPI)
83       depends on (I2C || SPI_MASTER)
84       help
85         Say yes here to build support for NXP FXAS21002C Tri-axis Gyro
86         Sensor driver connected via I2C or SPI.
87
88         This driver can also be built as a module.  If so, the module
89         will be called fxas21002c_i2c or fxas21002c_spi.
90
91config FXAS21002C_I2C
92       tristate
93       select REGMAP_I2C
94
95config FXAS21002C_SPI
96       tristate
97       select REGMAP_SPI
98
99config HID_SENSOR_GYRO_3D
100	depends on HID_SENSOR_HUB
101	select IIO_BUFFER
102	select IIO_TRIGGERED_BUFFER
103	select HID_SENSOR_IIO_COMMON
104	select HID_SENSOR_IIO_TRIGGER
105	tristate "HID Gyroscope 3D"
106	help
107	  Say yes here to build support for the HID SENSOR
108	  Gyroscope 3D.
109
110config MPU3050
111	tristate
112	select IIO_BUFFER
113	select IIO_TRIGGERED_BUFFER
114	select REGMAP
115
116config MPU3050_I2C
117	tristate "Invensense MPU3050 devices on I2C"
118	depends on !(INPUT_MPU3050=y || INPUT_MPU3050=m)
119	depends on I2C
120	select MPU3050
121	select REGMAP_I2C
122	select I2C_MUX
123	help
124	  This driver supports the Invensense MPU3050 gyroscope over I2C.
125	  This driver can be built as a module. The module will be called
126	  inv-mpu3050-i2c.
127
128config IIO_ST_GYRO_3AXIS
129	tristate "STMicroelectronics gyroscopes 3-Axis Driver"
130	depends on (I2C || SPI_MASTER) && SYSFS
131	select IIO_ST_SENSORS_CORE
132	select IIO_ST_GYRO_I2C_3AXIS if (I2C)
133	select IIO_ST_GYRO_SPI_3AXIS if (SPI_MASTER)
134	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
135	help
136	  Say yes here to build support for STMicroelectronics gyroscopes:
137	  L3G4200D, LSM330DL, L3GD20, LSM330DLC, L3G4IS, LSM330, LSM9DS0.
138
139	  This driver can also be built as a module. If so, these modules
140	  will be created:
141	  - st_gyro (core functions for the driver [it is mandatory]);
142	  - st_gyro_i2c (necessary for the I2C devices [optional*]);
143	  - st_gyro_spi (necessary for the SPI devices [optional*]);
144
145	  (*) one of these is necessary to do something.
146
147config IIO_ST_GYRO_I2C_3AXIS
148	tristate
149	depends on IIO_ST_GYRO_3AXIS
150	depends on IIO_ST_SENSORS_I2C
151
152config IIO_ST_GYRO_SPI_3AXIS
153	tristate
154	depends on IIO_ST_GYRO_3AXIS
155	depends on IIO_ST_SENSORS_SPI
156
157config ITG3200
158	tristate "InvenSense ITG3200 Digital 3-Axis Gyroscope I2C driver"
159	depends on I2C
160	select IIO_TRIGGERED_BUFFER if IIO_BUFFER
161	help
162	  Say yes here to add support for the InvenSense ITG3200 digital
163	  3-axis gyroscope sensor.
164
165endmenu
166