File Index
Files and directories
Sign in
FILE

invensense,mpu6050.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/iio/imu/invensense,mpu6050.yaml 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/invensense,mpu6050.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS MotionTracking Device
  8
  9maintainers:
 10  - Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@tdk.com>
 11
 12description: |
 13  These devices support both I2C and SPI bus interfaces.
 14
 15properties:
 16  compatible:
 17    oneOf:
 18      - enum:
 19          - invensense,iam20380
 20          - invensense,iam20680
 21          - invensense,icm20608
 22          - invensense,icm20609
 23          - invensense,icm20689
 24          - invensense,icm20602
 25          - invensense,icm20690
 26          - invensense,mpu6000
 27          - invensense,mpu6050
 28          - invensense,mpu6500
 29          - invensense,mpu6515
 30          - invensense,mpu6880
 31          - invensense,mpu9150
 32          - invensense,mpu9250
 33          - invensense,mpu9255
 34      - items:
 35          - const: invensense,icm20600
 36          - const: invensense,icm20602
 37      - items:
 38          - const: invensense,icm20608d
 39          - const: invensense,icm20608
 40      - items:
 41          - enum:
 42              - invensense,iam20680hp
 43              - invensense,iam20680ht
 44          - const: invensense,iam20680
 45
 46  reg:
 47    maxItems: 1
 48
 49  interrupts:
 50    maxItems: 1
 51
 52  vdd-supply: true
 53  vddio-supply: true
 54
 55  mount-matrix: true
 56
 57  invensense,level-shifter:
 58    type: boolean
 59    description: |
 60      From ancient platform data struct: false: VLogic, true: VDD
 61
 62  i2c-gate:
 63    $ref: /schemas/i2c/i2c-controller.yaml
 64    unevaluatedProperties: false
 65    description: |
 66      These devices also support an auxiliary i2c bus via an i2c-gate.
 67
 68allOf:
 69  - $ref: /schemas/spi/spi-peripheral-props.yaml#
 70  - if:
 71      properties:
 72        compatible:
 73          contains:
 74            enum:
 75              - invensense,iam20680
 76              - invensense,icm20602
 77              - invensense,icm20608
 78              - invensense,icm20609
 79              - invensense,icm20689
 80    then:
 81      properties:
 82        i2c-gate: false
 83
 84unevaluatedProperties: false
 85
 86required:
 87  - compatible
 88  - reg
 89
 90examples:
 91  - |
 92    #include <dt-bindings/interrupt-controller/irq.h>
 93    i2c {
 94        #address-cells = <1>;
 95        #size-cells = <0>;
 96
 97        imu@68 {
 98            compatible = "invensense,mpu9250";
 99            reg = <0x68>;
100            interrupt-parent = <&gpio3>;
101            interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;
102            mount-matrix = "-0.984807753012208",  /* x0 */
103                           "0",                   /* y0 */
104                           "-0.173648177666930",  /* z0 */
105                           "0",                   /* x1 */
106                           "-1",                  /* y1 */
107                           "0",                   /* z1 */
108                           "-0.173648177666930",  /* x2 */
109                           "0",                   /* y2 */
110                           "0.984807753012208";   /* z2 */
111            i2c-gate {
112                #address-cells = <1>;
113                #size-cells = <0>;
114                magnetometer@c {
115                    compatible = "asahi-kasei,ak8975";
116                    reg = <0x0c>;
117                };
118            };
119        };
120    };
121...
~/ Read-only file preview.