# ICM42670 Six-Axis Motion Tracking device configuration options
#
# Copyright (c) 2022 Esco Medical ApS
# Copyright (c) 2020 TDK Invensense
#
# SPDX-License-Identifier: Apache-2.0

menuconfig ICM42670
	bool "ICM42670 Six-Axis Motion Tracking Device"
	default y
	depends on DT_HAS_INVENSENSE_ICM42670_ENABLED
	depends on SPI
	help
	  Enable driver for ICM42670 SPI-based six-axis motion tracking device.

if ICM42670

choice ICM42670_TRIGGER_MODE
	prompt "Trigger mode"
	default ICM42670_TRIGGER_NONE
	help
	  Specify the type of triggering to be used by the driver.

config ICM42670_TRIGGER_NONE
	bool "No trigger"

config ICM42670_TRIGGER_GLOBAL_THREAD
	bool "Use global thread"
	depends on GPIO
	select ICM42670_TRIGGER

config ICM42670_TRIGGER_OWN_THREAD
	bool "Use own thread"
	depends on GPIO
	select ICM42670_TRIGGER

endchoice

config ICM42670_TRIGGER
	bool

config ICM42670_THREAD_PRIORITY
	int "Thread priority"
	depends on ICM42670_TRIGGER_OWN_THREAD
	default 10
	help
	  Priority of thread used by the driver to handle interrupts.

config ICM42670_THREAD_STACK_SIZE
	int "Thread stack size"
	depends on ICM42670_TRIGGER_OWN_THREAD
	default 1024
	help
	  Stack size of thread used by the driver to handle interrupts.

endif # ICM42670
