xref: /linux/Documentation/devicetree/bindings/regulator/qcom,wcn3990-pmu.yaml (revision c17ee635fd3a482b2ad2bf5e269755c2eae5f25e)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/regulator/qcom,wcn3990-pmu.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Qualcomm Technologies, Inc. WCN3990 PMU Regulators
8
9maintainers:
10  - Bartosz Golaszewski <bartosz.golaszewski@oss.qualcomm.com>
11
12description:
13  The WCN3990 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,wcn3950-pmu
21      - qcom,wcn3988-pmu
22      - qcom,wcn3990-pmu
23      - qcom,wcn3991-pmu
24      - qcom,wcn3998-pmu
25
26  vddio-supply:
27    description: VDD_IO supply regulator handle
28
29  vddxo-supply:
30    description: VDD_XTAL supply regulator handle
31
32  vddrf-supply:
33    description: VDD_RF supply regulator handle
34
35  vddch0-supply:
36    description: chain 0 supply regulator handle
37
38  vddch1-supply:
39    description: chain 1 supply regulator handle
40
41  swctrl-gpios:
42    maxItems: 1
43    description: GPIO line indicating the state of the clock supply to the BT module
44
45  clocks:
46    maxItems: 1
47    description: Reference clock handle
48
49  regulators:
50    type: object
51    description:
52      LDO outputs of the PMU
53
54    patternProperties:
55      "^ldo[0-9]$":
56        $ref: regulator.yaml#
57        type: object
58        unevaluatedProperties: false
59
60    additionalProperties: false
61
62required:
63  - compatible
64  - regulators
65  - vddio-supply
66  - vddxo-supply
67  - vddrf-supply
68  - vddch0-supply
69
70additionalProperties: false
71
72examples:
73  - |
74    #include <dt-bindings/gpio/gpio.h>
75    pmu {
76        compatible = "qcom,wcn3990-pmu";
77
78        vddio-supply = <&vreg_io>;
79        vddxo-supply = <&vreg_xo>;
80        vddrf-supply = <&vreg_rf>;
81        vddch0-supply = <&vreg_ch0>;
82
83        regulators {
84            vreg_pmu_io: ldo0 {
85                regulator-name = "vreg_pmu_io";
86            };
87
88            vreg_pmu_xo: ldo1 {
89                regulator-name = "vreg_pmu_xo";
90            };
91
92            vreg_pmu_rf: ldo2 {
93                regulator-name = "vreg_pmu_rf";
94            };
95
96            vreg_pmu_ch0: ldo3 {
97                regulator-name = "vreg_pmu_ch0";
98            };
99        };
100    };
101