Documentation / devicetree / bindings / regulator / active-semi,act8865.yaml


Based on kernel version 6.11. Page generated on 2024-09-24 08:21 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/active-semi,act8865.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Active-semi ACT8865 regulator

maintainers:
  - Paul Cercueil <paul@crapouillou.net>

properties:
  compatible:
    const: active-semi,act8865

  reg:
    maxItems: 1

  system-power-controller:
    description:
      Indicates that the ACT8865 is responsible for powering OFF
      the system.
    type: boolean

  active-semi,vsel-high:
    description:
      Indicates the VSEL pin is high. If this property is missing,
      the VSEL pin is assumed to be low.
    type: boolean

  regulators:
    type: object
    additionalProperties: false

    properties:
      DCDC_REG1:
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

        properties:
          vp1-supply:
            description: Handle to the VP1 input supply

      DCDC_REG2:
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

        properties:
          vp2-supply:
            description: Handle to the VP2 input supply

      DCDC_REG3:
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

        properties:
          vp3-supply:
            description: Handle to the VP3 input supply

    patternProperties:
      "^LDO_REG[1-2]$":
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

        properties:
          inl45-supply:
            description: Handle to the INL45 input supply
 
      "^LDO_REG[3-4]$":
        type: object
        $ref: /schemas/regulator/regulator.yaml#
        unevaluatedProperties: false

        properties:
          inl67-supply:
            description: Handle to the INL67 input supply

additionalProperties: false

required:
  - reg
  - compatible
  - regulators

examples:
  - |
    #include <dt-bindings/regulator/active-semi,8865-regulator.h>
 
    i2c {
      #address-cells = <1>;
      #size-cells = <0>;
 
      pmic@5b {
        compatible = "active-semi,act8865";
        reg = <0x5b>;
        active-semi,vsel-high;
 
        regulators {
          DCDC_REG1 {
            regulator-name = "VCC_1V8";
            regulator-min-microvolt = <1800000>;
            regulator-max-microvolt = <1800000>;
            regulator-always-on;
          };
 
          DCDC_REG2 {
            regulator-name = "VCC_1V2";
            regulator-min-microvolt = <1100000>;
            regulator-max-microvolt = <1300000>;
            regulator-always-on;
 
            regulator-allowed-modes = <ACT8865_REGULATOR_MODE_FIXED>,
                                      <ACT8865_REGULATOR_MODE_LOWPOWER>;
            regulator-initial-mode = <ACT8865_REGULATOR_MODE_FIXED>;
 
            regulator-state-mem {
              regulator-on-in-suspend;
              regulator-suspend-min-microvolt = <1150000>;
              regulator-suspend-max-microvolt = <1150000>;
              regulator-changeable-in-suspend;
              regulator-mode = <ACT8865_REGULATOR_MODE_LOWPOWER>;
            };
          };
 
          DCDC_REG3 {
            regulator-name = "VCC_3V3";
            regulator-min-microvolt = <3300000>;
            regulator-max-microvolt = <3300000>;
            regulator-always-on;
          };
 
          LDO_REG1 {
            regulator-name = "VDDANA";
            regulator-min-microvolt = <3300000>;
            regulator-max-microvolt = <3300000>;
            regulator-always-on;
 
            regulator-allowed-modes = <ACT8865_REGULATOR_MODE_NORMAL>,
                                      <ACT8865_REGULATOR_MODE_LOWPOWER>;
            regulator-initial-mode = <ACT8865_REGULATOR_MODE_NORMAL>;
 
            regulator-state-mem {
              regulator-off-in-suspend;
            };
          };
 
          LDO_REG2 {
            regulator-name = "FUSE_2V5";
            regulator-min-microvolt = <2500000>;
            regulator-max-microvolt = <2500000>;
          };
        };
      };
    };