xref: /linux/Documentation/devicetree/bindings/regulator/ti,pbias-omap.yaml (revision b3438e5ca785565a65ef231bc03cd5a05c3be5c7)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/ti,pbias-omap.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Texas Instruments PBIAS internal regulator
8
9maintainers:
10  - Tony Lindgren <tony@atomide.com>
11
12properties:
13  compatible:
14    items:
15      - enum:
16          - ti,pbias-dra7
17          - ti,pbias-omap2
18          - ti,pbias-omap3
19          - ti,pbias-omap4
20          - ti,pbias-omap5
21      - const: ti,pbias-omap
22
23  reg:
24    maxItems: 1
25
26  syscon:
27    $ref: /schemas/types.yaml#/definitions/phandle
28    description: phandle of the system control module
29
30  pbias_mmc_omap2430:
31    type: object
32    $ref: regulator.yaml#
33    unevaluatedProperties: false
34
35    required:
36      - regulator-name
37
38  pbias_sim_omap3:
39    type: object
40    $ref: regulator.yaml#
41    unevaluatedProperties: false
42
43    required:
44      - regulator-name
45
46  pbias_mmc_omap4:
47    type: object
48    $ref: regulator.yaml#
49    unevaluatedProperties: false
50
51    required:
52      - regulator-name
53
54  pbias_mmc_omap5:
55    type: object
56    $ref: regulator.yaml#
57    unevaluatedProperties: false
58
59    required:
60      - regulator-name
61
62required:
63  - compatible
64  - reg
65  - syscon
66
67allOf:
68  - if:
69      properties:
70        compatible:
71          contains:
72            const: ti,pbias-omap2
73    then:
74      required:
75        - pbias_mmc_omap2430
76      properties:
77        pbias_sim_omap3: false
78        pbias_mmc_omap4: false
79        pbias_mmc_omap5: false
80
81  - if:
82      properties:
83        compatible:
84          contains:
85            const: ti,pbias-omap3
86    then:
87      anyOf:
88        - required:
89            - pbias_mmc_omap2430
90        - required:
91            - pbias_sim_omap3
92      properties:
93        pbias_mmc_omap4: false
94        pbias_mmc_omap5: false
95
96  - if:
97      properties:
98        compatible:
99          contains:
100            const: ti,pbias-omap4
101    then:
102      required:
103        - pbias_mmc_omap4
104      properties:
105        pbias_mmc_omap2430: false
106        pbias_sim_omap3: false
107        pbias_mmc_omap5: false
108
109  - if:
110      properties:
111        compatible:
112          contains:
113            enum:
114              - ti,pbias-omap5
115              - ti,pbias-dra7
116    then:
117      required:
118        - pbias_mmc_omap5
119      properties:
120        pbias_mmc_omap2430: false
121        pbias_sim_omap3: false
122        pbias_mmc_omap4: false
123
124additionalProperties: false
125
126examples:
127  - |
128    pbias_regulator@0 {
129        compatible = "ti,pbias-omap5", "ti,pbias-omap";
130        reg = <0 0x4>;
131        syscon = <&omap5_padconf_global>;
132        pbias_mmc_omap5 {
133            regulator-name = "pbias_mmc_omap5";
134            regulator-min-microvolt = <1800000>;
135            regulator-max-microvolt = <3000000>;
136        };
137    };
138