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, 31*76e28aa9SMatt Ranostay AK09911, AK09912 or AK09916 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 HID_SENSOR_IIO_COMMON 999541cc39SAlexander Holler select HID_SENSOR_IIO_TRIGGER 100bc1d57baSsrinivas pandruvada tristate "HID Magenetometer 3D" 101bc1d57baSsrinivas pandruvada help 102bc1d57baSsrinivas pandruvada Say yes here to build support for the HID SENSOR 103bc1d57baSsrinivas pandruvada Magnetometer 3D. 104bc1d57baSsrinivas pandruvada 105abeb6b1eSDaniel Balutaconfig MMC35240 106abeb6b1eSDaniel Baluta tristate "MEMSIC MMC35240 3-axis magnetic sensor" 107abeb6b1eSDaniel Baluta select REGMAP_I2C 108abeb6b1eSDaniel Baluta depends on I2C 109abeb6b1eSDaniel Baluta help 110abeb6b1eSDaniel Baluta Say yes here to build support for the MEMSIC MMC35240 3-axis 111abeb6b1eSDaniel Baluta magnetic sensor. 112abeb6b1eSDaniel Baluta 113abeb6b1eSDaniel Baluta To compile this driver as a module, choose M here: the module 114abeb6b1eSDaniel Baluta will be called mmc35240. 115abeb6b1eSDaniel Baluta 116872e79adSDenis Cioccaconfig IIO_ST_MAGN_3AXIS 117872e79adSDenis Ciocca tristate "STMicroelectronics magnetometers 3-Axis Driver" 118872e79adSDenis Ciocca depends on (I2C || SPI_MASTER) && SYSFS 119872e79adSDenis Ciocca select IIO_ST_SENSORS_CORE 120872e79adSDenis Ciocca select IIO_ST_MAGN_I2C_3AXIS if (I2C) 121872e79adSDenis Ciocca select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER) 122872e79adSDenis Ciocca select IIO_TRIGGERED_BUFFER if (IIO_BUFFER) 123872e79adSDenis Ciocca help 124872e79adSDenis Ciocca Say yes here to build support for STMicroelectronics magnetometers: 125872e79adSDenis Ciocca LSM303DLHC, LSM303DLM, LIS3MDL. 126872e79adSDenis Ciocca 127341673f1SPeter Meerwald This driver can also be built as a module. If so, these modules 128341673f1SPeter Meerwald will be created: 129872e79adSDenis Ciocca - st_magn (core functions for the driver [it is mandatory]); 130872e79adSDenis Ciocca - st_magn_i2c (necessary for the I2C devices [optional*]); 131872e79adSDenis Ciocca - st_magn_spi (necessary for the SPI devices [optional*]); 132872e79adSDenis Ciocca 133872e79adSDenis Ciocca (*) one of these is necessary to do something. 134872e79adSDenis Ciocca 135872e79adSDenis Cioccaconfig IIO_ST_MAGN_I2C_3AXIS 136872e79adSDenis Ciocca tristate 137872e79adSDenis Ciocca depends on IIO_ST_MAGN_3AXIS 138872e79adSDenis Ciocca depends on IIO_ST_SENSORS_I2C 139872e79adSDenis Ciocca 140872e79adSDenis Cioccaconfig IIO_ST_MAGN_SPI_3AXIS 141872e79adSDenis Ciocca tristate 142872e79adSDenis Ciocca depends on IIO_ST_MAGN_3AXIS 143872e79adSDenis Ciocca depends on IIO_ST_SENSORS_SPI 144872e79adSDenis Ciocca 1457247645fSCristina Moraruconfig SENSORS_HMC5843 1467247645fSCristina Moraru tristate 1477247645fSCristina Moraru select IIO_BUFFER 1487247645fSCristina Moraru select IIO_TRIGGERED_BUFFER 1497247645fSCristina Moraru 1507247645fSCristina Moraruconfig SENSORS_HMC5843_I2C 1517247645fSCristina Moraru tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 1527247645fSCristina Moraru depends on I2C 1537247645fSCristina Moraru select SENSORS_HMC5843 1547247645fSCristina Moraru select REGMAP_I2C 1557247645fSCristina Moraru help 1567247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5843, HMC5883 and 1577247645fSCristina Moraru HMC5883L 3-Axis Magnetometer (digital compass). 1587247645fSCristina Moraru 1597247645fSCristina Moraru This driver can also be compiled as a set of modules. 1607247645fSCristina Moraru If so, these modules will be created: 1617247645fSCristina Moraru - hmc5843_core (core functions) 1627247645fSCristina Moraru - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 1637247645fSCristina Moraru 1647247645fSCristina Moraruconfig SENSORS_HMC5843_SPI 1657247645fSCristina Moraru tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 1667247645fSCristina Moraru depends on SPI_MASTER 1677247645fSCristina Moraru select SENSORS_HMC5843 1687247645fSCristina Moraru select REGMAP_SPI 1697247645fSCristina Moraru help 1707247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 1717247645fSCristina Moraru (digital compass). 1727247645fSCristina Moraru 1737247645fSCristina Moraru This driver can also be compiled as a set of modules. 1747247645fSCristina Moraru If so, these modules will be created: 1757247645fSCristina Moraru - hmc5843_core (core functions) 1767247645fSCristina Moraru - hmc5843_spi (support for HMC5983) 1777247645fSCristina Moraru 178121354b2SSong Qiangconfig SENSORS_RM3100 179121354b2SSong Qiang tristate 180121354b2SSong Qiang select IIO_BUFFER 181121354b2SSong Qiang select IIO_TRIGGERED_BUFFER 182121354b2SSong Qiang 183121354b2SSong Qiangconfig SENSORS_RM3100_I2C 184121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 185121354b2SSong Qiang depends on I2C 186121354b2SSong Qiang select SENSORS_RM3100 187121354b2SSong Qiang select REGMAP_I2C 188121354b2SSong Qiang help 189121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 190121354b2SSong Qiang 191121354b2SSong Qiang This driver can also be compiled as a module. 192121354b2SSong Qiang To compile this driver as a module, choose M here: the module 193121354b2SSong Qiang will be called rm3100-i2c. 194121354b2SSong Qiang 195121354b2SSong Qiangconfig SENSORS_RM3100_SPI 196121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 197121354b2SSong Qiang depends on SPI_MASTER 198121354b2SSong Qiang select SENSORS_RM3100 199121354b2SSong Qiang select REGMAP_SPI 200121354b2SSong Qiang help 201121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 202121354b2SSong Qiang 203121354b2SSong Qiang This driver can also be compiled as a module. 204121354b2SSong Qiang To compile this driver as a module, choose M here: the module 205121354b2SSong Qiang will be called rm3100-spi. 206121354b2SSong Qiang 207de8860b1SLinus Walleijconfig YAMAHA_YAS530 208de8860b1SLinus Walleij tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)" 209de8860b1SLinus Walleij depends on I2C 210de8860b1SLinus Walleij select REGMAP_I2C 211de8860b1SLinus Walleij select IIO_BUFFER 212de8860b1SLinus Walleij select IIO_TRIGGERED_BUFFER 213de8860b1SLinus Walleij help 214de8860b1SLinus Walleij Say Y here to add support for the Yamaha YAS530 series of 215de8860b1SLinus Walleij 3-Axis Magnetometers. Right now YAS530, YAS532 and YAS533 are 216de8860b1SLinus Walleij fully supported. 217de8860b1SLinus Walleij 218de8860b1SLinus Walleij This driver can also be compiled as a module. 219de8860b1SLinus Walleij To compile this driver as a module, choose M here: the module 220de8860b1SLinus Walleij will be called yamaha-yas. 221de8860b1SLinus Walleij 222bc1d57baSsrinivas pandruvadaendmenu 223