15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 25def4c47SEmmanuel Vadot%YAML 1.2 35def4c47SEmmanuel Vadot--- 45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/iio/imu/invensense,mpu6050.yaml# 55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65def4c47SEmmanuel Vadot 75def4c47SEmmanuel Vadottitle: InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS MotionTracking Device 85def4c47SEmmanuel Vadot 95def4c47SEmmanuel Vadotmaintainers: 105def4c47SEmmanuel Vadot - Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> 115def4c47SEmmanuel Vadot 125def4c47SEmmanuel Vadotdescription: | 135def4c47SEmmanuel Vadot These devices support both I2C and SPI bus interfaces. 145def4c47SEmmanuel Vadot 155def4c47SEmmanuel Vadotproperties: 165def4c47SEmmanuel Vadot compatible: 17*d5b0e70fSEmmanuel Vadot oneOf: 18*d5b0e70fSEmmanuel Vadot - enum: 195def4c47SEmmanuel Vadot - invensense,iam20680 205def4c47SEmmanuel Vadot - invensense,icm20608 215def4c47SEmmanuel Vadot - invensense,icm20609 225def4c47SEmmanuel Vadot - invensense,icm20689 235def4c47SEmmanuel Vadot - invensense,icm20602 245def4c47SEmmanuel Vadot - invensense,icm20690 255def4c47SEmmanuel Vadot - invensense,mpu6000 265def4c47SEmmanuel Vadot - invensense,mpu6050 275def4c47SEmmanuel Vadot - invensense,mpu6500 285def4c47SEmmanuel Vadot - invensense,mpu6515 295def4c47SEmmanuel Vadot - invensense,mpu6880 305def4c47SEmmanuel Vadot - invensense,mpu9150 315def4c47SEmmanuel Vadot - invensense,mpu9250 325def4c47SEmmanuel Vadot - invensense,mpu9255 33*d5b0e70fSEmmanuel Vadot - items: 34*d5b0e70fSEmmanuel Vadot - const: invensense,icm20608d 35*d5b0e70fSEmmanuel Vadot - const: invensense,icm20608 365def4c47SEmmanuel Vadot 375def4c47SEmmanuel Vadot reg: 385def4c47SEmmanuel Vadot maxItems: 1 395def4c47SEmmanuel Vadot 405def4c47SEmmanuel Vadot interrupts: 415def4c47SEmmanuel Vadot maxItems: 1 425def4c47SEmmanuel Vadot 435def4c47SEmmanuel Vadot spi-max-frequency: true 445def4c47SEmmanuel Vadot 455def4c47SEmmanuel Vadot vdd-supply: true 465def4c47SEmmanuel Vadot vddio-supply: true 475def4c47SEmmanuel Vadot 485def4c47SEmmanuel Vadot mount-matrix: true 495def4c47SEmmanuel Vadot 505def4c47SEmmanuel Vadot i2c-gate: 515def4c47SEmmanuel Vadot $ref: /schemas/i2c/i2c-controller.yaml 525def4c47SEmmanuel Vadot unevaluatedProperties: false 535def4c47SEmmanuel Vadot description: | 545def4c47SEmmanuel Vadot These devices also support an auxiliary i2c bus via an i2c-gate. 555def4c47SEmmanuel Vadot 565def4c47SEmmanuel VadotallOf: 575def4c47SEmmanuel Vadot - if: 585def4c47SEmmanuel Vadot not: 595def4c47SEmmanuel Vadot properties: 605def4c47SEmmanuel Vadot compatible: 615def4c47SEmmanuel Vadot contains: 625def4c47SEmmanuel Vadot enum: 635def4c47SEmmanuel Vadot - invensense,mpu9150 645def4c47SEmmanuel Vadot - invensense,mpu9250 655def4c47SEmmanuel Vadot - invensense,mpu9255 665def4c47SEmmanuel Vadot then: 675def4c47SEmmanuel Vadot properties: 685def4c47SEmmanuel Vadot i2c-gate: false 695def4c47SEmmanuel Vadot 705def4c47SEmmanuel VadotadditionalProperties: false 715def4c47SEmmanuel Vadot 725def4c47SEmmanuel Vadotrequired: 735def4c47SEmmanuel Vadot - compatible 745def4c47SEmmanuel Vadot - reg 755def4c47SEmmanuel Vadot - interrupts 765def4c47SEmmanuel Vadot 775def4c47SEmmanuel Vadotexamples: 785def4c47SEmmanuel Vadot - | 795def4c47SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 805def4c47SEmmanuel Vadot i2c { 815def4c47SEmmanuel Vadot #address-cells = <1>; 825def4c47SEmmanuel Vadot #size-cells = <0>; 835def4c47SEmmanuel Vadot 845def4c47SEmmanuel Vadot imu@68 { 855def4c47SEmmanuel Vadot compatible = "invensense,mpu9250"; 865def4c47SEmmanuel Vadot reg = <0x68>; 875def4c47SEmmanuel Vadot interrupt-parent = <&gpio3>; 885def4c47SEmmanuel Vadot interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; 895def4c47SEmmanuel Vadot mount-matrix = "-0.984807753012208", /* x0 */ 905def4c47SEmmanuel Vadot "0", /* y0 */ 915def4c47SEmmanuel Vadot "-0.173648177666930", /* z0 */ 925def4c47SEmmanuel Vadot "0", /* x1 */ 935def4c47SEmmanuel Vadot "-1", /* y1 */ 945def4c47SEmmanuel Vadot "0", /* z1 */ 955def4c47SEmmanuel Vadot "-0.173648177666930", /* x2 */ 965def4c47SEmmanuel Vadot "0", /* y2 */ 975def4c47SEmmanuel Vadot "0.984807753012208"; /* z2 */ 985def4c47SEmmanuel Vadot i2c-gate { 995def4c47SEmmanuel Vadot #address-cells = <1>; 1005def4c47SEmmanuel Vadot #size-cells = <0>; 1015def4c47SEmmanuel Vadot magnetometer@c { 102e67e8565SEmmanuel Vadot compatible = "asahi-kasei,ak8975"; 1035def4c47SEmmanuel Vadot reg = <0x0c>; 1045def4c47SEmmanuel Vadot }; 1055def4c47SEmmanuel Vadot }; 1065def4c47SEmmanuel Vadot }; 1075def4c47SEmmanuel Vadot }; 1085def4c47SEmmanuel Vadot... 109