| # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/regulator/qcom,qca6390-pmu.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Qualcomm Technologies, Inc. QCA6390 PMU Regulators |
| |
| maintainers: |
| - Bartosz Golaszewski <bartosz.golaszewski@linaro.org> |
| |
| description: |
| The QCA6390 package contains discrete modules for WLAN and Bluetooth. They |
| are powered by the Power Management Unit (PMU) that takes inputs from the |
| host and provides LDO outputs. This document describes this module. |
| |
| properties: |
| compatible: |
| enum: |
| - qcom,qca6390-pmu |
| - qcom,wcn6855-pmu |
| - qcom,wcn7850-pmu |
| |
| vdd-supply: |
| description: VDD supply regulator handle |
| |
| vddaon-supply: |
| description: VDD_AON supply regulator handle |
| |
| vdddig-supply: |
| description: VDD_DIG supply regulator handle |
| |
| vddpmu-supply: |
| description: VDD_PMU supply regulator handle |
| |
| vddio1p2-supply: |
| description: VDD_IO_1P2 supply regulator handle |
| |
| vddrfa0p95-supply: |
| description: VDD_RFA_0P95 supply regulator handle |
| |
| vddrfa1p2-supply: |
| description: VDD_RFA_1P2 supply regulator handle |
| |
| vddrfa1p3-supply: |
| description: VDD_RFA_1P3 supply regulator handle |
| |
| vddrfa1p8-supply: |
| description: VDD_RFA_1P8 supply regulator handle |
| |
| vddrfa1p9-supply: |
| description: VDD_RFA_1P9 supply regulator handle |
| |
| vddpcie1p3-supply: |
| description: VDD_PCIE_1P3 supply regulator handle |
| |
| vddpcie1p9-supply: |
| description: VDD_PCIE_1P9 supply regulator handle |
| |
| vddio-supply: |
| description: VDD_IO supply regulator handle |
| |
| wlan-enable-gpios: |
| maxItems: 1 |
| description: GPIO line enabling the ATH11K WLAN module supplied by the PMU |
| |
| bt-enable-gpios: |
| maxItems: 1 |
| description: GPIO line enabling the Bluetooth module supplied by the PMU |
| |
| swctrl-gpios: |
| maxItems: 1 |
| description: GPIO line indicating the state of the clock supply to the BT module |
| |
| clocks: |
| maxItems: 1 |
| description: Reference clock handle |
| |
| regulators: |
| type: object |
| description: |
| LDO outputs of the PMU |
| |
| patternProperties: |
| "^ldo[0-9]$": |
| $ref: regulator.yaml# |
| type: object |
| unevaluatedProperties: false |
| |
| additionalProperties: false |
| |
| required: |
| - compatible |
| - regulators |
| |
| allOf: |
| - if: |
| properties: |
| compatible: |
| contains: |
| const: qcom,qca6390-pmu |
| then: |
| required: |
| - vddaon-supply |
| - vddpmu-supply |
| - vddrfa0p95-supply |
| - vddrfa1p3-supply |
| - vddrfa1p9-supply |
| - vddpcie1p3-supply |
| - vddpcie1p9-supply |
| - vddio-supply |
| - if: |
| properties: |
| compatible: |
| contains: |
| const: qcom,wcn6855-pmu |
| then: |
| required: |
| - vddio-supply |
| - vddaon-supply |
| - vddpmu-supply |
| - vddrfa0p95-supply |
| - vddrfa1p3-supply |
| - vddrfa1p9-supply |
| - vddpcie1p3-supply |
| - vddpcie1p9-supply |
| - if: |
| properties: |
| compatible: |
| contains: |
| const: qcom,wcn7850-pmu |
| then: |
| required: |
| - vdd-supply |
| - vddio-supply |
| - vddaon-supply |
| - vdddig-supply |
| - vddrfa1p2-supply |
| - vddrfa1p8-supply |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/gpio/gpio.h> |
| pmu { |
| compatible = "qcom,qca6390-pmu"; |
| |
| pinctrl-names = "default"; |
| pinctrl-0 = <&bt_en_state>, <&wlan_en_state>; |
| |
| vddaon-supply = <&vreg_s6a_0p95>; |
| vddpmu-supply = <&vreg_s2f_0p95>; |
| vddrfa0p95-supply = <&vreg_s2f_0p95>; |
| vddrfa1p3-supply = <&vreg_s8c_1p3>; |
| vddrfa1p9-supply = <&vreg_s5a_1p9>; |
| vddpcie1p3-supply = <&vreg_s8c_1p3>; |
| vddpcie1p9-supply = <&vreg_s5a_1p9>; |
| vddio-supply = <&vreg_s4a_1p8>; |
| |
| wlan-enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>; |
| bt-enable-gpios = <&tlmm 21 GPIO_ACTIVE_HIGH>; |
| |
| regulators { |
| vreg_pmu_rfa_cmn: ldo0 { |
| regulator-name = "vreg_pmu_rfa_cmn"; |
| }; |
| |
| vreg_pmu_aon_0p59: ldo1 { |
| regulator-name = "vreg_pmu_aon_0p59"; |
| }; |
| |
| vreg_pmu_wlcx_0p8: ldo2 { |
| regulator-name = "vreg_pmu_wlcx_0p8"; |
| }; |
| |
| vreg_pmu_wlmx_0p85: ldo3 { |
| regulator-name = "vreg_pmu_wlmx_0p85"; |
| }; |
| |
| vreg_pmu_btcmx_0p85: ldo4 { |
| regulator-name = "vreg_pmu_btcmx_0p85"; |
| }; |
| |
| vreg_pmu_rfa_0p8: ldo5 { |
| regulator-name = "vreg_pmu_rfa_0p8"; |
| }; |
| |
| vreg_pmu_rfa_1p2: ldo6 { |
| regulator-name = "vreg_pmu_rfa_1p2"; |
| }; |
| |
| vreg_pmu_rfa_1p7: ldo7 { |
| regulator-name = "vreg_pmu_rfa_1p7"; |
| }; |
| |
| vreg_pmu_pcie_0p9: ldo8 { |
| regulator-name = "vreg_pmu_pcie_0p9"; |
| }; |
| |
| vreg_pmu_pcie_1p8: ldo9 { |
| regulator-name = "vreg_pmu_pcie_1p8"; |
| }; |
| }; |
| }; |