The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/regulator/gpio-regulator.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    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 
    7 title: GPIO controlled regulators
    8 
    9 maintainers:
   10   - Liam Girdwood <lgirdwood@gmail.com>
   11   - Mark Brown <broonie@kernel.org>
   12 
   13 description:
   14   Any property defined as part of the core regulator binding, defined in
   15   regulator.txt, can also be used.
   16 
   17 allOf:
   18   - $ref: "regulator.yaml#"
   19 
   20 properties:
   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 
   88 required:
   89   - compatible
   90   - regulator-name
   91   - gpios
   92   - states
   93 
   94 unevaluatedProperties: false
   95 
   96 examples:
   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 ...

Cache object: 118ff6dae59b7fcafed4bdd2830328c3


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.