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 AF8133J 10 tristate "Voltafield AF8133J 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 Voltafield AF8133J I2C-based 18 3-axis magnetometer chip. 19 20 To compile this driver as a module, choose M here: the module 21 will be called af8133j. 22 23config AK8974 24 tristate "Asahi Kasei AK8974 3-Axis Magnetometer" 25 depends on I2C 26 select REGMAP_I2C 27 select IIO_BUFFER 28 select IIO_TRIGGERED_BUFFER 29 help 30 Say yes here to build support for Asahi Kasei AK8974, AMI305 or 31 AMI306 I2C-based 3-axis magnetometer chips. 32 33 To compile this driver as a module, choose M here: the module 34 will be called ak8974. 35 36config AK8975 37 tristate "Asahi Kasei AK8975 3-Axis Magnetometer" 38 depends on I2C 39 depends on GPIOLIB || COMPILE_TEST 40 select IIO_BUFFER 41 select IIO_TRIGGERED_BUFFER 42 help 43 Say yes here to build support for Asahi Kasei AK8975, AK8963, 44 AK09911, AK09912, AK09916 or AK09918 3-Axis Magnetometer. 45 46 To compile this driver as a module, choose M here: the module 47 will be called ak8975. 48 49config AK09911 50 tristate "Asahi Kasei AK09911 3-axis Compass" 51 depends on I2C 52 depends on GPIOLIB || COMPILE_TEST 53 select AK8975 54 help 55 Deprecated: AK09911 is now supported by AK8975 driver. 56 57config ALS31300 58 tristate "Allegro MicroSystems ALS31300 3-D Linear Hall Effect Sensor" 59 depends on I2C 60 select REGMAP_I2C 61 select IIO_BUFFER 62 select IIO_TRIGGERED_BUFFER 63 help 64 Say yes here to build support for the Allegro MicroSystems 65 ALS31300 Hall Effect Sensor through its I2C interface. 66 67 To compile this driver as a module, choose M here: the 68 module will be called als31300. 69 70config BMC150_MAGN 71 tristate 72 select IIO_BUFFER 73 select IIO_TRIGGERED_BUFFER 74 75config BMC150_MAGN_I2C 76 tristate "Bosch BMC150 I2C Magnetometer Driver" 77 depends on I2C 78 select BMC150_MAGN 79 select REGMAP_I2C 80 help 81 Say yes here to build support for the BMC150 magnetometer with 82 I2C interface. 83 84 This is a combo module with both accelerometer and magnetometer. 85 This driver is only implementing magnetometer part, which has 86 its own address and register map. 87 88 This driver also supports I2C Bosch BMC156 and BMM150 chips. 89 To compile this driver as a module, choose M here: the module will be 90 called bmc150_magn_i2c. 91 92config BMC150_MAGN_SPI 93 tristate "Bosch BMC150 SPI Magnetometer Driver" 94 depends on SPI 95 select BMC150_MAGN 96 select REGMAP_SPI 97 help 98 Say yes here to build support for the BMC150 magnetometer with 99 SPI interface. 100 101 This is a combo module with both accelerometer and magnetometer. 102 This driver is only implementing magnetometer part, which has 103 its own address and register map. 104 105 This driver also supports SPI Bosch BMC156 and BMM150 chips. 106 To compile this driver as a module, choose M here: the module will be 107 called bmc150_magn_spi. 108 109config MAG3110 110 tristate "Freescale MAG3110 3-Axis Magnetometer" 111 depends on I2C 112 select IIO_BUFFER 113 select IIO_TRIGGERED_BUFFER 114 help 115 Say yes here to build support for the Freescale MAG3110 3-Axis 116 magnetometer. 117 118 To compile this driver as a module, choose M here: the module 119 will be called mag3110. 120 121config HID_SENSOR_MAGNETOMETER_3D 122 depends on HID_SENSOR_HUB 123 select IIO_BUFFER 124 select HID_SENSOR_IIO_COMMON 125 select HID_SENSOR_IIO_TRIGGER 126 tristate "HID Magnetometer 3D" 127 help 128 Say yes here to build support for the HID SENSOR 129 Magnetometer 3D. 130 131config MMC35240 132 tristate "MEMSIC MMC35240 3-axis magnetic sensor" 133 select REGMAP_I2C 134 depends on I2C 135 help 136 Say yes here to build support for the MEMSIC MMC35240 3-axis 137 magnetic sensor. 138 139 To compile this driver as a module, choose M here: the module 140 will be called mmc35240. 141 142config MMC5633 143 tristate "MEMSIC MMC5633 3-axis magnetic sensor" 144 select REGMAP_I2C 145 select REGMAP_I3C if I3C 146 depends on I3C_OR_I2C 147 help 148 Say yes here to build support for the MEMSIC MMC5633 3-axis 149 magnetic sensor. 150 151 To compile this driver as a module, choose M here: the module 152 will be called mmc5633 153 154config MMC5983 155 tristate "MEMSIC MMC5983 3-axis magnetic sensor" 156 depends on I2C 157 select REGMAP_I2C 158 help 159 Say yes here to build support for the MEMSIC MMC5983 3-axis 160 magnetic sensor. 161 162 To compile this driver as a module, choose M here: the module 163 will be called mmc5983 164 165config IIO_ST_MAGN_3AXIS 166 tristate "STMicroelectronics magnetometers 3-Axis Driver" 167 depends on (I2C || SPI_MASTER) && SYSFS 168 select IIO_ST_SENSORS_CORE 169 select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 170 help 171 Say yes here to build support for STMicroelectronics magnetometers: 172 LSM303C, LSM303DLHC, LSM303DLM, LIS3MDL. 173 174 Also need to enable at least one of I2C and SPI interface drivers 175 below. 176 177config IIO_ST_MAGN_I2C_3AXIS 178 tristate "STMicroelectronics magnetometers 3-Axis I2C Interface" 179 depends on I2C && IIO_ST_MAGN_3AXIS 180 default I2C && IIO_ST_MAGN_3AXIS 181 select IIO_ST_SENSORS_I2C 182 help 183 Build support for STMicroelectronics magnetometers I2C interface. 184 185 To compile this driver as a module, choose M here. The module 186 will be called st_magn_i2c. 187 188config IIO_ST_MAGN_SPI_3AXIS 189 tristate "STMicroelectronics magnetometers 3-Axis SPI Interface" 190 depends on SPI_MASTER && IIO_ST_MAGN_3AXIS 191 default SPI_MASTER && IIO_ST_MAGN_3AXIS 192 select IIO_ST_SENSORS_SPI 193 help 194 Build support for STMicroelectronics magnetometers SPI interface. 195 196 To compile this driver as a module, choose M here. The module 197 will be called st_magn_spi. 198 199config INFINEON_TLV493D 200 tristate "Infineon TLV493D Low-Power 3D Magnetic Sensor" 201 depends on I2C 202 select IIO_BUFFER 203 select IIO_TRIGGERED_BUFFER 204 help 205 Say Y here to add support for the Infineon TLV493D-A1B6 Low- 206 Power 3D Magnetic Sensor. 207 208 This driver can also be compiled as a module. 209 To compile this driver as a module, choose M here: the module 210 will be called tlv493d. 211 212config QMC5883L 213 tristate "QST QMC5883L 3-Axis Magnetic Sensor" 214 depends on I2C 215 select REGMAP_I2C 216 help 217 Say Y here to add support driver for QST QMC5883L 3-Axis 218 Magnetic Sensor. 219 220 To compile this driver as a module, choose M here: the 221 module will be called qmc5883l. 222 223config QMC6308 224 tristate "QST QMC6308 3-Axis Magnetic Sensor" 225 depends on I2C 226 select REGMAP_I2C 227 help 228 Say Y here to add support for the QST QMC6308 3-Axis 229 Magnetic Sensor. 230 231 To compile this driver as a module, choose M here: the 232 module will be called qmc6308. 233 234config SENSORS_HMC5843 235 tristate 236 select IIO_BUFFER 237 select IIO_TRIGGERED_BUFFER 238 239config SENSORS_HMC5843_I2C 240 tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 241 depends on I2C 242 select SENSORS_HMC5843 243 select REGMAP_I2C 244 help 245 Say Y here to add support for the Honeywell HMC5843, HMC5883 and 246 HMC5883L 3-Axis Magnetometer (digital compass). 247 248 This driver can also be compiled as a set of modules. 249 If so, these modules will be created: 250 - hmc5843_core (core functions) 251 - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 252 253config SENSORS_HMC5843_SPI 254 tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 255 depends on SPI_MASTER 256 select SENSORS_HMC5843 257 select REGMAP_SPI 258 help 259 Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 260 (digital compass). 261 262 This driver can also be compiled as a set of modules. 263 If so, these modules will be created: 264 - hmc5843_core (core functions) 265 - hmc5843_spi (support for HMC5983) 266 267config SENSORS_RM3100 268 tristate 269 select IIO_BUFFER 270 select IIO_TRIGGERED_BUFFER 271 272config SENSORS_RM3100_I2C 273 tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 274 depends on I2C 275 select SENSORS_RM3100 276 select REGMAP_I2C 277 help 278 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 279 280 This driver can also be compiled as a module. 281 To compile this driver as a module, choose M here: the module 282 will be called rm3100-i2c. 283 284config SENSORS_RM3100_SPI 285 tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 286 depends on SPI_MASTER 287 select SENSORS_RM3100 288 select REGMAP_SPI 289 help 290 Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 291 292 This driver can also be compiled as a module. 293 To compile this driver as a module, choose M here: the module 294 will be called rm3100-spi. 295 296config SI7210 297 tristate "SI7210 Hall effect sensor" 298 depends on I2C 299 select REGMAP_I2C 300 help 301 Say Y here to add support for the SI7210 Hall effect sensor. 302 303 This driver can also be compiled as a module. 304 To compile this driver as a module, choose M here: the module 305 will be called si7210. 306 307config TI_TMAG5273 308 tristate "TI TMAG5273 Low-Power Linear 3D Hall-Effect Sensor" 309 depends on I2C 310 select REGMAP_I2C 311 help 312 Say Y here to add support for the TI TMAG5273 Low-Power 313 Linear 3D Hall-Effect Sensor. 314 315 This driver can also be compiled as a module. 316 To compile this driver as a module, choose M here: the module 317 will be called tmag5273. 318 319config YAMAHA_YAS530 320 tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)" 321 depends on I2C 322 select REGMAP_I2C 323 select IIO_BUFFER 324 select IIO_TRIGGERED_BUFFER 325 help 326 Say Y here to add support for the Yamaha YAS530 series of 327 3-Axis Magnetometers. YAS530, YAS532, YAS533 and YAS537 are 328 supported. 329 330 This driver can also be compiled as a module. 331 To compile this driver as a module, choose M here: the module 332 will be called yamaha-yas. 333 334endmenu 335