1# SPDX-License-Identifier: Apache-2.0
2# Copyright (c) 2023 Linumiz
3
4description: |
5    MC3419 3-axis accel sensor
6
7    Example:
8    #include <zephyr/dt-bindings/sensor/mc3419.h>
9
10    mc3419: mc3419@0 {
11      ...
12
13      lpf-fc-sel = <MC3419_LPF_DISABLE>;
14      decimation-rate = <MC3419_DECIMATE_IDR_BY_1>;
15    };
16
17compatible: "memsic,mc3419"
18
19include: [sensor-device.yaml, i2c-device.yaml]
20
21properties:
22  int-gpios:
23    type: phandle-array
24    description: |
25      This property specifies the connection for INT, this pin
26      defaults to active low when sample produce interrupt.
27
28  int-pin2:
29    type: boolean
30    description: |
31      This property is used for interrupt routing.The sensor
32      has two interrupt pins.By default the interrupt are routed
33      to interrupt pin 1, by enabled this property interrupt are
34      routed to interrupt pin 2.
35
36  lpf-fc-sel:
37    type: int
38    default: 0
39    enum: [0, 9, 10, 11, 13]
40    description: |
41      Enable and select LPF cutoff frequency for a given IDR (Input Data Rate).
42      Possible values are listed below. Either use Int value or Macro Name in node definition.
43      +-----------+-------------------------------------+
44      | int value | Macro Name                          |
45      +-----------+-------------------------------------+
46      | 0         | MC3419_LPF_DISABLE                  |
47      | 9         | MC3419_LPF_EN_WITH_IDR_BY_4p255_FC  |
48      | 10        | MC3419_LPF_EN_WITH_IDR_BY_6_FC      |
49      | 11        | MC3419_LPF_EN_WITH_IDR_BY_12_FC     |
50      | 13        | MC3419_LPF_EN_WITH_IDR_BY_16_FC     |
51      +-----------+-------------------------------------+
52      Default is LPF disabled (reset value of the register).
53
54  decimation-rate:
55    type: int
56    default: 0
57    enum: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
58    description: |
59      This helps in producing slower Output Data Rate (ODR) from given Input Data Rate (IDR).
60      Possible values are listed below. Either use Int value or Macro Name in node definition.
61      +-----------+-------------------------------+
62      | Int value | Macro Name                    |
63      +-----------+-------------------------------+
64      | 0         | MC3419_DECIMATE_IDR_BY_1      |
65      | 1         | MC3419_DECIMATE_IDR_BY_2      |
66      | 2         | MC3419_DECIMATE_IDR_BY_4      |
67      | 3         | MC3419_DECIMATE_IDR_BY_5      |
68      | 4         | MC3419_DECIMATE_IDR_BY_8      |
69      | 5         | MC3419_DECIMATE_IDR_BY_10     |
70      | 6         | MC3419_DECIMATE_IDR_BY_16     |
71      | 7         | MC3419_DECIMATE_IDR_BY_20     |
72      | 8         | MC3419_DECIMATE_IDR_BY_40     |
73      | 9         | MC3419_DECIMATE_IDR_BY_67     |
74      | 10        | MC3419_DECIMATE_IDR_BY_80     |
75      | 11        | MC3419_DECIMATE_IDR_BY_100    |
76      | 12        | MC3419_DECIMATE_IDR_BY_200    |
77      | 13        | MC3419_DECIMATE_IDR_BY_250    |
78      | 14        | MC3419_DECIMATE_IDR_BY_500    |
79      | 15        | MC3419_DECIMATE_IDR_BY_1000   |
80      +-----------+-------------------------------+
81      Default is Decimation 0 (reset value of the register).
82