xref: /linux/Documentation/devicetree/bindings/regulator/qcom,qca6390-pmu.yaml (revision 2416d2f87be431d98b2b05137fcd1f4da9a83894)
1b5cb34c9SBartosz Golaszewski# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2b5cb34c9SBartosz Golaszewski%YAML 1.2
3b5cb34c9SBartosz Golaszewski---
4b5cb34c9SBartosz Golaszewski$id: http://devicetree.org/schemas/regulator/qcom,qca6390-pmu.yaml#
5b5cb34c9SBartosz Golaszewski$schema: http://devicetree.org/meta-schemas/core.yaml#
6b5cb34c9SBartosz Golaszewski
7b5cb34c9SBartosz Golaszewskititle: Qualcomm Technologies, Inc. QCA6390 PMU Regulators
8b5cb34c9SBartosz Golaszewski
9b5cb34c9SBartosz Golaszewskimaintainers:
10b5cb34c9SBartosz Golaszewski  - Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
11b5cb34c9SBartosz Golaszewski
12b5cb34c9SBartosz Golaszewskidescription:
13b5cb34c9SBartosz Golaszewski  The QCA6390 package contains discrete modules for WLAN and Bluetooth. They
14b5cb34c9SBartosz Golaszewski  are powered by the Power Management Unit (PMU) that takes inputs from the
15b5cb34c9SBartosz Golaszewski  host and provides LDO outputs. This document describes this module.
16b5cb34c9SBartosz Golaszewski
17b5cb34c9SBartosz Golaszewskiproperties:
18b5cb34c9SBartosz Golaszewski  compatible:
19168ed1e8SBartosz Golaszewski    enum:
20168ed1e8SBartosz Golaszewski      - qcom,qca6390-pmu
212416d2f8SBartosz Golaszewski      - qcom,wcn6855-pmu
22168ed1e8SBartosz Golaszewski      - qcom,wcn7850-pmu
23168ed1e8SBartosz Golaszewski
24168ed1e8SBartosz Golaszewski  vdd-supply:
25168ed1e8SBartosz Golaszewski    description: VDD supply regulator handle
26b5cb34c9SBartosz Golaszewski
27b5cb34c9SBartosz Golaszewski  vddaon-supply:
28b5cb34c9SBartosz Golaszewski    description: VDD_AON supply regulator handle
29b5cb34c9SBartosz Golaszewski
30168ed1e8SBartosz Golaszewski  vdddig-supply:
31168ed1e8SBartosz Golaszewski    description: VDD_DIG supply regulator handle
32168ed1e8SBartosz Golaszewski
33b5cb34c9SBartosz Golaszewski  vddpmu-supply:
34b5cb34c9SBartosz Golaszewski    description: VDD_PMU supply regulator handle
35b5cb34c9SBartosz Golaszewski
36168ed1e8SBartosz Golaszewski  vddio1p2-supply:
37168ed1e8SBartosz Golaszewski    description: VDD_IO_1P2 supply regulator handle
38168ed1e8SBartosz Golaszewski
39b5cb34c9SBartosz Golaszewski  vddrfa0p95-supply:
40b5cb34c9SBartosz Golaszewski    description: VDD_RFA_0P95 supply regulator handle
41b5cb34c9SBartosz Golaszewski
42168ed1e8SBartosz Golaszewski  vddrfa1p2-supply:
43168ed1e8SBartosz Golaszewski    description: VDD_RFA_1P2 supply regulator handle
44168ed1e8SBartosz Golaszewski
45b5cb34c9SBartosz Golaszewski  vddrfa1p3-supply:
46b5cb34c9SBartosz Golaszewski    description: VDD_RFA_1P3 supply regulator handle
47b5cb34c9SBartosz Golaszewski
48168ed1e8SBartosz Golaszewski  vddrfa1p8-supply:
49168ed1e8SBartosz Golaszewski    description: VDD_RFA_1P8 supply regulator handle
50168ed1e8SBartosz Golaszewski
51b5cb34c9SBartosz Golaszewski  vddrfa1p9-supply:
52b5cb34c9SBartosz Golaszewski    description: VDD_RFA_1P9 supply regulator handle
53b5cb34c9SBartosz Golaszewski
54b5cb34c9SBartosz Golaszewski  vddpcie1p3-supply:
55b5cb34c9SBartosz Golaszewski    description: VDD_PCIE_1P3 supply regulator handle
56b5cb34c9SBartosz Golaszewski
57b5cb34c9SBartosz Golaszewski  vddpcie1p9-supply:
58b5cb34c9SBartosz Golaszewski    description: VDD_PCIE_1P9 supply regulator handle
59b5cb34c9SBartosz Golaszewski
60b5cb34c9SBartosz Golaszewski  vddio-supply:
61b5cb34c9SBartosz Golaszewski    description: VDD_IO supply regulator handle
62b5cb34c9SBartosz Golaszewski
63b5cb34c9SBartosz Golaszewski  wlan-enable-gpios:
64b5cb34c9SBartosz Golaszewski    maxItems: 1
65b5cb34c9SBartosz Golaszewski    description: GPIO line enabling the ATH11K WLAN module supplied by the PMU
66b5cb34c9SBartosz Golaszewski
67b5cb34c9SBartosz Golaszewski  bt-enable-gpios:
68b5cb34c9SBartosz Golaszewski    maxItems: 1
69d275e991SBartosz Golaszewski    description: GPIO line enabling the Bluetooth module supplied by the PMU
70b5cb34c9SBartosz Golaszewski
71168ed1e8SBartosz Golaszewski  clocks:
72168ed1e8SBartosz Golaszewski    maxItems: 1
73168ed1e8SBartosz Golaszewski    description: Reference clock handle
74168ed1e8SBartosz Golaszewski
75b5cb34c9SBartosz Golaszewski  regulators:
76b5cb34c9SBartosz Golaszewski    type: object
77b5cb34c9SBartosz Golaszewski    description:
78b5cb34c9SBartosz Golaszewski      LDO outputs of the PMU
79b5cb34c9SBartosz Golaszewski
80b5cb34c9SBartosz Golaszewski    patternProperties:
81b5cb34c9SBartosz Golaszewski      "^ldo[0-9]$":
82b5cb34c9SBartosz Golaszewski        $ref: regulator.yaml#
83b5cb34c9SBartosz Golaszewski        type: object
84b5cb34c9SBartosz Golaszewski        unevaluatedProperties: false
85b5cb34c9SBartosz Golaszewski
86b5cb34c9SBartosz Golaszewski    additionalProperties: false
87b5cb34c9SBartosz Golaszewski
88b5cb34c9SBartosz Golaszewskirequired:
89b5cb34c9SBartosz Golaszewski  - compatible
90b5cb34c9SBartosz Golaszewski  - regulators
91b5cb34c9SBartosz Golaszewski
92b5cb34c9SBartosz GolaszewskiallOf:
93b5cb34c9SBartosz Golaszewski  - if:
94b5cb34c9SBartosz Golaszewski      properties:
95b5cb34c9SBartosz Golaszewski        compatible:
96b5cb34c9SBartosz Golaszewski          contains:
97b5cb34c9SBartosz Golaszewski            const: qcom,qca6390-pmu
98b5cb34c9SBartosz Golaszewski    then:
99b5cb34c9SBartosz Golaszewski      required:
100b5cb34c9SBartosz Golaszewski        - vddaon-supply
101b5cb34c9SBartosz Golaszewski        - vddpmu-supply
102b5cb34c9SBartosz Golaszewski        - vddrfa0p95-supply
103b5cb34c9SBartosz Golaszewski        - vddrfa1p3-supply
104b5cb34c9SBartosz Golaszewski        - vddrfa1p9-supply
105b5cb34c9SBartosz Golaszewski        - vddpcie1p3-supply
106b5cb34c9SBartosz Golaszewski        - vddpcie1p9-supply
107b5cb34c9SBartosz Golaszewski        - vddio-supply
108168ed1e8SBartosz Golaszewski  - if:
109168ed1e8SBartosz Golaszewski      properties:
110168ed1e8SBartosz Golaszewski        compatible:
111168ed1e8SBartosz Golaszewski          contains:
1122416d2f8SBartosz Golaszewski            const: qcom,wcn6855-pmu
1132416d2f8SBartosz Golaszewski    then:
1142416d2f8SBartosz Golaszewski      required:
1152416d2f8SBartosz Golaszewski        - vddio-supply
1162416d2f8SBartosz Golaszewski        - vddaon-supply
1172416d2f8SBartosz Golaszewski        - vddpmu-supply
1182416d2f8SBartosz Golaszewski        - vddrfa0p95-supply
1192416d2f8SBartosz Golaszewski        - vddrfa1p3-supply
1202416d2f8SBartosz Golaszewski        - vddrfa1p9-supply
1212416d2f8SBartosz Golaszewski        - vddpcie1p3-supply
1222416d2f8SBartosz Golaszewski        - vddpcie1p9-supply
1232416d2f8SBartosz Golaszewski  - if:
1242416d2f8SBartosz Golaszewski      properties:
1252416d2f8SBartosz Golaszewski        compatible:
1262416d2f8SBartosz Golaszewski          contains:
127168ed1e8SBartosz Golaszewski            const: qcom,wcn7850-pmu
128168ed1e8SBartosz Golaszewski    then:
129168ed1e8SBartosz Golaszewski      required:
130168ed1e8SBartosz Golaszewski        - vdd-supply
131168ed1e8SBartosz Golaszewski        - vddio-supply
132168ed1e8SBartosz Golaszewski        - vddaon-supply
133168ed1e8SBartosz Golaszewski        - vdddig-supply
134168ed1e8SBartosz Golaszewski        - vddrfa1p2-supply
135168ed1e8SBartosz Golaszewski        - vddrfa1p8-supply
136b5cb34c9SBartosz Golaszewski
137b5cb34c9SBartosz GolaszewskiadditionalProperties: false
138b5cb34c9SBartosz Golaszewski
139b5cb34c9SBartosz Golaszewskiexamples:
140b5cb34c9SBartosz Golaszewski  - |
141b5cb34c9SBartosz Golaszewski    #include <dt-bindings/gpio/gpio.h>
142b5cb34c9SBartosz Golaszewski    pmu {
143b5cb34c9SBartosz Golaszewski        compatible = "qcom,qca6390-pmu";
144b5cb34c9SBartosz Golaszewski
145b5cb34c9SBartosz Golaszewski        pinctrl-names = "default";
146b5cb34c9SBartosz Golaszewski        pinctrl-0 = <&bt_en_state>, <&wlan_en_state>;
147b5cb34c9SBartosz Golaszewski
148b5cb34c9SBartosz Golaszewski        vddaon-supply = <&vreg_s6a_0p95>;
149b5cb34c9SBartosz Golaszewski        vddpmu-supply = <&vreg_s2f_0p95>;
150b5cb34c9SBartosz Golaszewski        vddrfa0p95-supply = <&vreg_s2f_0p95>;
151b5cb34c9SBartosz Golaszewski        vddrfa1p3-supply = <&vreg_s8c_1p3>;
152b5cb34c9SBartosz Golaszewski        vddrfa1p9-supply = <&vreg_s5a_1p9>;
153b5cb34c9SBartosz Golaszewski        vddpcie1p3-supply = <&vreg_s8c_1p3>;
154b5cb34c9SBartosz Golaszewski        vddpcie1p9-supply = <&vreg_s5a_1p9>;
155b5cb34c9SBartosz Golaszewski        vddio-supply = <&vreg_s4a_1p8>;
156b5cb34c9SBartosz Golaszewski
157b5cb34c9SBartosz Golaszewski        wlan-enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
158b5cb34c9SBartosz Golaszewski        bt-enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>;
159b5cb34c9SBartosz Golaszewski
160b5cb34c9SBartosz Golaszewski        regulators {
161b5cb34c9SBartosz Golaszewski            vreg_pmu_rfa_cmn: ldo0 {
162b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_rfa_cmn";
163b5cb34c9SBartosz Golaszewski            };
164b5cb34c9SBartosz Golaszewski
165b5cb34c9SBartosz Golaszewski            vreg_pmu_aon_0p59: ldo1 {
166b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_aon_0p59";
167b5cb34c9SBartosz Golaszewski            };
168b5cb34c9SBartosz Golaszewski
169b5cb34c9SBartosz Golaszewski            vreg_pmu_wlcx_0p8: ldo2 {
170b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_wlcx_0p8";
171b5cb34c9SBartosz Golaszewski            };
172b5cb34c9SBartosz Golaszewski
173b5cb34c9SBartosz Golaszewski            vreg_pmu_wlmx_0p85: ldo3 {
174b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_wlmx_0p85";
175b5cb34c9SBartosz Golaszewski            };
176b5cb34c9SBartosz Golaszewski
177b5cb34c9SBartosz Golaszewski            vreg_pmu_btcmx_0p85: ldo4 {
178b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_btcmx_0p85";
179b5cb34c9SBartosz Golaszewski            };
180b5cb34c9SBartosz Golaszewski
181b5cb34c9SBartosz Golaszewski            vreg_pmu_rfa_0p8: ldo5 {
182b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_rfa_0p8";
183b5cb34c9SBartosz Golaszewski            };
184b5cb34c9SBartosz Golaszewski
185b5cb34c9SBartosz Golaszewski            vreg_pmu_rfa_1p2: ldo6 {
186b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_rfa_1p2";
187b5cb34c9SBartosz Golaszewski            };
188b5cb34c9SBartosz Golaszewski
189b5cb34c9SBartosz Golaszewski            vreg_pmu_rfa_1p7: ldo7 {
190b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_rfa_1p7";
191b5cb34c9SBartosz Golaszewski            };
192b5cb34c9SBartosz Golaszewski
193b5cb34c9SBartosz Golaszewski            vreg_pmu_pcie_0p9: ldo8 {
194b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_pcie_0p9";
195b5cb34c9SBartosz Golaszewski            };
196b5cb34c9SBartosz Golaszewski
197b5cb34c9SBartosz Golaszewski            vreg_pmu_pcie_1p8: ldo9 {
198b5cb34c9SBartosz Golaszewski                regulator-name = "vreg_pmu_pcie_1p8";
199b5cb34c9SBartosz Golaszewski            };
200b5cb34c9SBartosz Golaszewski        };
201b5cb34c9SBartosz Golaszewski    };
202