| # ST Microelectronics LSM6DSO 6-axis IMU sensor driver |
| |
| # Copyright (c) 2019 STMicroelectronics |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menuconfig LSM6DSO |
| bool "LSM6DSO I2C/SPI accelerometer and gyroscope Chip" |
| depends on (I2C && HAS_DTS_I2C) || SPI |
| select HAS_STMEMSC |
| select USE_STDC_LSM6DSO |
| help |
| Enable driver for LSM6DSO accelerometer and gyroscope |
| sensor. |
| |
| if LSM6DSO |
| |
| choice LSM6DSO_TRIGGER_MODE |
| prompt "Trigger mode" |
| help |
| Specify the type of triggering to be used by the driver. |
| |
| config LSM6DSO_TRIGGER_NONE |
| bool "No trigger" |
| |
| config LSM6DSO_TRIGGER_GLOBAL_THREAD |
| bool "Use global thread" |
| depends on GPIO |
| select LSM6DSO_TRIGGER |
| |
| config LSM6DSO_TRIGGER_OWN_THREAD |
| bool "Use own thread" |
| depends on GPIO |
| select LSM6DSO_TRIGGER |
| |
| endchoice |
| |
| config LSM6DSO_TRIGGER |
| bool |
| |
| if LSM6DSO_TRIGGER |
| |
| config LSM6DSO_THREAD_PRIORITY |
| int "Thread priority" |
| depends on LSM6DSO_TRIGGER_OWN_THREAD |
| default 10 |
| help |
| Priority of thread used by the driver to handle interrupts. |
| |
| config LSM6DSO_THREAD_STACK_SIZE |
| int "Thread stack size" |
| depends on LSM6DSO_TRIGGER_OWN_THREAD |
| default 1024 |
| help |
| Stack size of thread used by the driver to handle interrupts. |
| |
| choice LSM6DSO_INT_PIN |
| prompt "Sensor INT pin number" |
| default LSM6DSO_INT_PIN_1 |
| help |
| The number of LSM6DSO int pin used to generate interrupt to cpu. |
| Supported values are int1 or int2 |
| |
| config LSM6DSO_INT_PIN_1 |
| bool "int1" |
| |
| config LSM6DSO_INT_PIN_2 |
| bool "int2" |
| endchoice |
| |
| endif # LSM6DSO_TRIGGER |
| |
| config LSM6DSO_ENABLE_TEMP |
| bool "Enable temperature" |
| help |
| Enable/disable temperature |
| |
| config LSM6DSO_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 LSM6DSO_SENSORHUB |
| |
| config LSM6DSO_EXT_LIS2MDL |
| bool "Enable LIS2MDL as external sensor" |
| default y |
| |
| config LSM6DSO_EXT_LPS22HH |
| bool "Enable LPS22HH as external sensor" |
| default y |
| |
| config LSM6DSO_EXT_HTS221 |
| bool "Enable HTS221 as external sensor" |
| |
| config LSM6DSO_EXT_LPS22HB |
| bool "Enable LPS22HB as external sensor" |
| |
| endif # LSM6DSO_SENSORHUB |
| |
| menu "Attributes" |
| |
| config LSM6DSO_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 LSM6DSO_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 LSM6DSO_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 LSM6DSO_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 # LSM6DSO |