1- # ICM42670 Six-Axis Motion Tracking device configuration options
1+ # ICM42670-P ICM42670-S Six-Axis Motion Tracking device configuration options
22#
3+ # Copyright (c) 2024 TDK Invensense
34# Copyright (c) 2022 Esco Medical ApS
45# Copyright (c) 2020 TDK Invensense
56#
67# SPDX-License-Identifier: Apache-2.0
8+ config TDK_APEX
9+ bool "TDK APEX features"
710
811menuconfig ICM42670
9- bool "ICM42670 Six-Axis Motion Tracking Device"
12+ bool "ICM42670-P/-S Six-Axis Motion Tracking Device"
1013 default y
11- depends on DT_HAS_INVENSENSE_ICM42670_ENABLED
12- select SPI if $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670),spi)
13- select I2C if $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670),i2c)
14+ depends on DT_HAS_INVENSENSE_ICM42670P_ENABLED \
15+ || DT_HAS_INVENSENSE_ICM42670S_ENABLED
16+ depends on ZEPHYR_HAL_TDK_MODULE
17+ select SPI if $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670P),spi) \
18+ || $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670S),spi)
19+ select I2C if $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670P),i2c) \
20+ || $(dt_compat_on_bus,$(DT_COMPAT_INVENSENSE_ICM42670S),i2c)
21+ select TDK_APEX if $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670p),apex,pedometer) \
22+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670p),apex,tilt) \
23+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670p),apex,smd) \
24+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670p),apex,wom) \
25+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670s),apex,pedometer) \
26+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670s),apex,tilt) \
27+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670s),apex,smd) \
28+ || $(dt_node_str_prop_equals,$(dt_nodelabel_path,icm42670s),apex,wom)
1429 help
15- Enable driver for ICM42670 SPI-based six-axis motion tracking device.
30+ Enable driver for ICM42670 SPI-based or I2C-based Six-Axis Motion Tracking device.
1631
1732if ICM42670
1833
@@ -28,13 +43,15 @@ config ICM42670_TRIGGER_NONE
2843config ICM42670_TRIGGER_GLOBAL_THREAD
2944 bool "Use global thread"
3045 depends on GPIO
31- depends on $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670),int-gpios)
46+ depends on $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670P),int-gpios) \
47+ || $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670S),int-gpios)
3248 select ICM42670_TRIGGER
3349
3450config ICM42670_TRIGGER_OWN_THREAD
3551 bool "Use own thread"
3652 depends on GPIO
37- depends on $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670),int-gpios)
53+ depends on $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670P),int-gpios) \
54+ || $(dt_compat_any_has_prop,$(DT_COMPAT_INVENSENSE_ICM42670S),int-gpios)
3855 select ICM42670_TRIGGER
3956
4057endchoice
0 commit comments