xref: /openbmc/linux/drivers/iio/magnetometer/Kconfig (revision 2427d22d)
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
108bc1d57baSsrinivas pandruvadaendmenu
109