Line data Source code
1 1 : /*
2 : * Copyright (c) 2016 Intel Corporation
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : /**
8 : * @file
9 : * @brief Header file for extended sensor API of TMAG5273 sensor
10 : */
11 :
12 : #ifndef ZEPHYR_INCLUDE_DRIVERS_SENSOR_TMAG5273_H_
13 : #define ZEPHYR_INCLUDE_DRIVERS_SENSOR_TMAG5273_H_
14 :
15 : /**
16 : * @brief Texas Instruments TMAG5273 Low-Power Linear 3D Hall-Effect Sensor
17 : * @defgroup tmag5273_interface TMAG5273
18 : * @ingroup sensor_interface_ext
19 : * @{
20 : */
21 :
22 : #ifdef __cplusplus
23 : extern "C" {
24 : #endif
25 :
26 : #include <zephyr/drivers/sensor.h>
27 :
28 : /* --- Additional TMAG5273 definitions */
29 :
30 : /** Additional channels supported by the TMAG5273 */
31 1 : enum tmag5273_sensor_channel {
32 : /**
33 : * Magnitude measurement result between two axis in Gs.
34 : */
35 : TMAG5273_CHAN_MAGNITUDE = SENSOR_CHAN_PRIV_START,
36 :
37 : /**
38 : * Magnitude measurement MSB as returned by the sensor.
39 : */
40 : TMAG5273_CHAN_MAGNITUDE_MSB,
41 :
42 : /**
43 : * Angle result in deg, magnitude result in Gs and magnitude MSB between two axis.
44 : */
45 : TMAG5273_CHAN_ANGLE_MAGNITUDE,
46 : };
47 :
48 : /** Additional attributes supported by the TMAG5273 */
49 1 : enum tmag5273_attribute {
50 : /**
51 : * Define axis relation measurements.
52 : * Supported values are:
53 : * - \c TMAG5273_DT_ANGLE_MAG_NONE (0)
54 : * - \c TMAG5273_DT_ANGLE_MAG_XY (1)
55 : * - \c TMAG5273_DT_ANGLE_MAG_YZ (2)
56 : * - \c TMAG5273_DT_ANGLE_MAG_XZ (3)
57 : *
58 : * Only available if calculation source can be changed during runtime.
59 : */
60 : TMAG5273_ATTR_ANGLE_MAG_AXIS = SENSOR_ATTR_PRIV_START,
61 : };
62 :
63 : /**
64 : * @name Angle calculation modes
65 : * @{
66 : */
67 1 : #define TMAG5273_ANGLE_CALC_NONE 0 /**< No angle calculation */
68 1 : #define TMAG5273_ANGLE_CALC_XY 1 /**< X first, Y second */
69 1 : #define TMAG5273_ANGLE_CALC_YZ 2 /**< Y first, Z second */
70 1 : #define TMAG5273_ANGLE_CALC_XZ 3 /**< X first, Z second */
71 : /** @} */
72 :
73 : #ifdef __cplusplus
74 : }
75 : #endif
76 :
77 : /**
78 : * @}
79 : */
80 :
81 : #endif /* ZEPHYR_INCLUDE_DRIVERS_SENSOR_TMAG5273_H_ */
|