xref: /openbmc/linux/drivers/iio/magnetometer/Kconfig (revision 7247645f)
1bc1d57baSsrinivas pandruvada#
2bc1d57baSsrinivas pandruvada# Magnetometer sensors
3bc1d57baSsrinivas pandruvada#
43edc84e6SLars-Peter Clausen# When adding new entries keep the list in alphabetical order
53edc84e6SLars-Peter Clausen
6bc1d57baSsrinivas pandruvadamenu "Magnetometer sensors"
7bc1d57baSsrinivas pandruvada
82fc72cd8SJonathan Cameronconfig AK8975
957e73a42SGwendal Grignou	tristate "Asahi Kasei AK 3-Axis Magnetometer"
102fc72cd8SJonathan Cameron	depends on I2C
1184935853SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
122fc72cd8SJonathan Cameron	help
1357e73a42SGwendal Grignou	  Say yes here to build support for Asahi Kasei AK8975, AK8963,
1457e73a42SGwendal Grignou	  AK09911 or AK09912 3-Axis Magnetometer.
152fc72cd8SJonathan Cameron
162fc72cd8SJonathan Cameron	  To compile this driver as a module, choose M here: the module
172fc72cd8SJonathan Cameron	  will be called ak8975.
182fc72cd8SJonathan Cameron
19d14c0f10SSrinivas Pandruvadaconfig AK09911
20d14c0f10SSrinivas Pandruvada	tristate "Asahi Kasei AK09911 3-axis Compass"
2136086889SArnd Bergmann	depends on I2C
2284935853SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
2357e73a42SGwendal Grignou	select AK8975
24d14c0f10SSrinivas Pandruvada	help
2557e73a42SGwendal Grignou	  Deprecated: AK09911 is now supported by AK8975 driver.
26d14c0f10SSrinivas Pandruvada
272427d22dSHartmut Knaackconfig BMC150_MAGN
282427d22dSHartmut Knaack	tristate "Bosch BMC150 Magnetometer Driver"
292427d22dSHartmut Knaack	depends on I2C
302427d22dSHartmut Knaack	select REGMAP_I2C
312427d22dSHartmut Knaack	select IIO_BUFFER
322427d22dSHartmut Knaack	select IIO_TRIGGERED_BUFFER
332427d22dSHartmut Knaack	help
342427d22dSHartmut Knaack	  Say yes here to build support for the BMC150 magnetometer.
352427d22dSHartmut Knaack
362427d22dSHartmut Knaack	  Currently this only supports the device via an i2c interface.
372427d22dSHartmut Knaack
382427d22dSHartmut Knaack	  This is a combo module with both accelerometer and magnetometer.
392427d22dSHartmut Knaack	  This driver is only implementing magnetometer part, which has
402427d22dSHartmut Knaack	  its own address and register map.
412427d22dSHartmut Knaack
422427d22dSHartmut Knaack	  To compile this driver as a module, choose M here: the module will be
432427d22dSHartmut Knaack	  called bmc150_magn.
442427d22dSHartmut Knaack
4539631b5fSPeter Meerwaldconfig MAG3110
4639631b5fSPeter Meerwald	tristate "Freescale MAG3110 3-Axis Magnetometer"
4739631b5fSPeter Meerwald	depends on I2C
4850619cb1SPeter Meerwald	select IIO_BUFFER
4950619cb1SPeter Meerwald	select IIO_TRIGGERED_BUFFER
5039631b5fSPeter Meerwald	help
5139631b5fSPeter Meerwald	  Say yes here to build support for the Freescale MAG3110 3-Axis
5239631b5fSPeter Meerwald	  magnetometer.
5339631b5fSPeter Meerwald
5439631b5fSPeter Meerwald	  To compile this driver as a module, choose M here: the module
5539631b5fSPeter Meerwald	  will be called mag3110.
5639631b5fSPeter Meerwald
57bc1d57baSsrinivas pandruvadaconfig HID_SENSOR_MAGNETOMETER_3D
58bc1d57baSsrinivas pandruvada	depends on HID_SENSOR_HUB
59bc1d57baSsrinivas pandruvada	select IIO_BUFFER
60bc1d57baSsrinivas pandruvada	select IIO_TRIGGERED_BUFFER
61bc1d57baSsrinivas pandruvada	select HID_SENSOR_IIO_COMMON
629541cc39SAlexander Holler	select HID_SENSOR_IIO_TRIGGER
63bc1d57baSsrinivas pandruvada	tristate "HID Magenetometer 3D"
64bc1d57baSsrinivas pandruvada	help
65bc1d57baSsrinivas pandruvada	  Say yes here to build support for the HID SENSOR
66bc1d57baSsrinivas pandruvada	  Magnetometer 3D.
67bc1d57baSsrinivas pandruvada
68abeb6b1eSDaniel Balutaconfig MMC35240
69abeb6b1eSDaniel Baluta	tristate "MEMSIC MMC35240 3-axis magnetic sensor"
70abeb6b1eSDaniel Baluta	select REGMAP_I2C
71abeb6b1eSDaniel Baluta	depends on I2C
72abeb6b1eSDaniel Baluta	help
73abeb6b1eSDaniel Baluta	  Say yes here to build support for the MEMSIC MMC35240 3-axis
74abeb6b1eSDaniel Baluta	  magnetic sensor.
75abeb6b1eSDaniel Baluta
76abeb6b1eSDaniel Baluta	  To compile this driver as a module, choose M here: the module
77abeb6b1eSDaniel Baluta	  will be called mmc35240.
78abeb6b1eSDaniel Baluta
79872e79adSDenis Cioccaconfig IIO_ST_MAGN_3AXIS
80872e79adSDenis Ciocca	tristate "STMicroelectronics magnetometers 3-Axis Driver"
81872e79adSDenis Ciocca	depends on (I2C || SPI_MASTER) && SYSFS
82872e79adSDenis Ciocca	select IIO_ST_SENSORS_CORE
83872e79adSDenis Ciocca	select IIO_ST_MAGN_I2C_3AXIS if (I2C)
84872e79adSDenis Ciocca	select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER)
85872e79adSDenis Ciocca	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
86872e79adSDenis Ciocca	help
87872e79adSDenis Ciocca	  Say yes here to build support for STMicroelectronics magnetometers:
88872e79adSDenis Ciocca	  LSM303DLHC, LSM303DLM, LIS3MDL.
89872e79adSDenis Ciocca
90341673f1SPeter Meerwald	  This driver can also be built as a module. If so, these modules
91341673f1SPeter Meerwald	  will be created:
92872e79adSDenis Ciocca	  - st_magn (core functions for the driver [it is mandatory]);
93872e79adSDenis Ciocca	  - st_magn_i2c (necessary for the I2C devices [optional*]);
94872e79adSDenis Ciocca	  - st_magn_spi (necessary for the SPI devices [optional*]);
95872e79adSDenis Ciocca
96872e79adSDenis Ciocca	  (*) one of these is necessary to do something.
97872e79adSDenis Ciocca
98872e79adSDenis Cioccaconfig IIO_ST_MAGN_I2C_3AXIS
99872e79adSDenis Ciocca	tristate
100872e79adSDenis Ciocca	depends on IIO_ST_MAGN_3AXIS
101872e79adSDenis Ciocca	depends on IIO_ST_SENSORS_I2C
102872e79adSDenis Ciocca
103872e79adSDenis Cioccaconfig IIO_ST_MAGN_SPI_3AXIS
104872e79adSDenis Ciocca	tristate
105872e79adSDenis Ciocca	depends on IIO_ST_MAGN_3AXIS
106872e79adSDenis Ciocca	depends on IIO_ST_SENSORS_SPI
107872e79adSDenis Ciocca
1087247645fSCristina Moraruconfig SENSORS_HMC5843
1097247645fSCristina Moraru	tristate
1107247645fSCristina Moraru	select IIO_BUFFER
1117247645fSCristina Moraru	select IIO_TRIGGERED_BUFFER
1127247645fSCristina Moraru
1137247645fSCristina Moraruconfig SENSORS_HMC5843_I2C
1147247645fSCristina Moraru	tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)"
1157247645fSCristina Moraru	depends on I2C
1167247645fSCristina Moraru	select SENSORS_HMC5843
1177247645fSCristina Moraru	select REGMAP_I2C
1187247645fSCristina Moraru	help
1197247645fSCristina Moraru	  Say Y here to add support for the Honeywell HMC5843, HMC5883 and
1207247645fSCristina Moraru	  HMC5883L 3-Axis Magnetometer (digital compass).
1217247645fSCristina Moraru
1227247645fSCristina Moraru	  This driver can also be compiled as a set of modules.
1237247645fSCristina Moraru	  If so, these modules will be created:
1247247645fSCristina Moraru	  - hmc5843_core (core functions)
1257247645fSCristina Moraru	  - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983)
1267247645fSCristina Moraru
1277247645fSCristina Moraruconfig SENSORS_HMC5843_SPI
1287247645fSCristina Moraru	tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)"
1297247645fSCristina Moraru	depends on SPI_MASTER
1307247645fSCristina Moraru	select SENSORS_HMC5843
1317247645fSCristina Moraru	select REGMAP_SPI
1327247645fSCristina Moraru	help
1337247645fSCristina Moraru	  Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer
1347247645fSCristina Moraru	  (digital compass).
1357247645fSCristina Moraru
1367247645fSCristina Moraru	  This driver can also be compiled as a set of modules.
1377247645fSCristina Moraru	  If so, these modules will be created:
1387247645fSCristina Moraru	  - hmc5843_core (core functions)
1397247645fSCristina Moraru	  - hmc5843_spi (support for HMC5983)
1407247645fSCristina Moraru
141bc1d57baSsrinivas pandruvadaendmenu
142