1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/iio/imu/st,lsm6dsx.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: STM 6-axis (acc + gyro) IMU Mems sensors 8 9maintainers: 10 - Lorenzo Bianconi <lorenzo@kernel.org> 11 12description: 13 Devices have both I2C and SPI interfaces. 14 15properties: 16 compatible: 17 oneOf: 18 - enum: 19 - st,lsm6ds3 20 - st,lsm6ds3h 21 - st,lsm6dsl 22 - st,lsm6dsm 23 - st,ism330dlc 24 - st,lsm6dso 25 - st,asm330lhh 26 - st,lsm6dsox 27 - st,lsm6dsr 28 - st,lsm6ds3tr-c 29 - st,ism330dhcx 30 - st,lsm9ds1-imu 31 - st,lsm6ds0 32 - st,lsm6dsrx 33 - st,lsm6dst 34 - st,lsm6dsop 35 - items: 36 - const: st,asm330lhhx 37 - const: st,lsm6dsr 38 39 reg: 40 maxItems: 1 41 42 interrupts: 43 minItems: 1 44 maxItems: 2 45 description: 46 Supports up to 2 interrupt lines via the INT1 and INT2 pins. 47 48 spi-max-frequency: true 49 50 vdd-supply: 51 description: if defined provides VDD power to the sensor. 52 53 vddio-supply: 54 description: if defined provides VDD IO power to the sensor. 55 56 st,drdy-int-pin: 57 $ref: '/schemas/types.yaml#/definitions/uint32' 58 description: | 59 The pin on the package that will be used to signal data ready 60 enum: 61 - 1 62 - 2 63 64 st,pullups: 65 type: boolean 66 description: enable/disable internal i2c controller pullup resistors. 67 68 st,disable-sensor-hub: 69 type: boolean 70 description: 71 Enable/disable internal i2c controller slave autoprobing at bootstrap. 72 Disable sensor-hub is useful if i2c controller clock/data lines are 73 connected through a pull-up with other chip lines (e.g. SDO/SA0). 74 75 drive-open-drain: 76 type: boolean 77 description: 78 The interrupt/data ready line will be configured as open drain, which 79 is useful if several sensors share the same interrupt line. 80 81 wakeup-source: 82 $ref: /schemas/types.yaml#/definitions/flag 83 84additionalProperties: false 85 86required: 87 - compatible 88 - reg 89 90examples: 91 - | 92 #include <dt-bindings/interrupt-controller/irq.h> 93 i2c { 94 #address-cells = <1>; 95 #size-cells = <0>; 96 97 imu@6b { 98 compatible = "st,lsm6dsm"; 99 reg = <0x6b>; 100 interrupt-parent = <&gpio0>; 101 interrupts = <0 IRQ_TYPE_EDGE_RISING>; 102 }; 103 }; 104... 105