Merge branch 'misc.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / mfd / ti,tps65086.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/mfd/ti,tps65086.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: TPS65086 Power Management Integrated Circuit (PMIC)
8
9 maintainers:
10   - Emil Renner Berthing <kernel@esmil.dk>
11
12 properties:
13   compatible:
14     const: ti,tps65086
15
16   reg:
17     const: 0x5e
18     description: I2C slave address
19
20   interrupts:
21     maxItems: 1
22
23   interrupt-controller: true
24
25   '#interrupt-cells':
26     const: 2
27     description: |
28       The first cell is the IRQ number. The second cell is the flags,
29       encoded as trigger masks from ../interrupt-controller/interrupts.txt.
30
31   gpio-controller: true
32
33   '#gpio-cells':
34     const: 2
35     description: |
36       The first cell is the pin number and the second cell is used to specify
37       flags.  See ../gpio/gpio.txt for more information.
38
39   regulators:
40     type: object
41     description: |
42       List of child nodes that specify the regulator initialization data.
43       Child nodes must be named after their hardware counterparts:
44       buck[1-6], ldoa[1-3], swa1, swb[1-2], and vtt.
45       Each child node is defined using the standard binding for regulators and
46       the optional regulator properties defined below.
47
48     patternProperties:
49       "^buck[1-6]$":
50         type: object
51         $ref: ../regulator/regulator.yaml
52
53         properties:
54           regulator-name: true
55           regulator-boot-on: true
56           regulator-always-on: true
57           regulator-min-microvolt: true
58           regulator-max-microvolt: true
59           ti,regulator-step-size-25mv:
60             type: boolean
61             description: |
62               Set this if the regulator is factory set with a 25mv step voltage
63               mapping.
64           ti,regulator-decay:
65             type: boolean
66             description: |
67               Set this if the output needs to decay, default is for the output
68               to slew down.
69
70         additionalProperties: false
71
72       "^(ldoa[1-3]|swa1|swb[1-2]|vtt)$":
73         type: object
74         $ref: ../regulator/regulator.yaml
75
76         properties:
77           regulator-name: true
78           regulator-boot-on: true
79           regulator-always-on: true
80           regulator-min-microvolt: true
81           regulator-max-microvolt: true
82
83         additionalProperties: false
84
85 additionalProperties: false
86
87 required:
88   - compatible
89   - reg
90   - gpio-controller
91   - '#gpio-cells'
92   - regulators
93
94 examples:
95   - |
96     #include <dt-bindings/interrupt-controller/irq.h>
97     i2c0 {
98         #address-cells = <1>;
99         #size-cells = <0>;
100
101         pmic: pmic@5e {
102             compatible = "ti,tps65086";
103             reg = <0x5e>;
104             interrupt-parent = <&gpio1>;
105             interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
106             interrupt-controller;
107             #interrupt-cells = <2>;
108             gpio-controller;
109             #gpio-cells = <2>;
110
111             regulators {
112                 buck1 {
113                     regulator-name = "vcc1";
114                     regulator-min-microvolt = <1600000>;
115                     regulator-max-microvolt = <1600000>;
116                     regulator-boot-on;
117                     ti,regulator-decay;
118                     ti,regulator-step-size-25mv;
119                 };
120             };
121         };
122     };
123
124 ...