ab8500.h 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. /*
  2. * Copyright (C) ST-Ericsson SA 2010
  3. *
  4. * License Terms: GNU General Public License v2
  5. *
  6. * Authors: Sundar Iyer <sundar.iyer@stericsson.com> for ST-Ericsson
  7. * Bengt Jonsson <bengt.g.jonsson@stericsson.com> for ST-Ericsson
  8. */
  9. #ifndef __LINUX_MFD_AB8500_REGULATOR_H
  10. #define __LINUX_MFD_AB8500_REGULATOR_H
  11. /* AB8500 regulators */
  12. enum ab8500_regulator_id {
  13. AB8500_LDO_AUX1,
  14. AB8500_LDO_AUX2,
  15. AB8500_LDO_AUX3,
  16. AB8500_LDO_INTCORE,
  17. AB8500_LDO_TVOUT,
  18. AB8500_LDO_USB,
  19. AB8500_LDO_AUDIO,
  20. AB8500_LDO_ANAMIC1,
  21. AB8500_LDO_ANAMIC2,
  22. AB8500_LDO_DMIC,
  23. AB8500_LDO_ANA,
  24. AB8500_NUM_REGULATORS,
  25. };
  26. /* AB9450 regulators */
  27. enum ab9540_regulator_id {
  28. AB9540_LDO_AUX1,
  29. AB9540_LDO_AUX2,
  30. AB9540_LDO_AUX3,
  31. AB9540_LDO_AUX4,
  32. AB9540_LDO_INTCORE,
  33. AB9540_LDO_TVOUT,
  34. AB9540_LDO_USB,
  35. AB9540_LDO_AUDIO,
  36. AB9540_LDO_ANAMIC1,
  37. AB9540_LDO_ANAMIC2,
  38. AB9540_LDO_DMIC,
  39. AB9540_LDO_ANA,
  40. AB9540_SYSCLKREQ_2,
  41. AB9540_SYSCLKREQ_4,
  42. AB9540_NUM_REGULATORS,
  43. };
  44. /* AB8500 and AB9540 register initialization */
  45. struct ab8500_regulator_reg_init {
  46. int id;
  47. u8 value;
  48. };
  49. #define INIT_REGULATOR_REGISTER(_id, _value) \
  50. { \
  51. .id = _id, \
  52. .value = _value, \
  53. }
  54. /* AB8500 registers */
  55. enum ab8500_regulator_reg {
  56. AB8500_REGUREQUESTCTRL2,
  57. AB8500_REGUREQUESTCTRL3,
  58. AB8500_REGUREQUESTCTRL4,
  59. AB8500_REGUSYSCLKREQ1HPVALID1,
  60. AB8500_REGUSYSCLKREQ1HPVALID2,
  61. AB8500_REGUHWHPREQ1VALID1,
  62. AB8500_REGUHWHPREQ1VALID2,
  63. AB8500_REGUHWHPREQ2VALID1,
  64. AB8500_REGUHWHPREQ2VALID2,
  65. AB8500_REGUSWHPREQVALID1,
  66. AB8500_REGUSWHPREQVALID2,
  67. AB8500_REGUSYSCLKREQVALID1,
  68. AB8500_REGUSYSCLKREQVALID2,
  69. AB8500_REGUMISC1,
  70. AB8500_VAUDIOSUPPLY,
  71. AB8500_REGUCTRL1VAMIC,
  72. AB8500_VPLLVANAREGU,
  73. AB8500_VREFDDR,
  74. AB8500_EXTSUPPLYREGU,
  75. AB8500_VAUX12REGU,
  76. AB8500_VRF1VAUX3REGU,
  77. AB8500_VAUX1SEL,
  78. AB8500_VAUX2SEL,
  79. AB8500_VRF1VAUX3SEL,
  80. AB8500_REGUCTRL2SPARE,
  81. AB8500_REGUCTRLDISCH,
  82. AB8500_REGUCTRLDISCH2,
  83. AB8500_VSMPS1SEL1,
  84. AB8500_NUM_REGULATOR_REGISTERS,
  85. };
  86. /* AB9540 registers */
  87. enum ab9540_regulator_reg {
  88. AB9540_REGUREQUESTCTRL1,
  89. AB9540_REGUREQUESTCTRL2,
  90. AB9540_REGUREQUESTCTRL3,
  91. AB9540_REGUREQUESTCTRL4,
  92. AB9540_REGUSYSCLKREQ1HPVALID1,
  93. AB9540_REGUSYSCLKREQ1HPVALID2,
  94. AB9540_REGUHWHPREQ1VALID1,
  95. AB9540_REGUHWHPREQ1VALID2,
  96. AB9540_REGUHWHPREQ2VALID1,
  97. AB9540_REGUHWHPREQ2VALID2,
  98. AB9540_REGUSWHPREQVALID1,
  99. AB9540_REGUSWHPREQVALID2,
  100. AB9540_REGUSYSCLKREQVALID1,
  101. AB9540_REGUSYSCLKREQVALID2,
  102. AB9540_REGUVAUX4REQVALID,
  103. AB9540_REGUMISC1,
  104. AB9540_VAUDIOSUPPLY,
  105. AB9540_REGUCTRL1VAMIC,
  106. AB9540_VSMPS1REGU,
  107. AB9540_VSMPS2REGU,
  108. AB9540_VSMPS3REGU, /* NOTE! PRCMU register */
  109. AB9540_VPLLVANAREGU,
  110. AB9540_EXTSUPPLYREGU,
  111. AB9540_VAUX12REGU,
  112. AB9540_VRF1VAUX3REGU,
  113. AB9540_VSMPS1SEL1,
  114. AB9540_VSMPS1SEL2,
  115. AB9540_VSMPS1SEL3,
  116. AB9540_VSMPS2SEL1,
  117. AB9540_VSMPS2SEL2,
  118. AB9540_VSMPS2SEL3,
  119. AB9540_VSMPS3SEL1, /* NOTE! PRCMU register */
  120. AB9540_VSMPS3SEL2, /* NOTE! PRCMU register */
  121. AB9540_VAUX1SEL,
  122. AB9540_VAUX2SEL,
  123. AB9540_VRF1VAUX3SEL,
  124. AB9540_REGUCTRL2SPARE,
  125. AB9540_VAUX4REQCTRL,
  126. AB9540_VAUX4REGU,
  127. AB9540_VAUX4SEL,
  128. AB9540_REGUCTRLDISCH,
  129. AB9540_REGUCTRLDISCH2,
  130. AB9540_REGUCTRLDISCH3,
  131. AB9540_NUM_REGULATOR_REGISTERS,
  132. };
  133. #endif