pfuze100.yaml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/regulator/pfuze100.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: PFUZE100 family of regulators
  7. maintainers:
  8. - Robin Gong <yibin.gong@nxp.com>
  9. description: |
  10. The valid names for regulators are:
  11. --PFUZE100
  12. sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6
  13. --PFUZE200
  14. sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6,coin
  15. --PFUZE3000
  16. sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4
  17. --PFUZE3001
  18. sw1,sw2,sw3,vsnvs,vldo1,vldo2,vccsd,v33,vldo3,vldo4
  19. Each regulator is defined using the standard binding for regulators.
  20. properties:
  21. $nodename:
  22. pattern: "^pmic@[0-9]$"
  23. compatible:
  24. enum:
  25. - fsl,pfuze100
  26. - fsl,pfuze200
  27. - fsl,pfuze3000
  28. - fsl,pfuze3001
  29. reg:
  30. maxItems: 1
  31. interrupts:
  32. maxItems: 1
  33. fsl,pfuze-support-disable-sw:
  34. $ref: /schemas/types.yaml#/definitions/flag
  35. description: |
  36. Boolean, if present disable all unused switch regulators to save power
  37. consumption. Attention, ensure that all important regulators
  38. (e.g. DDR ref, DDR supply) has set the "regulator-always-on" property.
  39. If not present, the switched regulators are always on and can't be
  40. disabled. This binding is a workaround to keep backward compatibility
  41. with old dtb's which rely on the fact that the switched regulators are
  42. always on and don't mark them explicit as "regulator-always-on".
  43. fsl,pmic-stby-poweroff:
  44. $ref: /schemas/types.yaml#/definitions/flag
  45. description: |
  46. if present, configure the PMIC to shutdown all
  47. power rails when PMIC_STBY_REQ line is asserted during the power off sequence.
  48. Use this option if the SoC should be powered off by external power management
  49. IC (PMIC) on PMIC_STBY_REQ signal.
  50. As opposite to PMIC_STBY_REQ boards can implement PMIC_ON_REQ signal.
  51. regulators:
  52. type: object
  53. description: |
  54. list of regulators provided by this controller.
  55. patternProperties:
  56. "^sw([1-4]|[1-4][a-c]|[1-4][a-c][a-c])$":
  57. $ref: regulator.yaml#
  58. type: object
  59. unevaluatedProperties: false
  60. "^vgen[1-6]$":
  61. $ref: regulator.yaml#
  62. type: object
  63. unevaluatedProperties: false
  64. "^vldo[1-4]$":
  65. $ref: regulator.yaml#
  66. type: object
  67. unevaluatedProperties: false
  68. "^(vsnvs|vref|vrefddr|swbst|coin|v33|vccsd)$":
  69. $ref: regulator.yaml#
  70. type: object
  71. unevaluatedProperties: false
  72. additionalProperties: false
  73. required:
  74. - compatible
  75. - reg
  76. additionalProperties: false
  77. examples:
  78. - |
  79. i2c {
  80. #address-cells = <1>;
  81. #size-cells = <0>;
  82. pmic@8 {
  83. compatible = "fsl,pfuze100";
  84. reg = <0x08>;
  85. regulators {
  86. sw1a_reg: sw1ab {
  87. regulator-min-microvolt = <300000>;
  88. regulator-max-microvolt = <1875000>;
  89. regulator-boot-on;
  90. regulator-always-on;
  91. regulator-ramp-delay = <6250>;
  92. };
  93. sw1c_reg: sw1c {
  94. regulator-min-microvolt = <300000>;
  95. regulator-max-microvolt = <1875000>;
  96. regulator-boot-on;
  97. regulator-always-on;
  98. };
  99. sw2_reg: sw2 {
  100. regulator-min-microvolt = <800000>;
  101. regulator-max-microvolt = <3300000>;
  102. regulator-boot-on;
  103. regulator-always-on;
  104. };
  105. sw3a_reg: sw3a {
  106. regulator-min-microvolt = <400000>;
  107. regulator-max-microvolt = <1975000>;
  108. regulator-boot-on;
  109. regulator-always-on;
  110. };
  111. sw3b_reg: sw3b {
  112. regulator-min-microvolt = <400000>;
  113. regulator-max-microvolt = <1975000>;
  114. regulator-boot-on;
  115. regulator-always-on;
  116. };
  117. sw4_reg: sw4 {
  118. regulator-min-microvolt = <800000>;
  119. regulator-max-microvolt = <3300000>;
  120. };
  121. swbst_reg: swbst {
  122. regulator-min-microvolt = <5000000>;
  123. regulator-max-microvolt = <5150000>;
  124. };
  125. snvs_reg: vsnvs {
  126. regulator-min-microvolt = <1000000>;
  127. regulator-max-microvolt = <3000000>;
  128. regulator-boot-on;
  129. regulator-always-on;
  130. };
  131. vref_reg: vrefddr {
  132. regulator-boot-on;
  133. regulator-always-on;
  134. };
  135. vgen1_reg: vgen1 {
  136. regulator-min-microvolt = <800000>;
  137. regulator-max-microvolt = <1550000>;
  138. };
  139. vgen2_reg: vgen2 {
  140. regulator-min-microvolt = <800000>;
  141. regulator-max-microvolt = <1550000>;
  142. };
  143. vgen3_reg: vgen3 {
  144. regulator-min-microvolt = <1800000>;
  145. regulator-max-microvolt = <3300000>;
  146. };
  147. vgen4_reg: vgen4 {
  148. regulator-min-microvolt = <1800000>;
  149. regulator-max-microvolt = <3300000>;
  150. regulator-always-on;
  151. };
  152. vgen5_reg: vgen5 {
  153. regulator-min-microvolt = <1800000>;
  154. regulator-max-microvolt = <3300000>;
  155. regulator-always-on;
  156. };
  157. vgen6_reg: vgen6 {
  158. regulator-min-microvolt = <1800000>;
  159. regulator-max-microvolt = <3300000>;
  160. regulator-always-on;
  161. };
  162. };
  163. };
  164. };