162306a36Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
262306a36Sopenharmony_ci%YAML 1.2
362306a36Sopenharmony_ci---
462306a36Sopenharmony_ci$id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml#
562306a36Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
662306a36Sopenharmony_ci
762306a36Sopenharmony_cititle: TPS65086 Power Management Integrated Circuit (PMIC)
862306a36Sopenharmony_ci
962306a36Sopenharmony_cimaintainers:
1062306a36Sopenharmony_ci  - Emil Renner Berthing <kernel@esmil.dk>
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciproperties:
1362306a36Sopenharmony_ci  compatible:
1462306a36Sopenharmony_ci    const: ti,tps65086
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci  reg:
1762306a36Sopenharmony_ci    const: 0x5e
1862306a36Sopenharmony_ci    description: I2C slave address
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci  interrupts:
2162306a36Sopenharmony_ci    maxItems: 1
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci  interrupt-controller: true
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci  '#interrupt-cells':
2662306a36Sopenharmony_ci    const: 2
2762306a36Sopenharmony_ci    description: |
2862306a36Sopenharmony_ci      The first cell is the IRQ number. The second cell is the flags,
2962306a36Sopenharmony_ci      encoded as trigger masks from ../interrupt-controller/interrupts.txt.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci  gpio-controller: true
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci  '#gpio-cells':
3462306a36Sopenharmony_ci    const: 2
3562306a36Sopenharmony_ci    description: |
3662306a36Sopenharmony_ci      The first cell is the pin number and the second cell is used to specify
3762306a36Sopenharmony_ci      flags.  See ../gpio/gpio.txt for more information.
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_ci  regulators:
4062306a36Sopenharmony_ci    type: object
4162306a36Sopenharmony_ci    additionalProperties: false
4262306a36Sopenharmony_ci    description: |
4362306a36Sopenharmony_ci      List of child nodes that specify the regulator initialization data.
4462306a36Sopenharmony_ci      Child nodes must be named after their hardware counterparts:
4562306a36Sopenharmony_ci      buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt.
4662306a36Sopenharmony_ci      Each child node is defined using the standard binding for regulators and
4762306a36Sopenharmony_ci      the optional regulator properties defined below.
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ci    patternProperties:
5062306a36Sopenharmony_ci      "^buck[1-6]$":
5162306a36Sopenharmony_ci        type: object
5262306a36Sopenharmony_ci        $ref: ../regulator/regulator.yaml
5362306a36Sopenharmony_ci
5462306a36Sopenharmony_ci        properties:
5562306a36Sopenharmony_ci          regulator-name: true
5662306a36Sopenharmony_ci          regulator-boot-on: true
5762306a36Sopenharmony_ci          regulator-always-on: true
5862306a36Sopenharmony_ci          regulator-min-microvolt: true
5962306a36Sopenharmony_ci          regulator-max-microvolt: true
6062306a36Sopenharmony_ci          ti,regulator-step-size-25mv:
6162306a36Sopenharmony_ci            type: boolean
6262306a36Sopenharmony_ci            description: |
6362306a36Sopenharmony_ci              Set this if the regulator is factory set with a 25mv step voltage
6462306a36Sopenharmony_ci              mapping.
6562306a36Sopenharmony_ci          ti,regulator-decay:
6662306a36Sopenharmony_ci            type: boolean
6762306a36Sopenharmony_ci            description: |
6862306a36Sopenharmony_ci              Set this if the output needs to decay, default is for the output
6962306a36Sopenharmony_ci              to slew down.
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci        additionalProperties: false
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ci      "^(ldoa[1-3]|swa1|swb[1-2]|vtt)$":
7462306a36Sopenharmony_ci        type: object
7562306a36Sopenharmony_ci        $ref: ../regulator/regulator.yaml
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci        properties:
7862306a36Sopenharmony_ci          regulator-name: true
7962306a36Sopenharmony_ci          regulator-boot-on: true
8062306a36Sopenharmony_ci          regulator-always-on: true
8162306a36Sopenharmony_ci          regulator-min-microvolt: true
8262306a36Sopenharmony_ci          regulator-max-microvolt: true
8362306a36Sopenharmony_ci
8462306a36Sopenharmony_ci        additionalProperties: false
8562306a36Sopenharmony_ci
8662306a36Sopenharmony_ciadditionalProperties: false
8762306a36Sopenharmony_ci
8862306a36Sopenharmony_cirequired:
8962306a36Sopenharmony_ci  - compatible
9062306a36Sopenharmony_ci  - reg
9162306a36Sopenharmony_ci  - gpio-controller
9262306a36Sopenharmony_ci  - '#gpio-cells'
9362306a36Sopenharmony_ci  - regulators
9462306a36Sopenharmony_ci
9562306a36Sopenharmony_ciexamples:
9662306a36Sopenharmony_ci  - |
9762306a36Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq.h>
9862306a36Sopenharmony_ci    i2c {
9962306a36Sopenharmony_ci        #address-cells = <1>;
10062306a36Sopenharmony_ci        #size-cells = <0>;
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci        pmic: pmic@5e {
10362306a36Sopenharmony_ci            compatible = "ti,tps65086";
10462306a36Sopenharmony_ci            reg = <0x5e>;
10562306a36Sopenharmony_ci            interrupt-parent = <&gpio1>;
10662306a36Sopenharmony_ci            interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
10762306a36Sopenharmony_ci            interrupt-controller;
10862306a36Sopenharmony_ci            #interrupt-cells = <2>;
10962306a36Sopenharmony_ci            gpio-controller;
11062306a36Sopenharmony_ci            #gpio-cells = <2>;
11162306a36Sopenharmony_ci
11262306a36Sopenharmony_ci            regulators {
11362306a36Sopenharmony_ci                buck1 {
11462306a36Sopenharmony_ci                    regulator-name = "vcc1";
11562306a36Sopenharmony_ci                    regulator-min-microvolt = <1600000>;
11662306a36Sopenharmony_ci                    regulator-max-microvolt = <1600000>;
11762306a36Sopenharmony_ci                    regulator-boot-on;
11862306a36Sopenharmony_ci                    ti,regulator-decay;
11962306a36Sopenharmony_ci                    ti,regulator-step-size-25mv;
12062306a36Sopenharmony_ci                };
12162306a36Sopenharmony_ci            };
12262306a36Sopenharmony_ci        };
12362306a36Sopenharmony_ci    };
12462306a36Sopenharmony_ci
12562306a36Sopenharmony_ci...
126