1e359a292SAlexandru Ardelean# SPDX-License-Identifier: GPL-2.0
2e359a292SAlexandru Ardelean%YAML 1.2
3e359a292SAlexandru Ardelean---
4e1ff7390SRob Herring$id: http://devicetree.org/schemas/iio/accel/adi,adxl345.yaml#
5e359a292SAlexandru Ardelean$schema: http://devicetree.org/meta-schemas/core.yaml#
6e359a292SAlexandru Ardelean
7e359a292SAlexandru Ardeleantitle: Analog Devices ADXL345/ADXL375 3-Axis Digital Accelerometers
8e359a292SAlexandru Ardelean
9e359a292SAlexandru Ardeleanmaintainers:
10e359a292SAlexandru Ardelean  - Michael Hennerich <michael.hennerich@analog.com>
11e359a292SAlexandru Ardelean
12e359a292SAlexandru Ardeleandescription: |
13e359a292SAlexandru Ardelean  Analog Devices ADXL345/ADXL375 3-Axis Digital Accelerometers that supports
14e359a292SAlexandru Ardelean  both I2C & SPI interfaces.
155a6b56deSAlexander A. Klimov    https://www.analog.com/en/products/mems/accelerometers/adxl345.html
165a6b56deSAlexander A. Klimov    https://www.analog.com/en/products/sensors-mems/accelerometers/adxl375.html
17e359a292SAlexandru Ardelean
18e359a292SAlexandru Ardeleanproperties:
19e359a292SAlexandru Ardelean  compatible:
2004bd645aSRob Herring    oneOf:
2104bd645aSRob Herring      - items:
2204bd645aSRob Herring          - const: adi,adxl346
2304bd645aSRob Herring          - const: adi,adxl345
2404bd645aSRob Herring      - enum:
25e359a292SAlexandru Ardelean          - adi,adxl345
26e359a292SAlexandru Ardelean          - adi,adxl375
27e359a292SAlexandru Ardelean
28e359a292SAlexandru Ardelean  reg:
29e359a292SAlexandru Ardelean    maxItems: 1
30e359a292SAlexandru Ardelean
31e359a292SAlexandru Ardelean  spi-cpha: true
32e359a292SAlexandru Ardelean
33e359a292SAlexandru Ardelean  spi-cpol: true
34e359a292SAlexandru Ardelean
354828556dSRob Herring  spi-max-frequency: true
364828556dSRob Herring
37e359a292SAlexandru Ardelean  interrupts:
38e359a292SAlexandru Ardelean    maxItems: 1
39e359a292SAlexandru Ardelean
40e359a292SAlexandru Ardeleanrequired:
41e359a292SAlexandru Ardelean  - compatible
42e359a292SAlexandru Ardelean  - reg
43e359a292SAlexandru Ardelean  - interrupts
44e359a292SAlexandru Ardelean
454828556dSRob HerringadditionalProperties: false
466fdc6e23SRob Herring
47e359a292SAlexandru Ardeleanexamples:
48e359a292SAlexandru Ardelean  - |
49e359a292SAlexandru Ardelean    #include <dt-bindings/gpio/gpio.h>
50e359a292SAlexandru Ardelean    #include <dt-bindings/interrupt-controller/irq.h>
51e359a292SAlexandru Ardelean    i2c0 {
52e359a292SAlexandru Ardelean        #address-cells = <1>;
53e359a292SAlexandru Ardelean        #size-cells = <0>;
54e359a292SAlexandru Ardelean
55e359a292SAlexandru Ardelean        /* Example for a I2C device node */
56e359a292SAlexandru Ardelean        accelerometer@2a {
57e359a292SAlexandru Ardelean            compatible = "adi,adxl345";
58*4e1c59f3SMarek Vasut            reg = <0x2a>;
59e359a292SAlexandru Ardelean            interrupt-parent = <&gpio0>;
60e359a292SAlexandru Ardelean            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
61e359a292SAlexandru Ardelean        };
62e359a292SAlexandru Ardelean    };
63e359a292SAlexandru Ardelean  - |
64e359a292SAlexandru Ardelean    #include <dt-bindings/gpio/gpio.h>
65e359a292SAlexandru Ardelean    #include <dt-bindings/interrupt-controller/irq.h>
66e359a292SAlexandru Ardelean    spi0 {
67e359a292SAlexandru Ardelean        #address-cells = <1>;
68e359a292SAlexandru Ardelean        #size-cells = <0>;
69e359a292SAlexandru Ardelean
70e359a292SAlexandru Ardelean        /* Example for a SPI device node */
71e359a292SAlexandru Ardelean        accelerometer@0 {
72e359a292SAlexandru Ardelean            compatible = "adi,adxl345";
73e359a292SAlexandru Ardelean            reg = <0>;
74e359a292SAlexandru Ardelean            spi-max-frequency = <5000000>;
75e359a292SAlexandru Ardelean            spi-cpol;
76e359a292SAlexandru Ardelean            spi-cpha;
77e359a292SAlexandru Ardelean            interrupt-parent = <&gpio0>;
78e359a292SAlexandru Ardelean            interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
79e359a292SAlexandru Ardelean        };
80e359a292SAlexandru Ardelean    };
81