1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2bc1d57baSsrinivas pandruvada# 3bc1d57baSsrinivas pandruvada# Magnetometer sensors 4bc1d57baSsrinivas pandruvada# 53edc84e6SLars-Peter Clausen# When adding new entries keep the list in alphabetical order 63edc84e6SLars-Peter Clausen 7bc1d57baSsrinivas pandruvadamenu "Magnetometer sensors" 8bc1d57baSsrinivas pandruvada 97c94a8b2SLinus Walleijconfig AK8974 107c94a8b2SLinus Walleij tristate "Asahi Kasei AK8974 3-Axis Magnetometer" 117c94a8b2SLinus Walleij depends on I2C 127c94a8b2SLinus Walleij depends on OF 137c94a8b2SLinus Walleij select REGMAP_I2C 147c94a8b2SLinus Walleij select IIO_BUFFER 157c94a8b2SLinus Walleij select IIO_TRIGGERED_BUFFER 167c94a8b2SLinus Walleij help 1721be26fcSMichał Mirosław Say yes here to build support for Asahi Kasei AK8974, AMI305 or 1821be26fcSMichał Mirosław AMI306 I2C-based 3-axis magnetometer chips. 197c94a8b2SLinus Walleij 207c94a8b2SLinus Walleij To compile this driver as a module, choose M here: the module 217c94a8b2SLinus Walleij will be called ak8974. 227c94a8b2SLinus Walleij 232fc72cd8SJonathan Cameronconfig AK8975 247c94a8b2SLinus Walleij tristate "Asahi Kasei AK8975 3-Axis Magnetometer" 252fc72cd8SJonathan Cameron depends on I2C 2684935853SGeert Uytterhoeven depends on GPIOLIB || COMPILE_TEST 27bc11ca4aSGregor Boirie select IIO_BUFFER 28bc11ca4aSGregor Boirie select IIO_TRIGGERED_BUFFER 292fc72cd8SJonathan Cameron help 3057e73a42SGwendal Grignou Say yes here to build support for Asahi Kasei AK8975, AK8963, 3157e73a42SGwendal Grignou AK09911 or AK09912 3-Axis Magnetometer. 322fc72cd8SJonathan Cameron 332fc72cd8SJonathan Cameron To compile this driver as a module, choose M here: the module 342fc72cd8SJonathan Cameron will be called ak8975. 352fc72cd8SJonathan Cameron 36d14c0f10SSrinivas Pandruvadaconfig AK09911 37d14c0f10SSrinivas Pandruvada tristate "Asahi Kasei AK09911 3-axis Compass" 3836086889SArnd Bergmann depends on I2C 3984935853SGeert Uytterhoeven depends on GPIOLIB || COMPILE_TEST 4057e73a42SGwendal Grignou select AK8975 41d14c0f10SSrinivas Pandruvada help 4257e73a42SGwendal Grignou Deprecated: AK09911 is now supported by AK8975 driver. 43d14c0f10SSrinivas Pandruvada 442427d22dSHartmut Knaackconfig BMC150_MAGN 45761b7910SDaniel Baluta tristate 462427d22dSHartmut Knaack select IIO_BUFFER 472427d22dSHartmut Knaack select IIO_TRIGGERED_BUFFER 482427d22dSHartmut Knaack 49761b7910SDaniel Balutaconfig BMC150_MAGN_I2C 50761b7910SDaniel Baluta tristate "Bosch BMC150 I2C Magnetometer Driver" 51761b7910SDaniel Baluta depends on I2C 52761b7910SDaniel Baluta select BMC150_MAGN 53761b7910SDaniel Baluta select REGMAP_I2C 54761b7910SDaniel Baluta help 55761b7910SDaniel Baluta Say yes here to build support for the BMC150 magnetometer with 56761b7910SDaniel Baluta I2C interface. 572427d22dSHartmut Knaack 582427d22dSHartmut Knaack This is a combo module with both accelerometer and magnetometer. 592427d22dSHartmut Knaack This driver is only implementing magnetometer part, which has 602427d22dSHartmut Knaack its own address and register map. 612427d22dSHartmut Knaack 620aea7ac8SDaniel Baluta This driver also supports I2C Bosch BMC156 and BMM150 chips. 632427d22dSHartmut Knaack To compile this driver as a module, choose M here: the module will be 64761b7910SDaniel Baluta called bmc150_magn_i2c. 652427d22dSHartmut Knaack 66534536acSDaniel Balutaconfig BMC150_MAGN_SPI 67534536acSDaniel Baluta tristate "Bosch BMC150 SPI Magnetometer Driver" 68534536acSDaniel Baluta depends on SPI 69534536acSDaniel Baluta select BMC150_MAGN 70534536acSDaniel Baluta select REGMAP_SPI 71534536acSDaniel Baluta help 72534536acSDaniel Baluta Say yes here to build support for the BMC150 magnetometer with 73534536acSDaniel Baluta SPI interface. 74534536acSDaniel Baluta 75534536acSDaniel Baluta This is a combo module with both accelerometer and magnetometer. 76534536acSDaniel Baluta This driver is only implementing magnetometer part, which has 77534536acSDaniel Baluta its own address and register map. 78534536acSDaniel Baluta 790aea7ac8SDaniel Baluta This driver also supports SPI Bosch BMC156 and BMM150 chips. 80534536acSDaniel Baluta To compile this driver as a module, choose M here: the module will be 81534536acSDaniel Baluta called bmc150_magn_spi. 82534536acSDaniel Baluta 8339631b5fSPeter Meerwaldconfig MAG3110 8439631b5fSPeter Meerwald tristate "Freescale MAG3110 3-Axis Magnetometer" 8539631b5fSPeter Meerwald depends on I2C 8650619cb1SPeter Meerwald select IIO_BUFFER 8750619cb1SPeter Meerwald select IIO_TRIGGERED_BUFFER 8839631b5fSPeter Meerwald help 8939631b5fSPeter Meerwald Say yes here to build support for the Freescale MAG3110 3-Axis 9039631b5fSPeter Meerwald magnetometer. 9139631b5fSPeter Meerwald 9239631b5fSPeter Meerwald To compile this driver as a module, choose M here: the module 9339631b5fSPeter Meerwald will be called mag3110. 9439631b5fSPeter Meerwald 95bc1d57baSsrinivas pandruvadaconfig HID_SENSOR_MAGNETOMETER_3D 96bc1d57baSsrinivas pandruvada depends on HID_SENSOR_HUB 97bc1d57baSsrinivas pandruvada select IIO_BUFFER 98bc1d57baSsrinivas pandruvada select IIO_TRIGGERED_BUFFER 99bc1d57baSsrinivas pandruvada select HID_SENSOR_IIO_COMMON 1009541cc39SAlexander Holler select HID_SENSOR_IIO_TRIGGER 101bc1d57baSsrinivas pandruvada tristate "HID Magenetometer 3D" 102bc1d57baSsrinivas pandruvada help 103bc1d57baSsrinivas pandruvada Say yes here to build support for the HID SENSOR 104bc1d57baSsrinivas pandruvada Magnetometer 3D. 105bc1d57baSsrinivas pandruvada 106abeb6b1eSDaniel Balutaconfig MMC35240 107abeb6b1eSDaniel Baluta tristate "MEMSIC MMC35240 3-axis magnetic sensor" 108abeb6b1eSDaniel Baluta select REGMAP_I2C 109abeb6b1eSDaniel Baluta depends on I2C 110abeb6b1eSDaniel Baluta help 111abeb6b1eSDaniel Baluta Say yes here to build support for the MEMSIC MMC35240 3-axis 112abeb6b1eSDaniel Baluta magnetic sensor. 113abeb6b1eSDaniel Baluta 114abeb6b1eSDaniel Baluta To compile this driver as a module, choose M here: the module 115abeb6b1eSDaniel Baluta will be called mmc35240. 116abeb6b1eSDaniel Baluta 117872e79adSDenis Cioccaconfig IIO_ST_MAGN_3AXIS 118872e79adSDenis Ciocca tristate "STMicroelectronics magnetometers 3-Axis Driver" 119872e79adSDenis Ciocca depends on (I2C || SPI_MASTER) && SYSFS 120872e79adSDenis Ciocca select IIO_ST_SENSORS_CORE 121872e79adSDenis Ciocca select IIO_ST_MAGN_I2C_3AXIS if (I2C) 122872e79adSDenis Ciocca select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER) 123872e79adSDenis Ciocca select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 124872e79adSDenis Ciocca help 125872e79adSDenis Ciocca Say yes here to build support for STMicroelectronics magnetometers: 126872e79adSDenis Ciocca LSM303DLHC, LSM303DLM, LIS3MDL. 127872e79adSDenis Ciocca 128341673f1SPeter Meerwald This driver can also be built as a module. If so, these modules 129341673f1SPeter Meerwald will be created: 130872e79adSDenis Ciocca - st_magn (core functions for the driver [it is mandatory]); 131872e79adSDenis Ciocca - st_magn_i2c (necessary for the I2C devices [optional*]); 132872e79adSDenis Ciocca - st_magn_spi (necessary for the SPI devices [optional*]); 133872e79adSDenis Ciocca 134872e79adSDenis Ciocca (*) one of these is necessary to do something. 135872e79adSDenis Ciocca 136872e79adSDenis Cioccaconfig IIO_ST_MAGN_I2C_3AXIS 137872e79adSDenis Ciocca tristate 138872e79adSDenis Ciocca depends on IIO_ST_MAGN_3AXIS 139872e79adSDenis Ciocca depends on IIO_ST_SENSORS_I2C 140872e79adSDenis Ciocca 141872e79adSDenis Cioccaconfig IIO_ST_MAGN_SPI_3AXIS 142872e79adSDenis Ciocca tristate 143872e79adSDenis Ciocca depends on IIO_ST_MAGN_3AXIS 144872e79adSDenis Ciocca depends on IIO_ST_SENSORS_SPI 145872e79adSDenis Ciocca 1467247645fSCristina Moraruconfig SENSORS_HMC5843 1477247645fSCristina Moraru tristate 1487247645fSCristina Moraru select IIO_BUFFER 1497247645fSCristina Moraru select IIO_TRIGGERED_BUFFER 1507247645fSCristina Moraru 1517247645fSCristina Moraruconfig SENSORS_HMC5843_I2C 1527247645fSCristina Moraru tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 1537247645fSCristina Moraru depends on I2C 1547247645fSCristina Moraru select SENSORS_HMC5843 1557247645fSCristina Moraru select REGMAP_I2C 1567247645fSCristina Moraru help 1577247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5843, HMC5883 and 1587247645fSCristina Moraru HMC5883L 3-Axis Magnetometer (digital compass). 1597247645fSCristina Moraru 1607247645fSCristina Moraru This driver can also be compiled as a set of modules. 1617247645fSCristina Moraru If so, these modules will be created: 1627247645fSCristina Moraru - hmc5843_core (core functions) 1637247645fSCristina Moraru - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 1647247645fSCristina Moraru 1657247645fSCristina Moraruconfig SENSORS_HMC5843_SPI 1667247645fSCristina Moraru tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 1677247645fSCristina Moraru depends on SPI_MASTER 1687247645fSCristina Moraru select SENSORS_HMC5843 1697247645fSCristina Moraru select REGMAP_SPI 1707247645fSCristina Moraru help 1717247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 1727247645fSCristina Moraru (digital compass). 1737247645fSCristina Moraru 1747247645fSCristina Moraru This driver can also be compiled as a set of modules. 1757247645fSCristina Moraru If so, these modules will be created: 1767247645fSCristina Moraru - hmc5843_core (core functions) 1777247645fSCristina Moraru - hmc5843_spi (support for HMC5983) 1787247645fSCristina Moraru 179121354b2SSong Qiangconfig SENSORS_RM3100 180121354b2SSong Qiang tristate 181121354b2SSong Qiang select IIO_BUFFER 182121354b2SSong Qiang select IIO_TRIGGERED_BUFFER 183121354b2SSong Qiang 184121354b2SSong Qiangconfig SENSORS_RM3100_I2C 185121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 186121354b2SSong Qiang depends on I2C 187121354b2SSong Qiang select SENSORS_RM3100 188121354b2SSong Qiang select REGMAP_I2C 189121354b2SSong Qiang help 190121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 191121354b2SSong Qiang 192121354b2SSong Qiang This driver can also be compiled as a module. 193121354b2SSong Qiang To compile this driver as a module, choose M here: the module 194121354b2SSong Qiang will be called rm3100-i2c. 195121354b2SSong Qiang 196121354b2SSong Qiangconfig SENSORS_RM3100_SPI 197121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 198121354b2SSong Qiang depends on SPI_MASTER 199121354b2SSong Qiang select SENSORS_RM3100 200121354b2SSong Qiang select REGMAP_SPI 201121354b2SSong Qiang help 202121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 203121354b2SSong Qiang 204121354b2SSong Qiang This driver can also be compiled as a module. 205121354b2SSong Qiang To compile this driver as a module, choose M here: the module 206121354b2SSong Qiang will be called rm3100-spi. 207121354b2SSong Qiang 208*de8860b1SLinus Walleijconfig YAMAHA_YAS530 209*de8860b1SLinus Walleij tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)" 210*de8860b1SLinus Walleij depends on I2C 211*de8860b1SLinus Walleij select REGMAP_I2C 212*de8860b1SLinus Walleij select IIO_BUFFER 213*de8860b1SLinus Walleij select IIO_TRIGGERED_BUFFER 214*de8860b1SLinus Walleij help 215*de8860b1SLinus Walleij Say Y here to add support for the Yamaha YAS530 series of 216*de8860b1SLinus Walleij 3-Axis Magnetometers. Right now YAS530, YAS532 and YAS533 are 217*de8860b1SLinus Walleij fully supported. 218*de8860b1SLinus Walleij 219*de8860b1SLinus Walleij This driver can also be compiled as a module. 220*de8860b1SLinus Walleij To compile this driver as a module, choose M here: the module 221*de8860b1SLinus Walleij will be called yamaha-yas. 222*de8860b1SLinus Walleij 223bc1d57baSsrinivas pandruvadaendmenu 224