blob: d22ac3c97039fb50f3817fc2bfcbc0ea78a94b1b [file] [log] [blame]
# ST Microelectronics ISM330DHCX 6-axis IMU sensor driver
# Copyright (c) 2020 STMicroelectronics
# SPDX-License-Identifier: Apache-2.0
menuconfig ISM330DHCX
bool "ISM330DHCX I2C/SPI accelerometer and gyroscope Chip"
depends on I2C || SPI
select HAS_STMEMSC
select USE_STDC_ISM330DHCX
help
Enable driver for ISM330DHCX accelerometer and gyroscope
sensor.
if ISM330DHCX
choice ISM330DHCX_TRIGGER_MODE
prompt "Trigger mode"
help
Specify the type of triggering to be used by the driver.
config ISM330DHCX_TRIGGER_NONE
bool "No trigger"
config ISM330DHCX_TRIGGER_GLOBAL_THREAD
bool "Use global thread"
depends on GPIO
select ISM330DHCX_TRIGGER
config ISM330DHCX_TRIGGER_OWN_THREAD
bool "Use own thread"
depends on GPIO
select ISM330DHCX_TRIGGER
endchoice
config ISM330DHCX_TRIGGER
bool
if ISM330DHCX_TRIGGER
config ISM330DHCX_THREAD_PRIORITY
int "Thread priority"
depends on ISM330DHCX_TRIGGER_OWN_THREAD
default 10
help
Priority of thread used by the driver to handle interrupts.
config ISM330DHCX_THREAD_STACK_SIZE
int "Thread stack size"
depends on ISM330DHCX_TRIGGER_OWN_THREAD
default 1024
help
Stack size of thread used by the driver to handle interrupts.
choice ISM330DHCX_INT_PIN
prompt "Sensor INT pin number"
default ISM330DHCX_INT_PIN_1
help
The number of ISM330DHCX int pin used to generate interrupt to cpu.
Supported values are int1 or int2
config ISM330DHCX_INT_PIN_1
bool "int1"
config ISM330DHCX_INT_PIN_2
bool "int2"
endchoice
endif # ISM330DHCX_TRIGGER
config ISM330DHCX_ENABLE_TEMP
bool "Enable temperature"
help
Enable/disable temperature
config ISM330DHCX_SENSORHUB
bool "Enable 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 ISM330DHCX_SENSORHUB
config ISM330DHCX_EXT_LIS2MDL
bool "Enable LIS2MDL as external sensor"
config ISM330DHCX_EXT_IIS2MDC
bool "Enable IIS2MDC as external sensor"
config ISM330DHCX_EXT_LPS22HH
bool "Enable LPS22HH as external sensor"
config ISM330DHCX_EXT_HTS221
bool "Enable HTS221 as external sensor"
config ISM330DHCX_EXT_LPS22HB
bool "Enable LPS22HB as external sensor"
endif # ISM330DHCX_SENSORHUB
menu "Attributes"
config ISM330DHCX_GYRO_FS
int "Gyroscope full-scale range"
default 0
help
Specify the default gyroscope full-scale range.
An X value for the config represents a range of +/- X degree per
second. Valid values are:
0: Full Scale selected at runtime
125: +/- 125dps
250: +/- 250dps
500: +/- 500dps
1000: +/- 1000dps
2000: +/- 2000dps
config ISM330DHCX_GYRO_ODR
int "Gyroscope Output data rate frequency"
range 0 10
default 0
help
Specify the default accelerometer output data rate expressed in
samples per second (Hz).
0: ODR selected at runtime
1: 12.5Hz
2: 26Hz
3: 52Hz
4: 104Hz
5: 208Hz
6: 416Hz
7: 833Hz
8: 1660Hz
9: 3330Hz
10: 6660Hz
config ISM330DHCX_ACCEL_FS
int "Accelerometer full-scale range"
default 0
help
Specify the default accelerometer full-scale range.
An X value for the config represents a range of +/- X G. Valid values
are:
0: Full Scale selected at runtime
2: +/- 2g
4: +/- 4g
8: +/- 8g
16: +/- 16g
config ISM330DHCX_ACCEL_ODR
int "Accelerometer Output data rate frequency"
range 0 10
default 0
help
Specify the default accelerometer output data rate expressed in
samples per second (Hz).
0: ODR selected at runtime
1: 12.5Hz
2: 26Hz
3: 52Hz
4: 104Hz
5: 208Hz
6: 416Hz
7: 833Hz
8: 1660Hz
9: 3330Hz
10: 6660Hz
endmenu
endif # ISM330DHCX