15def4c47SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 25def4c47SEmmanuel Vadot%YAML 1.2 35def4c47SEmmanuel Vadot--- 45def4c47SEmmanuel Vadot$id: http://devicetree.org/schemas/iio/imu/st,lsm6dsx.yaml# 55def4c47SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 65def4c47SEmmanuel Vadot 75def4c47SEmmanuel Vadottitle: STM 6-axis (acc + gyro) IMU Mems sensors 85def4c47SEmmanuel Vadot 95def4c47SEmmanuel Vadotmaintainers: 105def4c47SEmmanuel Vadot - Lorenzo Bianconi <lorenzo@kernel.org> 115def4c47SEmmanuel Vadot 125def4c47SEmmanuel Vadotdescription: 135def4c47SEmmanuel Vadot Devices have both I2C and SPI interfaces. 145def4c47SEmmanuel Vadot 155def4c47SEmmanuel Vadotproperties: 165def4c47SEmmanuel Vadot compatible: 17d5b0e70fSEmmanuel Vadot oneOf: 18d5b0e70fSEmmanuel Vadot - enum: 195def4c47SEmmanuel Vadot - st,lsm6ds3 205def4c47SEmmanuel Vadot - st,lsm6ds3h 215def4c47SEmmanuel Vadot - st,lsm6dsl 225def4c47SEmmanuel Vadot - st,lsm6dsm 235def4c47SEmmanuel Vadot - st,ism330dlc 245def4c47SEmmanuel Vadot - st,lsm6dso 255def4c47SEmmanuel Vadot - st,asm330lhh 265def4c47SEmmanuel Vadot - st,lsm6dsox 275def4c47SEmmanuel Vadot - st,lsm6dsr 285def4c47SEmmanuel Vadot - st,lsm6ds3tr-c 295def4c47SEmmanuel Vadot - st,ism330dhcx 305def4c47SEmmanuel Vadot - st,lsm9ds1-imu 315def4c47SEmmanuel Vadot - st,lsm6ds0 325def4c47SEmmanuel Vadot - st,lsm6dsrx 335def4c47SEmmanuel Vadot - st,lsm6dst 345def4c47SEmmanuel Vadot - st,lsm6dsop 358bab661aSEmmanuel Vadot - st,lsm6dsv 368bab661aSEmmanuel Vadot - st,lsm6dso16is 37d5b0e70fSEmmanuel Vadot - items: 38d5b0e70fSEmmanuel Vadot - const: st,asm330lhhx 39d5b0e70fSEmmanuel Vadot - const: st,lsm6dsr 407ef62cebSEmmanuel Vadot - items: 417ef62cebSEmmanuel Vadot - const: st,lsm6dstx 427ef62cebSEmmanuel Vadot - const: st,lsm6dst 438bab661aSEmmanuel Vadot - items: 448bab661aSEmmanuel Vadot - const: st,lsm6dsv16x 458bab661aSEmmanuel Vadot - const: st,lsm6dsv 468bab661aSEmmanuel Vadot - items: 478bab661aSEmmanuel Vadot - const: st,ism330is 488bab661aSEmmanuel Vadot - const: st,lsm6dso16is 49fac71e4eSEmmanuel Vadot - items: 50fac71e4eSEmmanuel Vadot - const: st,asm330lhb 51fac71e4eSEmmanuel Vadot - const: st,asm330lhh 525def4c47SEmmanuel Vadot 535def4c47SEmmanuel Vadot reg: 545def4c47SEmmanuel Vadot maxItems: 1 555def4c47SEmmanuel Vadot 565def4c47SEmmanuel Vadot interrupts: 575def4c47SEmmanuel Vadot minItems: 1 585def4c47SEmmanuel Vadot maxItems: 2 595def4c47SEmmanuel Vadot description: 605def4c47SEmmanuel Vadot Supports up to 2 interrupt lines via the INT1 and INT2 pins. 615def4c47SEmmanuel Vadot 625def4c47SEmmanuel Vadot vdd-supply: 635def4c47SEmmanuel Vadot description: if defined provides VDD power to the sensor. 645def4c47SEmmanuel Vadot 655def4c47SEmmanuel Vadot vddio-supply: 665def4c47SEmmanuel Vadot description: if defined provides VDD IO power to the sensor. 675def4c47SEmmanuel Vadot 685def4c47SEmmanuel Vadot st,drdy-int-pin: 69cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 705def4c47SEmmanuel Vadot description: | 715def4c47SEmmanuel Vadot The pin on the package that will be used to signal data ready 725def4c47SEmmanuel Vadot enum: 735def4c47SEmmanuel Vadot - 1 745def4c47SEmmanuel Vadot - 2 755def4c47SEmmanuel Vadot 765def4c47SEmmanuel Vadot st,pullups: 775def4c47SEmmanuel Vadot type: boolean 785def4c47SEmmanuel Vadot description: enable/disable internal i2c controller pullup resistors. 795def4c47SEmmanuel Vadot 80e67e8565SEmmanuel Vadot st,disable-sensor-hub: 81e67e8565SEmmanuel Vadot type: boolean 82e67e8565SEmmanuel Vadot description: 83e67e8565SEmmanuel Vadot Enable/disable internal i2c controller slave autoprobing at bootstrap. 84e67e8565SEmmanuel Vadot Disable sensor-hub is useful if i2c controller clock/data lines are 85e67e8565SEmmanuel Vadot connected through a pull-up with other chip lines (e.g. SDO/SA0). 86e67e8565SEmmanuel Vadot 875def4c47SEmmanuel Vadot drive-open-drain: 885def4c47SEmmanuel Vadot type: boolean 895def4c47SEmmanuel Vadot description: 905def4c47SEmmanuel Vadot The interrupt/data ready line will be configured as open drain, which 915def4c47SEmmanuel Vadot is useful if several sensors share the same interrupt line. 925def4c47SEmmanuel Vadot 935def4c47SEmmanuel Vadot wakeup-source: 945def4c47SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 955def4c47SEmmanuel Vadot 96*84943d6fSEmmanuel Vadot mount-matrix: 97*84943d6fSEmmanuel Vadot description: an optional 3x3 mounting rotation matrix 98*84943d6fSEmmanuel Vadot 995def4c47SEmmanuel Vadotrequired: 1005def4c47SEmmanuel Vadot - compatible 1015def4c47SEmmanuel Vadot - reg 1025def4c47SEmmanuel Vadot 1037ef62cebSEmmanuel VadotallOf: 104f126890aSEmmanuel Vadot - $ref: /schemas/iio/iio.yaml# 1057ef62cebSEmmanuel Vadot - $ref: /schemas/spi/spi-peripheral-props.yaml# 1067ef62cebSEmmanuel Vadot 1077ef62cebSEmmanuel VadotunevaluatedProperties: false 1087ef62cebSEmmanuel Vadot 1095def4c47SEmmanuel Vadotexamples: 1105def4c47SEmmanuel Vadot - | 1115def4c47SEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 1125def4c47SEmmanuel Vadot i2c { 1135def4c47SEmmanuel Vadot #address-cells = <1>; 1145def4c47SEmmanuel Vadot #size-cells = <0>; 1155def4c47SEmmanuel Vadot 1165def4c47SEmmanuel Vadot imu@6b { 1175def4c47SEmmanuel Vadot compatible = "st,lsm6dsm"; 1185def4c47SEmmanuel Vadot reg = <0x6b>; 1195def4c47SEmmanuel Vadot interrupt-parent = <&gpio0>; 1205def4c47SEmmanuel Vadot interrupts = <0 IRQ_TYPE_EDGE_RISING>; 1215def4c47SEmmanuel Vadot }; 1225def4c47SEmmanuel Vadot }; 1235def4c47SEmmanuel Vadot... 124