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, 3176e28aa9SMatt 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_TRIGGERED_BUFFER if (IIO_BUFFER) 121872e79adSDenis Ciocca help 122872e79adSDenis Ciocca Say yes here to build support for STMicroelectronics magnetometers: 123872e79adSDenis Ciocca LSM303DLHC, LSM303DLM, LIS3MDL. 124872e79adSDenis Ciocca 125*26b2ec2eSNikita Yushchenko Also need to enable at least one of I2C and SPI interface drivers 126*26b2ec2eSNikita Yushchenko below. 127872e79adSDenis Ciocca 128872e79adSDenis Cioccaconfig IIO_ST_MAGN_I2C_3AXIS 129*26b2ec2eSNikita Yushchenko tristate "STMicroelectronics magnetometers 3-Axis I2C Interface" 130*26b2ec2eSNikita Yushchenko depends on I2C && IIO_ST_MAGN_3AXIS 131*26b2ec2eSNikita Yushchenko default I2C && IIO_ST_MAGN_3AXIS 132*26b2ec2eSNikita Yushchenko select IIO_ST_SENSORS_I2C 133*26b2ec2eSNikita Yushchenko help 134*26b2ec2eSNikita Yushchenko Build support for STMicroelectronics magnetometers I2C interface. 135*26b2ec2eSNikita Yushchenko 136*26b2ec2eSNikita Yushchenko To compile this driver as a module, choose M here. The module 137*26b2ec2eSNikita Yushchenko will be called st_magn_i2c. 138872e79adSDenis Ciocca 139872e79adSDenis Cioccaconfig IIO_ST_MAGN_SPI_3AXIS 140*26b2ec2eSNikita Yushchenko tristate "STMicroelectronics magnetometers 3-Axis SPI Interface" 141*26b2ec2eSNikita Yushchenko depends on SPI_MASTER && IIO_ST_MAGN_3AXIS 142*26b2ec2eSNikita Yushchenko default SPI_MASTER && IIO_ST_MAGN_3AXIS 143*26b2ec2eSNikita Yushchenko select IIO_ST_SENSORS_SPI 144*26b2ec2eSNikita Yushchenko help 145*26b2ec2eSNikita Yushchenko Build support for STMicroelectronics magnetometers SPI interface. 146*26b2ec2eSNikita Yushchenko 147*26b2ec2eSNikita Yushchenko To compile this driver as a module, choose M here. The module 148*26b2ec2eSNikita Yushchenko will be called st_magn_spi. 149872e79adSDenis Ciocca 1507247645fSCristina Moraruconfig SENSORS_HMC5843 1517247645fSCristina Moraru tristate 1527247645fSCristina Moraru select IIO_BUFFER 1537247645fSCristina Moraru select IIO_TRIGGERED_BUFFER 1547247645fSCristina Moraru 1557247645fSCristina Moraruconfig SENSORS_HMC5843_I2C 1567247645fSCristina Moraru tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)" 1577247645fSCristina Moraru depends on I2C 1587247645fSCristina Moraru select SENSORS_HMC5843 1597247645fSCristina Moraru select REGMAP_I2C 1607247645fSCristina Moraru help 1617247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5843, HMC5883 and 1627247645fSCristina Moraru HMC5883L 3-Axis Magnetometer (digital compass). 1637247645fSCristina Moraru 1647247645fSCristina Moraru This driver can also be compiled as a set of modules. 1657247645fSCristina Moraru If so, these modules will be created: 1667247645fSCristina Moraru - hmc5843_core (core functions) 1677247645fSCristina Moraru - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983) 1687247645fSCristina Moraru 1697247645fSCristina Moraruconfig SENSORS_HMC5843_SPI 1707247645fSCristina Moraru tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)" 1717247645fSCristina Moraru depends on SPI_MASTER 1727247645fSCristina Moraru select SENSORS_HMC5843 1737247645fSCristina Moraru select REGMAP_SPI 1747247645fSCristina Moraru help 1757247645fSCristina Moraru Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer 1767247645fSCristina Moraru (digital compass). 1777247645fSCristina Moraru 1787247645fSCristina Moraru This driver can also be compiled as a set of modules. 1797247645fSCristina Moraru If so, these modules will be created: 1807247645fSCristina Moraru - hmc5843_core (core functions) 1817247645fSCristina Moraru - hmc5843_spi (support for HMC5983) 1827247645fSCristina Moraru 183121354b2SSong Qiangconfig SENSORS_RM3100 184121354b2SSong Qiang tristate 185121354b2SSong Qiang select IIO_BUFFER 186121354b2SSong Qiang select IIO_TRIGGERED_BUFFER 187121354b2SSong Qiang 188121354b2SSong Qiangconfig SENSORS_RM3100_I2C 189121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (I2C)" 190121354b2SSong Qiang depends on I2C 191121354b2SSong Qiang select SENSORS_RM3100 192121354b2SSong Qiang select REGMAP_I2C 193121354b2SSong Qiang help 194121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 195121354b2SSong Qiang 196121354b2SSong Qiang This driver can also be compiled as a module. 197121354b2SSong Qiang To compile this driver as a module, choose M here: the module 198121354b2SSong Qiang will be called rm3100-i2c. 199121354b2SSong Qiang 200121354b2SSong Qiangconfig SENSORS_RM3100_SPI 201121354b2SSong Qiang tristate "PNI RM3100 3-Axis Magnetometer (SPI)" 202121354b2SSong Qiang depends on SPI_MASTER 203121354b2SSong Qiang select SENSORS_RM3100 204121354b2SSong Qiang select REGMAP_SPI 205121354b2SSong Qiang help 206121354b2SSong Qiang Say Y here to add support for the PNI RM3100 3-Axis Magnetometer. 207121354b2SSong Qiang 208121354b2SSong Qiang This driver can also be compiled as a module. 209121354b2SSong Qiang To compile this driver as a module, choose M here: the module 210121354b2SSong Qiang will be called rm3100-spi. 211121354b2SSong Qiang 212de8860b1SLinus Walleijconfig YAMAHA_YAS530 213de8860b1SLinus Walleij tristate "Yamaha YAS530 family of 3-Axis Magnetometers (I2C)" 214de8860b1SLinus Walleij depends on I2C 215de8860b1SLinus Walleij select REGMAP_I2C 216de8860b1SLinus Walleij select IIO_BUFFER 217de8860b1SLinus Walleij select IIO_TRIGGERED_BUFFER 218de8860b1SLinus Walleij help 219de8860b1SLinus Walleij Say Y here to add support for the Yamaha YAS530 series of 220de8860b1SLinus Walleij 3-Axis Magnetometers. Right now YAS530, YAS532 and YAS533 are 221de8860b1SLinus Walleij fully supported. 222de8860b1SLinus Walleij 223de8860b1SLinus Walleij This driver can also be compiled as a module. 224de8860b1SLinus Walleij To compile this driver as a module, choose M here: the module 225de8860b1SLinus Walleij will be called yamaha-yas. 226de8860b1SLinus Walleij 227bc1d57baSsrinivas pandruvadaendmenu 228