cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

st,st-sensors.yaml (5437B)


      1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/iio/st,st-sensors.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: STMicroelectronics MEMS sensors
      8
      9description: The STMicroelectronics sensor devices are pretty straight-forward
     10  I2C or SPI devices, all sharing the same device tree descriptions no matter
     11  what type of sensor it is.
     12  Note that whilst this covers many STMicro MEMs sensors, some more complex
     13  IMUs need their own bindings.
     14  The STMicroelectronics sensor devices are pretty straight-forward I2C or
     15  SPI devices, all sharing the same device tree descriptions no matter what
     16  type of sensor it is.
     17
     18maintainers:
     19  - Denis Ciocca <denis.ciocca@st.com>
     20  - Linus Walleij <linus.walleij@linaro.org>
     21
     22properties:
     23  compatible:
     24    oneOf:
     25      - description: STMicroelectronics Accelerometers
     26        enum:
     27          - st,h3lis331dl-accel
     28          - st,lis2de12
     29          - st,lis2dw12
     30          - st,lis2hh12
     31          - st,lis2dh12-accel
     32          - st,lis302dl
     33          - st,lis331dl-accel
     34          - st,lis331dlh-accel
     35          - st,lis3de
     36          - st,lis3dh-accel
     37          - st,lis3dhh
     38          - st,lis3l02dq
     39          - st,lis3lv02dl-accel
     40          - st,lng2dm-accel
     41          - st,lsm303agr-accel
     42          - st,lsm303dl-accel
     43          - st,lsm303dlh-accel
     44          - st,lsm303dlhc-accel
     45          - st,lsm303dlm-accel
     46          - st,lsm330-accel
     47          - st,lsm330d-accel
     48          - st,lsm330dl-accel
     49          - st,lsm330dlc-accel
     50      - description: Silan Accelerometers
     51        enum:
     52          - silan,sc7a20
     53      - description: STMicroelectronics Gyroscopes
     54        enum:
     55          - st,l3g4200d-gyro
     56          - st,l3g4is-gyro
     57          - st,l3gd20-gyro
     58          - st,l3gd20h-gyro
     59          - st,lsm330-gyro
     60          - st,lsm330d-gyro
     61          - st,lsm330dl-gyro
     62          - st,lsm330dlc-gyro
     63          - st,lsm9ds0-gyro
     64      - description: STMicroelectronics Magnetometers
     65        enum:
     66          - st,lis2mdl
     67          - st,lis3mdl-magn
     68          - st,lsm303agr-magn
     69          - st,lsm303dlh-magn
     70          - st,lsm303dlhc-magn
     71          - st,lsm303dlm-magn
     72          - st,lsm9ds1-magn
     73      - description: STMicroelectronics Pressure Sensors
     74        enum:
     75          - st,lps001wp-press
     76          - st,lps22hb-press
     77          - st,lps22hh
     78          - st,lps25h-press
     79          - st,lps331ap-press
     80          - st,lps33hw
     81          - st,lps35hw
     82      - description: IMUs
     83        enum:
     84          - st,lsm9ds0-imu
     85      - description: Deprecated bindings
     86        enum:
     87          - st,lis302dl-spi
     88          - st,lis3lv02d
     89        deprecated: true
     90
     91  reg:
     92    maxItems: 1
     93
     94  interrupts:
     95    description: interrupt line(s) connected to the DRDY line(s) and/or the
     96      Intertial interrupt lines INT1 and INT2 if these exist. This means up to
     97      three interrupts, and the DRDY must be the first one if it exists on
     98      the package. The trigger edge of the interrupts is sometimes software
     99      configurable in the hardware so the operating system should parse this
    100      flag and set up the trigger edge as indicated in the device tree.
    101    minItems: 1
    102    maxItems: 2
    103
    104  vdd-supply: true
    105  vddio-supply: true
    106
    107  st,drdy-int-pin:
    108    description: the pin on the package that will be used to signal
    109      "data ready" (valid values 1 or 2). This property is not configurable
    110      on all sensors.
    111    $ref: /schemas/types.yaml#/definitions/uint32
    112    enum: [1, 2]
    113
    114  drive-open-drain:
    115    $ref: /schemas/types.yaml#/definitions/flag
    116    description: the interrupt/data ready line will be configured
    117      as open drain, which is useful if several sensors share the same
    118      interrupt line. (This binding is taken from pinctrl.)
    119
    120  mount-matrix:
    121    description: an optional 3x3 mounting rotation matrix.
    122
    123allOf:
    124  - if:
    125      properties:
    126        compatible:
    127          enum:
    128            # These have no interrupts
    129            - st,lps001wp
    130    then:
    131      properties:
    132        interrupts: false
    133        st,drdy-int-pin: false
    134        drive-open-drain: false
    135
    136  - if:
    137      properties:
    138        compatible:
    139          enum:
    140            # These have only DRDY
    141            - st,lis2mdl
    142            - st,lis3l02dq
    143            - st,lis3lv02dl-accel
    144            - st,lps22hb-press
    145            - st,lps22hh
    146            - st,lps25h-press
    147            - st,lps33hw
    148            - st,lps35hw
    149            - st,lsm303agr-magn
    150            - st,lsm303dlh-magn
    151            - st,lsm303dlhc-magn
    152            - st,lsm303dlm-magn
    153    then:
    154      properties:
    155        interrupts:
    156          maxItems: 1
    157        st,drdy-int-pin: false
    158
    159required:
    160  - compatible
    161  - reg
    162
    163additionalProperties: false
    164
    165examples:
    166  - |
    167    #include <dt-bindings/interrupt-controller/irq.h>
    168    i2c {
    169      #address-cells = <1>;
    170      #size-cells = <0>;
    171
    172      accelerometer@1c {
    173        compatible = "st,lis331dl-accel";
    174        reg = <0x1c>;
    175        st,drdy-int-pin = <1>;
    176        vdd-supply = <&ldo1>;
    177        vddio-supply = <&ldo2>;
    178        interrupt-parent = <&gpio>;
    179        interrupts = <18 IRQ_TYPE_EDGE_RISING>, <19 IRQ_TYPE_EDGE_RISING>;
    180      };
    181    };
    182    spi {
    183      #address-cells = <1>;
    184      #size-cells = <0>;
    185      num-cs = <1>;
    186
    187      l3g4200d: gyroscope@0 {
    188        compatible = "st,l3g4200d-gyro";
    189        st,drdy-int-pin = <2>;
    190        reg = <0>;
    191        vdd-supply = <&vcc_io>;
    192        vddio-supply = <&vcc_io>;
    193      };
    194    };
    195...