1# Copyright (c) 2016 Intel Corporation
2# SPDX-License-Identifier: Apache-2.0
3
4menuconfig LIS3MDL
5	bool "LIS3MDL magnetometer"
6	depends on I2C
7	help
8	  Enable driver for LIS3MDL I2C-based magnetometer.
9
10if LIS3MDL
11
12choice LIS3MDL_TRIGGER_MODE
13	prompt "Trigger mode"
14	default LIS3MDL_TRIGGER_GLOBAL_THREAD
15	help
16	  Specify the type of triggering to be used by the driver.
17
18config LIS3MDL_TRIGGER_NONE
19	bool "No trigger"
20
21config LIS3MDL_TRIGGER_GLOBAL_THREAD
22	bool "Use global thread"
23	depends on GPIO
24	select LIS3MDL_TRIGGER
25
26config LIS3MDL_TRIGGER_OWN_THREAD
27	bool "Use own thread"
28	depends on GPIO
29	select LIS3MDL_TRIGGER
30
31endchoice # LIS3MDL_TRIGGER_MODE
32
33config LIS3MDL_TRIGGER
34	bool
35
36config LIS3MDL_THREAD_PRIORITY
37	int "Thread priority"
38	depends on LIS3MDL_TRIGGER_OWN_THREAD
39	default 10
40	help
41	  Priority of thread used by the driver to handle interrupts.
42
43config LIS3MDL_THREAD_STACK_SIZE
44	int "Thread stack size"
45	depends on LIS3MDL_TRIGGER_OWN_THREAD
46	default 1024
47	help
48	  Stack size of thread used by the driver to handle interrupts.
49
50config LIS3MDL_ODR
51	string "Output data rate"
52	default "0.625"
53	help
54	  Magnetometer output data rate expressed in samples per second.
55	  Data rates supported by the chip are 0.625, 1.25, 2.5, 5, 10, 20,
56	  40, 80, 155, 300, 560 and 1000.
57
58config LIS3MDL_FS
59	int "Full-scale range"
60	default 4
61	help
62	  Magnetometer full-scale range.
63	  An X value for the config represents a range of +/- X gauss. Valid
64	  values are 4, 8, 12 and 16.
65
66endif # LIS3MDL
67