100 lines
2.4 KiB
Plaintext
100 lines
2.4 KiB
Plaintext
# ST Microelectronics LSM6DSV16X 6-axis IMU sensor driver
|
|
|
|
# Copyright (c) 2023 STMicroelectronics
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig LSM6DSV16X
|
|
bool "LSM6DSV16X I2C/SPI accelerometer and gyroscope Chip"
|
|
default y
|
|
depends on DT_HAS_ST_LSM6DSV16X_ENABLED
|
|
depends on ZEPHYR_HAL_ST_MODULE
|
|
select I2C if $(dt_compat_on_bus,$(DT_COMPAT_ST_LSM6DSV16X),i2c)
|
|
select SPI if $(dt_compat_on_bus,$(DT_COMPAT_ST_LSM6DSV16X),spi)
|
|
select HAS_STMEMSC
|
|
select USE_STDC_LSM6DSV16X
|
|
help
|
|
Enable driver for LSM6DSV16X accelerometer and gyroscope
|
|
sensor.
|
|
|
|
if LSM6DSV16X
|
|
|
|
choice LSM6DSV16X_TRIGGER_MODE
|
|
prompt "Trigger mode"
|
|
help
|
|
Specify the type of triggering to be used by the driver.
|
|
|
|
config LSM6DSV16X_TRIGGER_NONE
|
|
bool "No trigger"
|
|
|
|
config LSM6DSV16X_TRIGGER_GLOBAL_THREAD
|
|
bool "Use global thread"
|
|
depends on GPIO
|
|
depends on $(dt_compat_any_has_prop,$(DT_COMPAT_ST_LSM6DSV16X),int1-gpios) ||\
|
|
$(dt_compat_any_has_prop,$(DT_COMPAT_ST_LSM6DSV16X),int2-gpios)
|
|
select LSM6DSV16X_TRIGGER
|
|
|
|
config LSM6DSV16X_TRIGGER_OWN_THREAD
|
|
bool "Use own thread"
|
|
depends on GPIO
|
|
depends on $(dt_compat_any_has_prop,$(DT_COMPAT_ST_LSM6DSV16X),int1-gpios) ||\
|
|
$(dt_compat_any_has_prop,$(DT_COMPAT_ST_LSM6DSV16X),int2-gpios)
|
|
select LSM6DSV16X_TRIGGER
|
|
|
|
endchoice
|
|
|
|
config LSM6DSV16X_TRIGGER
|
|
bool
|
|
|
|
if LSM6DSV16X_TRIGGER
|
|
|
|
config LSM6DSV16X_THREAD_PRIORITY
|
|
int "Thread priority"
|
|
depends on LSM6DSV16X_TRIGGER_OWN_THREAD
|
|
default 10
|
|
help
|
|
Priority of thread used by the driver to handle interrupts.
|
|
|
|
config LSM6DSV16X_THREAD_STACK_SIZE
|
|
int "Thread stack size"
|
|
depends on LSM6DSV16X_TRIGGER_OWN_THREAD
|
|
default 1024
|
|
help
|
|
Stack size of thread used by the driver to handle interrupts.
|
|
|
|
endif # LSM6DSV16X_TRIGGER
|
|
|
|
config LSM6DSV16X_ENABLE_TEMP
|
|
bool "Temperature"
|
|
help
|
|
Enable/disable temperature
|
|
|
|
config LSM6DSV16X_SENSORHUB
|
|
bool "I2C sensorhub feature"
|
|
help
|
|
Enable/disable internal sensorhub. You can enable
|
|
a maximum of two external sensors (if more than two are enabled
|
|
the system would enumerate only the first two found)
|
|
|
|
if LSM6DSV16X_SENSORHUB
|
|
|
|
config LSM6DSV16X_EXT_LIS2MDL
|
|
bool "LIS2MDL as external sensor"
|
|
default y
|
|
|
|
config LSM6DSV16X_EXT_LPS22HH
|
|
bool "LPS22HH as external sensor"
|
|
|
|
config LSM6DSV16X_EXT_HTS221
|
|
bool "HTS221 as external sensor"
|
|
|
|
config LSM6DSV16X_EXT_LPS22HB
|
|
bool "LPS22HB as external sensor"
|
|
|
|
config LSM6DSV16X_EXT_LPS22DF
|
|
bool "LPS22DF as external sensor"
|
|
default y
|
|
|
|
endif # LSM6DSV16X_SENSORHUB
|
|
|
|
endif # LSM6DSV16X
|