regulator.h 76 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213
  1. /* SPDX-License-Identifier: GPL-2.0-or-later */
  2. /*
  3. * linux/mfd/wm831x/regulator.h -- Regulator definitons for wm831x
  4. *
  5. * Copyright 2009 Wolfson Microelectronics PLC.
  6. *
  7. * Author: Mark Brown <[email protected]>
  8. */
  9. #ifndef __MFD_WM831X_REGULATOR_H__
  10. #define __MFD_WM831X_REGULATOR_H__
  11. /*
  12. * R16462 (0x404E) - Current Sink 1
  13. */
  14. #define WM831X_CS1_ENA 0x8000 /* CS1_ENA */
  15. #define WM831X_CS1_ENA_MASK 0x8000 /* CS1_ENA */
  16. #define WM831X_CS1_ENA_SHIFT 15 /* CS1_ENA */
  17. #define WM831X_CS1_ENA_WIDTH 1 /* CS1_ENA */
  18. #define WM831X_CS1_DRIVE 0x4000 /* CS1_DRIVE */
  19. #define WM831X_CS1_DRIVE_MASK 0x4000 /* CS1_DRIVE */
  20. #define WM831X_CS1_DRIVE_SHIFT 14 /* CS1_DRIVE */
  21. #define WM831X_CS1_DRIVE_WIDTH 1 /* CS1_DRIVE */
  22. #define WM831X_CS1_SLPENA 0x1000 /* CS1_SLPENA */
  23. #define WM831X_CS1_SLPENA_MASK 0x1000 /* CS1_SLPENA */
  24. #define WM831X_CS1_SLPENA_SHIFT 12 /* CS1_SLPENA */
  25. #define WM831X_CS1_SLPENA_WIDTH 1 /* CS1_SLPENA */
  26. #define WM831X_CS1_OFF_RAMP_MASK 0x0C00 /* CS1_OFF_RAMP - [11:10] */
  27. #define WM831X_CS1_OFF_RAMP_SHIFT 10 /* CS1_OFF_RAMP - [11:10] */
  28. #define WM831X_CS1_OFF_RAMP_WIDTH 2 /* CS1_OFF_RAMP - [11:10] */
  29. #define WM831X_CS1_ON_RAMP_MASK 0x0300 /* CS1_ON_RAMP - [9:8] */
  30. #define WM831X_CS1_ON_RAMP_SHIFT 8 /* CS1_ON_RAMP - [9:8] */
  31. #define WM831X_CS1_ON_RAMP_WIDTH 2 /* CS1_ON_RAMP - [9:8] */
  32. #define WM831X_CS1_ISEL_MASK 0x003F /* CS1_ISEL - [5:0] */
  33. #define WM831X_CS1_ISEL_SHIFT 0 /* CS1_ISEL - [5:0] */
  34. #define WM831X_CS1_ISEL_WIDTH 6 /* CS1_ISEL - [5:0] */
  35. /*
  36. * R16463 (0x404F) - Current Sink 2
  37. */
  38. #define WM831X_CS2_ENA 0x8000 /* CS2_ENA */
  39. #define WM831X_CS2_ENA_MASK 0x8000 /* CS2_ENA */
  40. #define WM831X_CS2_ENA_SHIFT 15 /* CS2_ENA */
  41. #define WM831X_CS2_ENA_WIDTH 1 /* CS2_ENA */
  42. #define WM831X_CS2_DRIVE 0x4000 /* CS2_DRIVE */
  43. #define WM831X_CS2_DRIVE_MASK 0x4000 /* CS2_DRIVE */
  44. #define WM831X_CS2_DRIVE_SHIFT 14 /* CS2_DRIVE */
  45. #define WM831X_CS2_DRIVE_WIDTH 1 /* CS2_DRIVE */
  46. #define WM831X_CS2_SLPENA 0x1000 /* CS2_SLPENA */
  47. #define WM831X_CS2_SLPENA_MASK 0x1000 /* CS2_SLPENA */
  48. #define WM831X_CS2_SLPENA_SHIFT 12 /* CS2_SLPENA */
  49. #define WM831X_CS2_SLPENA_WIDTH 1 /* CS2_SLPENA */
  50. #define WM831X_CS2_OFF_RAMP_MASK 0x0C00 /* CS2_OFF_RAMP - [11:10] */
  51. #define WM831X_CS2_OFF_RAMP_SHIFT 10 /* CS2_OFF_RAMP - [11:10] */
  52. #define WM831X_CS2_OFF_RAMP_WIDTH 2 /* CS2_OFF_RAMP - [11:10] */
  53. #define WM831X_CS2_ON_RAMP_MASK 0x0300 /* CS2_ON_RAMP - [9:8] */
  54. #define WM831X_CS2_ON_RAMP_SHIFT 8 /* CS2_ON_RAMP - [9:8] */
  55. #define WM831X_CS2_ON_RAMP_WIDTH 2 /* CS2_ON_RAMP - [9:8] */
  56. #define WM831X_CS2_ISEL_MASK 0x003F /* CS2_ISEL - [5:0] */
  57. #define WM831X_CS2_ISEL_SHIFT 0 /* CS2_ISEL - [5:0] */
  58. #define WM831X_CS2_ISEL_WIDTH 6 /* CS2_ISEL - [5:0] */
  59. /*
  60. * R16464 (0x4050) - DCDC Enable
  61. */
  62. #define WM831X_EPE2_ENA 0x0080 /* EPE2_ENA */
  63. #define WM831X_EPE2_ENA_MASK 0x0080 /* EPE2_ENA */
  64. #define WM831X_EPE2_ENA_SHIFT 7 /* EPE2_ENA */
  65. #define WM831X_EPE2_ENA_WIDTH 1 /* EPE2_ENA */
  66. #define WM831X_EPE1_ENA 0x0040 /* EPE1_ENA */
  67. #define WM831X_EPE1_ENA_MASK 0x0040 /* EPE1_ENA */
  68. #define WM831X_EPE1_ENA_SHIFT 6 /* EPE1_ENA */
  69. #define WM831X_EPE1_ENA_WIDTH 1 /* EPE1_ENA */
  70. #define WM831X_DC4_ENA 0x0008 /* DC4_ENA */
  71. #define WM831X_DC4_ENA_MASK 0x0008 /* DC4_ENA */
  72. #define WM831X_DC4_ENA_SHIFT 3 /* DC4_ENA */
  73. #define WM831X_DC4_ENA_WIDTH 1 /* DC4_ENA */
  74. #define WM831X_DC3_ENA 0x0004 /* DC3_ENA */
  75. #define WM831X_DC3_ENA_MASK 0x0004 /* DC3_ENA */
  76. #define WM831X_DC3_ENA_SHIFT 2 /* DC3_ENA */
  77. #define WM831X_DC3_ENA_WIDTH 1 /* DC3_ENA */
  78. #define WM831X_DC2_ENA 0x0002 /* DC2_ENA */
  79. #define WM831X_DC2_ENA_MASK 0x0002 /* DC2_ENA */
  80. #define WM831X_DC2_ENA_SHIFT 1 /* DC2_ENA */
  81. #define WM831X_DC2_ENA_WIDTH 1 /* DC2_ENA */
  82. #define WM831X_DC1_ENA 0x0001 /* DC1_ENA */
  83. #define WM831X_DC1_ENA_MASK 0x0001 /* DC1_ENA */
  84. #define WM831X_DC1_ENA_SHIFT 0 /* DC1_ENA */
  85. #define WM831X_DC1_ENA_WIDTH 1 /* DC1_ENA */
  86. /*
  87. * R16465 (0x4051) - LDO Enable
  88. */
  89. #define WM831X_LDO11_ENA 0x0400 /* LDO11_ENA */
  90. #define WM831X_LDO11_ENA_MASK 0x0400 /* LDO11_ENA */
  91. #define WM831X_LDO11_ENA_SHIFT 10 /* LDO11_ENA */
  92. #define WM831X_LDO11_ENA_WIDTH 1 /* LDO11_ENA */
  93. #define WM831X_LDO10_ENA 0x0200 /* LDO10_ENA */
  94. #define WM831X_LDO10_ENA_MASK 0x0200 /* LDO10_ENA */
  95. #define WM831X_LDO10_ENA_SHIFT 9 /* LDO10_ENA */
  96. #define WM831X_LDO10_ENA_WIDTH 1 /* LDO10_ENA */
  97. #define WM831X_LDO9_ENA 0x0100 /* LDO9_ENA */
  98. #define WM831X_LDO9_ENA_MASK 0x0100 /* LDO9_ENA */
  99. #define WM831X_LDO9_ENA_SHIFT 8 /* LDO9_ENA */
  100. #define WM831X_LDO9_ENA_WIDTH 1 /* LDO9_ENA */
  101. #define WM831X_LDO8_ENA 0x0080 /* LDO8_ENA */
  102. #define WM831X_LDO8_ENA_MASK 0x0080 /* LDO8_ENA */
  103. #define WM831X_LDO8_ENA_SHIFT 7 /* LDO8_ENA */
  104. #define WM831X_LDO8_ENA_WIDTH 1 /* LDO8_ENA */
  105. #define WM831X_LDO7_ENA 0x0040 /* LDO7_ENA */
  106. #define WM831X_LDO7_ENA_MASK 0x0040 /* LDO7_ENA */
  107. #define WM831X_LDO7_ENA_SHIFT 6 /* LDO7_ENA */
  108. #define WM831X_LDO7_ENA_WIDTH 1 /* LDO7_ENA */
  109. #define WM831X_LDO6_ENA 0x0020 /* LDO6_ENA */
  110. #define WM831X_LDO6_ENA_MASK 0x0020 /* LDO6_ENA */
  111. #define WM831X_LDO6_ENA_SHIFT 5 /* LDO6_ENA */
  112. #define WM831X_LDO6_ENA_WIDTH 1 /* LDO6_ENA */
  113. #define WM831X_LDO5_ENA 0x0010 /* LDO5_ENA */
  114. #define WM831X_LDO5_ENA_MASK 0x0010 /* LDO5_ENA */
  115. #define WM831X_LDO5_ENA_SHIFT 4 /* LDO5_ENA */
  116. #define WM831X_LDO5_ENA_WIDTH 1 /* LDO5_ENA */
  117. #define WM831X_LDO4_ENA 0x0008 /* LDO4_ENA */
  118. #define WM831X_LDO4_ENA_MASK 0x0008 /* LDO4_ENA */
  119. #define WM831X_LDO4_ENA_SHIFT 3 /* LDO4_ENA */
  120. #define WM831X_LDO4_ENA_WIDTH 1 /* LDO4_ENA */
  121. #define WM831X_LDO3_ENA 0x0004 /* LDO3_ENA */
  122. #define WM831X_LDO3_ENA_MASK 0x0004 /* LDO3_ENA */
  123. #define WM831X_LDO3_ENA_SHIFT 2 /* LDO3_ENA */
  124. #define WM831X_LDO3_ENA_WIDTH 1 /* LDO3_ENA */
  125. #define WM831X_LDO2_ENA 0x0002 /* LDO2_ENA */
  126. #define WM831X_LDO2_ENA_MASK 0x0002 /* LDO2_ENA */
  127. #define WM831X_LDO2_ENA_SHIFT 1 /* LDO2_ENA */
  128. #define WM831X_LDO2_ENA_WIDTH 1 /* LDO2_ENA */
  129. #define WM831X_LDO1_ENA 0x0001 /* LDO1_ENA */
  130. #define WM831X_LDO1_ENA_MASK 0x0001 /* LDO1_ENA */
  131. #define WM831X_LDO1_ENA_SHIFT 0 /* LDO1_ENA */
  132. #define WM831X_LDO1_ENA_WIDTH 1 /* LDO1_ENA */
  133. /*
  134. * R16466 (0x4052) - DCDC Status
  135. */
  136. #define WM831X_EPE2_STS 0x0080 /* EPE2_STS */
  137. #define WM831X_EPE2_STS_MASK 0x0080 /* EPE2_STS */
  138. #define WM831X_EPE2_STS_SHIFT 7 /* EPE2_STS */
  139. #define WM831X_EPE2_STS_WIDTH 1 /* EPE2_STS */
  140. #define WM831X_EPE1_STS 0x0040 /* EPE1_STS */
  141. #define WM831X_EPE1_STS_MASK 0x0040 /* EPE1_STS */
  142. #define WM831X_EPE1_STS_SHIFT 6 /* EPE1_STS */
  143. #define WM831X_EPE1_STS_WIDTH 1 /* EPE1_STS */
  144. #define WM831X_DC4_STS 0x0008 /* DC4_STS */
  145. #define WM831X_DC4_STS_MASK 0x0008 /* DC4_STS */
  146. #define WM831X_DC4_STS_SHIFT 3 /* DC4_STS */
  147. #define WM831X_DC4_STS_WIDTH 1 /* DC4_STS */
  148. #define WM831X_DC3_STS 0x0004 /* DC3_STS */
  149. #define WM831X_DC3_STS_MASK 0x0004 /* DC3_STS */
  150. #define WM831X_DC3_STS_SHIFT 2 /* DC3_STS */
  151. #define WM831X_DC3_STS_WIDTH 1 /* DC3_STS */
  152. #define WM831X_DC2_STS 0x0002 /* DC2_STS */
  153. #define WM831X_DC2_STS_MASK 0x0002 /* DC2_STS */
  154. #define WM831X_DC2_STS_SHIFT 1 /* DC2_STS */
  155. #define WM831X_DC2_STS_WIDTH 1 /* DC2_STS */
  156. #define WM831X_DC1_STS 0x0001 /* DC1_STS */
  157. #define WM831X_DC1_STS_MASK 0x0001 /* DC1_STS */
  158. #define WM831X_DC1_STS_SHIFT 0 /* DC1_STS */
  159. #define WM831X_DC1_STS_WIDTH 1 /* DC1_STS */
  160. /*
  161. * R16467 (0x4053) - LDO Status
  162. */
  163. #define WM831X_LDO11_STS 0x0400 /* LDO11_STS */
  164. #define WM831X_LDO11_STS_MASK 0x0400 /* LDO11_STS */
  165. #define WM831X_LDO11_STS_SHIFT 10 /* LDO11_STS */
  166. #define WM831X_LDO11_STS_WIDTH 1 /* LDO11_STS */
  167. #define WM831X_LDO10_STS 0x0200 /* LDO10_STS */
  168. #define WM831X_LDO10_STS_MASK 0x0200 /* LDO10_STS */
  169. #define WM831X_LDO10_STS_SHIFT 9 /* LDO10_STS */
  170. #define WM831X_LDO10_STS_WIDTH 1 /* LDO10_STS */
  171. #define WM831X_LDO9_STS 0x0100 /* LDO9_STS */
  172. #define WM831X_LDO9_STS_MASK 0x0100 /* LDO9_STS */
  173. #define WM831X_LDO9_STS_SHIFT 8 /* LDO9_STS */
  174. #define WM831X_LDO9_STS_WIDTH 1 /* LDO9_STS */
  175. #define WM831X_LDO8_STS 0x0080 /* LDO8_STS */
  176. #define WM831X_LDO8_STS_MASK 0x0080 /* LDO8_STS */
  177. #define WM831X_LDO8_STS_SHIFT 7 /* LDO8_STS */
  178. #define WM831X_LDO8_STS_WIDTH 1 /* LDO8_STS */
  179. #define WM831X_LDO7_STS 0x0040 /* LDO7_STS */
  180. #define WM831X_LDO7_STS_MASK 0x0040 /* LDO7_STS */
  181. #define WM831X_LDO7_STS_SHIFT 6 /* LDO7_STS */
  182. #define WM831X_LDO7_STS_WIDTH 1 /* LDO7_STS */
  183. #define WM831X_LDO6_STS 0x0020 /* LDO6_STS */
  184. #define WM831X_LDO6_STS_MASK 0x0020 /* LDO6_STS */
  185. #define WM831X_LDO6_STS_SHIFT 5 /* LDO6_STS */
  186. #define WM831X_LDO6_STS_WIDTH 1 /* LDO6_STS */
  187. #define WM831X_LDO5_STS 0x0010 /* LDO5_STS */
  188. #define WM831X_LDO5_STS_MASK 0x0010 /* LDO5_STS */
  189. #define WM831X_LDO5_STS_SHIFT 4 /* LDO5_STS */
  190. #define WM831X_LDO5_STS_WIDTH 1 /* LDO5_STS */
  191. #define WM831X_LDO4_STS 0x0008 /* LDO4_STS */
  192. #define WM831X_LDO4_STS_MASK 0x0008 /* LDO4_STS */
  193. #define WM831X_LDO4_STS_SHIFT 3 /* LDO4_STS */
  194. #define WM831X_LDO4_STS_WIDTH 1 /* LDO4_STS */
  195. #define WM831X_LDO3_STS 0x0004 /* LDO3_STS */
  196. #define WM831X_LDO3_STS_MASK 0x0004 /* LDO3_STS */
  197. #define WM831X_LDO3_STS_SHIFT 2 /* LDO3_STS */
  198. #define WM831X_LDO3_STS_WIDTH 1 /* LDO3_STS */
  199. #define WM831X_LDO2_STS 0x0002 /* LDO2_STS */
  200. #define WM831X_LDO2_STS_MASK 0x0002 /* LDO2_STS */
  201. #define WM831X_LDO2_STS_SHIFT 1 /* LDO2_STS */
  202. #define WM831X_LDO2_STS_WIDTH 1 /* LDO2_STS */
  203. #define WM831X_LDO1_STS 0x0001 /* LDO1_STS */
  204. #define WM831X_LDO1_STS_MASK 0x0001 /* LDO1_STS */
  205. #define WM831X_LDO1_STS_SHIFT 0 /* LDO1_STS */
  206. #define WM831X_LDO1_STS_WIDTH 1 /* LDO1_STS */
  207. /*
  208. * R16468 (0x4054) - DCDC UV Status
  209. */
  210. #define WM831X_DC2_OV_STS 0x2000 /* DC2_OV_STS */
  211. #define WM831X_DC2_OV_STS_MASK 0x2000 /* DC2_OV_STS */
  212. #define WM831X_DC2_OV_STS_SHIFT 13 /* DC2_OV_STS */
  213. #define WM831X_DC2_OV_STS_WIDTH 1 /* DC2_OV_STS */
  214. #define WM831X_DC1_OV_STS 0x1000 /* DC1_OV_STS */
  215. #define WM831X_DC1_OV_STS_MASK 0x1000 /* DC1_OV_STS */
  216. #define WM831X_DC1_OV_STS_SHIFT 12 /* DC1_OV_STS */
  217. #define WM831X_DC1_OV_STS_WIDTH 1 /* DC1_OV_STS */
  218. #define WM831X_DC2_HC_STS 0x0200 /* DC2_HC_STS */
  219. #define WM831X_DC2_HC_STS_MASK 0x0200 /* DC2_HC_STS */
  220. #define WM831X_DC2_HC_STS_SHIFT 9 /* DC2_HC_STS */
  221. #define WM831X_DC2_HC_STS_WIDTH 1 /* DC2_HC_STS */
  222. #define WM831X_DC1_HC_STS 0x0100 /* DC1_HC_STS */
  223. #define WM831X_DC1_HC_STS_MASK 0x0100 /* DC1_HC_STS */
  224. #define WM831X_DC1_HC_STS_SHIFT 8 /* DC1_HC_STS */
  225. #define WM831X_DC1_HC_STS_WIDTH 1 /* DC1_HC_STS */
  226. #define WM831X_DC4_UV_STS 0x0008 /* DC4_UV_STS */
  227. #define WM831X_DC4_UV_STS_MASK 0x0008 /* DC4_UV_STS */
  228. #define WM831X_DC4_UV_STS_SHIFT 3 /* DC4_UV_STS */
  229. #define WM831X_DC4_UV_STS_WIDTH 1 /* DC4_UV_STS */
  230. #define WM831X_DC3_UV_STS 0x0004 /* DC3_UV_STS */
  231. #define WM831X_DC3_UV_STS_MASK 0x0004 /* DC3_UV_STS */
  232. #define WM831X_DC3_UV_STS_SHIFT 2 /* DC3_UV_STS */
  233. #define WM831X_DC3_UV_STS_WIDTH 1 /* DC3_UV_STS */
  234. #define WM831X_DC2_UV_STS 0x0002 /* DC2_UV_STS */
  235. #define WM831X_DC2_UV_STS_MASK 0x0002 /* DC2_UV_STS */
  236. #define WM831X_DC2_UV_STS_SHIFT 1 /* DC2_UV_STS */
  237. #define WM831X_DC2_UV_STS_WIDTH 1 /* DC2_UV_STS */
  238. #define WM831X_DC1_UV_STS 0x0001 /* DC1_UV_STS */
  239. #define WM831X_DC1_UV_STS_MASK 0x0001 /* DC1_UV_STS */
  240. #define WM831X_DC1_UV_STS_SHIFT 0 /* DC1_UV_STS */
  241. #define WM831X_DC1_UV_STS_WIDTH 1 /* DC1_UV_STS */
  242. /*
  243. * R16469 (0x4055) - LDO UV Status
  244. */
  245. #define WM831X_INTLDO_UV_STS 0x8000 /* INTLDO_UV_STS */
  246. #define WM831X_INTLDO_UV_STS_MASK 0x8000 /* INTLDO_UV_STS */
  247. #define WM831X_INTLDO_UV_STS_SHIFT 15 /* INTLDO_UV_STS */
  248. #define WM831X_INTLDO_UV_STS_WIDTH 1 /* INTLDO_UV_STS */
  249. #define WM831X_LDO10_UV_STS 0x0200 /* LDO10_UV_STS */
  250. #define WM831X_LDO10_UV_STS_MASK 0x0200 /* LDO10_UV_STS */
  251. #define WM831X_LDO10_UV_STS_SHIFT 9 /* LDO10_UV_STS */
  252. #define WM831X_LDO10_UV_STS_WIDTH 1 /* LDO10_UV_STS */
  253. #define WM831X_LDO9_UV_STS 0x0100 /* LDO9_UV_STS */
  254. #define WM831X_LDO9_UV_STS_MASK 0x0100 /* LDO9_UV_STS */
  255. #define WM831X_LDO9_UV_STS_SHIFT 8 /* LDO9_UV_STS */
  256. #define WM831X_LDO9_UV_STS_WIDTH 1 /* LDO9_UV_STS */
  257. #define WM831X_LDO8_UV_STS 0x0080 /* LDO8_UV_STS */
  258. #define WM831X_LDO8_UV_STS_MASK 0x0080 /* LDO8_UV_STS */
  259. #define WM831X_LDO8_UV_STS_SHIFT 7 /* LDO8_UV_STS */
  260. #define WM831X_LDO8_UV_STS_WIDTH 1 /* LDO8_UV_STS */
  261. #define WM831X_LDO7_UV_STS 0x0040 /* LDO7_UV_STS */
  262. #define WM831X_LDO7_UV_STS_MASK 0x0040 /* LDO7_UV_STS */
  263. #define WM831X_LDO7_UV_STS_SHIFT 6 /* LDO7_UV_STS */
  264. #define WM831X_LDO7_UV_STS_WIDTH 1 /* LDO7_UV_STS */
  265. #define WM831X_LDO6_UV_STS 0x0020 /* LDO6_UV_STS */
  266. #define WM831X_LDO6_UV_STS_MASK 0x0020 /* LDO6_UV_STS */
  267. #define WM831X_LDO6_UV_STS_SHIFT 5 /* LDO6_UV_STS */
  268. #define WM831X_LDO6_UV_STS_WIDTH 1 /* LDO6_UV_STS */
  269. #define WM831X_LDO5_UV_STS 0x0010 /* LDO5_UV_STS */
  270. #define WM831X_LDO5_UV_STS_MASK 0x0010 /* LDO5_UV_STS */
  271. #define WM831X_LDO5_UV_STS_SHIFT 4 /* LDO5_UV_STS */
  272. #define WM831X_LDO5_UV_STS_WIDTH 1 /* LDO5_UV_STS */
  273. #define WM831X_LDO4_UV_STS 0x0008 /* LDO4_UV_STS */
  274. #define WM831X_LDO4_UV_STS_MASK 0x0008 /* LDO4_UV_STS */
  275. #define WM831X_LDO4_UV_STS_SHIFT 3 /* LDO4_UV_STS */
  276. #define WM831X_LDO4_UV_STS_WIDTH 1 /* LDO4_UV_STS */
  277. #define WM831X_LDO3_UV_STS 0x0004 /* LDO3_UV_STS */
  278. #define WM831X_LDO3_UV_STS_MASK 0x0004 /* LDO3_UV_STS */
  279. #define WM831X_LDO3_UV_STS_SHIFT 2 /* LDO3_UV_STS */
  280. #define WM831X_LDO3_UV_STS_WIDTH 1 /* LDO3_UV_STS */
  281. #define WM831X_LDO2_UV_STS 0x0002 /* LDO2_UV_STS */
  282. #define WM831X_LDO2_UV_STS_MASK 0x0002 /* LDO2_UV_STS */
  283. #define WM831X_LDO2_UV_STS_SHIFT 1 /* LDO2_UV_STS */
  284. #define WM831X_LDO2_UV_STS_WIDTH 1 /* LDO2_UV_STS */
  285. #define WM831X_LDO1_UV_STS 0x0001 /* LDO1_UV_STS */
  286. #define WM831X_LDO1_UV_STS_MASK 0x0001 /* LDO1_UV_STS */
  287. #define WM831X_LDO1_UV_STS_SHIFT 0 /* LDO1_UV_STS */
  288. #define WM831X_LDO1_UV_STS_WIDTH 1 /* LDO1_UV_STS */
  289. /*
  290. * R16470 (0x4056) - DC1 Control 1
  291. */
  292. #define WM831X_DC1_RATE_MASK 0xC000 /* DC1_RATE - [15:14] */
  293. #define WM831X_DC1_RATE_SHIFT 14 /* DC1_RATE - [15:14] */
  294. #define WM831X_DC1_RATE_WIDTH 2 /* DC1_RATE - [15:14] */
  295. #define WM831X_DC1_PHASE 0x1000 /* DC1_PHASE */
  296. #define WM831X_DC1_PHASE_MASK 0x1000 /* DC1_PHASE */
  297. #define WM831X_DC1_PHASE_SHIFT 12 /* DC1_PHASE */
  298. #define WM831X_DC1_PHASE_WIDTH 1 /* DC1_PHASE */
  299. #define WM831X_DC1_FREQ_MASK 0x0300 /* DC1_FREQ - [9:8] */
  300. #define WM831X_DC1_FREQ_SHIFT 8 /* DC1_FREQ - [9:8] */
  301. #define WM831X_DC1_FREQ_WIDTH 2 /* DC1_FREQ - [9:8] */
  302. #define WM831X_DC1_FLT 0x0080 /* DC1_FLT */
  303. #define WM831X_DC1_FLT_MASK 0x0080 /* DC1_FLT */
  304. #define WM831X_DC1_FLT_SHIFT 7 /* DC1_FLT */
  305. #define WM831X_DC1_FLT_WIDTH 1 /* DC1_FLT */
  306. #define WM831X_DC1_SOFT_START_MASK 0x0030 /* DC1_SOFT_START - [5:4] */
  307. #define WM831X_DC1_SOFT_START_SHIFT 4 /* DC1_SOFT_START - [5:4] */
  308. #define WM831X_DC1_SOFT_START_WIDTH 2 /* DC1_SOFT_START - [5:4] */
  309. #define WM831X_DC1_CAP_MASK 0x0003 /* DC1_CAP - [1:0] */
  310. #define WM831X_DC1_CAP_SHIFT 0 /* DC1_CAP - [1:0] */
  311. #define WM831X_DC1_CAP_WIDTH 2 /* DC1_CAP - [1:0] */
  312. /*
  313. * R16471 (0x4057) - DC1 Control 2
  314. */
  315. #define WM831X_DC1_ERR_ACT_MASK 0xC000 /* DC1_ERR_ACT - [15:14] */
  316. #define WM831X_DC1_ERR_ACT_SHIFT 14 /* DC1_ERR_ACT - [15:14] */
  317. #define WM831X_DC1_ERR_ACT_WIDTH 2 /* DC1_ERR_ACT - [15:14] */
  318. #define WM831X_DC1_HWC_SRC_MASK 0x1800 /* DC1_HWC_SRC - [12:11] */
  319. #define WM831X_DC1_HWC_SRC_SHIFT 11 /* DC1_HWC_SRC - [12:11] */
  320. #define WM831X_DC1_HWC_SRC_WIDTH 2 /* DC1_HWC_SRC - [12:11] */
  321. #define WM831X_DC1_HWC_VSEL 0x0400 /* DC1_HWC_VSEL */
  322. #define WM831X_DC1_HWC_VSEL_MASK 0x0400 /* DC1_HWC_VSEL */
  323. #define WM831X_DC1_HWC_VSEL_SHIFT 10 /* DC1_HWC_VSEL */
  324. #define WM831X_DC1_HWC_VSEL_WIDTH 1 /* DC1_HWC_VSEL */
  325. #define WM831X_DC1_HWC_MODE_MASK 0x0300 /* DC1_HWC_MODE - [9:8] */
  326. #define WM831X_DC1_HWC_MODE_SHIFT 8 /* DC1_HWC_MODE - [9:8] */
  327. #define WM831X_DC1_HWC_MODE_WIDTH 2 /* DC1_HWC_MODE - [9:8] */
  328. #define WM831X_DC1_HC_THR_MASK 0x0070 /* DC1_HC_THR - [6:4] */
  329. #define WM831X_DC1_HC_THR_SHIFT 4 /* DC1_HC_THR - [6:4] */
  330. #define WM831X_DC1_HC_THR_WIDTH 3 /* DC1_HC_THR - [6:4] */
  331. #define WM831X_DC1_HC_IND_ENA 0x0001 /* DC1_HC_IND_ENA */
  332. #define WM831X_DC1_HC_IND_ENA_MASK 0x0001 /* DC1_HC_IND_ENA */
  333. #define WM831X_DC1_HC_IND_ENA_SHIFT 0 /* DC1_HC_IND_ENA */
  334. #define WM831X_DC1_HC_IND_ENA_WIDTH 1 /* DC1_HC_IND_ENA */
  335. /*
  336. * R16472 (0x4058) - DC1 ON Config
  337. */
  338. #define WM831X_DC1_ON_SLOT_MASK 0xE000 /* DC1_ON_SLOT - [15:13] */
  339. #define WM831X_DC1_ON_SLOT_SHIFT 13 /* DC1_ON_SLOT - [15:13] */
  340. #define WM831X_DC1_ON_SLOT_WIDTH 3 /* DC1_ON_SLOT - [15:13] */
  341. #define WM831X_DC1_ON_MODE_MASK 0x0300 /* DC1_ON_MODE - [9:8] */
  342. #define WM831X_DC1_ON_MODE_SHIFT 8 /* DC1_ON_MODE - [9:8] */
  343. #define WM831X_DC1_ON_MODE_WIDTH 2 /* DC1_ON_MODE - [9:8] */
  344. #define WM831X_DC1_ON_VSEL_MASK 0x007F /* DC1_ON_VSEL - [6:0] */
  345. #define WM831X_DC1_ON_VSEL_SHIFT 0 /* DC1_ON_VSEL - [6:0] */
  346. #define WM831X_DC1_ON_VSEL_WIDTH 7 /* DC1_ON_VSEL - [6:0] */
  347. /*
  348. * R16473 (0x4059) - DC1 SLEEP Control
  349. */
  350. #define WM831X_DC1_SLP_SLOT_MASK 0xE000 /* DC1_SLP_SLOT - [15:13] */
  351. #define WM831X_DC1_SLP_SLOT_SHIFT 13 /* DC1_SLP_SLOT - [15:13] */
  352. #define WM831X_DC1_SLP_SLOT_WIDTH 3 /* DC1_SLP_SLOT - [15:13] */
  353. #define WM831X_DC1_SLP_MODE_MASK 0x0300 /* DC1_SLP_MODE - [9:8] */
  354. #define WM831X_DC1_SLP_MODE_SHIFT 8 /* DC1_SLP_MODE - [9:8] */
  355. #define WM831X_DC1_SLP_MODE_WIDTH 2 /* DC1_SLP_MODE - [9:8] */
  356. #define WM831X_DC1_SLP_VSEL_MASK 0x007F /* DC1_SLP_VSEL - [6:0] */
  357. #define WM831X_DC1_SLP_VSEL_SHIFT 0 /* DC1_SLP_VSEL - [6:0] */
  358. #define WM831X_DC1_SLP_VSEL_WIDTH 7 /* DC1_SLP_VSEL - [6:0] */
  359. /*
  360. * R16474 (0x405A) - DC1 DVS Control
  361. */
  362. #define WM831X_DC1_DVS_SRC_MASK 0x1800 /* DC1_DVS_SRC - [12:11] */
  363. #define WM831X_DC1_DVS_SRC_SHIFT 11 /* DC1_DVS_SRC - [12:11] */
  364. #define WM831X_DC1_DVS_SRC_WIDTH 2 /* DC1_DVS_SRC - [12:11] */
  365. #define WM831X_DC1_DVS_VSEL_MASK 0x007F /* DC1_DVS_VSEL - [6:0] */
  366. #define WM831X_DC1_DVS_VSEL_SHIFT 0 /* DC1_DVS_VSEL - [6:0] */
  367. #define WM831X_DC1_DVS_VSEL_WIDTH 7 /* DC1_DVS_VSEL - [6:0] */
  368. /*
  369. * R16475 (0x405B) - DC2 Control 1
  370. */
  371. #define WM831X_DC2_RATE_MASK 0xC000 /* DC2_RATE - [15:14] */
  372. #define WM831X_DC2_RATE_SHIFT 14 /* DC2_RATE - [15:14] */
  373. #define WM831X_DC2_RATE_WIDTH 2 /* DC2_RATE - [15:14] */
  374. #define WM831X_DC2_PHASE 0x1000 /* DC2_PHASE */
  375. #define WM831X_DC2_PHASE_MASK 0x1000 /* DC2_PHASE */
  376. #define WM831X_DC2_PHASE_SHIFT 12 /* DC2_PHASE */
  377. #define WM831X_DC2_PHASE_WIDTH 1 /* DC2_PHASE */
  378. #define WM831X_DC2_FREQ_MASK 0x0300 /* DC2_FREQ - [9:8] */
  379. #define WM831X_DC2_FREQ_SHIFT 8 /* DC2_FREQ - [9:8] */
  380. #define WM831X_DC2_FREQ_WIDTH 2 /* DC2_FREQ - [9:8] */
  381. #define WM831X_DC2_FLT 0x0080 /* DC2_FLT */
  382. #define WM831X_DC2_FLT_MASK 0x0080 /* DC2_FLT */
  383. #define WM831X_DC2_FLT_SHIFT 7 /* DC2_FLT */
  384. #define WM831X_DC2_FLT_WIDTH 1 /* DC2_FLT */
  385. #define WM831X_DC2_SOFT_START_MASK 0x0030 /* DC2_SOFT_START - [5:4] */
  386. #define WM831X_DC2_SOFT_START_SHIFT 4 /* DC2_SOFT_START - [5:4] */
  387. #define WM831X_DC2_SOFT_START_WIDTH 2 /* DC2_SOFT_START - [5:4] */
  388. #define WM831X_DC2_CAP_MASK 0x0003 /* DC2_CAP - [1:0] */
  389. #define WM831X_DC2_CAP_SHIFT 0 /* DC2_CAP - [1:0] */
  390. #define WM831X_DC2_CAP_WIDTH 2 /* DC2_CAP - [1:0] */
  391. /*
  392. * R16476 (0x405C) - DC2 Control 2
  393. */
  394. #define WM831X_DC2_ERR_ACT_MASK 0xC000 /* DC2_ERR_ACT - [15:14] */
  395. #define WM831X_DC2_ERR_ACT_SHIFT 14 /* DC2_ERR_ACT - [15:14] */
  396. #define WM831X_DC2_ERR_ACT_WIDTH 2 /* DC2_ERR_ACT - [15:14] */
  397. #define WM831X_DC2_HWC_SRC_MASK 0x1800 /* DC2_HWC_SRC - [12:11] */
  398. #define WM831X_DC2_HWC_SRC_SHIFT 11 /* DC2_HWC_SRC - [12:11] */
  399. #define WM831X_DC2_HWC_SRC_WIDTH 2 /* DC2_HWC_SRC - [12:11] */
  400. #define WM831X_DC2_HWC_VSEL 0x0400 /* DC2_HWC_VSEL */
  401. #define WM831X_DC2_HWC_VSEL_MASK 0x0400 /* DC2_HWC_VSEL */
  402. #define WM831X_DC2_HWC_VSEL_SHIFT 10 /* DC2_HWC_VSEL */
  403. #define WM831X_DC2_HWC_VSEL_WIDTH 1 /* DC2_HWC_VSEL */
  404. #define WM831X_DC2_HWC_MODE_MASK 0x0300 /* DC2_HWC_MODE - [9:8] */
  405. #define WM831X_DC2_HWC_MODE_SHIFT 8 /* DC2_HWC_MODE - [9:8] */
  406. #define WM831X_DC2_HWC_MODE_WIDTH 2 /* DC2_HWC_MODE - [9:8] */
  407. #define WM831X_DC2_HC_THR_MASK 0x0070 /* DC2_HC_THR - [6:4] */
  408. #define WM831X_DC2_HC_THR_SHIFT 4 /* DC2_HC_THR - [6:4] */
  409. #define WM831X_DC2_HC_THR_WIDTH 3 /* DC2_HC_THR - [6:4] */
  410. #define WM831X_DC2_HC_IND_ENA 0x0001 /* DC2_HC_IND_ENA */
  411. #define WM831X_DC2_HC_IND_ENA_MASK 0x0001 /* DC2_HC_IND_ENA */
  412. #define WM831X_DC2_HC_IND_ENA_SHIFT 0 /* DC2_HC_IND_ENA */
  413. #define WM831X_DC2_HC_IND_ENA_WIDTH 1 /* DC2_HC_IND_ENA */
  414. /*
  415. * R16477 (0x405D) - DC2 ON Config
  416. */
  417. #define WM831X_DC2_ON_SLOT_MASK 0xE000 /* DC2_ON_SLOT - [15:13] */
  418. #define WM831X_DC2_ON_SLOT_SHIFT 13 /* DC2_ON_SLOT - [15:13] */
  419. #define WM831X_DC2_ON_SLOT_WIDTH 3 /* DC2_ON_SLOT - [15:13] */
  420. #define WM831X_DC2_ON_MODE_MASK 0x0300 /* DC2_ON_MODE - [9:8] */
  421. #define WM831X_DC2_ON_MODE_SHIFT 8 /* DC2_ON_MODE - [9:8] */
  422. #define WM831X_DC2_ON_MODE_WIDTH 2 /* DC2_ON_MODE - [9:8] */
  423. #define WM831X_DC2_ON_VSEL_MASK 0x007F /* DC2_ON_VSEL - [6:0] */
  424. #define WM831X_DC2_ON_VSEL_SHIFT 0 /* DC2_ON_VSEL - [6:0] */
  425. #define WM831X_DC2_ON_VSEL_WIDTH 7 /* DC2_ON_VSEL - [6:0] */
  426. /*
  427. * R16478 (0x405E) - DC2 SLEEP Control
  428. */
  429. #define WM831X_DC2_SLP_SLOT_MASK 0xE000 /* DC2_SLP_SLOT - [15:13] */
  430. #define WM831X_DC2_SLP_SLOT_SHIFT 13 /* DC2_SLP_SLOT - [15:13] */
  431. #define WM831X_DC2_SLP_SLOT_WIDTH 3 /* DC2_SLP_SLOT - [15:13] */
  432. #define WM831X_DC2_SLP_MODE_MASK 0x0300 /* DC2_SLP_MODE - [9:8] */
  433. #define WM831X_DC2_SLP_MODE_SHIFT 8 /* DC2_SLP_MODE - [9:8] */
  434. #define WM831X_DC2_SLP_MODE_WIDTH 2 /* DC2_SLP_MODE - [9:8] */
  435. #define WM831X_DC2_SLP_VSEL_MASK 0x007F /* DC2_SLP_VSEL - [6:0] */
  436. #define WM831X_DC2_SLP_VSEL_SHIFT 0 /* DC2_SLP_VSEL - [6:0] */
  437. #define WM831X_DC2_SLP_VSEL_WIDTH 7 /* DC2_SLP_VSEL - [6:0] */
  438. /*
  439. * R16479 (0x405F) - DC2 DVS Control
  440. */
  441. #define WM831X_DC2_DVS_SRC_MASK 0x1800 /* DC2_DVS_SRC - [12:11] */
  442. #define WM831X_DC2_DVS_SRC_SHIFT 11 /* DC2_DVS_SRC - [12:11] */
  443. #define WM831X_DC2_DVS_SRC_WIDTH 2 /* DC2_DVS_SRC - [12:11] */
  444. #define WM831X_DC2_DVS_VSEL_MASK 0x007F /* DC2_DVS_VSEL - [6:0] */
  445. #define WM831X_DC2_DVS_VSEL_SHIFT 0 /* DC2_DVS_VSEL - [6:0] */
  446. #define WM831X_DC2_DVS_VSEL_WIDTH 7 /* DC2_DVS_VSEL - [6:0] */
  447. /*
  448. * R16480 (0x4060) - DC3 Control 1
  449. */
  450. #define WM831X_DC3_PHASE 0x1000 /* DC3_PHASE */
  451. #define WM831X_DC3_PHASE_MASK 0x1000 /* DC3_PHASE */
  452. #define WM831X_DC3_PHASE_SHIFT 12 /* DC3_PHASE */
  453. #define WM831X_DC3_PHASE_WIDTH 1 /* DC3_PHASE */
  454. #define WM831X_DC3_FLT 0x0080 /* DC3_FLT */
  455. #define WM831X_DC3_FLT_MASK 0x0080 /* DC3_FLT */
  456. #define WM831X_DC3_FLT_SHIFT 7 /* DC3_FLT */
  457. #define WM831X_DC3_FLT_WIDTH 1 /* DC3_FLT */
  458. #define WM831X_DC3_SOFT_START_MASK 0x0030 /* DC3_SOFT_START - [5:4] */
  459. #define WM831X_DC3_SOFT_START_SHIFT 4 /* DC3_SOFT_START - [5:4] */
  460. #define WM831X_DC3_SOFT_START_WIDTH 2 /* DC3_SOFT_START - [5:4] */
  461. #define WM831X_DC3_STNBY_LIM_MASK 0x000C /* DC3_STNBY_LIM - [3:2] */
  462. #define WM831X_DC3_STNBY_LIM_SHIFT 2 /* DC3_STNBY_LIM - [3:2] */
  463. #define WM831X_DC3_STNBY_LIM_WIDTH 2 /* DC3_STNBY_LIM - [3:2] */
  464. #define WM831X_DC3_CAP_MASK 0x0003 /* DC3_CAP - [1:0] */
  465. #define WM831X_DC3_CAP_SHIFT 0 /* DC3_CAP - [1:0] */
  466. #define WM831X_DC3_CAP_WIDTH 2 /* DC3_CAP - [1:0] */
  467. /*
  468. * R16481 (0x4061) - DC3 Control 2
  469. */
  470. #define WM831X_DC3_ERR_ACT_MASK 0xC000 /* DC3_ERR_ACT - [15:14] */
  471. #define WM831X_DC3_ERR_ACT_SHIFT 14 /* DC3_ERR_ACT - [15:14] */
  472. #define WM831X_DC3_ERR_ACT_WIDTH 2 /* DC3_ERR_ACT - [15:14] */
  473. #define WM831X_DC3_HWC_SRC_MASK 0x1800 /* DC3_HWC_SRC - [12:11] */
  474. #define WM831X_DC3_HWC_SRC_SHIFT 11 /* DC3_HWC_SRC - [12:11] */
  475. #define WM831X_DC3_HWC_SRC_WIDTH 2 /* DC3_HWC_SRC - [12:11] */
  476. #define WM831X_DC3_HWC_VSEL 0x0400 /* DC3_HWC_VSEL */
  477. #define WM831X_DC3_HWC_VSEL_MASK 0x0400 /* DC3_HWC_VSEL */
  478. #define WM831X_DC3_HWC_VSEL_SHIFT 10 /* DC3_HWC_VSEL */
  479. #define WM831X_DC3_HWC_VSEL_WIDTH 1 /* DC3_HWC_VSEL */
  480. #define WM831X_DC3_HWC_MODE_MASK 0x0300 /* DC3_HWC_MODE - [9:8] */
  481. #define WM831X_DC3_HWC_MODE_SHIFT 8 /* DC3_HWC_MODE - [9:8] */
  482. #define WM831X_DC3_HWC_MODE_WIDTH 2 /* DC3_HWC_MODE - [9:8] */
  483. #define WM831X_DC3_OVP 0x0080 /* DC3_OVP */
  484. #define WM831X_DC3_OVP_MASK 0x0080 /* DC3_OVP */
  485. #define WM831X_DC3_OVP_SHIFT 7 /* DC3_OVP */
  486. #define WM831X_DC3_OVP_WIDTH 1 /* DC3_OVP */
  487. /*
  488. * R16482 (0x4062) - DC3 ON Config
  489. */
  490. #define WM831X_DC3_ON_SLOT_MASK 0xE000 /* DC3_ON_SLOT - [15:13] */
  491. #define WM831X_DC3_ON_SLOT_SHIFT 13 /* DC3_ON_SLOT - [15:13] */
  492. #define WM831X_DC3_ON_SLOT_WIDTH 3 /* DC3_ON_SLOT - [15:13] */
  493. #define WM831X_DC3_ON_MODE_MASK 0x0300 /* DC3_ON_MODE - [9:8] */
  494. #define WM831X_DC3_ON_MODE_SHIFT 8 /* DC3_ON_MODE - [9:8] */
  495. #define WM831X_DC3_ON_MODE_WIDTH 2 /* DC3_ON_MODE - [9:8] */
  496. #define WM831X_DC3_ON_VSEL_MASK 0x007F /* DC3_ON_VSEL - [6:0] */
  497. #define WM831X_DC3_ON_VSEL_SHIFT 0 /* DC3_ON_VSEL - [6:0] */
  498. #define WM831X_DC3_ON_VSEL_WIDTH 7 /* DC3_ON_VSEL - [6:0] */
  499. /*
  500. * R16483 (0x4063) - DC3 SLEEP Control
  501. */
  502. #define WM831X_DC3_SLP_SLOT_MASK 0xE000 /* DC3_SLP_SLOT - [15:13] */
  503. #define WM831X_DC3_SLP_SLOT_SHIFT 13 /* DC3_SLP_SLOT - [15:13] */
  504. #define WM831X_DC3_SLP_SLOT_WIDTH 3 /* DC3_SLP_SLOT - [15:13] */
  505. #define WM831X_DC3_SLP_MODE_MASK 0x0300 /* DC3_SLP_MODE - [9:8] */
  506. #define WM831X_DC3_SLP_MODE_SHIFT 8 /* DC3_SLP_MODE - [9:8] */
  507. #define WM831X_DC3_SLP_MODE_WIDTH 2 /* DC3_SLP_MODE - [9:8] */
  508. #define WM831X_DC3_SLP_VSEL_MASK 0x007F /* DC3_SLP_VSEL - [6:0] */
  509. #define WM831X_DC3_SLP_VSEL_SHIFT 0 /* DC3_SLP_VSEL - [6:0] */
  510. #define WM831X_DC3_SLP_VSEL_WIDTH 7 /* DC3_SLP_VSEL - [6:0] */
  511. /*
  512. * R16484 (0x4064) - DC4 Control
  513. */
  514. #define WM831X_DC4_ERR_ACT_MASK 0xC000 /* DC4_ERR_ACT - [15:14] */
  515. #define WM831X_DC4_ERR_ACT_SHIFT 14 /* DC4_ERR_ACT - [15:14] */
  516. #define WM831X_DC4_ERR_ACT_WIDTH 2 /* DC4_ERR_ACT - [15:14] */
  517. #define WM831X_DC4_HWC_SRC_MASK 0x1800 /* DC4_HWC_SRC - [12:11] */
  518. #define WM831X_DC4_HWC_SRC_SHIFT 11 /* DC4_HWC_SRC - [12:11] */
  519. #define WM831X_DC4_HWC_SRC_WIDTH 2 /* DC4_HWC_SRC - [12:11] */
  520. #define WM831X_DC4_HWC_MODE 0x0100 /* DC4_HWC_MODE */
  521. #define WM831X_DC4_HWC_MODE_MASK 0x0100 /* DC4_HWC_MODE */
  522. #define WM831X_DC4_HWC_MODE_SHIFT 8 /* DC4_HWC_MODE */
  523. #define WM831X_DC4_HWC_MODE_WIDTH 1 /* DC4_HWC_MODE */
  524. #define WM831X_DC4_RANGE_MASK 0x000C /* DC4_RANGE - [3:2] */
  525. #define WM831X_DC4_RANGE_SHIFT 2 /* DC4_RANGE - [3:2] */
  526. #define WM831X_DC4_RANGE_WIDTH 2 /* DC4_RANGE - [3:2] */
  527. #define WM831X_DC4_FBSRC 0x0001 /* DC4_FBSRC */
  528. #define WM831X_DC4_FBSRC_MASK 0x0001 /* DC4_FBSRC */
  529. #define WM831X_DC4_FBSRC_SHIFT 0 /* DC4_FBSRC */
  530. #define WM831X_DC4_FBSRC_WIDTH 1 /* DC4_FBSRC */
  531. /*
  532. * R16485 (0x4065) - DC4 SLEEP Control
  533. */
  534. #define WM831X_DC4_SLPENA 0x0100 /* DC4_SLPENA */
  535. #define WM831X_DC4_SLPENA_MASK 0x0100 /* DC4_SLPENA */
  536. #define WM831X_DC4_SLPENA_SHIFT 8 /* DC4_SLPENA */
  537. #define WM831X_DC4_SLPENA_WIDTH 1 /* DC4_SLPENA */
  538. /*
  539. * R16488 (0x4068) - LDO1 Control
  540. */
  541. #define WM831X_LDO1_ERR_ACT_MASK 0xC000 /* LDO1_ERR_ACT - [15:14] */
  542. #define WM831X_LDO1_ERR_ACT_SHIFT 14 /* LDO1_ERR_ACT - [15:14] */
  543. #define WM831X_LDO1_ERR_ACT_WIDTH 2 /* LDO1_ERR_ACT - [15:14] */
  544. #define WM831X_LDO1_HWC_SRC_MASK 0x1800 /* LDO1_HWC_SRC - [12:11] */
  545. #define WM831X_LDO1_HWC_SRC_SHIFT 11 /* LDO1_HWC_SRC - [12:11] */
  546. #define WM831X_LDO1_HWC_SRC_WIDTH 2 /* LDO1_HWC_SRC - [12:11] */
  547. #define WM831X_LDO1_HWC_VSEL 0x0400 /* LDO1_HWC_VSEL */
  548. #define WM831X_LDO1_HWC_VSEL_MASK 0x0400 /* LDO1_HWC_VSEL */
  549. #define WM831X_LDO1_HWC_VSEL_SHIFT 10 /* LDO1_HWC_VSEL */
  550. #define WM831X_LDO1_HWC_VSEL_WIDTH 1 /* LDO1_HWC_VSEL */
  551. #define WM831X_LDO1_HWC_MODE_MASK 0x0300 /* LDO1_HWC_MODE - [9:8] */
  552. #define WM831X_LDO1_HWC_MODE_SHIFT 8 /* LDO1_HWC_MODE - [9:8] */
  553. #define WM831X_LDO1_HWC_MODE_WIDTH 2 /* LDO1_HWC_MODE - [9:8] */
  554. #define WM831X_LDO1_FLT 0x0080 /* LDO1_FLT */
  555. #define WM831X_LDO1_FLT_MASK 0x0080 /* LDO1_FLT */
  556. #define WM831X_LDO1_FLT_SHIFT 7 /* LDO1_FLT */
  557. #define WM831X_LDO1_FLT_WIDTH 1 /* LDO1_FLT */
  558. #define WM831X_LDO1_SWI 0x0040 /* LDO1_SWI */
  559. #define WM831X_LDO1_SWI_MASK 0x0040 /* LDO1_SWI */
  560. #define WM831X_LDO1_SWI_SHIFT 6 /* LDO1_SWI */
  561. #define WM831X_LDO1_SWI_WIDTH 1 /* LDO1_SWI */
  562. #define WM831X_LDO1_LP_MODE 0x0001 /* LDO1_LP_MODE */
  563. #define WM831X_LDO1_LP_MODE_MASK 0x0001 /* LDO1_LP_MODE */
  564. #define WM831X_LDO1_LP_MODE_SHIFT 0 /* LDO1_LP_MODE */
  565. #define WM831X_LDO1_LP_MODE_WIDTH 1 /* LDO1_LP_MODE */
  566. /*
  567. * R16489 (0x4069) - LDO1 ON Control
  568. */
  569. #define WM831X_LDO1_ON_SLOT_MASK 0xE000 /* LDO1_ON_SLOT - [15:13] */
  570. #define WM831X_LDO1_ON_SLOT_SHIFT 13 /* LDO1_ON_SLOT - [15:13] */
  571. #define WM831X_LDO1_ON_SLOT_WIDTH 3 /* LDO1_ON_SLOT - [15:13] */
  572. #define WM831X_LDO1_ON_MODE 0x0100 /* LDO1_ON_MODE */
  573. #define WM831X_LDO1_ON_MODE_MASK 0x0100 /* LDO1_ON_MODE */
  574. #define WM831X_LDO1_ON_MODE_SHIFT 8 /* LDO1_ON_MODE */
  575. #define WM831X_LDO1_ON_MODE_WIDTH 1 /* LDO1_ON_MODE */
  576. #define WM831X_LDO1_ON_VSEL_MASK 0x001F /* LDO1_ON_VSEL - [4:0] */
  577. #define WM831X_LDO1_ON_VSEL_SHIFT 0 /* LDO1_ON_VSEL - [4:0] */
  578. #define WM831X_LDO1_ON_VSEL_WIDTH 5 /* LDO1_ON_VSEL - [4:0] */
  579. /*
  580. * R16490 (0x406A) - LDO1 SLEEP Control
  581. */
  582. #define WM831X_LDO1_SLP_SLOT_MASK 0xE000 /* LDO1_SLP_SLOT - [15:13] */
  583. #define WM831X_LDO1_SLP_SLOT_SHIFT 13 /* LDO1_SLP_SLOT - [15:13] */
  584. #define WM831X_LDO1_SLP_SLOT_WIDTH 3 /* LDO1_SLP_SLOT - [15:13] */
  585. #define WM831X_LDO1_SLP_MODE 0x0100 /* LDO1_SLP_MODE */
  586. #define WM831X_LDO1_SLP_MODE_MASK 0x0100 /* LDO1_SLP_MODE */
  587. #define WM831X_LDO1_SLP_MODE_SHIFT 8 /* LDO1_SLP_MODE */
  588. #define WM831X_LDO1_SLP_MODE_WIDTH 1 /* LDO1_SLP_MODE */
  589. #define WM831X_LDO1_SLP_VSEL_MASK 0x001F /* LDO1_SLP_VSEL - [4:0] */
  590. #define WM831X_LDO1_SLP_VSEL_SHIFT 0 /* LDO1_SLP_VSEL - [4:0] */
  591. #define WM831X_LDO1_SLP_VSEL_WIDTH 5 /* LDO1_SLP_VSEL - [4:0] */
  592. /*
  593. * R16491 (0x406B) - LDO2 Control
  594. */
  595. #define WM831X_LDO2_ERR_ACT_MASK 0xC000 /* LDO2_ERR_ACT - [15:14] */
  596. #define WM831X_LDO2_ERR_ACT_SHIFT 14 /* LDO2_ERR_ACT - [15:14] */
  597. #define WM831X_LDO2_ERR_ACT_WIDTH 2 /* LDO2_ERR_ACT - [15:14] */
  598. #define WM831X_LDO2_HWC_SRC_MASK 0x1800 /* LDO2_HWC_SRC - [12:11] */
  599. #define WM831X_LDO2_HWC_SRC_SHIFT 11 /* LDO2_HWC_SRC - [12:11] */
  600. #define WM831X_LDO2_HWC_SRC_WIDTH 2 /* LDO2_HWC_SRC - [12:11] */
  601. #define WM831X_LDO2_HWC_VSEL 0x0400 /* LDO2_HWC_VSEL */
  602. #define WM831X_LDO2_HWC_VSEL_MASK 0x0400 /* LDO2_HWC_VSEL */
  603. #define WM831X_LDO2_HWC_VSEL_SHIFT 10 /* LDO2_HWC_VSEL */
  604. #define WM831X_LDO2_HWC_VSEL_WIDTH 1 /* LDO2_HWC_VSEL */
  605. #define WM831X_LDO2_HWC_MODE_MASK 0x0300 /* LDO2_HWC_MODE - [9:8] */
  606. #define WM831X_LDO2_HWC_MODE_SHIFT 8 /* LDO2_HWC_MODE - [9:8] */
  607. #define WM831X_LDO2_HWC_MODE_WIDTH 2 /* LDO2_HWC_MODE - [9:8] */
  608. #define WM831X_LDO2_FLT 0x0080 /* LDO2_FLT */
  609. #define WM831X_LDO2_FLT_MASK 0x0080 /* LDO2_FLT */
  610. #define WM831X_LDO2_FLT_SHIFT 7 /* LDO2_FLT */
  611. #define WM831X_LDO2_FLT_WIDTH 1 /* LDO2_FLT */
  612. #define WM831X_LDO2_SWI 0x0040 /* LDO2_SWI */
  613. #define WM831X_LDO2_SWI_MASK 0x0040 /* LDO2_SWI */
  614. #define WM831X_LDO2_SWI_SHIFT 6 /* LDO2_SWI */
  615. #define WM831X_LDO2_SWI_WIDTH 1 /* LDO2_SWI */
  616. #define WM831X_LDO2_LP_MODE 0x0001 /* LDO2_LP_MODE */
  617. #define WM831X_LDO2_LP_MODE_MASK 0x0001 /* LDO2_LP_MODE */
  618. #define WM831X_LDO2_LP_MODE_SHIFT 0 /* LDO2_LP_MODE */
  619. #define WM831X_LDO2_LP_MODE_WIDTH 1 /* LDO2_LP_MODE */
  620. /*
  621. * R16492 (0x406C) - LDO2 ON Control
  622. */
  623. #define WM831X_LDO2_ON_SLOT_MASK 0xE000 /* LDO2_ON_SLOT - [15:13] */
  624. #define WM831X_LDO2_ON_SLOT_SHIFT 13 /* LDO2_ON_SLOT - [15:13] */
  625. #define WM831X_LDO2_ON_SLOT_WIDTH 3 /* LDO2_ON_SLOT - [15:13] */
  626. #define WM831X_LDO2_ON_MODE 0x0100 /* LDO2_ON_MODE */
  627. #define WM831X_LDO2_ON_MODE_MASK 0x0100 /* LDO2_ON_MODE */
  628. #define WM831X_LDO2_ON_MODE_SHIFT 8 /* LDO2_ON_MODE */
  629. #define WM831X_LDO2_ON_MODE_WIDTH 1 /* LDO2_ON_MODE */
  630. #define WM831X_LDO2_ON_VSEL_MASK 0x001F /* LDO2_ON_VSEL - [4:0] */
  631. #define WM831X_LDO2_ON_VSEL_SHIFT 0 /* LDO2_ON_VSEL - [4:0] */
  632. #define WM831X_LDO2_ON_VSEL_WIDTH 5 /* LDO2_ON_VSEL - [4:0] */
  633. /*
  634. * R16493 (0x406D) - LDO2 SLEEP Control
  635. */
  636. #define WM831X_LDO2_SLP_SLOT_MASK 0xE000 /* LDO2_SLP_SLOT - [15:13] */
  637. #define WM831X_LDO2_SLP_SLOT_SHIFT 13 /* LDO2_SLP_SLOT - [15:13] */
  638. #define WM831X_LDO2_SLP_SLOT_WIDTH 3 /* LDO2_SLP_SLOT - [15:13] */
  639. #define WM831X_LDO2_SLP_MODE 0x0100 /* LDO2_SLP_MODE */
  640. #define WM831X_LDO2_SLP_MODE_MASK 0x0100 /* LDO2_SLP_MODE */
  641. #define WM831X_LDO2_SLP_MODE_SHIFT 8 /* LDO2_SLP_MODE */
  642. #define WM831X_LDO2_SLP_MODE_WIDTH 1 /* LDO2_SLP_MODE */
  643. #define WM831X_LDO2_SLP_VSEL_MASK 0x001F /* LDO2_SLP_VSEL - [4:0] */
  644. #define WM831X_LDO2_SLP_VSEL_SHIFT 0 /* LDO2_SLP_VSEL - [4:0] */
  645. #define WM831X_LDO2_SLP_VSEL_WIDTH 5 /* LDO2_SLP_VSEL - [4:0] */
  646. /*
  647. * R16494 (0x406E) - LDO3 Control
  648. */
  649. #define WM831X_LDO3_ERR_ACT_MASK 0xC000 /* LDO3_ERR_ACT - [15:14] */
  650. #define WM831X_LDO3_ERR_ACT_SHIFT 14 /* LDO3_ERR_ACT - [15:14] */
  651. #define WM831X_LDO3_ERR_ACT_WIDTH 2 /* LDO3_ERR_ACT - [15:14] */
  652. #define WM831X_LDO3_HWC_SRC_MASK 0x1800 /* LDO3_HWC_SRC - [12:11] */
  653. #define WM831X_LDO3_HWC_SRC_SHIFT 11 /* LDO3_HWC_SRC - [12:11] */
  654. #define WM831X_LDO3_HWC_SRC_WIDTH 2 /* LDO3_HWC_SRC - [12:11] */
  655. #define WM831X_LDO3_HWC_VSEL 0x0400 /* LDO3_HWC_VSEL */
  656. #define WM831X_LDO3_HWC_VSEL_MASK 0x0400 /* LDO3_HWC_VSEL */
  657. #define WM831X_LDO3_HWC_VSEL_SHIFT 10 /* LDO3_HWC_VSEL */
  658. #define WM831X_LDO3_HWC_VSEL_WIDTH 1 /* LDO3_HWC_VSEL */
  659. #define WM831X_LDO3_HWC_MODE_MASK 0x0300 /* LDO3_HWC_MODE - [9:8] */
  660. #define WM831X_LDO3_HWC_MODE_SHIFT 8 /* LDO3_HWC_MODE - [9:8] */
  661. #define WM831X_LDO3_HWC_MODE_WIDTH 2 /* LDO3_HWC_MODE - [9:8] */
  662. #define WM831X_LDO3_FLT 0x0080 /* LDO3_FLT */
  663. #define WM831X_LDO3_FLT_MASK 0x0080 /* LDO3_FLT */
  664. #define WM831X_LDO3_FLT_SHIFT 7 /* LDO3_FLT */
  665. #define WM831X_LDO3_FLT_WIDTH 1 /* LDO3_FLT */
  666. #define WM831X_LDO3_SWI 0x0040 /* LDO3_SWI */
  667. #define WM831X_LDO3_SWI_MASK 0x0040 /* LDO3_SWI */
  668. #define WM831X_LDO3_SWI_SHIFT 6 /* LDO3_SWI */
  669. #define WM831X_LDO3_SWI_WIDTH 1 /* LDO3_SWI */
  670. #define WM831X_LDO3_LP_MODE 0x0001 /* LDO3_LP_MODE */
  671. #define WM831X_LDO3_LP_MODE_MASK 0x0001 /* LDO3_LP_MODE */
  672. #define WM831X_LDO3_LP_MODE_SHIFT 0 /* LDO3_LP_MODE */
  673. #define WM831X_LDO3_LP_MODE_WIDTH 1 /* LDO3_LP_MODE */
  674. /*
  675. * R16495 (0x406F) - LDO3 ON Control
  676. */
  677. #define WM831X_LDO3_ON_SLOT_MASK 0xE000 /* LDO3_ON_SLOT - [15:13] */
  678. #define WM831X_LDO3_ON_SLOT_SHIFT 13 /* LDO3_ON_SLOT - [15:13] */
  679. #define WM831X_LDO3_ON_SLOT_WIDTH 3 /* LDO3_ON_SLOT - [15:13] */
  680. #define WM831X_LDO3_ON_MODE 0x0100 /* LDO3_ON_MODE */
  681. #define WM831X_LDO3_ON_MODE_MASK 0x0100 /* LDO3_ON_MODE */
  682. #define WM831X_LDO3_ON_MODE_SHIFT 8 /* LDO3_ON_MODE */
  683. #define WM831X_LDO3_ON_MODE_WIDTH 1 /* LDO3_ON_MODE */
  684. #define WM831X_LDO3_ON_VSEL_MASK 0x001F /* LDO3_ON_VSEL - [4:0] */
  685. #define WM831X_LDO3_ON_VSEL_SHIFT 0 /* LDO3_ON_VSEL - [4:0] */
  686. #define WM831X_LDO3_ON_VSEL_WIDTH 5 /* LDO3_ON_VSEL - [4:0] */
  687. /*
  688. * R16496 (0x4070) - LDO3 SLEEP Control
  689. */
  690. #define WM831X_LDO3_SLP_SLOT_MASK 0xE000 /* LDO3_SLP_SLOT - [15:13] */
  691. #define WM831X_LDO3_SLP_SLOT_SHIFT 13 /* LDO3_SLP_SLOT - [15:13] */
  692. #define WM831X_LDO3_SLP_SLOT_WIDTH 3 /* LDO3_SLP_SLOT - [15:13] */
  693. #define WM831X_LDO3_SLP_MODE 0x0100 /* LDO3_SLP_MODE */
  694. #define WM831X_LDO3_SLP_MODE_MASK 0x0100 /* LDO3_SLP_MODE */
  695. #define WM831X_LDO3_SLP_MODE_SHIFT 8 /* LDO3_SLP_MODE */
  696. #define WM831X_LDO3_SLP_MODE_WIDTH 1 /* LDO3_SLP_MODE */
  697. #define WM831X_LDO3_SLP_VSEL_MASK 0x001F /* LDO3_SLP_VSEL - [4:0] */
  698. #define WM831X_LDO3_SLP_VSEL_SHIFT 0 /* LDO3_SLP_VSEL - [4:0] */
  699. #define WM831X_LDO3_SLP_VSEL_WIDTH 5 /* LDO3_SLP_VSEL - [4:0] */
  700. /*
  701. * R16497 (0x4071) - LDO4 Control
  702. */
  703. #define WM831X_LDO4_ERR_ACT_MASK 0xC000 /* LDO4_ERR_ACT - [15:14] */
  704. #define WM831X_LDO4_ERR_ACT_SHIFT 14 /* LDO4_ERR_ACT - [15:14] */
  705. #define WM831X_LDO4_ERR_ACT_WIDTH 2 /* LDO4_ERR_ACT - [15:14] */
  706. #define WM831X_LDO4_HWC_SRC_MASK 0x1800 /* LDO4_HWC_SRC - [12:11] */
  707. #define WM831X_LDO4_HWC_SRC_SHIFT 11 /* LDO4_HWC_SRC - [12:11] */
  708. #define WM831X_LDO4_HWC_SRC_WIDTH 2 /* LDO4_HWC_SRC - [12:11] */
  709. #define WM831X_LDO4_HWC_VSEL 0x0400 /* LDO4_HWC_VSEL */
  710. #define WM831X_LDO4_HWC_VSEL_MASK 0x0400 /* LDO4_HWC_VSEL */
  711. #define WM831X_LDO4_HWC_VSEL_SHIFT 10 /* LDO4_HWC_VSEL */
  712. #define WM831X_LDO4_HWC_VSEL_WIDTH 1 /* LDO4_HWC_VSEL */
  713. #define WM831X_LDO4_HWC_MODE_MASK 0x0300 /* LDO4_HWC_MODE - [9:8] */
  714. #define WM831X_LDO4_HWC_MODE_SHIFT 8 /* LDO4_HWC_MODE - [9:8] */
  715. #define WM831X_LDO4_HWC_MODE_WIDTH 2 /* LDO4_HWC_MODE - [9:8] */
  716. #define WM831X_LDO4_FLT 0x0080 /* LDO4_FLT */
  717. #define WM831X_LDO4_FLT_MASK 0x0080 /* LDO4_FLT */
  718. #define WM831X_LDO4_FLT_SHIFT 7 /* LDO4_FLT */
  719. #define WM831X_LDO4_FLT_WIDTH 1 /* LDO4_FLT */
  720. #define WM831X_LDO4_SWI 0x0040 /* LDO4_SWI */
  721. #define WM831X_LDO4_SWI_MASK 0x0040 /* LDO4_SWI */
  722. #define WM831X_LDO4_SWI_SHIFT 6 /* LDO4_SWI */
  723. #define WM831X_LDO4_SWI_WIDTH 1 /* LDO4_SWI */
  724. #define WM831X_LDO4_LP_MODE 0x0001 /* LDO4_LP_MODE */
  725. #define WM831X_LDO4_LP_MODE_MASK 0x0001 /* LDO4_LP_MODE */
  726. #define WM831X_LDO4_LP_MODE_SHIFT 0 /* LDO4_LP_MODE */
  727. #define WM831X_LDO4_LP_MODE_WIDTH 1 /* LDO4_LP_MODE */
  728. /*
  729. * R16498 (0x4072) - LDO4 ON Control
  730. */
  731. #define WM831X_LDO4_ON_SLOT_MASK 0xE000 /* LDO4_ON_SLOT - [15:13] */
  732. #define WM831X_LDO4_ON_SLOT_SHIFT 13 /* LDO4_ON_SLOT - [15:13] */
  733. #define WM831X_LDO4_ON_SLOT_WIDTH 3 /* LDO4_ON_SLOT - [15:13] */
  734. #define WM831X_LDO4_ON_MODE 0x0100 /* LDO4_ON_MODE */
  735. #define WM831X_LDO4_ON_MODE_MASK 0x0100 /* LDO4_ON_MODE */
  736. #define WM831X_LDO4_ON_MODE_SHIFT 8 /* LDO4_ON_MODE */
  737. #define WM831X_LDO4_ON_MODE_WIDTH 1 /* LDO4_ON_MODE */
  738. #define WM831X_LDO4_ON_VSEL_MASK 0x001F /* LDO4_ON_VSEL - [4:0] */
  739. #define WM831X_LDO4_ON_VSEL_SHIFT 0 /* LDO4_ON_VSEL - [4:0] */
  740. #define WM831X_LDO4_ON_VSEL_WIDTH 5 /* LDO4_ON_VSEL - [4:0] */
  741. /*
  742. * R16499 (0x4073) - LDO4 SLEEP Control
  743. */
  744. #define WM831X_LDO4_SLP_SLOT_MASK 0xE000 /* LDO4_SLP_SLOT - [15:13] */
  745. #define WM831X_LDO4_SLP_SLOT_SHIFT 13 /* LDO4_SLP_SLOT - [15:13] */
  746. #define WM831X_LDO4_SLP_SLOT_WIDTH 3 /* LDO4_SLP_SLOT - [15:13] */
  747. #define WM831X_LDO4_SLP_MODE 0x0100 /* LDO4_SLP_MODE */
  748. #define WM831X_LDO4_SLP_MODE_MASK 0x0100 /* LDO4_SLP_MODE */
  749. #define WM831X_LDO4_SLP_MODE_SHIFT 8 /* LDO4_SLP_MODE */
  750. #define WM831X_LDO4_SLP_MODE_WIDTH 1 /* LDO4_SLP_MODE */
  751. #define WM831X_LDO4_SLP_VSEL_MASK 0x001F /* LDO4_SLP_VSEL - [4:0] */
  752. #define WM831X_LDO4_SLP_VSEL_SHIFT 0 /* LDO4_SLP_VSEL - [4:0] */
  753. #define WM831X_LDO4_SLP_VSEL_WIDTH 5 /* LDO4_SLP_VSEL - [4:0] */
  754. /*
  755. * R16500 (0x4074) - LDO5 Control
  756. */
  757. #define WM831X_LDO5_ERR_ACT_MASK 0xC000 /* LDO5_ERR_ACT - [15:14] */
  758. #define WM831X_LDO5_ERR_ACT_SHIFT 14 /* LDO5_ERR_ACT - [15:14] */
  759. #define WM831X_LDO5_ERR_ACT_WIDTH 2 /* LDO5_ERR_ACT - [15:14] */
  760. #define WM831X_LDO5_HWC_SRC_MASK 0x1800 /* LDO5_HWC_SRC - [12:11] */
  761. #define WM831X_LDO5_HWC_SRC_SHIFT 11 /* LDO5_HWC_SRC - [12:11] */
  762. #define WM831X_LDO5_HWC_SRC_WIDTH 2 /* LDO5_HWC_SRC - [12:11] */
  763. #define WM831X_LDO5_HWC_VSEL 0x0400 /* LDO5_HWC_VSEL */
  764. #define WM831X_LDO5_HWC_VSEL_MASK 0x0400 /* LDO5_HWC_VSEL */
  765. #define WM831X_LDO5_HWC_VSEL_SHIFT 10 /* LDO5_HWC_VSEL */
  766. #define WM831X_LDO5_HWC_VSEL_WIDTH 1 /* LDO5_HWC_VSEL */
  767. #define WM831X_LDO5_HWC_MODE_MASK 0x0300 /* LDO5_HWC_MODE - [9:8] */
  768. #define WM831X_LDO5_HWC_MODE_SHIFT 8 /* LDO5_HWC_MODE - [9:8] */
  769. #define WM831X_LDO5_HWC_MODE_WIDTH 2 /* LDO5_HWC_MODE - [9:8] */
  770. #define WM831X_LDO5_FLT 0x0080 /* LDO5_FLT */
  771. #define WM831X_LDO5_FLT_MASK 0x0080 /* LDO5_FLT */
  772. #define WM831X_LDO5_FLT_SHIFT 7 /* LDO5_FLT */
  773. #define WM831X_LDO5_FLT_WIDTH 1 /* LDO5_FLT */
  774. #define WM831X_LDO5_SWI 0x0040 /* LDO5_SWI */
  775. #define WM831X_LDO5_SWI_MASK 0x0040 /* LDO5_SWI */
  776. #define WM831X_LDO5_SWI_SHIFT 6 /* LDO5_SWI */
  777. #define WM831X_LDO5_SWI_WIDTH 1 /* LDO5_SWI */
  778. #define WM831X_LDO5_LP_MODE 0x0001 /* LDO5_LP_MODE */
  779. #define WM831X_LDO5_LP_MODE_MASK 0x0001 /* LDO5_LP_MODE */
  780. #define WM831X_LDO5_LP_MODE_SHIFT 0 /* LDO5_LP_MODE */
  781. #define WM831X_LDO5_LP_MODE_WIDTH 1 /* LDO5_LP_MODE */
  782. /*
  783. * R16501 (0x4075) - LDO5 ON Control
  784. */
  785. #define WM831X_LDO5_ON_SLOT_MASK 0xE000 /* LDO5_ON_SLOT - [15:13] */
  786. #define WM831X_LDO5_ON_SLOT_SHIFT 13 /* LDO5_ON_SLOT - [15:13] */
  787. #define WM831X_LDO5_ON_SLOT_WIDTH 3 /* LDO5_ON_SLOT - [15:13] */
  788. #define WM831X_LDO5_ON_MODE 0x0100 /* LDO5_ON_MODE */
  789. #define WM831X_LDO5_ON_MODE_MASK 0x0100 /* LDO5_ON_MODE */
  790. #define WM831X_LDO5_ON_MODE_SHIFT 8 /* LDO5_ON_MODE */
  791. #define WM831X_LDO5_ON_MODE_WIDTH 1 /* LDO5_ON_MODE */
  792. #define WM831X_LDO5_ON_VSEL_MASK 0x001F /* LDO5_ON_VSEL - [4:0] */
  793. #define WM831X_LDO5_ON_VSEL_SHIFT 0 /* LDO5_ON_VSEL - [4:0] */
  794. #define WM831X_LDO5_ON_VSEL_WIDTH 5 /* LDO5_ON_VSEL - [4:0] */
  795. /*
  796. * R16502 (0x4076) - LDO5 SLEEP Control
  797. */
  798. #define WM831X_LDO5_SLP_SLOT_MASK 0xE000 /* LDO5_SLP_SLOT - [15:13] */
  799. #define WM831X_LDO5_SLP_SLOT_SHIFT 13 /* LDO5_SLP_SLOT - [15:13] */
  800. #define WM831X_LDO5_SLP_SLOT_WIDTH 3 /* LDO5_SLP_SLOT - [15:13] */
  801. #define WM831X_LDO5_SLP_MODE 0x0100 /* LDO5_SLP_MODE */
  802. #define WM831X_LDO5_SLP_MODE_MASK 0x0100 /* LDO5_SLP_MODE */
  803. #define WM831X_LDO5_SLP_MODE_SHIFT 8 /* LDO5_SLP_MODE */
  804. #define WM831X_LDO5_SLP_MODE_WIDTH 1 /* LDO5_SLP_MODE */
  805. #define WM831X_LDO5_SLP_VSEL_MASK 0x001F /* LDO5_SLP_VSEL - [4:0] */
  806. #define WM831X_LDO5_SLP_VSEL_SHIFT 0 /* LDO5_SLP_VSEL - [4:0] */
  807. #define WM831X_LDO5_SLP_VSEL_WIDTH 5 /* LDO5_SLP_VSEL - [4:0] */
  808. /*
  809. * R16503 (0x4077) - LDO6 Control
  810. */
  811. #define WM831X_LDO6_ERR_ACT_MASK 0xC000 /* LDO6_ERR_ACT - [15:14] */
  812. #define WM831X_LDO6_ERR_ACT_SHIFT 14 /* LDO6_ERR_ACT - [15:14] */
  813. #define WM831X_LDO6_ERR_ACT_WIDTH 2 /* LDO6_ERR_ACT - [15:14] */
  814. #define WM831X_LDO6_HWC_SRC_MASK 0x1800 /* LDO6_HWC_SRC - [12:11] */
  815. #define WM831X_LDO6_HWC_SRC_SHIFT 11 /* LDO6_HWC_SRC - [12:11] */
  816. #define WM831X_LDO6_HWC_SRC_WIDTH 2 /* LDO6_HWC_SRC - [12:11] */
  817. #define WM831X_LDO6_HWC_VSEL 0x0400 /* LDO6_HWC_VSEL */
  818. #define WM831X_LDO6_HWC_VSEL_MASK 0x0400 /* LDO6_HWC_VSEL */
  819. #define WM831X_LDO6_HWC_VSEL_SHIFT 10 /* LDO6_HWC_VSEL */
  820. #define WM831X_LDO6_HWC_VSEL_WIDTH 1 /* LDO6_HWC_VSEL */
  821. #define WM831X_LDO6_HWC_MODE_MASK 0x0300 /* LDO6_HWC_MODE - [9:8] */
  822. #define WM831X_LDO6_HWC_MODE_SHIFT 8 /* LDO6_HWC_MODE - [9:8] */
  823. #define WM831X_LDO6_HWC_MODE_WIDTH 2 /* LDO6_HWC_MODE - [9:8] */
  824. #define WM831X_LDO6_FLT 0x0080 /* LDO6_FLT */
  825. #define WM831X_LDO6_FLT_MASK 0x0080 /* LDO6_FLT */
  826. #define WM831X_LDO6_FLT_SHIFT 7 /* LDO6_FLT */
  827. #define WM831X_LDO6_FLT_WIDTH 1 /* LDO6_FLT */
  828. #define WM831X_LDO6_SWI 0x0040 /* LDO6_SWI */
  829. #define WM831X_LDO6_SWI_MASK 0x0040 /* LDO6_SWI */
  830. #define WM831X_LDO6_SWI_SHIFT 6 /* LDO6_SWI */
  831. #define WM831X_LDO6_SWI_WIDTH 1 /* LDO6_SWI */
  832. #define WM831X_LDO6_LP_MODE 0x0001 /* LDO6_LP_MODE */
  833. #define WM831X_LDO6_LP_MODE_MASK 0x0001 /* LDO6_LP_MODE */
  834. #define WM831X_LDO6_LP_MODE_SHIFT 0 /* LDO6_LP_MODE */
  835. #define WM831X_LDO6_LP_MODE_WIDTH 1 /* LDO6_LP_MODE */
  836. /*
  837. * R16504 (0x4078) - LDO6 ON Control
  838. */
  839. #define WM831X_LDO6_ON_SLOT_MASK 0xE000 /* LDO6_ON_SLOT - [15:13] */
  840. #define WM831X_LDO6_ON_SLOT_SHIFT 13 /* LDO6_ON_SLOT - [15:13] */
  841. #define WM831X_LDO6_ON_SLOT_WIDTH 3 /* LDO6_ON_SLOT - [15:13] */
  842. #define WM831X_LDO6_ON_MODE 0x0100 /* LDO6_ON_MODE */
  843. #define WM831X_LDO6_ON_MODE_MASK 0x0100 /* LDO6_ON_MODE */
  844. #define WM831X_LDO6_ON_MODE_SHIFT 8 /* LDO6_ON_MODE */
  845. #define WM831X_LDO6_ON_MODE_WIDTH 1 /* LDO6_ON_MODE */
  846. #define WM831X_LDO6_ON_VSEL_MASK 0x001F /* LDO6_ON_VSEL - [4:0] */
  847. #define WM831X_LDO6_ON_VSEL_SHIFT 0 /* LDO6_ON_VSEL - [4:0] */
  848. #define WM831X_LDO6_ON_VSEL_WIDTH 5 /* LDO6_ON_VSEL - [4:0] */
  849. /*
  850. * R16505 (0x4079) - LDO6 SLEEP Control
  851. */
  852. #define WM831X_LDO6_SLP_SLOT_MASK 0xE000 /* LDO6_SLP_SLOT - [15:13] */
  853. #define WM831X_LDO6_SLP_SLOT_SHIFT 13 /* LDO6_SLP_SLOT - [15:13] */
  854. #define WM831X_LDO6_SLP_SLOT_WIDTH 3 /* LDO6_SLP_SLOT - [15:13] */
  855. #define WM831X_LDO6_SLP_MODE 0x0100 /* LDO6_SLP_MODE */
  856. #define WM831X_LDO6_SLP_MODE_MASK 0x0100 /* LDO6_SLP_MODE */
  857. #define WM831X_LDO6_SLP_MODE_SHIFT 8 /* LDO6_SLP_MODE */
  858. #define WM831X_LDO6_SLP_MODE_WIDTH 1 /* LDO6_SLP_MODE */
  859. #define WM831X_LDO6_SLP_VSEL_MASK 0x001F /* LDO6_SLP_VSEL - [4:0] */
  860. #define WM831X_LDO6_SLP_VSEL_SHIFT 0 /* LDO6_SLP_VSEL - [4:0] */
  861. #define WM831X_LDO6_SLP_VSEL_WIDTH 5 /* LDO6_SLP_VSEL - [4:0] */
  862. /*
  863. * R16506 (0x407A) - LDO7 Control
  864. */
  865. #define WM831X_LDO7_ERR_ACT_MASK 0xC000 /* LDO7_ERR_ACT - [15:14] */
  866. #define WM831X_LDO7_ERR_ACT_SHIFT 14 /* LDO7_ERR_ACT - [15:14] */
  867. #define WM831X_LDO7_ERR_ACT_WIDTH 2 /* LDO7_ERR_ACT - [15:14] */
  868. #define WM831X_LDO7_HWC_SRC_MASK 0x1800 /* LDO7_HWC_SRC - [12:11] */
  869. #define WM831X_LDO7_HWC_SRC_SHIFT 11 /* LDO7_HWC_SRC - [12:11] */
  870. #define WM831X_LDO7_HWC_SRC_WIDTH 2 /* LDO7_HWC_SRC - [12:11] */
  871. #define WM831X_LDO7_HWC_VSEL 0x0400 /* LDO7_HWC_VSEL */
  872. #define WM831X_LDO7_HWC_VSEL_MASK 0x0400 /* LDO7_HWC_VSEL */
  873. #define WM831X_LDO7_HWC_VSEL_SHIFT 10 /* LDO7_HWC_VSEL */
  874. #define WM831X_LDO7_HWC_VSEL_WIDTH 1 /* LDO7_HWC_VSEL */
  875. #define WM831X_LDO7_HWC_MODE_MASK 0x0300 /* LDO7_HWC_MODE - [9:8] */
  876. #define WM831X_LDO7_HWC_MODE_SHIFT 8 /* LDO7_HWC_MODE - [9:8] */
  877. #define WM831X_LDO7_HWC_MODE_WIDTH 2 /* LDO7_HWC_MODE - [9:8] */
  878. #define WM831X_LDO7_FLT 0x0080 /* LDO7_FLT */
  879. #define WM831X_LDO7_FLT_MASK 0x0080 /* LDO7_FLT */
  880. #define WM831X_LDO7_FLT_SHIFT 7 /* LDO7_FLT */
  881. #define WM831X_LDO7_FLT_WIDTH 1 /* LDO7_FLT */
  882. #define WM831X_LDO7_SWI 0x0040 /* LDO7_SWI */
  883. #define WM831X_LDO7_SWI_MASK 0x0040 /* LDO7_SWI */
  884. #define WM831X_LDO7_SWI_SHIFT 6 /* LDO7_SWI */
  885. #define WM831X_LDO7_SWI_WIDTH 1 /* LDO7_SWI */
  886. /*
  887. * R16507 (0x407B) - LDO7 ON Control
  888. */
  889. #define WM831X_LDO7_ON_SLOT_MASK 0xE000 /* LDO7_ON_SLOT - [15:13] */
  890. #define WM831X_LDO7_ON_SLOT_SHIFT 13 /* LDO7_ON_SLOT - [15:13] */
  891. #define WM831X_LDO7_ON_SLOT_WIDTH 3 /* LDO7_ON_SLOT - [15:13] */
  892. #define WM831X_LDO7_ON_MODE 0x0100 /* LDO7_ON_MODE */
  893. #define WM831X_LDO7_ON_MODE_MASK 0x0100 /* LDO7_ON_MODE */
  894. #define WM831X_LDO7_ON_MODE_SHIFT 8 /* LDO7_ON_MODE */
  895. #define WM831X_LDO7_ON_MODE_WIDTH 1 /* LDO7_ON_MODE */
  896. #define WM831X_LDO7_ON_VSEL_MASK 0x001F /* LDO7_ON_VSEL - [4:0] */
  897. #define WM831X_LDO7_ON_VSEL_SHIFT 0 /* LDO7_ON_VSEL - [4:0] */
  898. #define WM831X_LDO7_ON_VSEL_WIDTH 5 /* LDO7_ON_VSEL - [4:0] */
  899. /*
  900. * R16508 (0x407C) - LDO7 SLEEP Control
  901. */
  902. #define WM831X_LDO7_SLP_SLOT_MASK 0xE000 /* LDO7_SLP_SLOT - [15:13] */
  903. #define WM831X_LDO7_SLP_SLOT_SHIFT 13 /* LDO7_SLP_SLOT - [15:13] */
  904. #define WM831X_LDO7_SLP_SLOT_WIDTH 3 /* LDO7_SLP_SLOT - [15:13] */
  905. #define WM831X_LDO7_SLP_MODE 0x0100 /* LDO7_SLP_MODE */
  906. #define WM831X_LDO7_SLP_MODE_MASK 0x0100 /* LDO7_SLP_MODE */
  907. #define WM831X_LDO7_SLP_MODE_SHIFT 8 /* LDO7_SLP_MODE */
  908. #define WM831X_LDO7_SLP_MODE_WIDTH 1 /* LDO7_SLP_MODE */
  909. #define WM831X_LDO7_SLP_VSEL_MASK 0x001F /* LDO7_SLP_VSEL - [4:0] */
  910. #define WM831X_LDO7_SLP_VSEL_SHIFT 0 /* LDO7_SLP_VSEL - [4:0] */
  911. #define WM831X_LDO7_SLP_VSEL_WIDTH 5 /* LDO7_SLP_VSEL - [4:0] */
  912. /*
  913. * R16509 (0x407D) - LDO8 Control
  914. */
  915. #define WM831X_LDO8_ERR_ACT_MASK 0xC000 /* LDO8_ERR_ACT - [15:14] */
  916. #define WM831X_LDO8_ERR_ACT_SHIFT 14 /* LDO8_ERR_ACT - [15:14] */
  917. #define WM831X_LDO8_ERR_ACT_WIDTH 2 /* LDO8_ERR_ACT - [15:14] */
  918. #define WM831X_LDO8_HWC_SRC_MASK 0x1800 /* LDO8_HWC_SRC - [12:11] */
  919. #define WM831X_LDO8_HWC_SRC_SHIFT 11 /* LDO8_HWC_SRC - [12:11] */
  920. #define WM831X_LDO8_HWC_SRC_WIDTH 2 /* LDO8_HWC_SRC - [12:11] */
  921. #define WM831X_LDO8_HWC_VSEL 0x0400 /* LDO8_HWC_VSEL */
  922. #define WM831X_LDO8_HWC_VSEL_MASK 0x0400 /* LDO8_HWC_VSEL */
  923. #define WM831X_LDO8_HWC_VSEL_SHIFT 10 /* LDO8_HWC_VSEL */
  924. #define WM831X_LDO8_HWC_VSEL_WIDTH 1 /* LDO8_HWC_VSEL */
  925. #define WM831X_LDO8_HWC_MODE_MASK 0x0300 /* LDO8_HWC_MODE - [9:8] */
  926. #define WM831X_LDO8_HWC_MODE_SHIFT 8 /* LDO8_HWC_MODE - [9:8] */
  927. #define WM831X_LDO8_HWC_MODE_WIDTH 2 /* LDO8_HWC_MODE - [9:8] */
  928. #define WM831X_LDO8_FLT 0x0080 /* LDO8_FLT */
  929. #define WM831X_LDO8_FLT_MASK 0x0080 /* LDO8_FLT */
  930. #define WM831X_LDO8_FLT_SHIFT 7 /* LDO8_FLT */
  931. #define WM831X_LDO8_FLT_WIDTH 1 /* LDO8_FLT */
  932. #define WM831X_LDO8_SWI 0x0040 /* LDO8_SWI */
  933. #define WM831X_LDO8_SWI_MASK 0x0040 /* LDO8_SWI */
  934. #define WM831X_LDO8_SWI_SHIFT 6 /* LDO8_SWI */
  935. #define WM831X_LDO8_SWI_WIDTH 1 /* LDO8_SWI */
  936. /*
  937. * R16510 (0x407E) - LDO8 ON Control
  938. */
  939. #define WM831X_LDO8_ON_SLOT_MASK 0xE000 /* LDO8_ON_SLOT - [15:13] */
  940. #define WM831X_LDO8_ON_SLOT_SHIFT 13 /* LDO8_ON_SLOT - [15:13] */
  941. #define WM831X_LDO8_ON_SLOT_WIDTH 3 /* LDO8_ON_SLOT - [15:13] */
  942. #define WM831X_LDO8_ON_MODE 0x0100 /* LDO8_ON_MODE */
  943. #define WM831X_LDO8_ON_MODE_MASK 0x0100 /* LDO8_ON_MODE */
  944. #define WM831X_LDO8_ON_MODE_SHIFT 8 /* LDO8_ON_MODE */
  945. #define WM831X_LDO8_ON_MODE_WIDTH 1 /* LDO8_ON_MODE */
  946. #define WM831X_LDO8_ON_VSEL_MASK 0x001F /* LDO8_ON_VSEL - [4:0] */
  947. #define WM831X_LDO8_ON_VSEL_SHIFT 0 /* LDO8_ON_VSEL - [4:0] */
  948. #define WM831X_LDO8_ON_VSEL_WIDTH 5 /* LDO8_ON_VSEL - [4:0] */
  949. /*
  950. * R16511 (0x407F) - LDO8 SLEEP Control
  951. */
  952. #define WM831X_LDO8_SLP_SLOT_MASK 0xE000 /* LDO8_SLP_SLOT - [15:13] */
  953. #define WM831X_LDO8_SLP_SLOT_SHIFT 13 /* LDO8_SLP_SLOT - [15:13] */
  954. #define WM831X_LDO8_SLP_SLOT_WIDTH 3 /* LDO8_SLP_SLOT - [15:13] */
  955. #define WM831X_LDO8_SLP_MODE 0x0100 /* LDO8_SLP_MODE */
  956. #define WM831X_LDO8_SLP_MODE_MASK 0x0100 /* LDO8_SLP_MODE */
  957. #define WM831X_LDO8_SLP_MODE_SHIFT 8 /* LDO8_SLP_MODE */
  958. #define WM831X_LDO8_SLP_MODE_WIDTH 1 /* LDO8_SLP_MODE */
  959. #define WM831X_LDO8_SLP_VSEL_MASK 0x001F /* LDO8_SLP_VSEL - [4:0] */
  960. #define WM831X_LDO8_SLP_VSEL_SHIFT 0 /* LDO8_SLP_VSEL - [4:0] */
  961. #define WM831X_LDO8_SLP_VSEL_WIDTH 5 /* LDO8_SLP_VSEL - [4:0] */
  962. /*
  963. * R16512 (0x4080) - LDO9 Control
  964. */
  965. #define WM831X_LDO9_ERR_ACT_MASK 0xC000 /* LDO9_ERR_ACT - [15:14] */
  966. #define WM831X_LDO9_ERR_ACT_SHIFT 14 /* LDO9_ERR_ACT - [15:14] */
  967. #define WM831X_LDO9_ERR_ACT_WIDTH 2 /* LDO9_ERR_ACT - [15:14] */
  968. #define WM831X_LDO9_HWC_SRC_MASK 0x1800 /* LDO9_HWC_SRC - [12:11] */
  969. #define WM831X_LDO9_HWC_SRC_SHIFT 11 /* LDO9_HWC_SRC - [12:11] */
  970. #define WM831X_LDO9_HWC_SRC_WIDTH 2 /* LDO9_HWC_SRC - [12:11] */
  971. #define WM831X_LDO9_HWC_VSEL 0x0400 /* LDO9_HWC_VSEL */
  972. #define WM831X_LDO9_HWC_VSEL_MASK 0x0400 /* LDO9_HWC_VSEL */
  973. #define WM831X_LDO9_HWC_VSEL_SHIFT 10 /* LDO9_HWC_VSEL */
  974. #define WM831X_LDO9_HWC_VSEL_WIDTH 1 /* LDO9_HWC_VSEL */
  975. #define WM831X_LDO9_HWC_MODE_MASK 0x0300 /* LDO9_HWC_MODE - [9:8] */
  976. #define WM831X_LDO9_HWC_MODE_SHIFT 8 /* LDO9_HWC_MODE - [9:8] */
  977. #define WM831X_LDO9_HWC_MODE_WIDTH 2 /* LDO9_HWC_MODE - [9:8] */
  978. #define WM831X_LDO9_FLT 0x0080 /* LDO9_FLT */
  979. #define WM831X_LDO9_FLT_MASK 0x0080 /* LDO9_FLT */
  980. #define WM831X_LDO9_FLT_SHIFT 7 /* LDO9_FLT */
  981. #define WM831X_LDO9_FLT_WIDTH 1 /* LDO9_FLT */
  982. #define WM831X_LDO9_SWI 0x0040 /* LDO9_SWI */
  983. #define WM831X_LDO9_SWI_MASK 0x0040 /* LDO9_SWI */
  984. #define WM831X_LDO9_SWI_SHIFT 6 /* LDO9_SWI */
  985. #define WM831X_LDO9_SWI_WIDTH 1 /* LDO9_SWI */
  986. /*
  987. * R16513 (0x4081) - LDO9 ON Control
  988. */
  989. #define WM831X_LDO9_ON_SLOT_MASK 0xE000 /* LDO9_ON_SLOT - [15:13] */
  990. #define WM831X_LDO9_ON_SLOT_SHIFT 13 /* LDO9_ON_SLOT - [15:13] */
  991. #define WM831X_LDO9_ON_SLOT_WIDTH 3 /* LDO9_ON_SLOT - [15:13] */
  992. #define WM831X_LDO9_ON_MODE 0x0100 /* LDO9_ON_MODE */
  993. #define WM831X_LDO9_ON_MODE_MASK 0x0100 /* LDO9_ON_MODE */
  994. #define WM831X_LDO9_ON_MODE_SHIFT 8 /* LDO9_ON_MODE */
  995. #define WM831X_LDO9_ON_MODE_WIDTH 1 /* LDO9_ON_MODE */
  996. #define WM831X_LDO9_ON_VSEL_MASK 0x001F /* LDO9_ON_VSEL - [4:0] */
  997. #define WM831X_LDO9_ON_VSEL_SHIFT 0 /* LDO9_ON_VSEL - [4:0] */
  998. #define WM831X_LDO9_ON_VSEL_WIDTH 5 /* LDO9_ON_VSEL - [4:0] */
  999. /*
  1000. * R16514 (0x4082) - LDO9 SLEEP Control
  1001. */
  1002. #define WM831X_LDO9_SLP_SLOT_MASK 0xE000 /* LDO9_SLP_SLOT - [15:13] */
  1003. #define WM831X_LDO9_SLP_SLOT_SHIFT 13 /* LDO9_SLP_SLOT - [15:13] */
  1004. #define WM831X_LDO9_SLP_SLOT_WIDTH 3 /* LDO9_SLP_SLOT - [15:13] */
  1005. #define WM831X_LDO9_SLP_MODE 0x0100 /* LDO9_SLP_MODE */
  1006. #define WM831X_LDO9_SLP_MODE_MASK 0x0100 /* LDO9_SLP_MODE */
  1007. #define WM831X_LDO9_SLP_MODE_SHIFT 8 /* LDO9_SLP_MODE */
  1008. #define WM831X_LDO9_SLP_MODE_WIDTH 1 /* LDO9_SLP_MODE */
  1009. #define WM831X_LDO9_SLP_VSEL_MASK 0x001F /* LDO9_SLP_VSEL - [4:0] */
  1010. #define WM831X_LDO9_SLP_VSEL_SHIFT 0 /* LDO9_SLP_VSEL - [4:0] */
  1011. #define WM831X_LDO9_SLP_VSEL_WIDTH 5 /* LDO9_SLP_VSEL - [4:0] */
  1012. /*
  1013. * R16515 (0x4083) - LDO10 Control
  1014. */
  1015. #define WM831X_LDO10_ERR_ACT_MASK 0xC000 /* LDO10_ERR_ACT - [15:14] */
  1016. #define WM831X_LDO10_ERR_ACT_SHIFT 14 /* LDO10_ERR_ACT - [15:14] */
  1017. #define WM831X_LDO10_ERR_ACT_WIDTH 2 /* LDO10_ERR_ACT - [15:14] */
  1018. #define WM831X_LDO10_HWC_SRC_MASK 0x1800 /* LDO10_HWC_SRC - [12:11] */
  1019. #define WM831X_LDO10_HWC_SRC_SHIFT 11 /* LDO10_HWC_SRC - [12:11] */
  1020. #define WM831X_LDO10_HWC_SRC_WIDTH 2 /* LDO10_HWC_SRC - [12:11] */
  1021. #define WM831X_LDO10_HWC_VSEL 0x0400 /* LDO10_HWC_VSEL */
  1022. #define WM831X_LDO10_HWC_VSEL_MASK 0x0400 /* LDO10_HWC_VSEL */
  1023. #define WM831X_LDO10_HWC_VSEL_SHIFT 10 /* LDO10_HWC_VSEL */
  1024. #define WM831X_LDO10_HWC_VSEL_WIDTH 1 /* LDO10_HWC_VSEL */
  1025. #define WM831X_LDO10_HWC_MODE_MASK 0x0300 /* LDO10_HWC_MODE - [9:8] */
  1026. #define WM831X_LDO10_HWC_MODE_SHIFT 8 /* LDO10_HWC_MODE - [9:8] */
  1027. #define WM831X_LDO10_HWC_MODE_WIDTH 2 /* LDO10_HWC_MODE - [9:8] */
  1028. #define WM831X_LDO10_FLT 0x0080 /* LDO10_FLT */
  1029. #define WM831X_LDO10_FLT_MASK 0x0080 /* LDO10_FLT */
  1030. #define WM831X_LDO10_FLT_SHIFT 7 /* LDO10_FLT */
  1031. #define WM831X_LDO10_FLT_WIDTH 1 /* LDO10_FLT */
  1032. #define WM831X_LDO10_SWI 0x0040 /* LDO10_SWI */
  1033. #define WM831X_LDO10_SWI_MASK 0x0040 /* LDO10_SWI */
  1034. #define WM831X_LDO10_SWI_SHIFT 6 /* LDO10_SWI */
  1035. #define WM831X_LDO10_SWI_WIDTH 1 /* LDO10_SWI */
  1036. /*
  1037. * R16516 (0x4084) - LDO10 ON Control
  1038. */
  1039. #define WM831X_LDO10_ON_SLOT_MASK 0xE000 /* LDO10_ON_SLOT - [15:13] */
  1040. #define WM831X_LDO10_ON_SLOT_SHIFT 13 /* LDO10_ON_SLOT - [15:13] */
  1041. #define WM831X_LDO10_ON_SLOT_WIDTH 3 /* LDO10_ON_SLOT - [15:13] */
  1042. #define WM831X_LDO10_ON_MODE 0x0100 /* LDO10_ON_MODE */
  1043. #define WM831X_LDO10_ON_MODE_MASK 0x0100 /* LDO10_ON_MODE */
  1044. #define WM831X_LDO10_ON_MODE_SHIFT 8 /* LDO10_ON_MODE */
  1045. #define WM831X_LDO10_ON_MODE_WIDTH 1 /* LDO10_ON_MODE */
  1046. #define WM831X_LDO10_ON_VSEL_MASK 0x001F /* LDO10_ON_VSEL - [4:0] */
  1047. #define WM831X_LDO10_ON_VSEL_SHIFT 0 /* LDO10_ON_VSEL - [4:0] */
  1048. #define WM831X_LDO10_ON_VSEL_WIDTH 5 /* LDO10_ON_VSEL - [4:0] */
  1049. /*
  1050. * R16517 (0x4085) - LDO10 SLEEP Control
  1051. */
  1052. #define WM831X_LDO10_SLP_SLOT_MASK 0xE000 /* LDO10_SLP_SLOT - [15:13] */
  1053. #define WM831X_LDO10_SLP_SLOT_SHIFT 13 /* LDO10_SLP_SLOT - [15:13] */
  1054. #define WM831X_LDO10_SLP_SLOT_WIDTH 3 /* LDO10_SLP_SLOT - [15:13] */
  1055. #define WM831X_LDO10_SLP_MODE 0x0100 /* LDO10_SLP_MODE */
  1056. #define WM831X_LDO10_SLP_MODE_MASK 0x0100 /* LDO10_SLP_MODE */
  1057. #define WM831X_LDO10_SLP_MODE_SHIFT 8 /* LDO10_SLP_MODE */
  1058. #define WM831X_LDO10_SLP_MODE_WIDTH 1 /* LDO10_SLP_MODE */
  1059. #define WM831X_LDO10_SLP_VSEL_MASK 0x001F /* LDO10_SLP_VSEL - [4:0] */
  1060. #define WM831X_LDO10_SLP_VSEL_SHIFT 0 /* LDO10_SLP_VSEL - [4:0] */
  1061. #define WM831X_LDO10_SLP_VSEL_WIDTH 5 /* LDO10_SLP_VSEL - [4:0] */
  1062. /*
  1063. * R16519 (0x4087) - LDO11 ON Control
  1064. */
  1065. #define WM831X_LDO11_ON_SLOT_MASK 0xE000 /* LDO11_ON_SLOT - [15:13] */
  1066. #define WM831X_LDO11_ON_SLOT_SHIFT 13 /* LDO11_ON_SLOT - [15:13] */
  1067. #define WM831X_LDO11_ON_SLOT_WIDTH 3 /* LDO11_ON_SLOT - [15:13] */
  1068. #define WM831X_LDO11_OFFENA 0x1000 /* LDO11_OFFENA */
  1069. #define WM831X_LDO11_OFFENA_MASK 0x1000 /* LDO11_OFFENA */
  1070. #define WM831X_LDO11_OFFENA_SHIFT 12 /* LDO11_OFFENA */
  1071. #define WM831X_LDO11_OFFENA_WIDTH 1 /* LDO11_OFFENA */
  1072. #define WM831X_LDO11_VSEL_SRC 0x0080 /* LDO11_VSEL_SRC */
  1073. #define WM831X_LDO11_VSEL_SRC_MASK 0x0080 /* LDO11_VSEL_SRC */
  1074. #define WM831X_LDO11_VSEL_SRC_SHIFT 7 /* LDO11_VSEL_SRC */
  1075. #define WM831X_LDO11_VSEL_SRC_WIDTH 1 /* LDO11_VSEL_SRC */
  1076. #define WM831X_LDO11_ON_VSEL_MASK 0x000F /* LDO11_ON_VSEL - [3:0] */
  1077. #define WM831X_LDO11_ON_VSEL_SHIFT 0 /* LDO11_ON_VSEL - [3:0] */
  1078. #define WM831X_LDO11_ON_VSEL_WIDTH 4 /* LDO11_ON_VSEL - [3:0] */
  1079. /*
  1080. * R16520 (0x4088) - LDO11 SLEEP Control
  1081. */
  1082. #define WM831X_LDO11_SLP_SLOT_MASK 0xE000 /* LDO11_SLP_SLOT - [15:13] */
  1083. #define WM831X_LDO11_SLP_SLOT_SHIFT 13 /* LDO11_SLP_SLOT - [15:13] */
  1084. #define WM831X_LDO11_SLP_SLOT_WIDTH 3 /* LDO11_SLP_SLOT - [15:13] */
  1085. #define WM831X_LDO11_SLP_VSEL_MASK 0x000F /* LDO11_SLP_VSEL - [3:0] */
  1086. #define WM831X_LDO11_SLP_VSEL_SHIFT 0 /* LDO11_SLP_VSEL - [3:0] */
  1087. #define WM831X_LDO11_SLP_VSEL_WIDTH 4 /* LDO11_SLP_VSEL - [3:0] */
  1088. /*
  1089. * R16526 (0x408E) - Power Good Source 1
  1090. */
  1091. #define WM831X_DC4_OK 0x0008 /* DC4_OK */
  1092. #define WM831X_DC4_OK_MASK 0x0008 /* DC4_OK */
  1093. #define WM831X_DC4_OK_SHIFT 3 /* DC4_OK */
  1094. #define WM831X_DC4_OK_WIDTH 1 /* DC4_OK */
  1095. #define WM831X_DC3_OK 0x0004 /* DC3_OK */
  1096. #define WM831X_DC3_OK_MASK 0x0004 /* DC3_OK */
  1097. #define WM831X_DC3_OK_SHIFT 2 /* DC3_OK */
  1098. #define WM831X_DC3_OK_WIDTH 1 /* DC3_OK */
  1099. #define WM831X_DC2_OK 0x0002 /* DC2_OK */
  1100. #define WM831X_DC2_OK_MASK 0x0002 /* DC2_OK */
  1101. #define WM831X_DC2_OK_SHIFT 1 /* DC2_OK */
  1102. #define WM831X_DC2_OK_WIDTH 1 /* DC2_OK */
  1103. #define WM831X_DC1_OK 0x0001 /* DC1_OK */
  1104. #define WM831X_DC1_OK_MASK 0x0001 /* DC1_OK */
  1105. #define WM831X_DC1_OK_SHIFT 0 /* DC1_OK */
  1106. #define WM831X_DC1_OK_WIDTH 1 /* DC1_OK */
  1107. /*
  1108. * R16527 (0x408F) - Power Good Source 2
  1109. */
  1110. #define WM831X_LDO10_OK 0x0200 /* LDO10_OK */
  1111. #define WM831X_LDO10_OK_MASK 0x0200 /* LDO10_OK */
  1112. #define WM831X_LDO10_OK_SHIFT 9 /* LDO10_OK */
  1113. #define WM831X_LDO10_OK_WIDTH 1 /* LDO10_OK */
  1114. #define WM831X_LDO9_OK 0x0100 /* LDO9_OK */
  1115. #define WM831X_LDO9_OK_MASK 0x0100 /* LDO9_OK */
  1116. #define WM831X_LDO9_OK_SHIFT 8 /* LDO9_OK */
  1117. #define WM831X_LDO9_OK_WIDTH 1 /* LDO9_OK */
  1118. #define WM831X_LDO8_OK 0x0080 /* LDO8_OK */
  1119. #define WM831X_LDO8_OK_MASK 0x0080 /* LDO8_OK */
  1120. #define WM831X_LDO8_OK_SHIFT 7 /* LDO8_OK */
  1121. #define WM831X_LDO8_OK_WIDTH 1 /* LDO8_OK */
  1122. #define WM831X_LDO7_OK 0x0040 /* LDO7_OK */
  1123. #define WM831X_LDO7_OK_MASK 0x0040 /* LDO7_OK */
  1124. #define WM831X_LDO7_OK_SHIFT 6 /* LDO7_OK */
  1125. #define WM831X_LDO7_OK_WIDTH 1 /* LDO7_OK */
  1126. #define WM831X_LDO6_OK 0x0020 /* LDO6_OK */
  1127. #define WM831X_LDO6_OK_MASK 0x0020 /* LDO6_OK */
  1128. #define WM831X_LDO6_OK_SHIFT 5 /* LDO6_OK */
  1129. #define WM831X_LDO6_OK_WIDTH 1 /* LDO6_OK */
  1130. #define WM831X_LDO5_OK 0x0010 /* LDO5_OK */
  1131. #define WM831X_LDO5_OK_MASK 0x0010 /* LDO5_OK */
  1132. #define WM831X_LDO5_OK_SHIFT 4 /* LDO5_OK */
  1133. #define WM831X_LDO5_OK_WIDTH 1 /* LDO5_OK */
  1134. #define WM831X_LDO4_OK 0x0008 /* LDO4_OK */
  1135. #define WM831X_LDO4_OK_MASK 0x0008 /* LDO4_OK */
  1136. #define WM831X_LDO4_OK_SHIFT 3 /* LDO4_OK */
  1137. #define WM831X_LDO4_OK_WIDTH 1 /* LDO4_OK */
  1138. #define WM831X_LDO3_OK 0x0004 /* LDO3_OK */
  1139. #define WM831X_LDO3_OK_MASK 0x0004 /* LDO3_OK */
  1140. #define WM831X_LDO3_OK_SHIFT 2 /* LDO3_OK */
  1141. #define WM831X_LDO3_OK_WIDTH 1 /* LDO3_OK */
  1142. #define WM831X_LDO2_OK 0x0002 /* LDO2_OK */
  1143. #define WM831X_LDO2_OK_MASK 0x0002 /* LDO2_OK */
  1144. #define WM831X_LDO2_OK_SHIFT 1 /* LDO2_OK */
  1145. #define WM831X_LDO2_OK_WIDTH 1 /* LDO2_OK */
  1146. #define WM831X_LDO1_OK 0x0001 /* LDO1_OK */
  1147. #define WM831X_LDO1_OK_MASK 0x0001 /* LDO1_OK */
  1148. #define WM831X_LDO1_OK_SHIFT 0 /* LDO1_OK */
  1149. #define WM831X_LDO1_OK_WIDTH 1 /* LDO1_OK */
  1150. #define WM831X_ISINK_MAX_ISEL 55
  1151. extern const unsigned int wm831x_isinkv_values[WM831X_ISINK_MAX_ISEL + 1];
  1152. #endif