99 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/iio/imu/bosch,bmi160.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Bosch BMI1608 9maintainers:10 - Jonathan Cameron <jic23@kernel.org>11 12description: |13 Inertial Measurement Unit with Accelerometer, Gyroscope and externally14 connectable Magnetometer15 https://www.bosch-sensortec.com/bst/products/all_products/bmi16016 17properties:18 compatible:19 oneOf:20 - const: bosch,bmi16021 - items:22 - const: bosch,bmi12023 - const: bosch,bmi16024 25 reg:26 maxItems: 127 28 interrupts:29 maxItems: 130 31 interrupt-names:32 enum:33 - INT134 - INT235 description: |36 set to "INT1" if INT1 pin should be used as interrupt input, set37 to "INT2" if INT2 pin should be used instead38 39 drive-open-drain:40 description: |41 set if the specified interrupt pin should be configured as42 open drain. If not set, defaults to push-pull.43 44 vdd-supply:45 description: provide VDD power to the sensor.46 47 vddio-supply:48 description: provide VDD IO power to the sensor.49 50 mount-matrix:51 description: an optional 3x3 mounting rotation matrix52 53required:54 - compatible55 - reg56 57allOf:58 - $ref: /schemas/spi/spi-peripheral-props.yaml#59 60unevaluatedProperties: false61 62examples:63 - |64 // Example for I2C65 #include <dt-bindings/interrupt-controller/irq.h>66 i2c {67 #address-cells = <1>;68 #size-cells = <0>;69 70 bmi160@68 {71 compatible = "bosch,bmi160";72 reg = <0x68>;73 vdd-supply = <&pm8916_l17>;74 vddio-supply = <&pm8916_l6>;75 interrupt-parent = <&gpio4>;76 interrupts = <12 IRQ_TYPE_EDGE_RISING>;77 interrupt-names = "INT1";78 mount-matrix = "0", "1", "0",79 "-1", "0", "0",80 "0", "0", "1";81 };82 };83 - |84 // Example for SPI85 #include <dt-bindings/interrupt-controller/irq.h>86 spi {87 #address-cells = <1>;88 #size-cells = <0>;89 90 bmi160@0 {91 compatible = "bosch,bmi160";92 reg = <0>;93 spi-max-frequency = <10000000>;94 interrupt-parent = <&gpio2>;95 interrupts = <12 IRQ_TYPE_EDGE_RISING>;96 interrupt-names = "INT2";97 };98 };99