# 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>;
          };
        };
      };
    };
