Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/Documentation/devicetree/bindings/iio/imu/invensense,icm45600.yaml
38303 views
1
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2
%YAML 1.2
3
---
4
$id: http://devicetree.org/schemas/iio/imu/invensense,icm45600.yaml#
5
$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7
title: InvenSense ICM-45600 Inertial Measurement Unit
8
9
maintainers:
10
- Remi Buisson <remi.buisson@tdk.com>
11
12
description: |
13
6-axis MotionTracking device that combines a 3-axis gyroscope and a 3-axis
14
accelerometer.
15
16
It has a configurable host interface that supports I3C, I2C and SPI serial
17
communication, features up to 8kB FIFO and 2 programmable interrupts with
18
ultra-low-power wake-on-motion support to minimize system power consumption.
19
20
Other industry-leading features include InvenSense on-chip APEX Motion
21
Processing engine for gesture recognition, activity classification, and
22
pedometer, along with programmable digital filters, and an embedded
23
temperature sensor.
24
25
https://invensense.tdk.com/wp-content/uploads/documentation/DS-000576_ICM-45605.pdf
26
27
properties:
28
compatible:
29
enum:
30
- invensense,icm45605
31
- invensense,icm45606
32
- invensense,icm45608
33
- invensense,icm45634
34
- invensense,icm45686
35
- invensense,icm45687
36
- invensense,icm45688p
37
- invensense,icm45689
38
39
reg:
40
maxItems: 1
41
42
interrupts:
43
minItems: 1
44
maxItems: 2
45
46
interrupt-names:
47
minItems: 1
48
items:
49
- enum: [int1, int2]
50
- const: int2
51
description: Choose chip interrupt pin to be used as interrupt input.
52
53
drive-open-drain:
54
type: boolean
55
56
vdd-supply: true
57
58
vddio-supply: true
59
60
mount-matrix: true
61
62
required:
63
- compatible
64
- reg
65
- vdd-supply
66
- vddio-supply
67
68
unevaluatedProperties: false
69
70
examples:
71
- |
72
#include <dt-bindings/gpio/gpio.h>
73
#include <dt-bindings/interrupt-controller/irq.h>
74
i2c {
75
#address-cells = <1>;
76
#size-cells = <0>;
77
78
imu@68 {
79
compatible = "invensense,icm45605";
80
reg = <0x68>;
81
interrupt-parent = <&gpio2>;
82
interrupt-names = "int1";
83
interrupts = <7 IRQ_TYPE_EDGE_RISING>;
84
vdd-supply = <&vdd>;
85
vddio-supply = <&vddio>;
86
mount-matrix = "0", "-1", "0",
87
"1", "0", "0",
88
"0", "0", "1";
89
};
90
};
91
92