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