xref: /linux/drivers/iio/magnetometer/Kconfig (revision 0aea7ac8548a9cda7a5003b39fe9b6031f0c19e0)
1#
2# Magnetometer sensors
3#
4# When adding new entries keep the list in alphabetical order
5
6menu "Magnetometer sensors"
7
8config AK8975
9	tristate "Asahi Kasei AK 3-Axis Magnetometer"
10	depends on I2C
11	depends on GPIOLIB || COMPILE_TEST
12	select IIO_BUFFER
13	select IIO_TRIGGERED_BUFFER
14	help
15	  Say yes here to build support for Asahi Kasei AK8975, AK8963,
16	  AK09911 or AK09912 3-Axis Magnetometer.
17
18	  To compile this driver as a module, choose M here: the module
19	  will be called ak8975.
20
21config AK09911
22	tristate "Asahi Kasei AK09911 3-axis Compass"
23	depends on I2C
24	depends on GPIOLIB || COMPILE_TEST
25	select AK8975
26	help
27	  Deprecated: AK09911 is now supported by AK8975 driver.
28
29config BMC150_MAGN
30	tristate
31	select IIO_BUFFER
32	select IIO_TRIGGERED_BUFFER
33
34config BMC150_MAGN_I2C
35	tristate "Bosch BMC150 I2C Magnetometer Driver"
36	depends on I2C
37	select BMC150_MAGN
38	select REGMAP_I2C
39	help
40	  Say yes here to build support for the BMC150 magnetometer with
41	  I2C interface.
42
43	  This is a combo module with both accelerometer and magnetometer.
44	  This driver is only implementing magnetometer part, which has
45	  its own address and register map.
46
47	  This driver also supports I2C Bosch BMC156 and BMM150 chips.
48	  To compile this driver as a module, choose M here: the module will be
49	  called bmc150_magn_i2c.
50
51config BMC150_MAGN_SPI
52	tristate "Bosch BMC150 SPI Magnetometer Driver"
53	depends on SPI
54	select BMC150_MAGN
55	select REGMAP_SPI
56	help
57	  Say yes here to build support for the BMC150 magnetometer with
58	  SPI interface.
59
60	  This is a combo module with both accelerometer and magnetometer.
61	  This driver is only implementing magnetometer part, which has
62	  its own address and register map.
63
64	  This driver also supports SPI Bosch BMC156 and BMM150 chips.
65	  To compile this driver as a module, choose M here: the module will be
66	  called bmc150_magn_spi.
67
68config MAG3110
69	tristate "Freescale MAG3110 3-Axis Magnetometer"
70	depends on I2C
71	select IIO_BUFFER
72	select IIO_TRIGGERED_BUFFER
73	help
74	  Say yes here to build support for the Freescale MAG3110 3-Axis
75	  magnetometer.
76
77	  To compile this driver as a module, choose M here: the module
78	  will be called mag3110.
79
80config HID_SENSOR_MAGNETOMETER_3D
81	depends on HID_SENSOR_HUB
82	select IIO_BUFFER
83	select IIO_TRIGGERED_BUFFER
84	select HID_SENSOR_IIO_COMMON
85	select HID_SENSOR_IIO_TRIGGER
86	tristate "HID Magenetometer 3D"
87	help
88	  Say yes here to build support for the HID SENSOR
89	  Magnetometer 3D.
90
91config MMC35240
92	tristate "MEMSIC MMC35240 3-axis magnetic sensor"
93	select REGMAP_I2C
94	depends on I2C
95	help
96	  Say yes here to build support for the MEMSIC MMC35240 3-axis
97	  magnetic sensor.
98
99	  To compile this driver as a module, choose M here: the module
100	  will be called mmc35240.
101
102config IIO_ST_MAGN_3AXIS
103	tristate "STMicroelectronics magnetometers 3-Axis Driver"
104	depends on (I2C || SPI_MASTER) && SYSFS
105	select IIO_ST_SENSORS_CORE
106	select IIO_ST_MAGN_I2C_3AXIS if (I2C)
107	select IIO_ST_MAGN_SPI_3AXIS if (SPI_MASTER)
108	select IIO_TRIGGERED_BUFFER if (IIO_BUFFER)
109	help
110	  Say yes here to build support for STMicroelectronics magnetometers:
111	  LSM303DLHC, LSM303DLM, LIS3MDL.
112
113	  This driver can also be built as a module. If so, these modules
114	  will be created:
115	  - st_magn (core functions for the driver [it is mandatory]);
116	  - st_magn_i2c (necessary for the I2C devices [optional*]);
117	  - st_magn_spi (necessary for the SPI devices [optional*]);
118
119	  (*) one of these is necessary to do something.
120
121config IIO_ST_MAGN_I2C_3AXIS
122	tristate
123	depends on IIO_ST_MAGN_3AXIS
124	depends on IIO_ST_SENSORS_I2C
125
126config IIO_ST_MAGN_SPI_3AXIS
127	tristate
128	depends on IIO_ST_MAGN_3AXIS
129	depends on IIO_ST_SENSORS_SPI
130
131config SENSORS_HMC5843
132	tristate
133	select IIO_BUFFER
134	select IIO_TRIGGERED_BUFFER
135
136config SENSORS_HMC5843_I2C
137	tristate "Honeywell HMC5843/5883/5883L 3-Axis Magnetometer (I2C)"
138	depends on I2C
139	select SENSORS_HMC5843
140	select REGMAP_I2C
141	help
142	  Say Y here to add support for the Honeywell HMC5843, HMC5883 and
143	  HMC5883L 3-Axis Magnetometer (digital compass).
144
145	  This driver can also be compiled as a set of modules.
146	  If so, these modules will be created:
147	  - hmc5843_core (core functions)
148	  - hmc5843_i2c (support for HMC5843, HMC5883, HMC5883L and HMC5983)
149
150config SENSORS_HMC5843_SPI
151	tristate "Honeywell HMC5983 3-Axis Magnetometer (SPI)"
152	depends on SPI_MASTER
153	select SENSORS_HMC5843
154	select REGMAP_SPI
155	help
156	  Say Y here to add support for the Honeywell HMC5983 3-Axis Magnetometer
157	  (digital compass).
158
159	  This driver can also be compiled as a set of modules.
160	  If so, these modules will be created:
161	  - hmc5843_core (core functions)
162	  - hmc5843_spi (support for HMC5983)
163
164endmenu
165