blob: 3aaa9653419a423c481c320449e017b8419019b2 [file] [log] [blame]
Tom Rini6b642ac2024-10-01 12:20:28 -06001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/qcom,qca6390-pmu.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Technologies, Inc. QCA6390 PMU Regulators
8
9maintainers:
10 - Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
11
12description:
13 The QCA6390 package contains discrete modules for WLAN and Bluetooth. They
14 are powered by the Power Management Unit (PMU) that takes inputs from the
15 host and provides LDO outputs. This document describes this module.
16
17properties:
18 compatible:
19 enum:
20 - qcom,qca6390-pmu
21 - qcom,wcn7850-pmu
22
23 vdd-supply:
24 description: VDD supply regulator handle
25
26 vddaon-supply:
27 description: VDD_AON supply regulator handle
28
29 vdddig-supply:
30 description: VDD_DIG supply regulator handle
31
32 vddpmu-supply:
33 description: VDD_PMU supply regulator handle
34
35 vddio1p2-supply:
36 description: VDD_IO_1P2 supply regulator handle
37
38 vddrfa0p95-supply:
39 description: VDD_RFA_0P95 supply regulator handle
40
41 vddrfa1p2-supply:
42 description: VDD_RFA_1P2 supply regulator handle
43
44 vddrfa1p3-supply:
45 description: VDD_RFA_1P3 supply regulator handle
46
47 vddrfa1p8-supply:
48 description: VDD_RFA_1P8 supply regulator handle
49
50 vddrfa1p9-supply:
51 description: VDD_RFA_1P9 supply regulator handle
52
53 vddpcie1p3-supply:
54 description: VDD_PCIE_1P3 supply regulator handle
55
56 vddpcie1p9-supply:
57 description: VDD_PCIE_1P9 supply regulator handle
58
59 vddio-supply:
60 description: VDD_IO supply regulator handle
61
62 wlan-enable-gpios:
63 maxItems: 1
64 description: GPIO line enabling the ATH11K WLAN module supplied by the PMU
65
66 bt-enable-gpios:
67 maxItems: 1
68 description: GPIO line enabling the ATH11K Bluetooth module supplied by the PMU
69
70 clocks:
71 maxItems: 1
72 description: Reference clock handle
73
74 regulators:
75 type: object
76 description:
77 LDO outputs of the PMU
78
79 patternProperties:
80 "^ldo[0-9]$":
81 $ref: regulator.yaml#
82 type: object
83 unevaluatedProperties: false
84
85 additionalProperties: false
86
87required:
88 - compatible
89 - regulators
90
91allOf:
92 - if:
93 properties:
94 compatible:
95 contains:
96 const: qcom,qca6390-pmu
97 then:
98 required:
99 - vddaon-supply
100 - vddpmu-supply
101 - vddrfa0p95-supply
102 - vddrfa1p3-supply
103 - vddrfa1p9-supply
104 - vddpcie1p3-supply
105 - vddpcie1p9-supply
106 - vddio-supply
107 - if:
108 properties:
109 compatible:
110 contains:
111 const: qcom,wcn7850-pmu
112 then:
113 required:
114 - vdd-supply
115 - vddio-supply
116 - vddaon-supply
117 - vdddig-supply
118 - vddrfa1p2-supply
119 - vddrfa1p8-supply
120
121additionalProperties: false
122
123examples:
124 - |
125 #include <dt-bindings/gpio/gpio.h>
126 pmu {
127 compatible = "qcom,qca6390-pmu";
128
129 pinctrl-names = "default";
130 pinctrl-0 = <&bt_en_state>, <&wlan_en_state>;
131
132 vddaon-supply = <&vreg_s6a_0p95>;
133 vddpmu-supply = <&vreg_s2f_0p95>;
134 vddrfa0p95-supply = <&vreg_s2f_0p95>;
135 vddrfa1p3-supply = <&vreg_s8c_1p3>;
136 vddrfa1p9-supply = <&vreg_s5a_1p9>;
137 vddpcie1p3-supply = <&vreg_s8c_1p3>;
138 vddpcie1p9-supply = <&vreg_s5a_1p9>;
139 vddio-supply = <&vreg_s4a_1p8>;
140
141 wlan-enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
142 bt-enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
143
144 regulators {
145 vreg_pmu_rfa_cmn: ldo0 {
146 regulator-name = "vreg_pmu_rfa_cmn";
147 };
148
149 vreg_pmu_aon_0p59: ldo1 {
150 regulator-name = "vreg_pmu_aon_0p59";
151 };
152
153 vreg_pmu_wlcx_0p8: ldo2 {
154 regulator-name = "vreg_pmu_wlcx_0p8";
155 };
156
157 vreg_pmu_wlmx_0p85: ldo3 {
158 regulator-name = "vreg_pmu_wlmx_0p85";
159 };
160
161 vreg_pmu_btcmx_0p85: ldo4 {
162 regulator-name = "vreg_pmu_btcmx_0p85";
163 };
164
165 vreg_pmu_rfa_0p8: ldo5 {
166 regulator-name = "vreg_pmu_rfa_0p8";
167 };
168
169 vreg_pmu_rfa_1p2: ldo6 {
170 regulator-name = "vreg_pmu_rfa_1p2";
171 };
172
173 vreg_pmu_rfa_1p7: ldo7 {
174 regulator-name = "vreg_pmu_rfa_1p7";
175 };
176
177 vreg_pmu_pcie_0p9: ldo8 {
178 regulator-name = "vreg_pmu_pcie_0p9";
179 };
180
181 vreg_pmu_pcie_1p8: ldo9 {
182 regulator-name = "vreg_pmu_pcie_1p8";
183 };
184 };
185 };