Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / iio / imu / inv_mpu6050.txt
1 InvenSense MPU-6050 Six-Axis (Gyro + Accelerometer) MEMS MotionTracking Device
2
3 http://www.invensense.com/mems/gyro/mpu6050.html
4
5 Required properties:
6  - compatible : should be one of
7                 "invensense,mpu6050"
8                 "invensense,mpu6500"
9                 "invensense,mpu6515"
10                 "invensense,mpu9150"
11                 "invensense,mpu9250"
12                 "invensense,mpu9255"
13                 "invensense,icm20608"
14                 "invensense,icm20602"
15  - reg : the I2C address of the sensor
16  - interrupts: interrupt mapping for IRQ. It should be configured with flags
17    IRQ_TYPE_LEVEL_HIGH, IRQ_TYPE_EDGE_RISING, IRQ_TYPE_LEVEL_LOW or
18    IRQ_TYPE_EDGE_FALLING.
19
20   Refer to interrupt-controller/interrupts.txt for generic interrupt client node
21   bindings.
22
23 Optional properties:
24  - vdd-supply: regulator phandle for VDD supply
25  - vddio-supply: regulator phandle for VDDIO supply
26  - mount-matrix: an optional 3x3 mounting rotation matrix
27  - i2c-gate node.  These devices also support an auxiliary i2c bus.  This is
28    simple enough to be described using the i2c-gate binding. See
29    i2c/i2c-gate.txt for more details.
30
31 Example:
32         mpu6050@68 {
33                 compatible = "invensense,mpu6050";
34                 reg = <0x68>;
35                 interrupt-parent = <&gpio1>;
36                 interrupts = <18 IRQ_TYPE_EDGE_RISING>;
37                 mount-matrix = "-0.984807753012208",  /* x0 */
38                                "0",                   /* y0 */
39                                "-0.173648177666930",  /* z0 */
40                                "0",                   /* x1 */
41                                "-1",                  /* y1 */
42                                "0",                   /* z1 */
43                                "-0.173648177666930",  /* x2 */
44                                "0",                   /* y2 */
45                                "0.984807753012208";   /* z2 */
46         };
47
48
49         mpu9250@68 {
50                 compatible = "invensense,mpu9250";
51                 reg = <0x68>;
52                 interrupt-parent = <&gpio3>;
53                 interrupts = <21 IRQ_TYPE_LEVEL_HIGH>;
54                 i2c-gate {
55                         #address-cells = <1>;
56                         #size-cells = <0>;
57                         ax8975@c {
58                                 compatible = "ak,ak8975";
59                                 reg = <0x0c>;
60                         };
61                 };
62         };