162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# IIO Digital Gyroscope Sensor drivers configuration
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci# When adding new entries keep the list in alphabetical order
662306a36Sopenharmony_ci
762306a36Sopenharmony_cimenu "Digital gyroscope sensors"
862306a36Sopenharmony_ci
962306a36Sopenharmony_ciconfig ADIS16080
1062306a36Sopenharmony_ci	tristate "Analog Devices ADIS16080/100 Yaw Rate Gyroscope with SPI driver"
1162306a36Sopenharmony_ci	depends on SPI
1262306a36Sopenharmony_ci	help
1362306a36Sopenharmony_ci	  Say yes here to build support for Analog Devices ADIS16080, ADIS16100 Yaw
1462306a36Sopenharmony_ci	  Rate Gyroscope with SPI.
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciconfig ADIS16130
1762306a36Sopenharmony_ci	tristate "Analog Devices ADIS16130 High Precision Angular Rate Sensor driver"
1862306a36Sopenharmony_ci	depends on SPI
1962306a36Sopenharmony_ci	help
2062306a36Sopenharmony_ci	  Say yes here to build support for Analog Devices ADIS16130 High Precision
2162306a36Sopenharmony_ci	  Angular Rate Sensor driver.
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ciconfig ADIS16136
2462306a36Sopenharmony_ci	tristate "Analog devices ADIS16136 and similar gyroscopes driver"
2562306a36Sopenharmony_ci	depends on SPI_MASTER
2662306a36Sopenharmony_ci	select IIO_ADIS_LIB
2762306a36Sopenharmony_ci	select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
2862306a36Sopenharmony_ci	help
2962306a36Sopenharmony_ci	  Say yes here to build support for the Analog Devices ADIS16133, ADIS16135,
3062306a36Sopenharmony_ci	  ADIS16136 gyroscope devices.
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ciconfig ADIS16260
3362306a36Sopenharmony_ci	tristate "Analog Devices ADIS16260 Digital Gyroscope Sensor SPI driver"
3462306a36Sopenharmony_ci	depends on SPI
3562306a36Sopenharmony_ci	select IIO_ADIS_LIB
3662306a36Sopenharmony_ci	select IIO_ADIS_LIB_BUFFER if IIO_BUFFER
3762306a36Sopenharmony_ci	help
3862306a36Sopenharmony_ci	  Say yes here to build support for Analog Devices ADIS16260 ADIS16265
3962306a36Sopenharmony_ci	  ADIS16250 ADIS16255 and ADIS16251 programmable digital gyroscope sensors.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
4262306a36Sopenharmony_ci	  will be called adis16260.
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ciconfig ADXRS290
4562306a36Sopenharmony_ci	tristate "Analog Devices ADXRS290 Dual-Axis MEMS Gyroscope SPI driver"
4662306a36Sopenharmony_ci	depends on SPI
4762306a36Sopenharmony_ci	select IIO_BUFFER
4862306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER
4962306a36Sopenharmony_ci	help
5062306a36Sopenharmony_ci	  Say yes here to build support for Analog Devices ADXRS290 programmable
5162306a36Sopenharmony_ci	  digital output gyroscope.
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci	  This driver can also be built as a module. If so, the module will be
5462306a36Sopenharmony_ci	  called adxrs290.
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ciconfig ADXRS450
5762306a36Sopenharmony_ci	tristate "Analog Devices ADXRS450/3 Digital Output Gyroscope SPI driver"
5862306a36Sopenharmony_ci	depends on SPI
5962306a36Sopenharmony_ci	help
6062306a36Sopenharmony_ci	  Say yes here to build support for Analog Devices ADXRS450 and ADXRS453
6162306a36Sopenharmony_ci	  programmable digital output gyroscope.
6262306a36Sopenharmony_ci
6362306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
6462306a36Sopenharmony_ci	  will be called adxrs450.
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ciconfig BMG160
6762306a36Sopenharmony_ci	tristate "BOSCH BMG160 Gyro Sensor"
6862306a36Sopenharmony_ci	depends on (I2C || SPI_MASTER)
6962306a36Sopenharmony_ci	select IIO_BUFFER
7062306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER
7162306a36Sopenharmony_ci	select BMG160_I2C if (I2C)
7262306a36Sopenharmony_ci	select BMG160_SPI if (SPI)
7362306a36Sopenharmony_ci	help
7462306a36Sopenharmony_ci	  Say yes here to build support for BOSCH BMG160 Tri-axis Gyro Sensor
7562306a36Sopenharmony_ci	  driver connected via I2C or SPI. This driver also supports BMI055
7662306a36Sopenharmony_ci	  and BMI088 gyroscope.
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
7962306a36Sopenharmony_ci	  will be called bmg160_i2c or bmg160_spi.
8062306a36Sopenharmony_ci
8162306a36Sopenharmony_ciconfig BMG160_I2C
8262306a36Sopenharmony_ci	tristate
8362306a36Sopenharmony_ci	select REGMAP_I2C
8462306a36Sopenharmony_ci
8562306a36Sopenharmony_ciconfig BMG160_SPI
8662306a36Sopenharmony_ci	tristate
8762306a36Sopenharmony_ci	select REGMAP_SPI
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ciconfig FXAS21002C
9062306a36Sopenharmony_ci	tristate "NXP FXAS21002C Gyro Sensor"
9162306a36Sopenharmony_ci	select IIO_BUFFER
9262306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER
9362306a36Sopenharmony_ci	select FXAS21002C_I2C if (I2C)
9462306a36Sopenharmony_ci	select FXAS21002C_SPI if (SPI)
9562306a36Sopenharmony_ci	depends on (I2C || SPI_MASTER)
9662306a36Sopenharmony_ci	help
9762306a36Sopenharmony_ci	  Say yes here to build support for NXP FXAS21002C Tri-axis Gyro
9862306a36Sopenharmony_ci	  Sensor driver connected via I2C or SPI.
9962306a36Sopenharmony_ci
10062306a36Sopenharmony_ci	  This driver can also be built as a module.  If so, the module
10162306a36Sopenharmony_ci	  will be called fxas21002c_i2c or fxas21002c_spi.
10262306a36Sopenharmony_ci
10362306a36Sopenharmony_ciconfig FXAS21002C_I2C
10462306a36Sopenharmony_ci	tristate
10562306a36Sopenharmony_ci	select REGMAP_I2C
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ciconfig FXAS21002C_SPI
10862306a36Sopenharmony_ci	tristate
10962306a36Sopenharmony_ci	select REGMAP_SPI
11062306a36Sopenharmony_ci
11162306a36Sopenharmony_ciconfig HID_SENSOR_GYRO_3D
11262306a36Sopenharmony_ci	depends on HID_SENSOR_HUB
11362306a36Sopenharmony_ci	select IIO_BUFFER
11462306a36Sopenharmony_ci	select HID_SENSOR_IIO_COMMON
11562306a36Sopenharmony_ci	select HID_SENSOR_IIO_TRIGGER
11662306a36Sopenharmony_ci	tristate "HID Gyroscope 3D"
11762306a36Sopenharmony_ci	help
11862306a36Sopenharmony_ci	  Say yes here to build support for the HID SENSOR
11962306a36Sopenharmony_ci	  Gyroscope 3D.
12062306a36Sopenharmony_ci
12162306a36Sopenharmony_ciconfig MPU3050
12262306a36Sopenharmony_ci	tristate
12362306a36Sopenharmony_ci	select IIO_BUFFER
12462306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER
12562306a36Sopenharmony_ci	select REGMAP
12662306a36Sopenharmony_ci
12762306a36Sopenharmony_ciconfig MPU3050_I2C
12862306a36Sopenharmony_ci	tristate "Invensense MPU3050 devices on I2C"
12962306a36Sopenharmony_ci	depends on I2C
13062306a36Sopenharmony_ci	select MPU3050
13162306a36Sopenharmony_ci	select REGMAP_I2C
13262306a36Sopenharmony_ci	select I2C_MUX
13362306a36Sopenharmony_ci	help
13462306a36Sopenharmony_ci	  This driver supports the Invensense MPU3050 gyroscope over I2C.
13562306a36Sopenharmony_ci	  This driver can be built as a module. The module will be called
13662306a36Sopenharmony_ci	  inv-mpu3050-i2c.
13762306a36Sopenharmony_ci
13862306a36Sopenharmony_ciconfig IIO_ST_GYRO_3AXIS
13962306a36Sopenharmony_ci	tristate "STMicroelectronics gyroscopes 3-Axis Driver"
14062306a36Sopenharmony_ci	depends on (I2C || SPI_MASTER) && SYSFS
14162306a36Sopenharmony_ci	select IIO_ST_SENSORS_CORE
14262306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
14362306a36Sopenharmony_ci	help
14462306a36Sopenharmony_ci	  Say yes here to build support for STMicroelectronics gyroscopes:
14562306a36Sopenharmony_ci	  L3G4200D, LSM330DL, L3GD20, LSM330DLC, L3G4IS, LSM330, LSM9DS0.
14662306a36Sopenharmony_ci
14762306a36Sopenharmony_ci	  Also need to enable at least one of I2C and SPI interface drivers
14862306a36Sopenharmony_ci	  below.
14962306a36Sopenharmony_ci
15062306a36Sopenharmony_ciconfig IIO_ST_GYRO_I2C_3AXIS
15162306a36Sopenharmony_ci	tristate "STMicroelectronics gyroscopes 3-Axis I2C Interface"
15262306a36Sopenharmony_ci	depends on I2C && IIO_ST_GYRO_3AXIS
15362306a36Sopenharmony_ci	default I2C && IIO_ST_GYRO_3AXIS
15462306a36Sopenharmony_ci	select IIO_ST_SENSORS_I2C
15562306a36Sopenharmony_ci	help
15662306a36Sopenharmony_ci	  Build support for STMicroelectronics gyroscopes I2C interface.
15762306a36Sopenharmony_ci
15862306a36Sopenharmony_ci	  To compile this driver as a module, choose M here. The module
15962306a36Sopenharmony_ci	  will be called st_gyro_i2c.
16062306a36Sopenharmony_ci
16162306a36Sopenharmony_ci
16262306a36Sopenharmony_ciconfig IIO_ST_GYRO_SPI_3AXIS
16362306a36Sopenharmony_ci	tristate "STMicroelectronics gyroscopes 3-Axis SPI Interface"
16462306a36Sopenharmony_ci	depends on SPI_MASTER && IIO_ST_GYRO_3AXIS
16562306a36Sopenharmony_ci	default SPI_MASTER && IIO_ST_GYRO_3AXIS
16662306a36Sopenharmony_ci	select IIO_ST_SENSORS_SPI
16762306a36Sopenharmony_ci	help
16862306a36Sopenharmony_ci	  Build support for STMicroelectronics gyroscopes SPI interface.
16962306a36Sopenharmony_ci
17062306a36Sopenharmony_ci	  To compile this driver as a module, choose M here. The module
17162306a36Sopenharmony_ci	  will be called st_gyro_spi.
17262306a36Sopenharmony_ci
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ciconfig ITG3200
17562306a36Sopenharmony_ci	tristate "InvenSense ITG3200 Digital 3-Axis Gyroscope I2C driver"
17662306a36Sopenharmony_ci	depends on I2C
17762306a36Sopenharmony_ci	select IIO_TRIGGERED_BUFFER if IIO_BUFFER
17862306a36Sopenharmony_ci	help
17962306a36Sopenharmony_ci	  Say yes here to add support for the InvenSense ITG3200 digital
18062306a36Sopenharmony_ci	  3-axis gyroscope sensor.
18162306a36Sopenharmony_ci
18262306a36Sopenharmony_ciendmenu
183