18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci# 38c2ecf20Sopenharmony_ci# Magnetometer sensors 48c2ecf20Sopenharmony_ci# 58c2ecf20Sopenharmony_ci# When adding new entries keep the list in alphabetical order 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cimenu "Magnetometer sensors" 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciconfig AK8974 108c2ecf20Sopenharmony_ci tristate "Asahi Kasei AK8974 3-Axis Magnetometer" 118c2ecf20Sopenharmony_ci depends on I2C 128c2ecf20Sopenharmony_ci depends on OF 138c2ecf20Sopenharmony_ci select REGMAP_I2C 148c2ecf20Sopenharmony_ci select IIO_BUFFER 158c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 168c2ecf20Sopenharmony_ci help 178c2ecf20Sopenharmony_ci Say yes here to build support for Asahi Kasei AK8974, AMI305 or 188c2ecf20Sopenharmony_ci AMI306 I2C-based 3-axis magnetometer chips. 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 218c2ecf20Sopenharmony_ci will be called ak8974. 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ciconfig AK8975 248c2ecf20Sopenharmony_ci tristate "Asahi Kasei AK8975 3-Axis Magnetometer" 258c2ecf20Sopenharmony_ci depends on I2C 268c2ecf20Sopenharmony_ci depends on GPIOLIB || COMPILE_TEST 278c2ecf20Sopenharmony_ci select IIO_BUFFER 288c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 298c2ecf20Sopenharmony_ci help 308c2ecf20Sopenharmony_ci Say yes here to build support for Asahi Kasei AK8975, AK8963, 318c2ecf20Sopenharmony_ci AK09911 or AK09912 3-Axis Magnetometer. 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 348c2ecf20Sopenharmony_ci will be called ak8975. 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ciconfig AK09911 378c2ecf20Sopenharmony_ci tristate "Asahi Kasei AK09911 3-axis Compass" 388c2ecf20Sopenharmony_ci depends on I2C 398c2ecf20Sopenharmony_ci depends on GPIOLIB || COMPILE_TEST 408c2ecf20Sopenharmony_ci select AK8975 418c2ecf20Sopenharmony_ci help 428c2ecf20Sopenharmony_ci Deprecated: AK09911 is now supported by AK8975 driver. 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ciconfig BMC150_MAGN 458c2ecf20Sopenharmony_ci tristate 468c2ecf20Sopenharmony_ci select IIO_BUFFER 478c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ciconfig BMC150_MAGN_I2C 508c2ecf20Sopenharmony_ci tristate "Bosch BMC150 I2C Magnetometer Driver" 518c2ecf20Sopenharmony_ci depends on I2C 528c2ecf20Sopenharmony_ci select BMC150_MAGN 538c2ecf20Sopenharmony_ci select REGMAP_I2C 548c2ecf20Sopenharmony_ci help 558c2ecf20Sopenharmony_ci Say yes here to build support for the BMC150 magnetometer with 568c2ecf20Sopenharmony_ci I2C interface. 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci This is a combo module with both accelerometer and magnetometer. 598c2ecf20Sopenharmony_ci This driver is only implementing magnetometer part, which has 608c2ecf20Sopenharmony_ci its own address and register map. 618c2ecf20Sopenharmony_ci 628c2ecf20Sopenharmony_ci This driver also supports I2C Bosch BMC156 and BMM150 chips. 638c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module will be 648c2ecf20Sopenharmony_ci called bmc150_magn_i2c. 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ciconfig BMC150_MAGN_SPI 678c2ecf20Sopenharmony_ci tristate "Bosch BMC150 SPI Magnetometer Driver" 688c2ecf20Sopenharmony_ci depends on SPI 698c2ecf20Sopenharmony_ci select BMC150_MAGN 708c2ecf20Sopenharmony_ci select REGMAP_SPI 718c2ecf20Sopenharmony_ci help 728c2ecf20Sopenharmony_ci Say yes here to build support for the BMC150 magnetometer with 738c2ecf20Sopenharmony_ci SPI interface. 748c2ecf20Sopenharmony_ci 758c2ecf20Sopenharmony_ci This is a combo module with both accelerometer and magnetometer. 768c2ecf20Sopenharmony_ci This driver is only implementing magnetometer part, which has 778c2ecf20Sopenharmony_ci its own address and register map. 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci This driver also supports SPI Bosch BMC156 and BMM150 chips. 808c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module will be 818c2ecf20Sopenharmony_ci called bmc150_magn_spi. 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ciconfig MAG3110 848c2ecf20Sopenharmony_ci tristate "Freescale MAG3110 3-Axis Magnetometer" 858c2ecf20Sopenharmony_ci depends on I2C 868c2ecf20Sopenharmony_ci select IIO_BUFFER 878c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 888c2ecf20Sopenharmony_ci help 898c2ecf20Sopenharmony_ci Say yes here to build support for the Freescale MAG3110 3-Axis 908c2ecf20Sopenharmony_ci magnetometer. 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 938c2ecf20Sopenharmony_ci will be called mag3110. 948c2ecf20Sopenharmony_ci 958c2ecf20Sopenharmony_ciconfig HID_SENSOR_MAGNETOMETER_3D 968c2ecf20Sopenharmony_ci depends on HID_SENSOR_HUB 978c2ecf20Sopenharmony_ci select IIO_BUFFER 988c2ecf20Sopenharmony_ci select HID_SENSOR_IIO_COMMON 998c2ecf20Sopenharmony_ci select HID_SENSOR_IIO_TRIGGER 1008c2ecf20Sopenharmony_ci tristate "HID Magenetometer 3D" 1018c2ecf20Sopenharmony_ci help 1028c2ecf20Sopenharmony_ci Say yes here to build support for the HID SENSOR 1038c2ecf20Sopenharmony_ci Magnetometer 3D. 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ciconfig MMC35240 1068c2ecf20Sopenharmony_ci tristate "MEMSIC MMC35240 3-axis magnetic sensor" 1078c2ecf20Sopenharmony_ci select REGMAP_I2C 1088c2ecf20Sopenharmony_ci depends on I2C 1098c2ecf20Sopenharmony_ci help 1108c2ecf20Sopenharmony_ci Say yes here to build support for the MEMSIC MMC35240 3-axis 1118c2ecf20Sopenharmony_ci magnetic sensor. 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 1148c2ecf20Sopenharmony_ci will be called mmc35240. 1158c2ecf20Sopenharmony_ci 1168c2ecf20Sopenharmony_ciconfig IIO_ST_MAGN_3AXIS 1178c2ecf20Sopenharmony_ci tristate "STMicroelectronics magnetometers 3-Axis Driver" 1188c2ecf20Sopenharmony_ci depends on (I2C || SPI_MASTER) && SYSFS 1198c2ecf20Sopenharmony_ci select IIO_ST_SENSORS_CORE 1208c2ecf20Sopenharmony_ci select IIO_ST_MAGN_I2C_3AXIS if (I2C) 1218c2ecf20Sopenharmony_ci select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER) 1228c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 1238c2ecf20Sopenharmony_ci help 1248c2ecf20Sopenharmony_ci Say yes here to build support for STMicroelectronics magnetometers: 1258c2ecf20Sopenharmony_ci LSM303DLHC, LSM303DLM, LIS3MDL. 1268c2ecf20Sopenharmony_ci 1278c2ecf20Sopenharmony_ci This driver can also be built as a module. If so, these modules 1288c2ecf20Sopenharmony_ci will be created: 1298c2ecf20Sopenharmony_ci - st_magn (core functions for the driver [it is mandatory]); 1308c2ecf20Sopenharmony_ci - st_magn_i2c (necessary for the I2C devices [optional*]); 1318c2ecf20Sopenharmony_ci - st_magn_spi (necessary for the SPI devices [optional*]); 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ci (*) one of these is necessary to do something. 1348c2ecf20Sopenharmony_ci 1358c2ecf20Sopenharmony_ciconfig IIO_ST_MAGN_I2C_3AXIS 1368c2ecf20Sopenharmony_ci tristate 1378c2ecf20Sopenharmony_ci depends on IIO_ST_MAGN_3AXIS 1388c2ecf20Sopenharmony_ci depends on IIO_ST_SENSORS_I2C 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ciconfig IIO_ST_MAGN_SPI_3AXIS 1418c2ecf20Sopenharmony_ci tristate 1428c2ecf20Sopenharmony_ci depends on IIO_ST_MAGN_3AXIS 1438c2ecf20Sopenharmony_ci depends on IIO_ST_SENSORS_SPI 1448c2ecf20Sopenharmony_ci 1458c2ecf20Sopenharmony_ciconfig SENSORS_HMC5843 1468c2ecf20Sopenharmony_ci tristate 1478c2ecf20Sopenharmony_ci select IIO_BUFFER 1488c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 1498c2ecf20Sopenharmony_ci 1508c2ecf20Sopenharmony_ciconfig SENSORS_HMC5843_I2C 1518c2ecf20Sopenharmony_ci tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 1528c2ecf20Sopenharmony_ci depends on I2C 1538c2ecf20Sopenharmony_ci select SENSORS_HMC5843 1548c2ecf20Sopenharmony_ci select REGMAP_I2C 1558c2ecf20Sopenharmony_ci help 1568c2ecf20Sopenharmony_ci Say Y here to add support for the Honeywell HMC5843, HMC5883 and 1578c2ecf20Sopenharmony_ci HMC5883L 3-Axis Magnetometer (digital compass). 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci This driver can also be compiled as a set of modules. 1608c2ecf20Sopenharmony_ci If so, these modules will be created: 1618c2ecf20Sopenharmony_ci - hmc5843_core (core functions) 1628c2ecf20Sopenharmony_ci - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 1638c2ecf20Sopenharmony_ci 1648c2ecf20Sopenharmony_ciconfig SENSORS_HMC5843_SPI 1658c2ecf20Sopenharmony_ci tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 1668c2ecf20Sopenharmony_ci depends on SPI_MASTER 1678c2ecf20Sopenharmony_ci select SENSORS_HMC5843 1688c2ecf20Sopenharmony_ci select REGMAP_SPI 1698c2ecf20Sopenharmony_ci help 1708c2ecf20Sopenharmony_ci Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 1718c2ecf20Sopenharmony_ci (digital compass). 1728c2ecf20Sopenharmony_ci 1738c2ecf20Sopenharmony_ci This driver can also be compiled as a set of modules. 1748c2ecf20Sopenharmony_ci If so, these modules will be created: 1758c2ecf20Sopenharmony_ci - hmc5843_core (core functions) 1768c2ecf20Sopenharmony_ci - hmc5843_spi (support for HMC5983) 1778c2ecf20Sopenharmony_ci 1788c2ecf20Sopenharmony_ciconfig SENSORS_RM3100 1798c2ecf20Sopenharmony_ci tristate 1808c2ecf20Sopenharmony_ci select IIO_BUFFER 1818c2ecf20Sopenharmony_ci select IIO_TRIGGERED_BUFFER 1828c2ecf20Sopenharmony_ci 1838c2ecf20Sopenharmony_ciconfig SENSORS_RM3100_I2C 1848c2ecf20Sopenharmony_ci tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 1858c2ecf20Sopenharmony_ci depends on I2C 1868c2ecf20Sopenharmony_ci select SENSORS_RM3100 1878c2ecf20Sopenharmony_ci select REGMAP_I2C 1888c2ecf20Sopenharmony_ci help 1898c2ecf20Sopenharmony_ci Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 1908c2ecf20Sopenharmony_ci 1918c2ecf20Sopenharmony_ci This driver can also be compiled as a module. 1928c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 1938c2ecf20Sopenharmony_ci will be called rm3100-i2c. 1948c2ecf20Sopenharmony_ci 1958c2ecf20Sopenharmony_ciconfig SENSORS_RM3100_SPI 1968c2ecf20Sopenharmony_ci tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 1978c2ecf20Sopenharmony_ci depends on SPI_MASTER 1988c2ecf20Sopenharmony_ci select SENSORS_RM3100 1998c2ecf20Sopenharmony_ci select REGMAP_SPI 2008c2ecf20Sopenharmony_ci help 2018c2ecf20Sopenharmony_ci Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 2028c2ecf20Sopenharmony_ci 2038c2ecf20Sopenharmony_ci This driver can also be compiled as a module. 2048c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 2058c2ecf20Sopenharmony_ci will be called rm3100-spi. 2068c2ecf20Sopenharmony_ci 2078c2ecf20Sopenharmony_ciendmenu 208