/* * Copyright (c) 2023 deveritec GmbH * * SPDX-License-Identifier: Apache-2.0 */ #ifndef ZEPHYR_INCLUDE_DT_BINDINGS_TMAG5273_H_ #define ZEPHYR_INCLUDE_DT_BINDINGS_TMAG5273_H_ #include /* Operating Mode */ #define TMAG5273_DT_OPER_MODE_CONTINUOUS 0 #define TMAG5273_DT_OPER_MODE_STANDBY 1 /* Axis */ #define TMAG5273_DT_AXIS_NONE 0x0 #define TMAG5273_DT_AXIS_X 0x1 #define TMAG5273_DT_AXIS_Y 0x2 #define TMAG5273_DT_AXIS_Z 0x4 #define TMAG5273_DT_AXIS_XY (TMAG5273_DT_AXIS_X | TMAG5273_DT_AXIS_Y) #define TMAG5273_DT_AXIS_XZ (TMAG5273_DT_AXIS_X | TMAG5273_DT_AXIS_Z) #define TMAG5273_DT_AXIS_YZ (TMAG5273_DT_AXIS_Y | TMAG5273_DT_AXIS_Z) #define TMAG5273_DT_AXIS_XYZ (TMAG5273_DT_AXIS_X | TMAG5273_DT_AXIS_Y | TMAG5273_DT_AXIS_Z) #define TMAG5273_DT_AXIS_XYX 0x8 #define TMAG5273_DT_AXIS_YXY 0x9 #define TMAG5273_DT_AXIS_YZY 0xA #define TMAG5273_DT_AXIS_XZX 0xB /* Range */ #define TMAG5273_DT_AXIS_RANGE_LOW 0 #define TMAG5273_DT_AXIS_RANGE_HIGH 1 #define TMAG5273_DT_AXIS_RANGE_RUNTIME 2 /* Interrupt-Mode */ #define TMAG5273_DT_INT_THROUGH_INT 0 #define TMAG5273_DT_INT_THROUGH_INT_EXC_I2C 1 #define TMAG5273_DT_INT_THROUGH_SCL 2 #define TMAG5273_DT_INT_THROUGH_SCL_EXC_I2C 3 /* Threshold crossings */ #define TMAG5273_DT_THRX_COUNT_1 0 #define TMAG5273_DT_THRX_COUNT_4 1 /* Threshold direction */ #define TMAG5273_DT_THRX_ABOVE 0 #define TMAG5273_DT_THRX_BELOW 1 #define TMAG5273_DT_THRX_OUTSIDE 2 #define TMAG5273_DT_THRX_INSIDE 3 /* Temperature coefficient */ #define TMAG5273_DT_TEMP_COEFF_NONE 0 #define TMAG5273_DT_TEMP_COEFF_NDBFE 1 #define TMAG5273_DT_TEMP_COEFF_CERAMIC 2 /* Angle/Magnitude calculation */ #define TMAG5273_DT_ANGLE_MAG_NONE 0 #define TMAG5273_DT_ANGLE_MAG_XY 1 #define TMAG5273_DT_ANGLE_MAG_YZ 2 #define TMAG5273_DT_ANGLE_MAG_XZ 3 #define TMAG5273_DT_ANGLE_MAG_RUNTIME 4 /* Channel Magnitude Gain Correction */ #define TMAG5273_DT_CORRECTION_CH_1 0 #define TMAG5273_DT_CORRECTION_CH_2 1 /* Averaging */ #define TMAG5273_DT_AVERAGING_NONE 0 #define TMAG5273_DT_AVERAGING_2X 1 #define TMAG5273_DT_AVERAGING_4X 2 #define TMAG5273_DT_AVERAGING_8X 3 #define TMAG5273_DT_AVERAGING_16X 4 #define TMAG5273_DT_AVERAGING_32X 5 /* Sleeptime */ #define TMAG5273_DT_SLEEPTIME_1MS 0 #define TMAG5273_DT_SLEEPTIME_5MS 1 #define TMAG5273_DT_SLEEPTIME_10MS 2 #define TMAG5273_DT_SLEEPTIME_15MS 3 #define TMAG5273_DT_SLEEPTIME_20MS 4 #define TMAG5273_DT_SLEEPTIME_30MS 5 #define TMAG5273_DT_SLEEPTIME_50MS 6 #define TMAG5273_DT_SLEEPTIME_100MS 7 #define TMAG5273_DT_SLEEPTIME_500MS 8 #define TMAG5273_DT_SLEEPTIME_1000MS 9 #define TMAG5273_DT_SLEEPTIME_2000MS 10 #define TMAG5273_DT_SLEEPTIME_5000MS 11 #define TMAG5273_DT_SLEEPTIME_20000MS 12 #endif /* ZEPHYR_INCLUDE_DT_BINDINGS_TMAG5273_H_ */