Boot Linux faster!

Check our new training course

Boot Linux faster!

Check our new training course
and Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

#
# Copyright (c) 2016 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

menuconfig LIS3MDL
	bool
	prompt "LIS3MDL magnetometer"
	depends on SENSOR && I2C
	default n
	help
	  Enable driver for LIS3MDL I2C-based magnetometer.

config LIS3MDL_SYS_LOG_LEVEL
	int "LIS3MDL Log level"
	depends on SYS_LOG && LIS3MDL
	default 0
	range 0 4
	help
	  Sets log level for LIS3MDL driver.
	  Levels are:
	  0 OFF, do not write
	  1 ERROR, only write SYS_LOG_ERR
	  2 WARNING, write SYS_LOG_WRN in addition to previous level
	  3 INFO, write SYS_LOG_INF in addition to previous levels
	  4 DEBUG, write SYS_LOG_DBG in addition to previous levels

config LIS3MDL_NAME
	string
	prompt "Driver name"
	default "LIS3MDL"
	depends on LIS3MDL
	help
	  Device name with which the LIS3MDL sensor is identified.

config LIS3MDL_INIT_PRIORITY
	int
	prompt "Init priority"
	depends on LIS3MDL
	default 70
	help
	  Device driver initialization priority.

config LIS3MDL_I2C_ADDR
	hex
	prompt "I2C address"
	depends on LIS3MDL
	default "0x1C"
	help
	  I2C address of the LIS3MDL sensor.
	  Use 0x1C if the SA1 pin is pulled to GND or 0x1E if the SA1 pin
	  is pulled to VDD.

config LIS3MDL_I2C_MASTER_DEV_NAME
	string
	prompt "I2C master where LIS3MDL is connected"
	depends on LIS3MDL
	default "I2C_0"
	help
	  Specify the device name of the I2C master device to which LIS3MDL is
	  connected.

choice
	prompt "Trigger mode"
	depends on LIS3MDL
	default LIS3MDL_TRIGGER_GLOBAL_FIBER
	help
	  Specify the type of triggering to be used by the driver.

config LIS3MDL_TRIGGER_NONE
	bool
	prompt "No trigger"

config LIS3MDL_TRIGGER_GLOBAL_FIBER
	bool
	prompt "Use global fiber"
	depends on GPIO && SYSTEM_WORKQUEUE
	select LIS3MDL_TRIGGER

config LIS3MDL_TRIGGER_OWN_FIBER
	bool
	prompt "Use own fiber"
	depends on GPIO
	select LIS3MDL_TRIGGER

endchoice

config LIS3MDL_TRIGGER
	bool
	depends on LIS3MDL

config LIS3MDL_GPIO_DEV_NAME
	string
	prompt "GPIO device"
	default "GPIO_0"
	depends on LIS3MDL && LIS3MDL_TRIGGER
	help
	  The device name of the GPIO device to which the LIS3MDL interrupt pins
	  are connected.

config LIS3MDL_GPIO_PIN_NUM
	int
	prompt "Interrupt GPIO pin number"
	default 0
	depends on LIS3MDL && LIS3MDL_TRIGGER
	help
	  The number of the GPIO on which the interrupt signal from the LIS3MDL
	  chip will be received.

config LIS3MDL_FIBER_PRIORITY
	int
	prompt "Fiber priority"
	depends on LIS3MDL && LIS3MDL_TRIGGER_OWN_FIBER
	default 10
	help
	  Priority of fiber used by the driver to handle interrupts.

config LIS3MDL_FIBER_STACK_SIZE
	int
	prompt "Fiber stack size"
	depends on LIS3MDL && LIS3MDL_TRIGGER_OWN_FIBER
	default 1024
	help
	  Stack size of fiber used by the driver to handle interrupts.

config LIS3MDL_ODR
	string
	prompt "Output data rate"
	depends on LIS3MDL
	default "0.625"
	help
	  Magnetometer output data rate expressed in samples per second.
	  Data rates supported by the chip are 0.625, 1.25, 2.5, 5, 10, 20,
	  40, 80, 155, 300, 560 and 1000.

config LIS3MDL_FS
	int
	prompt "Full-scale range"
	depends on LIS3MDL
	default 4
	help
	  Magnetometer full-scale range.
	  An X value for the config represents a range of +/- X gauss. Valid
	  values are 4, 8, 12 and 16.