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