qcom,qca6390-pmu.yaml 4.9 KB

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