xref: /openbmc/linux/drivers/iio/magnetometer/Kconfig (revision bc11ca4a)
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
12bc11ca4aSGregor Boirie	select IIO_BUFFER
13bc11ca4aSGregor Boirie	select IIO_TRIGGERED_BUFFER
142fc72cd8SJonathan Cameron	help
1557e73a42SGwendal Grignou	  Say yes here to build support for Asahi Kasei AK8975, AK8963,
1657e73a42SGwendal Grignou	  AK09911 or AK09912 3-Axis Magnetometer.
172fc72cd8SJonathan Cameron
182fc72cd8SJonathan Cameron	  To compile this driver as a module, choose M here: the module
192fc72cd8SJonathan Cameron	  will be called ak8975.
202fc72cd8SJonathan Cameron
21d14c0f10SSrinivas Pandruvadaconfig AK09911
22d14c0f10SSrinivas Pandruvada	tristate "Asahi Kasei AK09911 3-axis Compass"
2336086889SArnd Bergmann	depends on I2C
2484935853SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
2557e73a42SGwendal Grignou	select AK8975
26d14c0f10SSrinivas Pandruvada	help
2757e73a42SGwendal Grignou	  Deprecated: AK09911 is now supported by AK8975 driver.
28d14c0f10SSrinivas Pandruvada
292427d22dSHartmut Knaackconfig BMC150_MAGN
302427d22dSHartmut Knaack	tristate "Bosch BMC150 Magnetometer Driver"
312427d22dSHartmut Knaack	depends on I2C
322427d22dSHartmut Knaack	select REGMAP_I2C
332427d22dSHartmut Knaack	select IIO_BUFFER
342427d22dSHartmut Knaack	select IIO_TRIGGERED_BUFFER
352427d22dSHartmut Knaack	help
362427d22dSHartmut Knaack	  Say yes here to build support for the BMC150 magnetometer.
372427d22dSHartmut Knaack
382427d22dSHartmut Knaack	  Currently this only supports the device via an i2c interface.
392427d22dSHartmut Knaack
402427d22dSHartmut Knaack	  This is a combo module with both accelerometer and magnetometer.
412427d22dSHartmut Knaack	  This driver is only implementing magnetometer part, which has
422427d22dSHartmut Knaack	  its own address and register map.
432427d22dSHartmut Knaack
442427d22dSHartmut Knaack	  To compile this driver as a module, choose M here: the module will be
452427d22dSHartmut Knaack	  called bmc150_magn.
462427d22dSHartmut Knaack
4739631b5fSPeter Meerwaldconfig MAG3110
4839631b5fSPeter Meerwald	tristate "Freescale MAG3110 3-Axis Magnetometer"
4939631b5fSPeter Meerwald	depends on I2C
5050619cb1SPeter Meerwald	select IIO_BUFFER
5150619cb1SPeter Meerwald	select IIO_TRIGGERED_BUFFER
5239631b5fSPeter Meerwald	help
5339631b5fSPeter Meerwald	  Say yes here to build support for the Freescale MAG3110 3-Axis
5439631b5fSPeter Meerwald	  magnetometer.
5539631b5fSPeter Meerwald
5639631b5fSPeter Meerwald	  To compile this driver as a module, choose M here: the module
5739631b5fSPeter Meerwald	  will be called mag3110.
5839631b5fSPeter Meerwald
59bc1d57baSsrinivas pandruvadaconfig HID_SENSOR_MAGNETOMETER_3D
60bc1d57baSsrinivas pandruvada	depends on HID_SENSOR_HUB
61bc1d57baSsrinivas pandruvada	select IIO_BUFFER
62bc1d57baSsrinivas pandruvada	select IIO_TRIGGERED_BUFFER
63bc1d57baSsrinivas pandruvada	select HID_SENSOR_IIO_COMMON
649541cc39SAlexander Holler	select HID_SENSOR_IIO_TRIGGER
65bc1d57baSsrinivas pandruvada	tristate "HID Magenetometer 3D"
66bc1d57baSsrinivas pandruvada	help
67bc1d57baSsrinivas pandruvada	  Say yes here to build support for the HID SENSOR
68bc1d57baSsrinivas pandruvada	  Magnetometer 3D.
69bc1d57baSsrinivas pandruvada
70abeb6b1eSDaniel Balutaconfig MMC35240
71abeb6b1eSDaniel Baluta	tristate "MEMSIC MMC35240 3-axis magnetic sensor"
72abeb6b1eSDaniel Baluta	select REGMAP_I2C
73abeb6b1eSDaniel Baluta	depends on I2C
74abeb6b1eSDaniel Baluta	help
75abeb6b1eSDaniel Baluta	  Say yes here to build support for the MEMSIC MMC35240 3-axis
76abeb6b1eSDaniel Baluta	  magnetic sensor.
77abeb6b1eSDaniel Baluta
78abeb6b1eSDaniel Baluta	  To compile this driver as a module, choose M here: the module
79abeb6b1eSDaniel Baluta	  will be called mmc35240.
80abeb6b1eSDaniel Baluta
81872e79adSDenis Cioccaconfig IIO_ST_MAGN_3AXIS
82872e79adSDenis Ciocca	tristate "STMicroelectronics magnetometers 3-Axis Driver"
83872e79adSDenis Ciocca	depends on (I2C || SPI_MASTER) && SYSFS
84872e79adSDenis Ciocca	select IIO_ST_SENSORS_CORE
85872e79adSDenis Ciocca	select IIO_ST_MAGN_I2C_3AXIS if (I2C)
86872e79adSDenis Ciocca	select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER)
87872e79adSDenis Ciocca	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
88872e79adSDenis Ciocca	help
89872e79adSDenis Ciocca	  Say yes here to build support for STMicroelectronics magnetometers:
90872e79adSDenis Ciocca	  LSM303DLHC, LSM303DLM, LIS3MDL.
91872e79adSDenis Ciocca
92341673f1SPeter Meerwald	  This driver can also be built as a module. If so, these modules
93341673f1SPeter Meerwald	  will be created:
94872e79adSDenis Ciocca	  - st_magn (core functions for the driver [it is mandatory]);
95872e79adSDenis Ciocca	  - st_magn_i2c (necessary for the I2C devices [optional*]);
96872e79adSDenis Ciocca	  - st_magn_spi (necessary for the SPI devices [optional*]);
97872e79adSDenis Ciocca
98872e79adSDenis Ciocca	  (*) one of these is necessary to do something.
99872e79adSDenis Ciocca
100872e79adSDenis Cioccaconfig IIO_ST_MAGN_I2C_3AXIS
101872e79adSDenis Ciocca	tristate
102872e79adSDenis Ciocca	depends on IIO_ST_MAGN_3AXIS
103872e79adSDenis Ciocca	depends on IIO_ST_SENSORS_I2C
104872e79adSDenis Ciocca
105872e79adSDenis Cioccaconfig IIO_ST_MAGN_SPI_3AXIS
106872e79adSDenis Ciocca	tristate
107872e79adSDenis Ciocca	depends on IIO_ST_MAGN_3AXIS
108872e79adSDenis Ciocca	depends on IIO_ST_SENSORS_SPI
109872e79adSDenis Ciocca
1107247645fSCristina Moraruconfig SENSORS_HMC5843
1117247645fSCristina Moraru	tristate
1127247645fSCristina Moraru	select IIO_BUFFER
1137247645fSCristina Moraru	select IIO_TRIGGERED_BUFFER
1147247645fSCristina Moraru
1157247645fSCristina Moraruconfig SENSORS_HMC5843_I2C
1167247645fSCristina Moraru	tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)"
1177247645fSCristina Moraru	depends on I2C
1187247645fSCristina Moraru	select SENSORS_HMC5843
1197247645fSCristina Moraru	select REGMAP_I2C
1207247645fSCristina Moraru	help
1217247645fSCristina Moraru	  Say Y here to add support for the Honeywell HMC5843, HMC5883 and
1227247645fSCristina Moraru	  HMC5883L 3-Axis Magnetometer (digital compass).
1237247645fSCristina Moraru
1247247645fSCristina Moraru	  This driver can also be compiled as a set of modules.
1257247645fSCristina Moraru	  If so, these modules will be created:
1267247645fSCristina Moraru	  - hmc5843_core (core functions)
1277247645fSCristina Moraru	  - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983)
1287247645fSCristina Moraru
1297247645fSCristina Moraruconfig SENSORS_HMC5843_SPI
1307247645fSCristina Moraru	tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)"
1317247645fSCristina Moraru	depends on SPI_MASTER
1327247645fSCristina Moraru	select SENSORS_HMC5843
1337247645fSCristina Moraru	select REGMAP_SPI
1347247645fSCristina Moraru	help
1357247645fSCristina Moraru	  Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer
1367247645fSCristina Moraru	  (digital compass).
1377247645fSCristina Moraru
1387247645fSCristina Moraru	  This driver can also be compiled as a set of modules.
1397247645fSCristina Moraru	  If so, these modules will be created:
1407247645fSCristina Moraru	  - hmc5843_core (core functions)
1417247645fSCristina Moraru	  - hmc5843_spi (support for HMC5983)
1427247645fSCristina Moraru
143bc1d57baSsrinivas pandruvadaendmenu
144