fixed-regulator.yaml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. # SPDX-License-Identifier: GPL-2.0
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/regulator/fixed-regulator.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Fixed Voltage regulators
  7. maintainers:
  8. - Liam Girdwood <lgirdwood@gmail.com>
  9. - Mark Brown <broonie@kernel.org>
  10. description:
  11. Any property defined as part of the core regulator binding, defined in
  12. regulator.yaml, can also be used. However a fixed voltage regulator is
  13. expected to have the regulator-min-microvolt and regulator-max-microvolt
  14. to be the same.
  15. allOf:
  16. - $ref: regulator.yaml#
  17. - if:
  18. properties:
  19. compatible:
  20. contains:
  21. const: regulator-fixed-clock
  22. then:
  23. required:
  24. - clocks
  25. - if:
  26. properties:
  27. compatible:
  28. contains:
  29. const: regulator-fixed-domain
  30. then:
  31. required:
  32. - power-domains
  33. - required-opps
  34. - not:
  35. required:
  36. - gpio
  37. - gpios
  38. properties:
  39. $nodename:
  40. anyOf:
  41. - description: Preferred name is 'regulator-[0-9]v[0-9]'
  42. pattern: '^regulator(-[0-9]+v[0-9]+|-[0-9a-z-]+)?$'
  43. - description: Any name allowed
  44. deprecated: true
  45. compatible:
  46. enum:
  47. - regulator-fixed
  48. - regulator-fixed-clock
  49. - regulator-fixed-domain
  50. regulator-name: true
  51. gpio:
  52. description: gpio to use for enable control
  53. maxItems: 1
  54. gpios:
  55. maxItems: 1
  56. clocks:
  57. description:
  58. clock to use for enable control. This binding is only available if
  59. the compatible is chosen to regulator-fixed-clock. The clock binding
  60. is mandatory if compatible is chosen to regulator-fixed-clock.
  61. maxItems: 1
  62. power-domains:
  63. deprecated: true
  64. description:
  65. Power domain to use for enable control. This binding is only
  66. available if the compatible is chosen to regulator-fixed-domain.
  67. maxItems: 1
  68. required-opps:
  69. deprecated: true
  70. description:
  71. Performance state to use for enable control. This binding is only
  72. available if the compatible is chosen to regulator-fixed-domain. The
  73. power-domain binding is mandatory if compatible is chosen to
  74. regulator-fixed-domain.
  75. maxItems: 1
  76. startup-delay-us:
  77. description: startup time in microseconds
  78. off-on-delay-us:
  79. description: off delay time in microseconds
  80. enable-active-high:
  81. description:
  82. Polarity of GPIO is Active high. If this property is missing,
  83. the default assumed is Active low.
  84. type: boolean
  85. gpio-open-drain:
  86. description:
  87. GPIO is open drain type. If this property is missing then default
  88. assumption is false.
  89. type: boolean
  90. vin-supply:
  91. description: Input supply phandle.
  92. interrupts:
  93. maxItems: 1
  94. description:
  95. Interrupt signaling a critical under-voltage event.
  96. system-critical-regulator: true
  97. required:
  98. - compatible
  99. - regulator-name
  100. unevaluatedProperties: false
  101. examples:
  102. - |
  103. reg_1v8: regulator-1v8 {
  104. compatible = "regulator-fixed";
  105. regulator-name = "1v8";
  106. regulator-min-microvolt = <1800000>;
  107. regulator-max-microvolt = <1800000>;
  108. gpio = <&gpio1 16 0>;
  109. startup-delay-us = <70000>;
  110. enable-active-high;
  111. regulator-boot-on;
  112. gpio-open-drain;
  113. vin-supply = <&parent_reg>;
  114. };
  115. reg_1v8_clk: regulator-1v8-clk {
  116. compatible = "regulator-fixed-clock";
  117. regulator-name = "1v8";
  118. regulator-min-microvolt = <1800000>;
  119. regulator-max-microvolt = <1800000>;
  120. clocks = <&clock1>;
  121. startup-delay-us = <70000>;
  122. enable-active-high;
  123. regulator-boot-on;
  124. vin-supply = <&parent_reg>;
  125. };
  126. reg_1v8_domain: regulator-1v8-domain {
  127. compatible = "regulator-fixed-domain";
  128. regulator-name = "1v8";
  129. regulator-min-microvolt = <1800000>;
  130. regulator-max-microvolt = <1800000>;
  131. power-domains = <&domain1>;
  132. required-opps = <&domain1_state1>;
  133. startup-delay-us = <70000>;
  134. enable-active-high;
  135. regulator-boot-on;
  136. vin-supply = <&parent_reg>;
  137. };
  138. ...