144fd8813SJonathan Cameron# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 244fd8813SJonathan Cameron%YAML 1.2 344fd8813SJonathan Cameron--- 444fd8813SJonathan Cameron$id: http://devicetree.org/schemas/iio/imu/invensense,mpu6050.yaml# 544fd8813SJonathan Cameron$schema: http://devicetree.org/meta-schemas/core.yaml# 644fd8813SJonathan Cameron 744fd8813SJonathan Camerontitle: InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS MotionTracking Device 844fd8813SJonathan Cameron 944fd8813SJonathan Cameronmaintainers: 1044fd8813SJonathan Cameron - Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> 1144fd8813SJonathan Cameron 1244fd8813SJonathan Camerondescription: | 1344fd8813SJonathan Cameron These devices support both I2C and SPI bus interfaces. 1444fd8813SJonathan Cameron 1544fd8813SJonathan Cameronproperties: 1644fd8813SJonathan Cameron compatible: 17c4dbfed3SMichael Srba oneOf: 18c4dbfed3SMichael Srba - enum: 1944fd8813SJonathan Cameron - invensense,iam20680 2044fd8813SJonathan Cameron - invensense,icm20608 2144fd8813SJonathan Cameron - invensense,icm20609 2244fd8813SJonathan Cameron - invensense,icm20689 2344fd8813SJonathan Cameron - invensense,icm20602 2444fd8813SJonathan Cameron - invensense,icm20690 2544fd8813SJonathan Cameron - invensense,mpu6000 2644fd8813SJonathan Cameron - invensense,mpu6050 2744fd8813SJonathan Cameron - invensense,mpu6500 2844fd8813SJonathan Cameron - invensense,mpu6515 29af73caa7SStephan Gerhold - invensense,mpu6880 3044fd8813SJonathan Cameron - invensense,mpu9150 3144fd8813SJonathan Cameron - invensense,mpu9250 3244fd8813SJonathan Cameron - invensense,mpu9255 33c4dbfed3SMichael Srba - items: 34*757c4921SHermes Zhang - const: invensense,icm20600 35*757c4921SHermes Zhang - const: invensense,icm20602 36*757c4921SHermes Zhang - items: 37c4dbfed3SMichael Srba - const: invensense,icm20608d 38c4dbfed3SMichael Srba - const: invensense,icm20608 3944fd8813SJonathan Cameron 4044fd8813SJonathan Cameron reg: 4144fd8813SJonathan Cameron maxItems: 1 4244fd8813SJonathan Cameron 4344fd8813SJonathan Cameron interrupts: 4444fd8813SJonathan Cameron maxItems: 1 4544fd8813SJonathan Cameron 4644fd8813SJonathan Cameron vdd-supply: true 4744fd8813SJonathan Cameron vddio-supply: true 4844fd8813SJonathan Cameron 4944fd8813SJonathan Cameron mount-matrix: true 5044fd8813SJonathan Cameron 5144fd8813SJonathan Cameron i2c-gate: 5244fd8813SJonathan Cameron $ref: /schemas/i2c/i2c-controller.yaml 5344fd8813SJonathan Cameron unevaluatedProperties: false 5444fd8813SJonathan Cameron description: | 5544fd8813SJonathan Cameron These devices also support an auxiliary i2c bus via an i2c-gate. 5644fd8813SJonathan Cameron 5744fd8813SJonathan CameronallOf: 588d98a8c6SKrzysztof Kozlowski - $ref: /schemas/spi/spi-peripheral-props.yaml# 5944fd8813SJonathan Cameron - if: 6044fd8813SJonathan Cameron not: 6144fd8813SJonathan Cameron properties: 6244fd8813SJonathan Cameron compatible: 6344fd8813SJonathan Cameron contains: 6444fd8813SJonathan Cameron enum: 6544fd8813SJonathan Cameron - invensense,mpu9150 6644fd8813SJonathan Cameron - invensense,mpu9250 6744fd8813SJonathan Cameron - invensense,mpu9255 6844fd8813SJonathan Cameron then: 6944fd8813SJonathan Cameron properties: 7044fd8813SJonathan Cameron i2c-gate: false 7144fd8813SJonathan Cameron 728d98a8c6SKrzysztof KozlowskiunevaluatedProperties: false 7344fd8813SJonathan Cameron 7444fd8813SJonathan Cameronrequired: 7544fd8813SJonathan Cameron - compatible 7644fd8813SJonathan Cameron - reg 7744fd8813SJonathan Cameron - interrupts 7844fd8813SJonathan Cameron 7944fd8813SJonathan Cameronexamples: 8044fd8813SJonathan Cameron - | 8144fd8813SJonathan Cameron #include <dt-bindings/interrupt-controller/irq.h> 8244fd8813SJonathan Cameron i2c { 8344fd8813SJonathan Cameron #address-cells = <1>; 8444fd8813SJonathan Cameron #size-cells = <0>; 8544fd8813SJonathan Cameron 8644fd8813SJonathan Cameron imu@68 { 8744fd8813SJonathan Cameron compatible = "invensense,mpu9250"; 8844fd8813SJonathan Cameron reg = <0x68>; 8944fd8813SJonathan Cameron interrupt-parent = <&gpio3>; 9044fd8813SJonathan Cameron interrupts = <21 IRQ_TYPE_LEVEL_HIGH>; 9144fd8813SJonathan Cameron mount-matrix = "-0.984807753012208", /* x0 */ 9244fd8813SJonathan Cameron "0", /* y0 */ 9344fd8813SJonathan Cameron "-0.173648177666930", /* z0 */ 9444fd8813SJonathan Cameron "0", /* x1 */ 9544fd8813SJonathan Cameron "-1", /* y1 */ 9644fd8813SJonathan Cameron "0", /* z1 */ 9744fd8813SJonathan Cameron "-0.173648177666930", /* x2 */ 9844fd8813SJonathan Cameron "0", /* y2 */ 9944fd8813SJonathan Cameron "0.984807753012208"; /* z2 */ 10044fd8813SJonathan Cameron i2c-gate { 10144fd8813SJonathan Cameron #address-cells = <1>; 10244fd8813SJonathan Cameron #size-cells = <0>; 10344fd8813SJonathan Cameron magnetometer@c { 104a3ebdcc8SThierry Reding compatible = "asahi-kasei,ak8975"; 10544fd8813SJonathan Cameron reg = <0x0c>; 10644fd8813SJonathan Cameron }; 10744fd8813SJonathan Cameron }; 10844fd8813SJonathan Cameron }; 10944fd8813SJonathan Cameron }; 11044fd8813SJonathan Cameron... 111