GNU Linux-libre 6.8.9-gnu
[releases.git] / Documentation / devicetree / bindings / iio / imu / bosch,bmi323.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/iio/imu/bosch,bmi323.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Bosch BMI323 6-Axis IMU
8
9 maintainers:
10   - Jagath Jog J <jagathjog1996@gmail.com>
11
12 description:
13   BMI323 is a 6-axis inertial measurement unit that supports acceleration and
14   gyroscopic measurements with hardware fifo buffering. Sensor also provides
15   events information such as motion, steps, orientation, single and double
16   tap detection.
17
18 properties:
19   compatible:
20     const: bosch,bmi323
21
22   reg:
23     maxItems: 1
24
25   vdd-supply: true
26   vddio-supply: true
27
28   interrupts:
29     minItems: 1
30     maxItems: 2
31
32   interrupt-names:
33     minItems: 1
34     maxItems: 2
35     items:
36       enum:
37         - INT1
38         - INT2
39
40   drive-open-drain:
41     description:
42       set if the specified interrupt pin should be configured as
43       open drain. If not set, defaults to push-pull.
44
45   mount-matrix:
46     description:
47       an optional 3x3 mounting rotation matrix.
48
49 required:
50   - compatible
51   - reg
52   - vdd-supply
53   - vddio-supply
54
55 allOf:
56   - $ref: /schemas/spi/spi-peripheral-props.yaml#
57
58 unevaluatedProperties: false
59
60 examples:
61   - |
62     // Example for I2C
63     #include <dt-bindings/interrupt-controller/irq.h>
64     i2c {
65         #address-cells = <1>;
66         #size-cells = <0>;
67
68         imu@68 {
69             compatible = "bosch,bmi323";
70             reg = <0x68>;
71             vddio-supply = <&vddio>;
72             vdd-supply = <&vdd>;
73             interrupt-parent = <&gpio1>;
74             interrupts = <29 IRQ_TYPE_EDGE_RISING>;
75             interrupt-names = "INT1";
76         };
77     };