1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/iio/accel/adi,adxl355.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Analog Devices ADXL355 and ADXL359 3-Axis, Low noise MEMS Accelerometers
8
9maintainers:
10  - Puranjay Mohan <puranjay12@gmail.com>
11
12description: |
13  Analog Devices ADXL355 and ADXL359 3-Axis, Low noise MEMS Accelerometers that
14  support both I2C & SPI interfaces
15    https://www.analog.com/en/products/adxl355.html
16    https://www.analog.com/en/products/adxl359.html
17
18properties:
19  compatible:
20    enum:
21      - adi,adxl355
22      - adi,adxl359
23
24  reg:
25    maxItems: 1
26
27  interrupts:
28    minItems: 1
29    maxItems: 3
30    description: |
31      Type for DRDY should be IRQ_TYPE_EDGE_RISING.
32      Three configurable interrupt lines exist.
33
34  interrupt-names:
35    description: Specify which interrupt line is in use.
36    items:
37      enum:
38        - INT1
39        - INT2
40        - DRDY
41    minItems: 1
42    maxItems: 3
43
44  vdd-supply:
45    description: Regulator that provides power to the sensor
46
47  vddio-supply:
48    description: Regulator that provides power to the bus
49
50required:
51  - compatible
52  - reg
53
54allOf:
55  - $ref: /schemas/spi/spi-peripheral-props.yaml#
56
57unevaluatedProperties: false
58
59examples:
60  - |
61        #include <dt-bindings/gpio/gpio.h>
62        #include <dt-bindings/interrupt-controller/irq.h>
63        i2c {
64                #address-cells = <1>;
65                #size-cells = <0>;
66
67                /* Example for a I2C device node */
68                accelerometer@1d {
69                        compatible = "adi,adxl355";
70                        reg = <0x1d>;
71                        interrupt-parent = <&gpio>;
72                        interrupts = <25 IRQ_TYPE_EDGE_RISING>;
73                        interrupt-names = "DRDY";
74                };
75        };
76  - |
77        #include <dt-bindings/gpio/gpio.h>
78        #include <dt-bindings/interrupt-controller/irq.h>
79        spi {
80                #address-cells = <1>;
81                #size-cells = <0>;
82
83                accelerometer@0 {
84                        compatible = "adi,adxl355";
85                        reg = <0>;
86                        spi-max-frequency = <1000000>;
87                        interrupt-parent = <&gpio>;
88                        interrupts = <25 IRQ_TYPE_EDGE_RISING>;
89                        interrupt-names = "DRDY";
90                };
91        };
92