lp872x.txt 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. Binding for TI/National Semiconductor LP872x Driver
  2. Required properties:
  3. - compatible: "ti,lp8720" or "ti,lp8725"
  4. - reg: I2C slave address. 0x7d = LP8720, 0x7a = LP8725
  5. Optional properties:
  6. - ti,general-config: the value of LP872X_GENERAL_CFG register (u8)
  7. (LP8720)
  8. bit[2]: BUCK output voltage control by external DVS pin or register
  9. 1 = external pin, 0 = bit7 of register 08h
  10. bit[1]: sleep control by external DVS pin or register
  11. 1 = external pin, 0 = bit6 of register 08h
  12. bit[0]: time step unit(usec). 1 = 25, 0 = 50
  13. (LP8725)
  14. bit[7:6]: time step unit(usec). 00 = 32, 01 = 64, 10 = 128, 11 = 256
  15. bit[4]: BUCK2 enable control. 1 = enable, 0 = disable
  16. bit[3]: BUCK2 output voltage register address. 1 = 0Ah, 0 = 0Bh
  17. bit[2]: BUCK1 output voltage control by external DVS pin or register
  18. 1 = register 08h, 0 = DVS
  19. bit[1]: LDO sleep control. 1 = sleep mode, 0 = normal
  20. bit[0]: BUCK1 enable control, 1 = enable, 0 = disable
  21. For more details, please see the datasheet.
  22. - ti,update-config: define it when LP872X_GENERAL_CFG register should be set
  23. - ti,dvs-gpio: GPIO specifier for external DVS pin control of LP872x devices.
  24. - ti,dvs-vsel: DVS selector. 0 = SEL_V1, 1 = SEL_V2.
  25. - ti,dvs-state: initial DVS pin state. 0 = DVS_LOW, 1 = DVS_HIGH.
  26. Sub nodes for regulator_init_data
  27. LP8720 has maximum 6 nodes. (child name: ldo1 ~ 5 and buck)
  28. LP8725 has maximum 9 nodes. (child name: ldo1 ~ 5, lilo1,2 and buck1,2)
  29. For more details, please see the following binding document.
  30. (Documentation/devicetree/bindings/regulator/regulator.txt)
  31. Datasheet
  32. - LP8720: http://www.ti.com/lit/ds/symlink/lp8720.pdf
  33. - LP8725: http://www.ti.com/lit/ds/symlink/lp8725.pdf
  34. Example 1) LP8720
  35. lp8720@7d {
  36. compatible = "ti,lp8720";
  37. reg = <0x7d>;
  38. /* external DVS pin used, timestep is 25usec */
  39. ti,general-config = /bits/ 8 <0x03>;
  40. ti,update-config;
  41. /*
  42. * The dvs-gpio depends on the processor environment.
  43. * For example, following GPIO specifier means GPIO134 in OMAP4.
  44. */
  45. ti,dvs-gpio = <&gpio5 6 0>;
  46. ti,dvs-vsel = /bits/ 8 <1>; /* SEL_V2 */
  47. ti,dvs-state = /bits/ 8 <1>; /* DVS_HIGH */
  48. vaf: ldo1 {
  49. regulator-min-microvolt = <1200000>;
  50. regulator-max-microvolt = <3300000>;
  51. };
  52. vmmc: ldo2 {
  53. regulator-min-microvolt = <1200000>;
  54. regulator-max-microvolt = <3300000>;
  55. };
  56. vcam_io: ldo3 {
  57. regulator-min-microvolt = <1200000>;
  58. regulator-max-microvolt = <3300000>;
  59. regulator-boot-on;
  60. };
  61. vcam_core: ldo4 {
  62. regulator-min-microvolt = <800000>;
  63. regulator-max-microvolt = <2850000>;
  64. regulator-boot-on;
  65. };
  66. vcam: ldo5 {
  67. regulator-min-microvolt = <1200000>;
  68. regulator-max-microvolt = <3300000>;
  69. };
  70. vcc: buck {
  71. regulator-name = "VBUCK";
  72. regulator-min-microvolt = <800000>;
  73. regulator-max-microvolt = <2300000>;
  74. };
  75. };
  76. Example 2) LP8725
  77. lp8725@7a {
  78. compatible = "ti,lp8725";
  79. reg = <0x7a>;
  80. /* Enable BUCK1,2, no DVS, normal LDO mode, timestep is 256usec */
  81. ti,general-config = /bits/ 8 <0xdd>;
  82. ti,update-config;
  83. vcam_io: ldo1 {
  84. regulator-min-microvolt = <1200000>;
  85. regulator-max-microvolt = <3300000>;
  86. };
  87. vcam_core: ldo2 {
  88. regulator-min-microvolt = <1200000>;
  89. regulator-max-microvolt = <3300000>;
  90. };
  91. vcam: ldo3 {
  92. regulator-min-microvolt = <1200000>;
  93. regulator-max-microvolt = <3300000>;
  94. };
  95. vcmmb_io: ldo4 {
  96. regulator-min-microvolt = <1200000>;
  97. regulator-max-microvolt = <3300000>;
  98. regulator-boot-on;
  99. };
  100. vcmmb_core: ldo5 {
  101. regulator-min-microvolt = <1200000>;
  102. regulator-max-microvolt = <3300000>;
  103. regulator-boot-on;
  104. };
  105. vaux1: lilo1 {
  106. regulator-name = "VAUX1";
  107. regulator-min-microvolt = <800000>;
  108. regulator-max-microvolt = <3300000>;
  109. };
  110. vaux2: lilo2 {
  111. regulator-name = "VAUX2";
  112. regulator-min-microvolt = <800000>;
  113. regulator-max-microvolt = <3300000>;
  114. };
  115. vcc1: buck1 {
  116. regulator-name = "VBUCK1";
  117. regulator-min-microvolt = <800000>;
  118. regulator-max-microvolt = <3000000>;
  119. regulator-min-microamp = <460000>;
  120. regulator-max-microamp = <1370000>;
  121. regulator-boot-on;
  122. };
  123. vcc2: buck2 {
  124. regulator-name = "VBUCK2";
  125. regulator-min-microvolt = <800000>;
  126. regulator-max-microvolt = <3000000>;
  127. regulator-min-microamp = <460000>;
  128. regulator-max-microamp = <1370000>;
  129. regulator-boot-on;
  130. };
  131. };