162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/regulator/maxim,max8973.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: Maxim MAX8973/MAX77621 voltage regulator
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Krzysztof Kozlowski <krzk@kernel.org>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciallOf:
1362306a36Sopenharmony_ci  - $ref: regulator.yaml#
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciproperties:
1662306a36Sopenharmony_ci  compatible:
1762306a36Sopenharmony_ci    enum:
1862306a36Sopenharmony_ci      - maxim,max8973
1962306a36Sopenharmony_ci      - maxim,max77621
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci  junction-warn-millicelsius:
2262306a36Sopenharmony_ci    description: |
2362306a36Sopenharmony_ci      Junction warning temperature threshold in millicelsius. If die
2462306a36Sopenharmony_ci      temperature crosses this level then device generates the warning
2562306a36Sopenharmony_ci      interrupts.
2662306a36Sopenharmony_ci      Please note that thermal functionality is only supported on MAX77621. The
2762306a36Sopenharmony_ci      supported threshold warning temperature for MAX77621 are 120 degC and 140
2862306a36Sopenharmony_ci      degC.
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci  maxim,dvs-gpio:
3162306a36Sopenharmony_ci    maxItems: 1
3262306a36Sopenharmony_ci    description: |
3362306a36Sopenharmony_ci      GPIO which is connected to DVS pin of device.
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci  maxim,dvs-default-state:
3662306a36Sopenharmony_ci    $ref: /schemas/types.yaml#/definitions/uint32
3762306a36Sopenharmony_ci    enum: [0, 1]
3862306a36Sopenharmony_ci    description: |
3962306a36Sopenharmony_ci      Default state of GPIO during initialisation.
4062306a36Sopenharmony_ci      1 for HIGH and 0 for LOW.
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci  maxim,externally-enable:
4362306a36Sopenharmony_ci    type: boolean
4462306a36Sopenharmony_ci    description: |
4562306a36Sopenharmony_ci      Externally control the regulator output enable/disable.
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci  maxim,enable-gpio:
4862306a36Sopenharmony_ci    maxItems: 1
4962306a36Sopenharmony_ci    description: |
5062306a36Sopenharmony_ci      GPIO for enable control. If the valid GPIO is provided then externally
5162306a36Sopenharmony_ci      enable control will be considered.
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci  maxim,enable-remote-sense:
5462306a36Sopenharmony_ci    type: boolean
5562306a36Sopenharmony_ci    description: Enable remote sense.
5662306a36Sopenharmony_ci
5762306a36Sopenharmony_ci  maxim,enable-falling-slew-rate:
5862306a36Sopenharmony_ci    type: boolean
5962306a36Sopenharmony_ci    description: Enable falling slew rate.
6062306a36Sopenharmony_ci
6162306a36Sopenharmony_ci  maxim,enable-active-discharge:
6262306a36Sopenharmony_ci    type: boolean
6362306a36Sopenharmony_ci    description: Eable active discharge.
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci  maxim,enable-frequency-shift:
6662306a36Sopenharmony_ci    type: boolean
6762306a36Sopenharmony_ci    description: Enable 9% frequency shift.
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci  maxim,enable-bias-control:
7062306a36Sopenharmony_ci    type: boolean
7162306a36Sopenharmony_ci    description: |
7262306a36Sopenharmony_ci      Enable bias control which can reduce the startup delay to 20us from 220us.
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_ci  maxim,enable-etr:
7562306a36Sopenharmony_ci    type: boolean
7662306a36Sopenharmony_ci    description: Enable Enhanced Transient Response.
7762306a36Sopenharmony_ci
7862306a36Sopenharmony_ci  maxim,enable-high-etr-sensitivity:
7962306a36Sopenharmony_ci    type: boolean
8062306a36Sopenharmony_ci    description: |
8162306a36Sopenharmony_ci      Enhanced transient response circuit is enabled and set for high
8262306a36Sopenharmony_ci      sensitivity. If this property is available then etr will be enable
8362306a36Sopenharmony_ci      default.
8462306a36Sopenharmony_ci      Enhanced transient response (ETR) will affect the configuration of CKADV.
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ci  reg:
8762306a36Sopenharmony_ci    maxItems: 1
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci  interrupts:
9062306a36Sopenharmony_ci    maxItems: 1
9162306a36Sopenharmony_ci
9262306a36Sopenharmony_cirequired:
9362306a36Sopenharmony_ci  - compatible
9462306a36Sopenharmony_ci  - reg
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ciunevaluatedProperties: false
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ciexamples:
9962306a36Sopenharmony_ci  - |
10062306a36Sopenharmony_ci    i2c {
10162306a36Sopenharmony_ci        #address-cells = <1>;
10262306a36Sopenharmony_ci        #size-cells = <0>;
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci        regulator@1b {
10562306a36Sopenharmony_ci            compatible = "maxim,max8973";
10662306a36Sopenharmony_ci            reg = <0x1b>;
10762306a36Sopenharmony_ci
10862306a36Sopenharmony_ci            regulator-min-microvolt = <935000>;
10962306a36Sopenharmony_ci            regulator-max-microvolt = <1200000>;
11062306a36Sopenharmony_ci            regulator-boot-on;
11162306a36Sopenharmony_ci            regulator-always-on;
11262306a36Sopenharmony_ci        };
11362306a36Sopenharmony_ci    };
11462306a36Sopenharmony_ci
11562306a36Sopenharmony_ci  - |
11662306a36Sopenharmony_ci    #include <dt-bindings/gpio/gpio.h>
11762306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq.h>
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci    i2c {
12062306a36Sopenharmony_ci        #address-cells = <1>;
12162306a36Sopenharmony_ci        #size-cells = <0>;
12262306a36Sopenharmony_ci
12362306a36Sopenharmony_ci        regulator@1b {
12462306a36Sopenharmony_ci            compatible = "maxim,max77621";
12562306a36Sopenharmony_ci            reg = <0x1b>;
12662306a36Sopenharmony_ci            interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
12762306a36Sopenharmony_ci
12862306a36Sopenharmony_ci            regulator-always-on;
12962306a36Sopenharmony_ci            regulator-boot-on;
13062306a36Sopenharmony_ci            regulator-min-microvolt = <800000>;
13162306a36Sopenharmony_ci            regulator-max-microvolt = <1231250>;
13262306a36Sopenharmony_ci            regulator-name = "PPVAR_CPU";
13362306a36Sopenharmony_ci            regulator-ramp-delay = <12500>;
13462306a36Sopenharmony_ci            maxim,dvs-default-state = <1>;
13562306a36Sopenharmony_ci            maxim,enable-active-discharge;
13662306a36Sopenharmony_ci            maxim,enable-bias-control;
13762306a36Sopenharmony_ci            maxim,enable-etr;
13862306a36Sopenharmony_ci            maxim,enable-gpio = <&pmic 5 GPIO_ACTIVE_HIGH>;
13962306a36Sopenharmony_ci            maxim,externally-enable;
14062306a36Sopenharmony_ci        };
14162306a36Sopenharmony_ci    };
142