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

gpio-regulator.yaml (3133B)


      1# SPDX-License-Identifier: GPL-2.0
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/regulator/gpio-regulator.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: GPIO controlled regulators
      8
      9maintainers:
     10  - Liam Girdwood <lgirdwood@gmail.com>
     11  - Mark Brown <broonie@kernel.org>
     12
     13description:
     14  Any property defined as part of the core regulator binding, defined in
     15  regulator.txt, can also be used.
     16
     17allOf:
     18  - $ref: "regulator.yaml#"
     19
     20properties:
     21  compatible:
     22    const: regulator-gpio
     23
     24  regulator-name: true
     25
     26  enable-gpios:
     27    description: GPIO to use to enable/disable the regulator.
     28      Warning, the GPIO phandle flags are ignored and the GPIO polarity is
     29      controlled solely by the presence of "enable-active-high" DT property.
     30      This is due to compatibility with old DTs.
     31    maxItems: 1
     32
     33  gpios:
     34    description: Array of one or more GPIO pins used to select the regulator
     35      voltage/current listed in "states".
     36    minItems: 1
     37    maxItems: 8  # Should be enough...
     38
     39  gpios-states:
     40    description: |
     41      On operating systems, that don't support reading back gpio values in
     42      output mode (most notably linux), this array provides the state of GPIO
     43      pins set when requesting them from the gpio controller. Systems, that are
     44      capable of preserving state when requesting the lines, are free to ignore
     45      this property.
     46        0: LOW
     47        1: HIGH
     48      Default is LOW if nothing else is specified.
     49    $ref: /schemas/types.yaml#/definitions/uint32-array
     50    maxItems: 8
     51    items:
     52      enum: [0, 1]
     53      default: 0
     54
     55  states:
     56    description: Selection of available voltages/currents provided by this
     57      regulator and matching GPIO configurations to achieve them. If there are
     58      no states in the "states" array, use a fixed regulator instead.
     59    $ref: /schemas/types.yaml#/definitions/uint32-matrix
     60    maxItems: 8
     61    items:
     62      items:
     63        - description: Voltage in microvolts
     64        - description: GPIO group state value
     65
     66  startup-delay-us:
     67    description: startup time in microseconds
     68
     69  enable-active-high:
     70    description: Polarity of "enable-gpio" GPIO is active HIGH. Default is
     71      active LOW.
     72    type: boolean
     73
     74  gpio-open-drain:
     75    description:
     76      GPIO is open drain type. If this property is missing then default
     77      assumption is false.
     78    type: boolean
     79
     80  regulator-type:
     81    description: Specifies what is being regulated.
     82    $ref: /schemas/types.yaml#/definitions/string
     83    enum:
     84      - voltage
     85      - current
     86    default: voltage
     87
     88required:
     89  - compatible
     90  - regulator-name
     91  - gpios
     92  - states
     93
     94unevaluatedProperties: false
     95
     96examples:
     97  - |
     98    gpio-regulator {
     99      compatible = "regulator-gpio";
    100
    101      regulator-name = "mmci-gpio-supply";
    102      regulator-min-microvolt = <1800000>;
    103      regulator-max-microvolt = <2600000>;
    104      regulator-boot-on;
    105
    106      enable-gpios = <&gpio0 23 0x4>;
    107      gpios = <&gpio0 24 0x4
    108        &gpio0 25 0x4>;
    109      states = <1800000 0x3>,
    110        <2200000 0x2>,
    111        <2600000 0x1>,
    112        <2900000 0x0>;
    113
    114      startup-delay-us = <100000>;
    115      enable-active-high;
    116    };
    117...