145924b8fSJean-Baptiste Maneyrol# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 245924b8fSJean-Baptiste Maneyrol%YAML 1.2 345924b8fSJean-Baptiste Maneyrol--- 445924b8fSJean-Baptiste Maneyrol$id: http://devicetree.org/schemas/iio/imu/invensense,icm42600.yaml# 545924b8fSJean-Baptiste Maneyrol$schema: http://devicetree.org/meta-schemas/core.yaml# 645924b8fSJean-Baptiste Maneyrol 745924b8fSJean-Baptiste Maneyroltitle: InvenSense ICM-426xx Inertial Measurement Unit 845924b8fSJean-Baptiste Maneyrol 945924b8fSJean-Baptiste Maneyrolmaintainers: 1045924b8fSJean-Baptiste Maneyrol - Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> 1145924b8fSJean-Baptiste Maneyrol 1245924b8fSJean-Baptiste Maneyroldescription: | 1345924b8fSJean-Baptiste Maneyrol 6-axis MotionTracking device that combines a 3-axis gyroscope and a 3-axis 1445924b8fSJean-Baptiste Maneyrol accelerometer. 1545924b8fSJean-Baptiste Maneyrol 1645924b8fSJean-Baptiste Maneyrol It has a configurable host interface that supports I3C, I2C and SPI serial 1745924b8fSJean-Baptiste Maneyrol communication, features a 2kB FIFO and 2 programmable interrupts with 1845924b8fSJean-Baptiste Maneyrol ultra-low-power wake-on-motion support to minimize system power consumption. 1945924b8fSJean-Baptiste Maneyrol 2045924b8fSJean-Baptiste Maneyrol Other industry-leading features include InvenSense on-chip APEX Motion 2145924b8fSJean-Baptiste Maneyrol Processing engine for gesture recognition, activity classification, and 2245924b8fSJean-Baptiste Maneyrol pedometer, along with programmable digital filters, and an embedded 2345924b8fSJean-Baptiste Maneyrol temperature sensor. 2445924b8fSJean-Baptiste Maneyrol 2545924b8fSJean-Baptiste Maneyrol https://invensense.tdk.com/wp-content/uploads/2020/03/DS-000292-ICM-42605-v1.4.pdf 2645924b8fSJean-Baptiste Maneyrol 2745924b8fSJean-Baptiste Maneyrolproperties: 2845924b8fSJean-Baptiste Maneyrol compatible: 2945924b8fSJean-Baptiste Maneyrol enum: 3045924b8fSJean-Baptiste Maneyrol - invensense,icm42600 3145924b8fSJean-Baptiste Maneyrol - invensense,icm42602 3245924b8fSJean-Baptiste Maneyrol - invensense,icm42605 3345924b8fSJean-Baptiste Maneyrol - invensense,icm42622 347b445238SJay Greco - invensense,icm42631 3545924b8fSJean-Baptiste Maneyrol 3645924b8fSJean-Baptiste Maneyrol reg: 3745924b8fSJean-Baptiste Maneyrol maxItems: 1 3845924b8fSJean-Baptiste Maneyrol 3945924b8fSJean-Baptiste Maneyrol interrupts: 4045924b8fSJean-Baptiste Maneyrol maxItems: 1 4145924b8fSJean-Baptiste Maneyrol 4245924b8fSJean-Baptiste Maneyrol drive-open-drain: 4345924b8fSJean-Baptiste Maneyrol type: boolean 4445924b8fSJean-Baptiste Maneyrol 4545924b8fSJean-Baptiste Maneyrol vdd-supply: 4645924b8fSJean-Baptiste Maneyrol description: Regulator that provides power to the sensor 4745924b8fSJean-Baptiste Maneyrol 4845924b8fSJean-Baptiste Maneyrol vddio-supply: 4945924b8fSJean-Baptiste Maneyrol description: Regulator that provides power to the bus 5045924b8fSJean-Baptiste Maneyrol 515be478f9SRob Herring spi-cpha: true 525be478f9SRob Herring spi-cpol: true 535be478f9SRob Herring 5445924b8fSJean-Baptiste Maneyrolrequired: 5545924b8fSJean-Baptiste Maneyrol - compatible 5645924b8fSJean-Baptiste Maneyrol - reg 5745924b8fSJean-Baptiste Maneyrol - interrupts 5845924b8fSJean-Baptiste Maneyrol 598d98a8c6SKrzysztof KozlowskiallOf: 608d98a8c6SKrzysztof Kozlowski - $ref: /schemas/spi/spi-peripheral-props.yaml# 618d98a8c6SKrzysztof Kozlowski 628d98a8c6SKrzysztof KozlowskiunevaluatedProperties: false 635be478f9SRob Herring 6445924b8fSJean-Baptiste Maneyrolexamples: 6545924b8fSJean-Baptiste Maneyrol - | 6645924b8fSJean-Baptiste Maneyrol #include <dt-bindings/gpio/gpio.h> 6745924b8fSJean-Baptiste Maneyrol #include <dt-bindings/interrupt-controller/irq.h> 68*46908557SKrzysztof Kozlowski i2c { 6945924b8fSJean-Baptiste Maneyrol #address-cells = <1>; 7045924b8fSJean-Baptiste Maneyrol #size-cells = <0>; 7145924b8fSJean-Baptiste Maneyrol 7245924b8fSJean-Baptiste Maneyrol icm42605@68 { 7345924b8fSJean-Baptiste Maneyrol compatible = "invensense,icm42605"; 7445924b8fSJean-Baptiste Maneyrol reg = <0x68>; 7545924b8fSJean-Baptiste Maneyrol interrupt-parent = <&gpio2>; 7645924b8fSJean-Baptiste Maneyrol interrupts = <7 IRQ_TYPE_EDGE_FALLING>; 7745924b8fSJean-Baptiste Maneyrol vdd-supply = <&vdd>; 7845924b8fSJean-Baptiste Maneyrol vddio-supply = <&vddio>; 7945924b8fSJean-Baptiste Maneyrol }; 8045924b8fSJean-Baptiste Maneyrol }; 8145924b8fSJean-Baptiste Maneyrol - | 8245924b8fSJean-Baptiste Maneyrol #include <dt-bindings/gpio/gpio.h> 8345924b8fSJean-Baptiste Maneyrol #include <dt-bindings/interrupt-controller/irq.h> 84*46908557SKrzysztof Kozlowski spi { 8545924b8fSJean-Baptiste Maneyrol #address-cells = <1>; 8645924b8fSJean-Baptiste Maneyrol #size-cells = <0>; 8745924b8fSJean-Baptiste Maneyrol 8845924b8fSJean-Baptiste Maneyrol icm42602@0 { 8945924b8fSJean-Baptiste Maneyrol compatible = "invensense,icm42602"; 9045924b8fSJean-Baptiste Maneyrol reg = <0>; 9145924b8fSJean-Baptiste Maneyrol spi-max-frequency = <24000000>; 9245924b8fSJean-Baptiste Maneyrol spi-cpha; 9345924b8fSJean-Baptiste Maneyrol spi-cpol; 9445924b8fSJean-Baptiste Maneyrol interrupt-parent = <&gpio1>; 9545924b8fSJean-Baptiste Maneyrol interrupts = <2 IRQ_TYPE_EDGE_FALLING>; 9645924b8fSJean-Baptiste Maneyrol vdd-supply = <&vdd>; 9745924b8fSJean-Baptiste Maneyrol vddio-supply = <&vddio>; 9845924b8fSJean-Baptiste Maneyrol }; 9945924b8fSJean-Baptiste Maneyrol }; 100