87 lines
2.1 KiB
Plaintext
87 lines
2.1 KiB
Plaintext
# ST Microelectronics LIS2DW12 3-axis accelerometer driver
|
|
|
|
# Copyright (c) 2019 STMicroelectronics
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig LIS2DW12
|
|
bool "LIS2DW12 I2C/SPI accelerometer sensor driver"
|
|
default y
|
|
depends on DT_HAS_ST_LIS2DW12_ENABLED
|
|
depends on ZEPHYR_HAL_ST_MODULE
|
|
select I2C if $(dt_compat_on_bus,$(DT_COMPAT_ST_LIS2DW12),i2c)
|
|
select SPI if $(dt_compat_on_bus,$(DT_COMPAT_ST_LIS2DW12),spi)
|
|
select HAS_STMEMSC
|
|
select USE_STDC_LIS2DW12
|
|
help
|
|
Enable driver for LIS2DW12 accelerometer sensor driver
|
|
|
|
if LIS2DW12
|
|
|
|
choice LIS2DW12_TRIGGER_MODE
|
|
prompt "Trigger mode"
|
|
help
|
|
Specify the type of triggering to be used by the driver.
|
|
|
|
config LIS2DW12_TRIGGER_NONE
|
|
bool "No trigger"
|
|
|
|
config LIS2DW12_TRIGGER_GLOBAL_THREAD
|
|
bool "Use global thread"
|
|
depends on GPIO
|
|
select LIS2DW12_TRIGGER
|
|
|
|
config LIS2DW12_TRIGGER_OWN_THREAD
|
|
bool "Use own thread"
|
|
depends on GPIO
|
|
select LIS2DW12_TRIGGER
|
|
|
|
endchoice
|
|
|
|
config LIS2DW12_TRIGGER
|
|
bool
|
|
|
|
if LIS2DW12_TRIGGER
|
|
|
|
config LIS2DW12_THREAD_PRIORITY
|
|
int "Thread priority"
|
|
depends on LIS2DW12_TRIGGER_OWN_THREAD
|
|
default 10
|
|
help
|
|
Priority of thread used by the driver to handle interrupts.
|
|
|
|
config LIS2DW12_THREAD_STACK_SIZE
|
|
int "Thread stack size"
|
|
depends on LIS2DW12_TRIGGER_OWN_THREAD
|
|
default 1024
|
|
help
|
|
Stack size of thread used by the driver to handle interrupts.
|
|
|
|
config LIS2DW12_TAP
|
|
bool "Tap and Tap-Tap detection"
|
|
help
|
|
Enable tap (single/double) detection
|
|
|
|
endif # LIS2DW12_TRIGGER
|
|
|
|
config LIS2DW12_SLEEP
|
|
bool "Sleep mode"
|
|
help
|
|
Enable sleep (inactivity) mode with ODR change when detected
|
|
|
|
config LIS2DW12_WAKEUP
|
|
bool "Wakeup detection (via interrupt)"
|
|
help
|
|
Enable the wakeup detection feature.
|
|
The wake-up interrupt signal is generated if a certain number of
|
|
consecutive data exceed the configured threshold (config in DT).
|
|
The threshold is applied to both positive and negative data: for
|
|
a wake-up interrupt generation at least one of the three axes must
|
|
be bigger than the threshold. See ST AN5038 for more details about
|
|
the feature.
|
|
|
|
config LIS2DW12_FREEFALL
|
|
bool "Free Fall detection (via interrupt)"
|
|
help
|
|
Enable freefall detection via interrupt.
|
|
endif # LIS2DW12
|