Documentation / devicetree / bindings / regulator / lltc,ltc3676.yaml


Based on kernel version 6.13. Page generated on 2025-01-21 08:20 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 159 160 161 162 163 164 165 166 167
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/regulator/lltc,ltc3676.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Linear Technology LTC3676 8-output regulators

maintainers:
  - Tim Harvey <tharvey@gateworks.com>

description: |
  LTC3676 contains eight regulators, 4 switching SW1..SW4 and four LDO1..4 .

properties:
  compatible:
    const: lltc,ltc3676

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  regulators:
    type: object
    additionalProperties: false
    description: |
      List of regulators provided by this controller, must be named
      after their hardware counterparts (SW|LDO)[1-4].

    patternProperties:
      "^(sw[1-4]|ldo[24])$":
        type: object
        unevaluatedProperties: false
        $ref: regulator.yaml#
        description:
          Properties for single SW or LDO regulator. Regulators SW1..SW4 can
          regulate the feedback reference from 412.5mV to 800mV in 12.5 mV
          steps. The output voltage thus ranges between 0.4125 * (1 + R1/R2) V
          and 0.8 * (1 + R1/R2) V.
          Regulators LDO1, LDO2, LDO4 have a fixed 0.725 V reference and thus
          output 0.725 * (1 + R1/R2) V.
          The LDO1 standby regulator can not be disabled and thus should have
          the regulator-always-on property set.

        properties:
          lltc,fb-voltage-divider:
            description:
              An array of two integers containing the resistor values
              R1 and R2 of the feedback voltage divider in ohms.
            $ref: /schemas/types.yaml#/definitions/uint32-array
            minItems: 2
            maxItems: 2

        required:
          - lltc,fb-voltage-divider

    properties:
      ldo1:
        type: object
        unevaluatedProperties: false
        $ref: regulator.yaml#
        description:
          The LDO1 standby regulator can not be disabled and thus should
          have the regulator-always-on property set. See patternProperties
          description above for the rest of the details.

        properties:
          lltc,fb-voltage-divider:
            description:
              An array of two integers containing the resistor values
              R1 and R2 of the feedback voltage divider in ohms.
            $ref: /schemas/types.yaml#/definitions/uint32-array
            minItems: 2
            maxItems: 2

        required:
          - lltc,fb-voltage-divider
          - regulator-always-on

      ldo3:
        type: object
        unevaluatedProperties: false
        $ref: regulator.yaml#
        description:
          The LDO3 regulator is fixed to 1.8 V. See patternProperties
          description above for the rest of the details.

required:
  - compatible
  - reg
  - regulators

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;
 
        pmic@3c {
            compatible = "lltc,ltc3676";
            reg = <0x3c>;
 
            regulators {
                sw1_reg: sw1 {
                    regulator-min-microvolt = <674400>;
                    regulator-max-microvolt = <1308000>;
                    lltc,fb-voltage-divider = <127000 200000>;
                    regulator-ramp-delay = <7000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
 
                sw2_reg: sw2 {
                    regulator-min-microvolt = <1033310>;
                    regulator-max-microvolt = <200400>;
                    lltc,fb-voltage-divider = <301000 200000>;
                    regulator-ramp-delay = <7000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
 
                sw3_reg: sw3 {
                    regulator-min-microvolt = <674400>;
                    regulator-max-microvolt = <130800>;
                    lltc,fb-voltage-divider = <127000 200000>;
                    regulator-ramp-delay = <7000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
 
                sw4_reg: sw4 {
                    regulator-min-microvolt = <868310>;
                    regulator-max-microvolt = <168400>;
                    lltc,fb-voltage-divider = <221000 200000>;
                    regulator-ramp-delay = <7000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
 
                ldo2_reg: ldo2 {
                    regulator-min-microvolt = <2490375>;
                    regulator-max-microvolt = <2490375>;
                    lltc,fb-voltage-divider = <487000 200000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
 
                ldo3_reg: ldo3 {
                    regulator-min-microvolt = <1800000>;
                    regulator-max-microvolt = <1800000>;
                    regulator-boot-on;
                };
 
                ldo4_reg: ldo4 {
                    regulator-min-microvolt = <3023250>;
                    regulator-max-microvolt = <3023250>;
                    lltc,fb-voltage-divider = <634000 200000>;
                    regulator-boot-on;
                    regulator-always-on;
                };
            };
        };
    };