axp20x.txt 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. AXP family PMIC device tree bindings
  2. The axp20x family current members :
  3. axp152 (X-Powers)
  4. axp202 (X-Powers)
  5. axp209 (X-Powers)
  6. axp221 (X-Powers)
  7. axp223 (X-Powers)
  8. axp803 (X-Powers)
  9. axp806 (X-Powers)
  10. axp809 (X-Powers)
  11. axp813 (X-Powers)
  12. The AXP813 is 2 chips packaged into 1. The 2 chips do not share anything
  13. other than the packaging. Pins are routed separately. As such they should
  14. be treated as separate entities. The other half is an AC100 RTC/codec
  15. combo chip. Please see ./ac100.txt for its bindings.
  16. Required properties:
  17. - compatible: should be one of:
  18. * "x-powers,axp152"
  19. * "x-powers,axp202"
  20. * "x-powers,axp209"
  21. * "x-powers,axp221"
  22. * "x-powers,axp223"
  23. * "x-powers,axp803"
  24. * "x-powers,axp806"
  25. * "x-powers,axp809"
  26. * "x-powers,axp813"
  27. - reg: The I2C slave address or RSB hardware address for the AXP chip
  28. - interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
  29. - interrupt-controller: The PMIC has its own internal IRQs
  30. - #interrupt-cells: Should be set to 1
  31. Optional properties:
  32. - x-powers,dcdc-freq: defines the work frequency of DC-DC in KHz
  33. AXP152/20X: range: 750-1875, Default: 1.5 MHz
  34. AXP22X/8XX: range: 1800-4050, Default: 3 MHz
  35. - x-powers,drive-vbus-en: boolean, set this when the N_VBUSEN pin is
  36. used as an output pin to control an external
  37. regulator to drive the OTG VBus, rather then
  38. as an input pin which signals whether the
  39. board is driving OTG VBus or not.
  40. (axp221 / axp223 / axp803/ axp813 only)
  41. - x-powers,self-working-mode and
  42. x-powers,master-mode: Boolean (axp806 only). Set either of these when the
  43. PMIC is wired for self-working mode or master mode.
  44. If neither is set then slave mode is assumed.
  45. This corresponds to how the MODESET pin is wired.
  46. - <input>-supply: a phandle to the regulator supply node. May be omitted if
  47. inputs are unregulated, such as using the IPSOUT output
  48. from the PMIC.
  49. - regulators: A node that houses a sub-node for each regulator. Regulators
  50. not used but preferred to be managed by the OS should be
  51. listed as well.
  52. See Documentation/devicetree/bindings/regulator/regulator.txt
  53. for more information on standard regulator bindings.
  54. Optional properties for DCDC regulators:
  55. - x-powers,dcdc-workmode: 1 for PWM mode, 0 for AUTO (PWM/PFM) mode
  56. Default: Current hardware setting
  57. The DCDC regulators work in a mixed PWM/PFM mode,
  58. using PFM under light loads and switching to PWM
  59. for heavier loads. Forcing PWM mode trades efficiency
  60. under light loads for lower output noise. This
  61. probably makes sense for HiFi audio related
  62. applications that aren't battery constrained.
  63. AXP202/AXP209 regulators, type, and corresponding input supply names:
  64. Regulator Type Supply Name Notes
  65. --------- ---- ----------- -----
  66. DCDC2 : DC-DC buck : vin2-supply
  67. DCDC3 : DC-DC buck : vin3-supply
  68. LDO1 : LDO : acin-supply : always on
  69. LDO2 : LDO : ldo24in-supply : shared supply
  70. LDO3 : LDO : ldo3in-supply
  71. LDO4 : LDO : ldo24in-supply : shared supply
  72. LDO5 : LDO : ldo5in-supply
  73. AXP221/AXP223 regulators, type, and corresponding input supply names:
  74. Regulator Type Supply Name Notes
  75. --------- ---- ----------- -----
  76. DCDC1 : DC-DC buck : vin1-supply
  77. DCDC2 : DC-DC buck : vin2-supply
  78. DCDC3 : DC-DC buck : vin3-supply
  79. DCDC4 : DC-DC buck : vin4-supply
  80. DCDC5 : DC-DC buck : vin5-supply
  81. DC1SW : On/Off Switch : : DCDC1 secondary output
  82. DC5LDO : LDO : : input from DCDC5
  83. ALDO1 : LDO : aldoin-supply : shared supply
  84. ALDO2 : LDO : aldoin-supply : shared supply
  85. ALDO3 : LDO : aldoin-supply : shared supply
  86. DLDO1 : LDO : dldoin-supply : shared supply
  87. DLDO2 : LDO : dldoin-supply : shared supply
  88. DLDO3 : LDO : dldoin-supply : shared supply
  89. DLDO4 : LDO : dldoin-supply : shared supply
  90. ELDO1 : LDO : eldoin-supply : shared supply
  91. ELDO2 : LDO : eldoin-supply : shared supply
  92. ELDO3 : LDO : eldoin-supply : shared supply
  93. LDO_IO0 : LDO : ips-supply : GPIO 0
  94. LDO_IO1 : LDO : ips-supply : GPIO 1
  95. RTC_LDO : LDO : ips-supply : always on
  96. DRIVEVBUS : Enable output : drivevbus-supply : external regulator
  97. AXP803 regulators, type, and corresponding input supply names:
  98. Regulator Type Supply Name Notes
  99. --------- ---- ----------- -----
  100. DCDC1 : DC-DC buck : vin1-supply
  101. DCDC2 : DC-DC buck : vin2-supply : poly-phase capable
  102. DCDC3 : DC-DC buck : vin3-supply : poly-phase capable
  103. DCDC4 : DC-DC buck : vin4-supply
  104. DCDC5 : DC-DC buck : vin5-supply : poly-phase capable
  105. DCDC6 : DC-DC buck : vin6-supply : poly-phase capable
  106. DC1SW : On/Off Switch : : DCDC1 secondary output
  107. ALDO1 : LDO : aldoin-supply : shared supply
  108. ALDO2 : LDO : aldoin-supply : shared supply
  109. ALDO3 : LDO : aldoin-supply : shared supply
  110. DLDO1 : LDO : dldoin-supply : shared supply
  111. DLDO2 : LDO : dldoin-supply : shared supply
  112. DLDO3 : LDO : dldoin-supply : shared supply
  113. DLDO4 : LDO : dldoin-supply : shared supply
  114. ELDO1 : LDO : eldoin-supply : shared supply
  115. ELDO2 : LDO : eldoin-supply : shared supply
  116. ELDO3 : LDO : eldoin-supply : shared supply
  117. FLDO1 : LDO : fldoin-supply : shared supply
  118. FLDO2 : LDO : fldoin-supply : shared supply
  119. LDO_IO0 : LDO : ips-supply : GPIO 0
  120. LDO_IO1 : LDO : ips-supply : GPIO 1
  121. RTC_LDO : LDO : ips-supply : always on
  122. DRIVEVBUS : Enable output : drivevbus-supply : external regulator
  123. AXP806 regulators, type, and corresponding input supply names:
  124. Regulator Type Supply Name Notes
  125. --------- ---- ----------- -----
  126. DCDCA : DC-DC buck : vina-supply : poly-phase capable
  127. DCDCB : DC-DC buck : vinb-supply : poly-phase capable
  128. DCDCC : DC-DC buck : vinc-supply : poly-phase capable
  129. DCDCD : DC-DC buck : vind-supply : poly-phase capable
  130. DCDCE : DC-DC buck : vine-supply : poly-phase capable
  131. ALDO1 : LDO : aldoin-supply : shared supply
  132. ALDO2 : LDO : aldoin-supply : shared supply
  133. ALDO3 : LDO : aldoin-supply : shared supply
  134. BLDO1 : LDO : bldoin-supply : shared supply
  135. BLDO2 : LDO : bldoin-supply : shared supply
  136. BLDO3 : LDO : bldoin-supply : shared supply
  137. BLDO4 : LDO : bldoin-supply : shared supply
  138. CLDO1 : LDO : cldoin-supply : shared supply
  139. CLDO2 : LDO : cldoin-supply : shared supply
  140. CLDO3 : LDO : cldoin-supply : shared supply
  141. SW : On/Off Switch : swin-supply
  142. Additionally, the AXP806 DC-DC regulators support poly-phase arrangements
  143. for higher output current. The possible groupings are: A+B, A+B+C, D+E.
  144. AXP809 regulators, type, and corresponding input supply names:
  145. Regulator Type Supply Name Notes
  146. --------- ---- ----------- -----
  147. DCDC1 : DC-DC buck : vin1-supply
  148. DCDC2 : DC-DC buck : vin2-supply
  149. DCDC3 : DC-DC buck : vin3-supply
  150. DCDC4 : DC-DC buck : vin4-supply
  151. DCDC5 : DC-DC buck : vin5-supply
  152. DC1SW : On/Off Switch : : DCDC1 secondary output
  153. DC5LDO : LDO : : input from DCDC5
  154. ALDO1 : LDO : aldoin-supply : shared supply
  155. ALDO2 : LDO : aldoin-supply : shared supply
  156. ALDO3 : LDO : aldoin-supply : shared supply
  157. DLDO1 : LDO : dldoin-supply : shared supply
  158. DLDO2 : LDO : dldoin-supply : shared supply
  159. ELDO1 : LDO : eldoin-supply : shared supply
  160. ELDO2 : LDO : eldoin-supply : shared supply
  161. ELDO3 : LDO : eldoin-supply : shared supply
  162. LDO_IO0 : LDO : ips-supply : GPIO 0
  163. LDO_IO1 : LDO : ips-supply : GPIO 1
  164. RTC_LDO : LDO : ips-supply : always on
  165. SW : On/Off Switch : swin-supply
  166. AXP813 regulators, type, and corresponding input supply names:
  167. Regulator Type Supply Name Notes
  168. --------- ---- ----------- -----
  169. DCDC1 : DC-DC buck : vin1-supply
  170. DCDC2 : DC-DC buck : vin2-supply : poly-phase capable
  171. DCDC3 : DC-DC buck : vin3-supply : poly-phase capable
  172. DCDC4 : DC-DC buck : vin4-supply
  173. DCDC5 : DC-DC buck : vin5-supply : poly-phase capable
  174. DCDC6 : DC-DC buck : vin6-supply : poly-phase capable
  175. DCDC7 : DC-DC buck : vin7-supply
  176. ALDO1 : LDO : aldoin-supply : shared supply
  177. ALDO2 : LDO : aldoin-supply : shared supply
  178. ALDO3 : LDO : aldoin-supply : shared supply
  179. DLDO1 : LDO : dldoin-supply : shared supply
  180. DLDO2 : LDO : dldoin-supply : shared supply
  181. DLDO3 : LDO : dldoin-supply : shared supply
  182. DLDO4 : LDO : dldoin-supply : shared supply
  183. ELDO1 : LDO : eldoin-supply : shared supply
  184. ELDO2 : LDO : eldoin-supply : shared supply
  185. ELDO3 : LDO : eldoin-supply : shared supply
  186. FLDO1 : LDO : fldoin-supply : shared supply
  187. FLDO2 : LDO : fldoin-supply : shared supply
  188. FLDO3 : LDO : fldoin-supply : shared supply
  189. LDO_IO0 : LDO : ips-supply : GPIO 0
  190. LDO_IO1 : LDO : ips-supply : GPIO 1
  191. RTC_LDO : LDO : ips-supply : always on
  192. SW : On/Off Switch : swin-supply
  193. DRIVEVBUS : Enable output : drivevbus-supply : external regulator
  194. Example:
  195. axp209: pmic@34 {
  196. compatible = "x-powers,axp209";
  197. reg = <0x34>;
  198. interrupt-parent = <&nmi_intc>;
  199. interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
  200. interrupt-controller;
  201. #interrupt-cells = <1>;
  202. regulators {
  203. x-powers,dcdc-freq = <1500>;
  204. vdd_cpu: dcdc2 {
  205. regulator-always-on;
  206. regulator-min-microvolt = <1000000>;
  207. regulator-max-microvolt = <1450000>;
  208. regulator-name = "vdd-cpu";
  209. };
  210. vdd_int_dll: dcdc3 {
  211. regulator-always-on;
  212. regulator-min-microvolt = <1000000>;
  213. regulator-max-microvolt = <1400000>;
  214. regulator-name = "vdd-int-dll";
  215. };
  216. vdd_rtc: ldo1 {
  217. regulator-always-on;
  218. regulator-min-microvolt = <1200000>;
  219. regulator-max-microvolt = <1400000>;
  220. regulator-name = "vdd-rtc";
  221. };
  222. avcc: ldo2 {
  223. regulator-always-on;
  224. regulator-min-microvolt = <2700000>;
  225. regulator-max-microvolt = <3300000>;
  226. regulator-name = "avcc";
  227. };
  228. ldo3 {
  229. /* unused but preferred to be managed by OS */
  230. };
  231. };
  232. };