# SPDX-License-Identifier: GPL-2.0-only # # Accelerometer drivers # # When adding new entries keep the list in alphabetical order menu "Accelerometers" config ADIS16201 tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer" depends on SPI select IIO_ADIS_LIB select IIO_ADIS_LIB_BUFFER if IIO_BUFFER help Say Y here to build support for Analog Devices adis16201 dual-axis digital inclinometer and accelerometer. To compile this driver as a module, say M here: the module will be called adis16201. config ADIS16209 tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer" depends on SPI select IIO_ADIS_LIB select IIO_ADIS_LIB_BUFFER if IIO_BUFFER help Say Y here to build support for Analog Devices adis16209 dual-axis digital inclinometer and accelerometer. To compile this driver as a module, say M here: the module will be called adis16209. config ADXL313 tristate config ADXL313_I2C tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer I2C Driver" depends on I2C select ADXL313 select REGMAP_I2C help Say Y here if you want to build i2c support for the Analog Devices ADXL313 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl313_i2c and you will also get adxl313_core for the core module. config ADXL313_SPI tristate "Analog Devices ADXL313 3-Axis Digital Accelerometer SPI Driver" depends on SPI select ADXL313 select REGMAP_SPI help Say Y here if you want to build spi support for the Analog Devices ADXL313 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl313_spi and you will also get adxl313_core for the core module. config ADXL345 tristate config ADXL345_I2C tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer I2C Driver" depends on INPUT_ADXL34X=n depends on I2C select ADXL345 select REGMAP_I2C help Say Y here if you want to build support for the Analog Devices ADXL345 or ADXL375 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl345_i2c and you will also get adxl345_core for the core module. config ADXL345_SPI tristate "Analog Devices ADXL345 3-Axis Digital Accelerometer SPI Driver" depends on INPUT_ADXL34X=n depends on SPI select ADXL345 select REGMAP_SPI help Say Y here if you want to build support for the Analog Devices ADXL345 or ADXL375 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl345_spi and you will also get adxl345_core for the core module. config ADXL355 tristate config ADXL355_I2C tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer I2C Driver" depends on I2C select ADXL355 select REGMAP_I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say Y here if you want to build i2c support for the Analog Devices ADXL355 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl355_i2c and you will also get adxl355_core for the core module. config ADXL355_SPI tristate "Analog Devices ADXL355 3-Axis Digital Accelerometer SPI Driver" depends on SPI select ADXL355 select REGMAP_SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say Y here if you want to build spi support for the Analog Devices ADXL355 3-axis digital accelerometer. To compile this driver as a module, choose M here: the module will be called adxl355_spi and you will also get adxl355_core for the core module. config ADXL367 tristate select IIO_BUFFER select IIO_TRIGGERED_BUFFER config ADXL367_SPI tristate "Analog Devices ADXL367 3-Axis Accelerometer SPI Driver" depends on SPI select ADXL367 select REGMAP_SPI help Say yes here to add support for the Analog Devices ADXL367 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called adxl367_spi. config ADXL367_I2C tristate "Analog Devices ADXL367 3-Axis Accelerometer I2C Driver" depends on I2C select ADXL367 select REGMAP_I2C help Say yes here to add support for the Analog Devices ADXL367 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called adxl367_i2c. config ADXL372 tristate select IIO_BUFFER select IIO_TRIGGERED_BUFFER config ADXL372_SPI tristate "Analog Devices ADXL372 3-Axis Accelerometer SPI Driver" depends on SPI select ADXL372 select REGMAP_SPI help Say yes here to add support for the Analog Devices ADXL372 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called adxl372_spi. config ADXL372_I2C tristate "Analog Devices ADXL372 3-Axis Accelerometer I2C Driver" depends on I2C select ADXL372 select REGMAP_I2C help Say yes here to add support for the Analog Devices ADXL372 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called adxl372_i2c. config BMA180 tristate "Bosch BMA023/BMA1x0/BMA250 3-Axis Accelerometer Driver" depends on I2C && INPUT_BMA150=n select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say Y here if you want to build a driver for the Bosch BMA023, BMA150 BMA180, BMA250 or SMB380 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called bma180. config BMA220 tristate "Bosch BMA220 3-Axis Accelerometer Driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to add support for the Bosch BMA220 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called bma220_spi. config BMA400 tristate "Bosch BMA400 3-Axis Accelerometer Driver" select REGMAP select IIO_BUFFER select IIO_TRIGGERED_BUFFER select BMA400_I2C if I2C select BMA400_SPI if SPI help Say Y here if you want to build a driver for the Bosch BMA400 triaxial acceleration sensor. To compile this driver as a module, choose M here: the module will be called bma400_core and you will also get bma400_i2c if I2C is enabled and bma400_spi if SPI is enabled. config BMA400_I2C tristate select REGMAP_I2C depends on BMA400 config BMA400_SPI tristate select REGMAP_SPI depends on BMA400 config BMC150_ACCEL tristate "Bosch BMC150 Accelerometer Driver" select IIO_BUFFER select IIO_TRIGGERED_BUFFER select REGMAP select BMC150_ACCEL_I2C if I2C select BMC150_ACCEL_SPI if SPI help Say yes here to build support for the following Bosch accelerometers: BMA222, BMA222E, BMA250E, BMA253, BMA254, BMA255, BMA280, BMC150, BMC156 BMI055. Note that some of these are combo modules: - BMC150/BMC156: accelerometer and magnetometer - BMI055: accelerometer and gyroscope This driver is only implementing accelerometer part, which has its own address and register map. config BMC150_ACCEL_I2C tristate select REGMAP_I2C config BMC150_ACCEL_SPI tristate select REGMAP_SPI config BMI088_ACCEL tristate "Bosch BMI088 Accelerometer Driver" depends on SPI select IIO_BUFFER select IIO_TRIGGERED_BUFFER select REGMAP select BMI088_ACCEL_SPI help Say yes here to build support for the Bosch BMI088 accelerometer. This is a combo module with both accelerometer and gyroscope. This driver only implements the accelerometer part, which has its own address and register map. BMG160 provides the gyroscope driver. config BMI088_ACCEL_SPI tristate select REGMAP_SPI config DA280 tristate "MiraMEMS DA280 3-axis 14-bit digital accelerometer driver" depends on I2C help Say yes here to build support for the MiraMEMS DA280 3-axis 14-bit digital accelerometer. To compile this driver as a module, choose M here: the module will be called da280. config DA311 tristate "MiraMEMS DA311 3-axis 12-bit digital accelerometer driver" depends on I2C help Say yes here to build support for the MiraMEMS DA311 3-axis 12-bit digital accelerometer. To compile this driver as a module, choose M here: the module will be called da311. config DMARD06 tristate "Domintech DMARD06 Digital Accelerometer Driver" depends on I2C help Say yes here to build support for the Domintech low-g tri-axial digital accelerometers: DMARD05, DMARD06, DMARD07. To compile this driver as a module, choose M here: the module will be called dmard06. config DMARD09 tristate "Domintech DMARD09 3-axis Accelerometer Driver" depends on I2C help Say yes here to get support for the Domintech DMARD09 3-axis accelerometer. Choosing M will build the driver as a module. If so, the module will be called dmard09. config DMARD10 tristate "Domintech DMARD10 3-axis Accelerometer Driver" depends on I2C help Say yes here to get support for the Domintech DMARD10 3-axis accelerometer. Choosing M will build the driver as a module. If so, the module will be called dmard10. config FXLS8962AF tristate depends on I2C || !I2C # cannot be built-in for modular I2C select IIO_BUFFER select IIO_KFIFO_BUF config FXLS8962AF_I2C tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer I2C Driver" depends on I2C select FXLS8962AF select REGMAP_I2C help Say yes here to build support for the NXP 3-axis automotive accelerometer FXLS8962AF/FXLS8964AF with I2C support. To compile this driver as a module, choose M here: the module will be called fxls8962af_i2c. config FXLS8962AF_SPI tristate "NXP FXLS8962AF/FXLS8964AF Accelerometer SPI Driver" depends on SPI depends on I2C || !I2C select FXLS8962AF select REGMAP_SPI help Say yes here to build support for the NXP 3-axis automotive accelerometer FXLS8962AF/FXLS8964AF with SPI support. To compile this driver as a module, choose M here: the module will be called fxls8962af_spi. config HID_SENSOR_ACCEL_3D depends on HID_SENSOR_HUB select IIO_BUFFER select HID_SENSOR_IIO_COMMON select HID_SENSOR_IIO_TRIGGER tristate "HID Accelerometers 3D" help Say yes here to build support for the HID SENSOR accelerometers 3D. To compile this driver as a module, choose M here: the module will be called hid-sensor-accel-3d. config IIO_CROS_EC_ACCEL_LEGACY tristate "ChromeOS EC Legacy Accelerometer Sensor" depends on IIO_CROS_EC_SENSORS_CORE help Say yes here to get support for accelerometers on Chromebook using legacy EC firmware. Sensor data is retrieved through IO memory. Newer devices should use IIO_CROS_EC_SENSORS. config IIO_ST_ACCEL_3AXIS tristate "STMicroelectronics accelerometers 3-Axis Driver" depends on (I2C || SPI_MASTER) && SYSFS depends on !SENSORS_LIS3_I2C depends on !SENSORS_LIS3_SPI select IIO_ST_SENSORS_CORE select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) help Say yes here to build support for STMicroelectronics accelerometers: LSM303C, LSM303DLH, LSM303DLHC, LIS3DH, LSM330D, LSM330DL, LSM330DLC, LIS331DLH, LSM303DL, LSM303DLM, LSM330, LIS2DH12, H3LIS331DL, LNG2DM, LIS3DE, LIS2DE12, LIS2HH12 Also need to enable at least one of I2C and SPI interface drivers below. config IIO_ST_ACCEL_I2C_3AXIS tristate "STMicroelectronics accelerometers 3-Axis I2C Interface" depends on I2C && IIO_ST_ACCEL_3AXIS default I2C && IIO_ST_ACCEL_3AXIS select IIO_ST_SENSORS_I2C help Build support for STMicroelectronics accelerometers I2C interface. To compile this driver as a module, choose M here. The module will be called st_accel_i2c. config IIO_ST_ACCEL_SPI_3AXIS tristate "STMicroelectronics accelerometers 3-Axis SPI Interface" depends on SPI_MASTER && IIO_ST_ACCEL_3AXIS default SPI_MASTER && IIO_ST_ACCEL_3AXIS select IIO_ST_SENSORS_SPI help Build support for STMicroelectronics accelerometers SPI interface. To compile this driver as a module, choose M here. The module will be called st_accel_spi. config IIO_KX022A tristate select IIO_BUFFER select IIO_TRIGGERED_BUFFER config IIO_KX022A_SPI tristate "Kionix KX022A tri-axis digital accelerometer SPI interface" depends on SPI select IIO_KX022A select REGMAP_SPI help Enable support for the Kionix KX022A digital tri-axis accelerometer connected to I2C interface. config IIO_KX022A_I2C tristate "Kionix KX022A tri-axis digital accelerometer I2C interface" depends on I2C select IIO_KX022A select REGMAP_I2C help Enable support for the Kionix KX022A digital tri-axis accelerometer connected to I2C interface. config KXSD9 tristate "Kionix KXSD9 Accelerometer Driver" select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for the Kionix KXSD9 accelerometer. It can be accessed using an (optional) SPI or I2C interface. To compile this driver as a module, choose M here: the module will be called kxsd9. config KXSD9_SPI tristate "Kionix KXSD9 SPI transport" depends on KXSD9 depends on SPI default KXSD9 select REGMAP_SPI help Say yes here to enable the Kionix KXSD9 accelerometer SPI transport channel. config KXSD9_I2C tristate "Kionix KXSD9 I2C transport" depends on KXSD9 depends on I2C default KXSD9 select REGMAP_I2C help Say yes here to enable the Kionix KXSD9 accelerometer I2C transport channel. config KXCJK1013 tristate "Kionix 3-Axis Accelerometer Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say Y here if you want to build a driver for the Kionix KXCJK-1013 triaxial acceleration sensor. This driver also supports KXCJ9-1008, KXTJ2-1009 and KXTF9. To compile this driver as a module, choose M here: the module will be called kxcjk-1013. config MC3230 tristate "mCube MC3230 Digital Accelerometer Driver" depends on I2C help Say yes here to build support for the mCube MC3230 low-g tri-axial digital accelerometer. To compile this driver as a module, choose M here: the module will be called mc3230. config MMA7455 tristate select IIO_BUFFER select IIO_TRIGGERED_BUFFER config MMA7455_I2C tristate "Freescale MMA7455L/MMA7456L Accelerometer I2C Driver" depends on I2C select MMA7455 select REGMAP_I2C help Say yes here to build support for the Freescale MMA7455L and MMA7456L 3-axis accelerometer. To compile this driver as a module, choose M here: the module will be called mma7455_i2c. config MMA7455_SPI tristate "Freescale MMA7455L/MMA7456L Accelerometer SPI Driver" depends on SPI_MASTER select MMA7455 select REGMAP_SPI help Say yes here to build support for the Freescale MMA7455L and MMA7456L 3-axis accelerometer. To compile this driver as a module, choose M here: the module will be called mma7455_spi. config MMA7660 tristate "Freescale MMA7660FC 3-Axis Accelerometer Driver" depends on I2C help Say yes here to get support for the Freescale MMA7660FC 3-Axis accelerometer. Choosing M will build the driver as a module. If so, the module will be called mma7660. config MMA8452 tristate "Freescale / NXP MMA8452Q and similar Accelerometers Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for the following Freescale / NXP 3-axis accelerometers: MMA8451Q, MMA8452Q, MMA8453Q, MMA8652FC, MMA8653FC, FXLS8471Q. To compile this driver as a module, choose M here: the module will be called mma8452. config MMA9551_CORE tristate config MMA9551 tristate "Freescale MMA9551L Intelligent Motion-Sensing Platform Driver" depends on I2C select MMA9551_CORE help Say yes here to build support for the Freescale MMA9551L Intelligent Motion-Sensing Platform Driver. To compile this driver as a module, choose M here: the module will be called mma9551. config MMA9553 tristate "Freescale MMA9553L Intelligent Pedometer Platform Driver" depends on I2C select MMA9551_CORE help Say yes here to build support for the Freescale MMA9553L Intelligent Pedometer Platform Driver. To compile this driver as a module, choose M here: the module will be called mma9553. config MSA311 tristate "MEMSensing Digital 3-Axis Accelerometer Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER select REGMAP_I2C help Say yes here to build support for the MEMSensing MSA311 accelerometer driver. To compile this driver as a module, choose M here: the module will be called msa311. config MXC4005 tristate "Memsic MXC4005XC 3-Axis Accelerometer Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER select REGMAP_I2C help Say yes here to build support for the Memsic MXC4005XC 3-axis accelerometer. To compile this driver as a module, choose M. The module will be called mxc4005. config MXC6255 tristate "Memsic MXC6255 Orientation Sensing Accelerometer Driver" depends on I2C select REGMAP_I2C help Say yes here to build support for the Memsic MXC6255 Orientation Sensing Accelerometer Driver. To compile this driver as a module, choose M here: the module will be called mxc6255. config SCA3000 select IIO_BUFFER select IIO_KFIFO_BUF depends on SPI tristate "VTI SCA3000 series accelerometers" help Say Y here to build support for the VTI SCA3000 series of SPI accelerometers. These devices use a hardware ring buffer. To compile this driver as a module, say M here: the module will be called sca3000. config SCA3300 tristate "Murata SCA3300 3-Axis Accelerometer Driver" depends on SPI select CRC8 select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to build support for Murata SCA3300 3-Axis accelerometer. To compile this driver as a module, choose M here: the module will be called sca3300. config STK8312 tristate "Sensortek STK8312 3-Axis Accelerometer Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to get support for the Sensortek STK8312 3-axis accelerometer. Choosing M will build the driver as a module. If so, the module will be called stk8312. config STK8BA50 tristate "Sensortek STK8BA50 3-Axis Accelerometer Driver" depends on I2C select IIO_BUFFER select IIO_TRIGGERED_BUFFER help Say yes here to get support for the Sensortek STK8BA50 3-axis accelerometer. Choosing M will build the driver as a module. If so, the module will be called stk8ba50. endmenu