xref: /openbmc/linux/drivers/iio/magnetometer/Kconfig (revision 7c94a8b2)
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
87c94a8b2SLinus Walleijconfig AK8974
97c94a8b2SLinus Walleij	tristate "Asahi Kasei AK8974 3-Axis Magnetometer"
107c94a8b2SLinus Walleij	depends on I2C
117c94a8b2SLinus Walleij	depends on OF
127c94a8b2SLinus Walleij	select REGMAP_I2C
137c94a8b2SLinus Walleij	select IIO_BUFFER
147c94a8b2SLinus Walleij	select IIO_TRIGGERED_BUFFER
157c94a8b2SLinus Walleij	help
167c94a8b2SLinus Walleij	  Say yes here to build support for Asahi Kasei AK8974 or
177c94a8b2SLinus Walleij	  AMI305 I2C-based 3-axis magnetometer chips.
187c94a8b2SLinus Walleij
197c94a8b2SLinus Walleij	  To compile this driver as a module, choose M here: the module
207c94a8b2SLinus Walleij	  will be called ak8974.
217c94a8b2SLinus Walleij
222fc72cd8SJonathan Cameronconfig AK8975
237c94a8b2SLinus Walleij	tristate "Asahi Kasei AK8975 3-Axis Magnetometer"
242fc72cd8SJonathan Cameron	depends on I2C
2584935853SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
26bc11ca4aSGregor Boirie	select IIO_BUFFER
27bc11ca4aSGregor Boirie	select IIO_TRIGGERED_BUFFER
282fc72cd8SJonathan Cameron	help
2957e73a42SGwendal Grignou	  Say yes here to build support for Asahi Kasei AK8975, AK8963,
3057e73a42SGwendal Grignou	  AK09911 or AK09912 3-Axis Magnetometer.
312fc72cd8SJonathan Cameron
322fc72cd8SJonathan Cameron	  To compile this driver as a module, choose M here: the module
332fc72cd8SJonathan Cameron	  will be called ak8975.
342fc72cd8SJonathan Cameron
35d14c0f10SSrinivas Pandruvadaconfig AK09911
36d14c0f10SSrinivas Pandruvada	tristate "Asahi Kasei AK09911 3-axis Compass"
3736086889SArnd Bergmann	depends on I2C
3884935853SGeert Uytterhoeven	depends on GPIOLIB || COMPILE_TEST
3957e73a42SGwendal Grignou	select AK8975
40d14c0f10SSrinivas Pandruvada	help
4157e73a42SGwendal Grignou	  Deprecated: AK09911 is now supported by AK8975 driver.
42d14c0f10SSrinivas Pandruvada
432427d22dSHartmut Knaackconfig BMC150_MAGN
44761b7910SDaniel Baluta	tristate
452427d22dSHartmut Knaack	select IIO_BUFFER
462427d22dSHartmut Knaack	select IIO_TRIGGERED_BUFFER
472427d22dSHartmut Knaack
48761b7910SDaniel Balutaconfig BMC150_MAGN_I2C
49761b7910SDaniel Baluta	tristate "Bosch BMC150 I2C Magnetometer Driver"
50761b7910SDaniel Baluta	depends on I2C
51761b7910SDaniel Baluta	select BMC150_MAGN
52761b7910SDaniel Baluta	select REGMAP_I2C
53761b7910SDaniel Baluta	help
54761b7910SDaniel Baluta	  Say yes here to build support for the BMC150 magnetometer with
55761b7910SDaniel Baluta	  I2C interface.
562427d22dSHartmut Knaack
572427d22dSHartmut Knaack	  This is a combo module with both accelerometer and magnetometer.
582427d22dSHartmut Knaack	  This driver is only implementing magnetometer part, which has
592427d22dSHartmut Knaack	  its own address and register map.
602427d22dSHartmut Knaack
610aea7ac8SDaniel Baluta	  This driver also supports I2C Bosch BMC156 and BMM150 chips.
622427d22dSHartmut Knaack	  To compile this driver as a module, choose M here: the module will be
63761b7910SDaniel Baluta	  called bmc150_magn_i2c.
642427d22dSHartmut Knaack
65534536acSDaniel Balutaconfig BMC150_MAGN_SPI
66534536acSDaniel Baluta	tristate "Bosch BMC150 SPI Magnetometer Driver"
67534536acSDaniel Baluta	depends on SPI
68534536acSDaniel Baluta	select BMC150_MAGN
69534536acSDaniel Baluta	select REGMAP_SPI
70534536acSDaniel Baluta	help
71534536acSDaniel Baluta	  Say yes here to build support for the BMC150 magnetometer with
72534536acSDaniel Baluta	  SPI interface.
73534536acSDaniel Baluta
74534536acSDaniel Baluta	  This is a combo module with both accelerometer and magnetometer.
75534536acSDaniel Baluta	  This driver is only implementing magnetometer part, which has
76534536acSDaniel Baluta	  its own address and register map.
77534536acSDaniel Baluta
780aea7ac8SDaniel Baluta	  This driver also supports SPI Bosch BMC156 and BMM150 chips.
79534536acSDaniel Baluta	  To compile this driver as a module, choose M here: the module will be
80534536acSDaniel Baluta	  called bmc150_magn_spi.
81534536acSDaniel Baluta
8239631b5fSPeter Meerwaldconfig MAG3110
8339631b5fSPeter Meerwald	tristate "Freescale MAG3110 3-Axis Magnetometer"
8439631b5fSPeter Meerwald	depends on I2C
8550619cb1SPeter Meerwald	select IIO_BUFFER
8650619cb1SPeter Meerwald	select IIO_TRIGGERED_BUFFER
8739631b5fSPeter Meerwald	help
8839631b5fSPeter Meerwald	  Say yes here to build support for the Freescale MAG3110 3-Axis
8939631b5fSPeter Meerwald	  magnetometer.
9039631b5fSPeter Meerwald
9139631b5fSPeter Meerwald	  To compile this driver as a module, choose M here: the module
9239631b5fSPeter Meerwald	  will be called mag3110.
9339631b5fSPeter Meerwald
94bc1d57baSsrinivas pandruvadaconfig HID_SENSOR_MAGNETOMETER_3D
95bc1d57baSsrinivas pandruvada	depends on HID_SENSOR_HUB
96bc1d57baSsrinivas pandruvada	select IIO_BUFFER
97bc1d57baSsrinivas pandruvada	select IIO_TRIGGERED_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
178bc1d57baSsrinivas pandruvadaendmenu
179