1# SPDX-License-Identifier: GPL-2.0-only 2# 3# Magnetometer sensors 4# 5# When adding new entries keep the list in alphabetical order 6 7menu "Magnetometer sensors" 8 9config AK8974 10 tristate "Asahi Kasei AK8974 3-Axis Magnetometer" 11 depends on I2C 12 depends on OF 13 select REGMAP_I2C 14 select IIO_BUFFER 15 select IIO_TRIGGERED_BUFFER 16 help 17 Say yes here to build support for Asahi Kasei AK8974, AMI305 or 18 AMI306 I2C-based 3-axis magnetometer chips. 19 20 To compile this driver as a module, choose M here: the module 21 will be called ak8974. 22 23config AK8975 24 tristate "Asahi Kasei AK8975 3-Axis Magnetometer" 25 depends on I2C 26 depends on GPIOLIB || COMPILE_TEST 27 select IIO_BUFFER 28 select IIO_TRIGGERED_BUFFER 29 help 30 Say yes here to build support for Asahi Kasei AK8975, AK8963, 31 AK09911 or AK09912 3-Axis Magnetometer. 32 33 To compile this driver as a module, choose M here: the module 34 will be called ak8975. 35 36config AK09911 37 tristate "Asahi Kasei AK09911 3-axis Compass" 38 depends on I2C 39 depends on GPIOLIB || COMPILE_TEST 40 select AK8975 41 help 42 Deprecated: AK09911 is now supported by AK8975 driver. 43 44config BMC150_MAGN 45 tristate 46 select IIO_BUFFER 47 select IIO_TRIGGERED_BUFFER 48 49config BMC150_MAGN_I2C 50 tristate "Bosch BMC150 I2C Magnetometer Driver" 51 depends on I2C 52 select BMC150_MAGN 53 select REGMAP_I2C 54 help 55 Say yes here to build support for the BMC150 magnetometer with 56 I2C interface. 57 58 This is a combo module with both accelerometer and magnetometer. 59 This driver is only implementing magnetometer part, which has 60 its own address and register map. 61 62 This driver also supports I2C Bosch BMC156 and BMM150 chips. 63 To compile this driver as a module, choose M here: the module will be 64 called bmc150_magn_i2c. 65 66config BMC150_MAGN_SPI 67 tristate "Bosch BMC150 SPI Magnetometer Driver" 68 depends on SPI 69 select BMC150_MAGN 70 select REGMAP_SPI 71 help 72 Say yes here to build support for the BMC150 magnetometer with 73 SPI interface. 74 75 This is a combo module with both accelerometer and magnetometer. 76 This driver is only implementing magnetometer part, which has 77 its own address and register map. 78 79 This driver also supports SPI Bosch BMC156 and BMM150 chips. 80 To compile this driver as a module, choose M here: the module will be 81 called bmc150_magn_spi. 82 83config MAG3110 84 tristate "Freescale MAG3110 3-Axis Magnetometer" 85 depends on I2C 86 select IIO_BUFFER 87 select IIO_TRIGGERED_BUFFER 88 help 89 Say yes here to build support for the Freescale MAG3110 3-Axis 90 magnetometer. 91 92 To compile this driver as a module, choose M here: the module 93 will be called mag3110. 94 95config HID_SENSOR_MAGNETOMETER_3D 96 depends on HID_SENSOR_HUB 97 select IIO_BUFFER 98 select IIO_TRIGGERED_BUFFER 99 select HID_SENSOR_IIO_COMMON 100 select HID_SENSOR_IIO_TRIGGER 101 tristate "HID Magenetometer 3D" 102 help 103 Say yes here to build support for the HID SENSOR 104 Magnetometer 3D. 105 106config MMC35240 107 tristate "MEMSIC MMC35240 3-axis magnetic sensor" 108 select REGMAP_I2C 109 depends on I2C 110 help 111 Say yes here to build support for the MEMSIC MMC35240 3-axis 112 magnetic sensor. 113 114 To compile this driver as a module, choose M here: the module 115 will be called mmc35240. 116 117config IIO_ST_MAGN_3AXIS 118 tristate "STMicroelectronics magnetometers 3-Axis Driver" 119 depends on (I2C || SPI_MASTER) && SYSFS 120 select IIO_ST_SENSORS_CORE 121 select IIO_ST_MAGN_I2C_3AXIS if (I2C) 122 select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER) 123 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 124 help 125 Say yes here to build support for STMicroelectronics magnetometers: 126 LSM303DLHC, LSM303DLM, LIS3MDL. 127 128 This driver can also be built as a module. If so, these modules 129 will be created: 130 - st_magn (core functions for the driver [it is mandatory]); 131 - st_magn_i2c (necessary for the I2C devices [optional*]); 132 - st_magn_spi (necessary for the SPI devices [optional*]); 133 134 (*) one of these is necessary to do something. 135 136config IIO_ST_MAGN_I2C_3AXIS 137 tristate 138 depends on IIO_ST_MAGN_3AXIS 139 depends on IIO_ST_SENSORS_I2C 140 141config IIO_ST_MAGN_SPI_3AXIS 142 tristate 143 depends on IIO_ST_MAGN_3AXIS 144 depends on IIO_ST_SENSORS_SPI 145 146config SENSORS_HMC5843 147 tristate 148 select IIO_BUFFER 149 select IIO_TRIGGERED_BUFFER 150 151config SENSORS_HMC5843_I2C 152 tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 153 depends on I2C 154 select SENSORS_HMC5843 155 select REGMAP_I2C 156 help 157 Say Y here to add support for the Honeywell HMC5843, HMC5883 and 158 HMC5883L 3-Axis Magnetometer (digital compass). 159 160 This driver can also be compiled as a set of modules. 161 If so, these modules will be created: 162 - hmc5843_core (core functions) 163 - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 164 165config SENSORS_HMC5843_SPI 166 tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 167 depends on SPI_MASTER 168 select SENSORS_HMC5843 169 select REGMAP_SPI 170 help 171 Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 172 (digital compass). 173 174 This driver can also be compiled as a set of modules. 175 If so, these modules will be created: 176 - hmc5843_core (core functions) 177 - hmc5843_spi (support for HMC5983) 178 179config SENSORS_RM3100 180 tristate 181 select IIO_BUFFER 182 select IIO_TRIGGERED_BUFFER 183 184config SENSORS_RM3100_I2C 185 tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 186 depends on I2C 187 select SENSORS_RM3100 188 select REGMAP_I2C 189 help 190 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 191 192 This driver can also be compiled as a module. 193 To compile this driver as a module, choose M here: the module 194 will be called rm3100-i2c. 195 196config SENSORS_RM3100_SPI 197 tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 198 depends on SPI_MASTER 199 select SENSORS_RM3100 200 select REGMAP_SPI 201 help 202 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 203 204 This driver can also be compiled as a module. 205 To compile this driver as a module, choose M here: the module 206 will be called rm3100-spi. 207 208config YAMAHA_YAS530 209 tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)" 210 depends on I2C 211 select REGMAP_I2C 212 select IIO_BUFFER 213 select IIO_TRIGGERED_BUFFER 214 help 215 Say Y here to add support for the Yamaha YAS530 series of 216 3-Axis Magnetometers. Right now YAS530, YAS532 and YAS533 are 217 fully supported. 218 219 This driver can also be compiled as a module. 220 To compile this driver as a module, choose M here: the module 221 will be called yamaha-yas. 222 223endmenu 224