1# ICM42688-P Six-Axis Motion Tracking device configuration options 2# 3# Copyright (c) 2022 Intel Corporation 4# 5# SPDX-License-Identifier: Apache-2.0 6 7menuconfig ICM42688 8 bool "ICM42688 Six-Axis Motion Tracking Device" 9 default y 10 depends on DT_HAS_INVENSENSE_ICM42688_ENABLED 11 select SPI 12 help 13 Enable driver for ICM42688 SPI-based six-axis motion tracking device. 14 15if ICM42688 16 17config EMUL_ICM42688 18 bool "Emulator for the ICM42688" 19 default y 20 depends on EMUL 21 help 22 Enable the hardware emulator for the ICM42688. Doing so allows exercising 23 sensor APIs for this IMU in native_sim and qemu. 24 25config ICM42688_DECODER 26 bool "ICM42688 decoder logic" 27 default y 28 select SENSOR_ASYNC_API 29 help 30 Compile the ICM42688 decoder API which allows decoding raw data returned 31 from the sensor. 32 33choice 34 prompt "Trigger mode" 35 default ICM42688_TRIGGER_NONE if ICM42688_STREAM 36 default ICM42688_TRIGGER_GLOBAL_THREAD 37 help 38 Specify the type of triggering to be used by the driver 39 40config ICM42688_TRIGGER_NONE 41 bool "No trigger" 42 43config ICM42688_TRIGGER_GLOBAL_THREAD 44 bool "Use global thread" 45 select ICM42688_TRIGGER 46 47config ICM42688_TRIGGER_OWN_THREAD 48 bool "Use own thread" 49 select ICM42688_TRIGGER 50 51endchoice 52 53config ICM42688_STREAM 54 bool "Use hardware FIFO to stream data" 55 select ICM42688_TRIGGER 56 default y 57 depends on SPI_RTIO 58 depends on SENSOR_ASYNC_API 59 help 60 Use this config option to enable streaming sensor data via RTIO subsystem. 61 62config ICM42688_TRIGGER 63 bool 64 65config ICM42688_THREAD_PRIORITY 66 int "Own thread priority" 67 depends on ICM42688_TRIGGER_OWN_THREAD 68 default 10 69 help 70 The priority of the thread used for handling interrupts. 71 72config ICM42688_THREAD_STACK_SIZE 73 int "Own thread stack size" 74 depends on ICM42688_TRIGGER_OWN_THREAD 75 default 1024 76 help 77 The thread stack size. 78 79endif # ICM42688 80