cs47l24-tables.c 70 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628
  1. /*
  2. * Data tables for CS47L24 codec
  3. *
  4. * Copyright 2015 Cirrus Logic, Inc.
  5. *
  6. * Author: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License version 2 as
  10. * published by the Free Software Foundation.
  11. */
  12. #include <linux/module.h>
  13. #include <linux/mfd/arizona/core.h>
  14. #include <linux/mfd/arizona/registers.h>
  15. #include <linux/device.h>
  16. #include "arizona.h"
  17. #define CS47L24_NUM_ISR 5
  18. static const struct reg_sequence cs47l24_reva_patch[] = {
  19. { 0x80, 0x3 },
  20. { 0x27C, 0x0010 },
  21. { 0x221, 0x0070 },
  22. { 0x80, 0x0 },
  23. };
  24. int cs47l24_patch(struct arizona *arizona)
  25. {
  26. return regmap_register_patch(arizona->regmap,
  27. cs47l24_reva_patch,
  28. ARRAY_SIZE(cs47l24_reva_patch));
  29. }
  30. EXPORT_SYMBOL_GPL(cs47l24_patch);
  31. static const struct regmap_irq cs47l24_irqs[ARIZONA_NUM_IRQ] = {
  32. [ARIZONA_IRQ_GP2] = { .reg_offset = 0, .mask = ARIZONA_GP2_EINT1 },
  33. [ARIZONA_IRQ_GP1] = { .reg_offset = 0, .mask = ARIZONA_GP1_EINT1 },
  34. [ARIZONA_IRQ_DSP3_RAM_RDY] = {
  35. .reg_offset = 1, .mask = ARIZONA_DSP3_RAM_RDY_EINT1
  36. },
  37. [ARIZONA_IRQ_DSP2_RAM_RDY] = {
  38. .reg_offset = 1, .mask = ARIZONA_DSP2_RAM_RDY_EINT1
  39. },
  40. [ARIZONA_IRQ_DSP_IRQ8] = {
  41. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ8_EINT1
  42. },
  43. [ARIZONA_IRQ_DSP_IRQ7] = {
  44. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ7_EINT1
  45. },
  46. [ARIZONA_IRQ_DSP_IRQ6] = {
  47. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ6_EINT1
  48. },
  49. [ARIZONA_IRQ_DSP_IRQ5] = {
  50. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ5_EINT1
  51. },
  52. [ARIZONA_IRQ_DSP_IRQ4] = {
  53. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ4_EINT1
  54. },
  55. [ARIZONA_IRQ_DSP_IRQ3] = {
  56. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ3_EINT1
  57. },
  58. [ARIZONA_IRQ_DSP_IRQ2] = {
  59. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ2_EINT1
  60. },
  61. [ARIZONA_IRQ_DSP_IRQ1] = {
  62. .reg_offset = 1, .mask = ARIZONA_DSP_IRQ1_EINT1
  63. },
  64. [ARIZONA_IRQ_SPK_OVERHEAT_WARN] = {
  65. .reg_offset = 2, .mask = ARIZONA_SPK_OVERHEAT_WARN_EINT1
  66. },
  67. [ARIZONA_IRQ_SPK_OVERHEAT] = {
  68. .reg_offset = 2, .mask = ARIZONA_SPK_OVERHEAT_EINT1
  69. },
  70. [ARIZONA_IRQ_WSEQ_DONE] = {
  71. .reg_offset = 2, .mask = ARIZONA_WSEQ_DONE_EINT1
  72. },
  73. [ARIZONA_IRQ_DRC2_SIG_DET] = {
  74. .reg_offset = 2, .mask = ARIZONA_DRC2_SIG_DET_EINT1
  75. },
  76. [ARIZONA_IRQ_DRC1_SIG_DET] = {
  77. .reg_offset = 2, .mask = ARIZONA_DRC1_SIG_DET_EINT1
  78. },
  79. [ARIZONA_IRQ_ASRC2_LOCK] = {
  80. .reg_offset = 2, .mask = ARIZONA_ASRC2_LOCK_EINT1
  81. },
  82. [ARIZONA_IRQ_ASRC1_LOCK] = {
  83. .reg_offset = 2, .mask = ARIZONA_ASRC1_LOCK_EINT1
  84. },
  85. [ARIZONA_IRQ_UNDERCLOCKED] = {
  86. .reg_offset = 2, .mask = ARIZONA_UNDERCLOCKED_EINT1
  87. },
  88. [ARIZONA_IRQ_OVERCLOCKED] = {
  89. .reg_offset = 2, .mask = ARIZONA_OVERCLOCKED_EINT1
  90. },
  91. [ARIZONA_IRQ_FLL2_LOCK] = {
  92. .reg_offset = 2, .mask = ARIZONA_FLL2_LOCK_EINT1
  93. },
  94. [ARIZONA_IRQ_FLL1_LOCK] = {
  95. .reg_offset = 2, .mask = ARIZONA_FLL1_LOCK_EINT1
  96. },
  97. [ARIZONA_IRQ_CLKGEN_ERR] = {
  98. .reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_EINT1
  99. },
  100. [ARIZONA_IRQ_CLKGEN_ERR_ASYNC] = {
  101. .reg_offset = 2, .mask = ARIZONA_CLKGEN_ERR_ASYNC_EINT1
  102. },
  103. [ARIZONA_IRQ_CTRLIF_ERR] = {
  104. .reg_offset = 3, .mask = ARIZONA_V2_CTRLIF_ERR_EINT1
  105. },
  106. [ARIZONA_IRQ_MIXER_DROPPED_SAMPLES] = {
  107. .reg_offset = 3, .mask = ARIZONA_V2_MIXER_DROPPED_SAMPLE_EINT1
  108. },
  109. [ARIZONA_IRQ_ASYNC_CLK_ENA_LOW] = {
  110. .reg_offset = 3, .mask = ARIZONA_V2_ASYNC_CLK_ENA_LOW_EINT1
  111. },
  112. [ARIZONA_IRQ_SYSCLK_ENA_LOW] = {
  113. .reg_offset = 3, .mask = ARIZONA_V2_SYSCLK_ENA_LOW_EINT1
  114. },
  115. [ARIZONA_IRQ_ISRC1_CFG_ERR] = {
  116. .reg_offset = 3, .mask = ARIZONA_V2_ISRC1_CFG_ERR_EINT1
  117. },
  118. [ARIZONA_IRQ_ISRC2_CFG_ERR] = {
  119. .reg_offset = 3, .mask = ARIZONA_V2_ISRC2_CFG_ERR_EINT1
  120. },
  121. [ARIZONA_IRQ_ISRC3_CFG_ERR] = {
  122. .reg_offset = 3, .mask = ARIZONA_V2_ISRC3_CFG_ERR_EINT1
  123. },
  124. [ARIZONA_IRQ_HP1R_DONE] = {
  125. .reg_offset = 3, .mask = ARIZONA_HP1R_DONE_EINT1
  126. },
  127. [ARIZONA_IRQ_HP1L_DONE] = {
  128. .reg_offset = 3, .mask = ARIZONA_HP1L_DONE_EINT1
  129. },
  130. [ARIZONA_IRQ_BOOT_DONE] = {
  131. .reg_offset = 4, .mask = ARIZONA_BOOT_DONE_EINT1
  132. },
  133. [ARIZONA_IRQ_ASRC_CFG_ERR] = {
  134. .reg_offset = 4, .mask = ARIZONA_V2_ASRC_CFG_ERR_EINT1
  135. },
  136. [ARIZONA_IRQ_FLL2_CLOCK_OK] = {
  137. .reg_offset = 4, .mask = ARIZONA_FLL2_CLOCK_OK_EINT1
  138. },
  139. [ARIZONA_IRQ_FLL1_CLOCK_OK] = {
  140. .reg_offset = 4, .mask = ARIZONA_FLL1_CLOCK_OK_EINT1
  141. },
  142. [ARIZONA_IRQ_DSP_SHARED_WR_COLL] = {
  143. .reg_offset = 5, .mask = ARIZONA_DSP_SHARED_WR_COLL_EINT1
  144. },
  145. [ARIZONA_IRQ_SPK_SHUTDOWN] = {
  146. .reg_offset = 5, .mask = ARIZONA_SPK_SHUTDOWN_EINT1
  147. },
  148. [ARIZONA_IRQ_SPK1R_SHORT] = {
  149. .reg_offset = 5, .mask = ARIZONA_SPK1R_SHORT_EINT1
  150. },
  151. [ARIZONA_IRQ_SPK1L_SHORT] = {
  152. .reg_offset = 5, .mask = ARIZONA_SPK1L_SHORT_EINT1
  153. },
  154. [ARIZONA_IRQ_HP1R_SC_POS] = {
  155. .reg_offset = 5, .mask = ARIZONA_HP1R_SC_POS_EINT1
  156. },
  157. [ARIZONA_IRQ_HP1L_SC_POS] = {
  158. .reg_offset = 5, .mask = ARIZONA_HP1L_SC_POS_EINT1
  159. },
  160. };
  161. const struct regmap_irq_chip cs47l24_irq = {
  162. .name = "cs47l24 IRQ",
  163. .status_base = ARIZONA_INTERRUPT_STATUS_1,
  164. .mask_base = ARIZONA_INTERRUPT_STATUS_1_MASK,
  165. .ack_base = ARIZONA_INTERRUPT_STATUS_1,
  166. .num_regs = 6,
  167. .irqs = cs47l24_irqs,
  168. .num_irqs = ARRAY_SIZE(cs47l24_irqs),
  169. };
  170. EXPORT_SYMBOL_GPL(cs47l24_irq);
  171. static const struct reg_default cs47l24_reg_default[] = {
  172. { 0x00000008, 0x0019 }, /* R8 - Ctrl IF SPI CFG 1 */
  173. { 0x00000020, 0x0000 }, /* R32 - Tone Generator 1 */
  174. { 0x00000021, 0x1000 }, /* R33 - Tone Generator 2 */
  175. { 0x00000022, 0x0000 }, /* R34 - Tone Generator 3 */
  176. { 0x00000023, 0x1000 }, /* R35 - Tone Generator 4 */
  177. { 0x00000024, 0x0000 }, /* R36 - Tone Generator 5 */
  178. { 0x00000030, 0x0000 }, /* R48 - PWM Drive 1 */
  179. { 0x00000031, 0x0100 }, /* R49 - PWM Drive 2 */
  180. { 0x00000032, 0x0100 }, /* R50 - PWM Drive 3 */
  181. { 0x00000041, 0x0000 }, /* R65 - Sequence control */
  182. { 0x00000061, 0x01FF }, /* R97 - Sample Rate Sequence Select 1 */
  183. { 0x00000062, 0x01FF }, /* R98 - Sample Rate Sequence Select 2 */
  184. { 0x00000063, 0x01FF }, /* R99 - Sample Rate Sequence Select 3 */
  185. { 0x00000064, 0x01FF }, /* R100 - Sample Rate Sequence Select 4 */
  186. { 0x00000070, 0x0000 }, /* R112 - Comfort Noise Generator */
  187. { 0x00000090, 0x0000 }, /* R144 - Haptics Control 1 */
  188. { 0x00000091, 0x7FFF }, /* R145 - Haptics Control 2 */
  189. { 0x00000092, 0x0000 }, /* R146 - Haptics phase 1 intensity */
  190. { 0x00000093, 0x0000 }, /* R147 - Haptics phase 1 duration */
  191. { 0x00000094, 0x0000 }, /* R148 - Haptics phase 2 intensity */
  192. { 0x00000095, 0x0000 }, /* R149 - Haptics phase 2 duration */
  193. { 0x00000096, 0x0000 }, /* R150 - Haptics phase 3 intensity */
  194. { 0x00000097, 0x0000 }, /* R151 - Haptics phase 3 duration */
  195. { 0x00000100, 0x0002 }, /* R256 - Clock 32k 1 */
  196. { 0x00000101, 0x0504 }, /* R257 - System Clock 1 */
  197. { 0x00000102, 0x0011 }, /* R258 - Sample rate 1 */
  198. { 0x00000103, 0x0011 }, /* R259 - Sample rate 2 */
  199. { 0x00000104, 0x0011 }, /* R260 - Sample rate 3 */
  200. { 0x00000112, 0x0305 }, /* R274 - Async clock 1 */
  201. { 0x00000113, 0x0011 }, /* R275 - Async sample rate 1 */
  202. { 0x00000114, 0x0011 }, /* R276 - Async sample rate 2 */
  203. { 0x00000149, 0x0000 }, /* R329 - Output system clock */
  204. { 0x0000014A, 0x0000 }, /* R330 - Output async clock */
  205. { 0x00000152, 0x0000 }, /* R338 - Rate Estimator 1 */
  206. { 0x00000153, 0x0000 }, /* R339 - Rate Estimator 2 */
  207. { 0x00000154, 0x0000 }, /* R340 - Rate Estimator 3 */
  208. { 0x00000155, 0x0000 }, /* R341 - Rate Estimator 4 */
  209. { 0x00000156, 0x0000 }, /* R342 - Rate Estimator 5 */
  210. { 0x00000171, 0x0002 }, /* R369 - FLL1 Control 1 */
  211. { 0x00000172, 0x0008 }, /* R370 - FLL1 Control 2 */
  212. { 0x00000173, 0x0018 }, /* R371 - FLL1 Control 3 */
  213. { 0x00000174, 0x007D }, /* R372 - FLL1 Control 4 */
  214. { 0x00000175, 0x0006 }, /* R373 - FLL1 Control 5 */
  215. { 0x00000176, 0x0000 }, /* R374 - FLL1 Control 6 */
  216. { 0x00000179, 0x0000 }, /* R376 - FLL1 Control 7 */
  217. { 0x00000181, 0x0000 }, /* R385 - FLL1 Synchroniser 1 */
  218. { 0x00000182, 0x0000 }, /* R386 - FLL1 Synchroniser 2 */
  219. { 0x00000183, 0x0000 }, /* R387 - FLL1 Synchroniser 3 */
  220. { 0x00000184, 0x0000 }, /* R388 - FLL1 Synchroniser 4 */
  221. { 0x00000185, 0x0000 }, /* R389 - FLL1 Synchroniser 5 */
  222. { 0x00000186, 0x0000 }, /* R390 - FLL1 Synchroniser 6 */
  223. { 0x00000187, 0x0001 }, /* R390 - FLL1 Synchroniser 7 */
  224. { 0x00000189, 0x0000 }, /* R393 - FLL1 Spread Spectrum */
  225. { 0x0000018A, 0x000C }, /* R394 - FLL1 GPIO Clock */
  226. { 0x00000191, 0x0002 }, /* R401 - FLL2 Control 1 */
  227. { 0x00000192, 0x0008 }, /* R402 - FLL2 Control 2 */
  228. { 0x00000193, 0x0018 }, /* R403 - FLL2 Control 3 */
  229. { 0x00000194, 0x007D }, /* R404 - FLL2 Control 4 */
  230. { 0x00000195, 0x000C }, /* R405 - FLL2 Control 5 */
  231. { 0x00000196, 0x0000 }, /* R406 - FLL2 Control 6 */
  232. { 0x00000199, 0x0000 }, /* R408 - FLL2 Control 7 */
  233. { 0x000001A1, 0x0000 }, /* R417 - FLL2 Synchroniser 1 */
  234. { 0x000001A2, 0x0000 }, /* R418 - FLL2 Synchroniser 2 */
  235. { 0x000001A3, 0x0000 }, /* R419 - FLL2 Synchroniser 3 */
  236. { 0x000001A4, 0x0000 }, /* R420 - FLL2 Synchroniser 4 */
  237. { 0x000001A5, 0x0000 }, /* R421 - FLL2 Synchroniser 5 */
  238. { 0x000001A6, 0x0000 }, /* R422 - FLL2 Synchroniser 6 */
  239. { 0x000001A7, 0x0001 }, /* R422 - FLL2 Synchroniser 7 */
  240. { 0x000001A9, 0x0000 }, /* R425 - FLL2 Spread Spectrum */
  241. { 0x000001AA, 0x000C }, /* R426 - FLL2 GPIO Clock */
  242. { 0x00000218, 0x00E6 }, /* R536 - Mic Bias Ctrl 1 */
  243. { 0x00000219, 0x00E6 }, /* R537 - Mic Bias Ctrl 2 */
  244. { 0x00000300, 0x0000 }, /* R768 - Input Enables */
  245. { 0x00000308, 0x0000 }, /* R776 - Input Rate */
  246. { 0x00000309, 0x0022 }, /* R777 - Input Volume Ramp */
  247. { 0x0000030C, 0x0002 }, /* R780 - HPF Control */
  248. { 0x00000310, 0x2000 }, /* R784 - IN1L Control */
  249. { 0x00000311, 0x0180 }, /* R785 - ADC Digital Volume 1L */
  250. { 0x00000312, 0x0000 }, /* R786 - DMIC1L Control */
  251. { 0x00000314, 0x0000 }, /* R788 - IN1R Control */
  252. { 0x00000315, 0x0180 }, /* R789 - ADC Digital Volume 1R */
  253. { 0x00000316, 0x0000 }, /* R790 - DMIC1R Control */
  254. { 0x00000318, 0x2000 }, /* R792 - IN2L Control */
  255. { 0x00000319, 0x0180 }, /* R793 - ADC Digital Volume 2L */
  256. { 0x0000031A, 0x0000 }, /* R794 - DMIC2L Control */
  257. { 0x0000031C, 0x0000 }, /* R796 - IN2R Control */
  258. { 0x0000031D, 0x0180 }, /* R797 - ADC Digital Volume 2R */
  259. { 0x0000031E, 0x0000 }, /* R798 - DMIC2R Control */
  260. { 0x00000400, 0x0000 }, /* R1024 - Output Enables 1 */
  261. { 0x00000408, 0x0000 }, /* R1032 - Output Rate 1 */
  262. { 0x00000409, 0x0022 }, /* R1033 - Output Volume Ramp */
  263. { 0x00000410, 0x0080 }, /* R1040 - Output Path Config 1L */
  264. { 0x00000411, 0x0180 }, /* R1041 - DAC Digital Volume 1L */
  265. { 0x00000412, 0x0081 }, /* R1042 - DAC Volume Limit 1L */
  266. { 0x00000413, 0x0001 }, /* R1043 - Noise Gate Select 1L */
  267. { 0x00000415, 0x0180 }, /* R1045 - DAC Digital Volume 1R */
  268. { 0x00000416, 0x0081 }, /* R1046 - DAC Volume Limit 1R */
  269. { 0x00000417, 0x0002 }, /* R1047 - Noise Gate Select 1R */
  270. { 0x00000429, 0x0180 }, /* R1065 - DAC Digital Volume 4L */
  271. { 0x0000042A, 0x0081 }, /* R1066 - Out Volume 4L */
  272. { 0x0000042B, 0x0040 }, /* R1067 - Noise Gate Select 4L */
  273. { 0x00000450, 0x0000 }, /* R1104 - DAC AEC Control 1 */
  274. { 0x00000458, 0x0000 }, /* R1112 - Noise Gate Control */
  275. { 0x000004A0, 0x3480 }, /* R1184 - HP1 Short Circuit Ctrl */
  276. { 0x00000500, 0x000C }, /* R1280 - AIF1 BCLK Ctrl */
  277. { 0x00000501, 0x0008 }, /* R1281 - AIF1 Tx Pin Ctrl */
  278. { 0x00000502, 0x0000 }, /* R1282 - AIF1 Rx Pin Ctrl */
  279. { 0x00000503, 0x0000 }, /* R1283 - AIF1 Rate Ctrl */
  280. { 0x00000504, 0x0000 }, /* R1284 - AIF1 Format */
  281. { 0x00000505, 0x0040 }, /* R1285 - AIF1 Tx BCLK Rate */
  282. { 0x00000506, 0x0040 }, /* R1286 - AIF1 Rx BCLK Rate */
  283. { 0x00000507, 0x1818 }, /* R1287 - AIF1 Frame Ctrl 1 */
  284. { 0x00000508, 0x1818 }, /* R1288 - AIF1 Frame Ctrl 2 */
  285. { 0x00000509, 0x0000 }, /* R1289 - AIF1 Frame Ctrl 3 */
  286. { 0x0000050A, 0x0001 }, /* R1290 - AIF1 Frame Ctrl 4 */
  287. { 0x0000050B, 0x0002 }, /* R1291 - AIF1 Frame Ctrl 5 */
  288. { 0x0000050C, 0x0003 }, /* R1292 - AIF1 Frame Ctrl 6 */
  289. { 0x0000050D, 0x0004 }, /* R1293 - AIF1 Frame Ctrl 7 */
  290. { 0x0000050E, 0x0005 }, /* R1294 - AIF1 Frame Ctrl 8 */
  291. { 0x0000050F, 0x0006 }, /* R1295 - AIF1 Frame Ctrl 9 */
  292. { 0x00000510, 0x0007 }, /* R1296 - AIF1 Frame Ctrl 10 */
  293. { 0x00000511, 0x0000 }, /* R1297 - AIF1 Frame Ctrl 11 */
  294. { 0x00000512, 0x0001 }, /* R1298 - AIF1 Frame Ctrl 12 */
  295. { 0x00000513, 0x0002 }, /* R1299 - AIF1 Frame Ctrl 13 */
  296. { 0x00000514, 0x0003 }, /* R1300 - AIF1 Frame Ctrl 14 */
  297. { 0x00000515, 0x0004 }, /* R1301 - AIF1 Frame Ctrl 15 */
  298. { 0x00000516, 0x0005 }, /* R1302 - AIF1 Frame Ctrl 16 */
  299. { 0x00000517, 0x0006 }, /* R1303 - AIF1 Frame Ctrl 17 */
  300. { 0x00000518, 0x0007 }, /* R1304 - AIF1 Frame Ctrl 18 */
  301. { 0x00000519, 0x0000 }, /* R1305 - AIF1 Tx Enables */
  302. { 0x0000051A, 0x0000 }, /* R1306 - AIF1 Rx Enables */
  303. { 0x00000540, 0x000C }, /* R1344 - AIF2 BCLK Ctrl */
  304. { 0x00000541, 0x0008 }, /* R1345 - AIF2 Tx Pin Ctrl */
  305. { 0x00000542, 0x0000 }, /* R1346 - AIF2 Rx Pin Ctrl */
  306. { 0x00000543, 0x0000 }, /* R1347 - AIF2 Rate Ctrl */
  307. { 0x00000544, 0x0000 }, /* R1348 - AIF2 Format */
  308. { 0x00000545, 0x0040 }, /* R1349 - AIF2 Tx BCLK Rate */
  309. { 0x00000546, 0x0040 }, /* R1350 - AIF2 Rx BCLK Rate */
  310. { 0x00000547, 0x1818 }, /* R1351 - AIF2 Frame Ctrl 1 */
  311. { 0x00000548, 0x1818 }, /* R1352 - AIF2 Frame Ctrl 2 */
  312. { 0x00000549, 0x0000 }, /* R1353 - AIF2 Frame Ctrl 3 */
  313. { 0x0000054A, 0x0001 }, /* R1354 - AIF2 Frame Ctrl 4 */
  314. { 0x0000054B, 0x0002 }, /* R1355 - AIF2 Frame Ctrl 5 */
  315. { 0x0000054C, 0x0003 }, /* R1356 - AIF2 Frame Ctrl 6 */
  316. { 0x0000054D, 0x0004 }, /* R1357 - AIF2 Frame Ctrl 7 */
  317. { 0x0000054E, 0x0005 }, /* R1358 - AIF2 Frame Ctrl 8 */
  318. { 0x00000551, 0x0000 }, /* R1361 - AIF2 Frame Ctrl 11 */
  319. { 0x00000552, 0x0001 }, /* R1362 - AIF2 Frame Ctrl 12 */
  320. { 0x00000553, 0x0002 }, /* R1363 - AIF2 Frame Ctrl 13 */
  321. { 0x00000554, 0x0003 }, /* R1364 - AIF2 Frame Ctrl 14 */
  322. { 0x00000555, 0x0004 }, /* R1365 - AIF2 Frame Ctrl 15 */
  323. { 0x00000556, 0x0005 }, /* R1366 - AIF2 Frame Ctrl 16 */
  324. { 0x00000559, 0x0000 }, /* R1369 - AIF2 Tx Enables */
  325. { 0x0000055A, 0x0000 }, /* R1370 - AIF2 Rx Enables */
  326. { 0x00000580, 0x000C }, /* R1408 - AIF3 BCLK Ctrl */
  327. { 0x00000581, 0x0008 }, /* R1409 - AIF3 Tx Pin Ctrl */
  328. { 0x00000582, 0x0000 }, /* R1410 - AIF3 Rx Pin Ctrl */
  329. { 0x00000583, 0x0000 }, /* R1411 - AIF3 Rate Ctrl */
  330. { 0x00000584, 0x0000 }, /* R1412 - AIF3 Format */
  331. { 0x00000585, 0x0040 }, /* R1413 - AIF3 Tx BCLK Rate */
  332. { 0x00000586, 0x0040 }, /* R1414 - AIF3 Rx BCLK Rate */
  333. { 0x00000587, 0x1818 }, /* R1415 - AIF3 Frame Ctrl 1 */
  334. { 0x00000588, 0x1818 }, /* R1416 - AIF3 Frame Ctrl 2 */
  335. { 0x00000589, 0x0000 }, /* R1417 - AIF3 Frame Ctrl 3 */
  336. { 0x0000058A, 0x0001 }, /* R1418 - AIF3 Frame Ctrl 4 */
  337. { 0x00000591, 0x0000 }, /* R1425 - AIF3 Frame Ctrl 11 */
  338. { 0x00000592, 0x0001 }, /* R1426 - AIF3 Frame Ctrl 12 */
  339. { 0x00000599, 0x0000 }, /* R1433 - AIF3 Tx Enables */
  340. { 0x0000059A, 0x0000 }, /* R1434 - AIF3 Rx Enables */
  341. { 0x00000640, 0x0000 }, /* R1600 - PWM1MIX Input 1 Source */
  342. { 0x00000641, 0x0080 }, /* R1601 - PWM1MIX Input 1 Volume */
  343. { 0x00000642, 0x0000 }, /* R1602 - PWM1MIX Input 2 Source */
  344. { 0x00000643, 0x0080 }, /* R1603 - PWM1MIX Input 2 Volume */
  345. { 0x00000644, 0x0000 }, /* R1604 - PWM1MIX Input 3 Source */
  346. { 0x00000645, 0x0080 }, /* R1605 - PWM1MIX Input 3 Volume */
  347. { 0x00000646, 0x0000 }, /* R1606 - PWM1MIX Input 4 Source */
  348. { 0x00000647, 0x0080 }, /* R1607 - PWM1MIX Input 4 Volume */
  349. { 0x00000648, 0x0000 }, /* R1608 - PWM2MIX Input 1 Source */
  350. { 0x00000649, 0x0080 }, /* R1609 - PWM2MIX Input 1 Volume */
  351. { 0x0000064A, 0x0000 }, /* R1610 - PWM2MIX Input 2 Source */
  352. { 0x0000064B, 0x0080 }, /* R1611 - PWM2MIX Input 2 Volume */
  353. { 0x0000064C, 0x0000 }, /* R1612 - PWM2MIX Input 3 Source */
  354. { 0x0000064D, 0x0080 }, /* R1613 - PWM2MIX Input 3 Volume */
  355. { 0x0000064E, 0x0000 }, /* R1614 - PWM2MIX Input 4 Source */
  356. { 0x0000064F, 0x0080 }, /* R1615 - PWM2MIX Input 4 Volume */
  357. { 0x00000680, 0x0000 }, /* R1664 - OUT1LMIX Input 1 Source */
  358. { 0x00000681, 0x0080 }, /* R1665 - OUT1LMIX Input 1 Volume */
  359. { 0x00000682, 0x0000 }, /* R1666 - OUT1LMIX Input 2 Source */
  360. { 0x00000683, 0x0080 }, /* R1667 - OUT1LMIX Input 2 Volume */
  361. { 0x00000684, 0x0000 }, /* R1668 - OUT1LMIX Input 3 Source */
  362. { 0x00000685, 0x0080 }, /* R1669 - OUT1LMIX Input 3 Volume */
  363. { 0x00000686, 0x0000 }, /* R1670 - OUT1LMIX Input 4 Source */
  364. { 0x00000687, 0x0080 }, /* R1671 - OUT1LMIX Input 4 Volume */
  365. { 0x00000688, 0x0000 }, /* R1672 - OUT1RMIX Input 1 Source */
  366. { 0x00000689, 0x0080 }, /* R1673 - OUT1RMIX Input 1 Volume */
  367. { 0x0000068A, 0x0000 }, /* R1674 - OUT1RMIX Input 2 Source */
  368. { 0x0000068B, 0x0080 }, /* R1675 - OUT1RMIX Input 2 Volume */
  369. { 0x0000068C, 0x0000 }, /* R1676 - OUT1RMIX Input 3 Source */
  370. { 0x0000068D, 0x0080 }, /* R1677 - OUT1RMIX Input 3 Volume */
  371. { 0x0000068E, 0x0000 }, /* R1678 - OUT1RMIX Input 4 Source */
  372. { 0x0000068F, 0x0080 }, /* R1679 - OUT1RMIX Input 4 Volume */
  373. { 0x000006B0, 0x0000 }, /* R1712 - OUT4LMIX Input 1 Source */
  374. { 0x000006B1, 0x0080 }, /* R1713 - OUT4LMIX Input 1 Volume */
  375. { 0x000006B2, 0x0000 }, /* R1714 - OUT4LMIX Input 2 Source */
  376. { 0x000006B3, 0x0080 }, /* R1715 - OUT4LMIX Input 2 Volume */
  377. { 0x000006B4, 0x0000 }, /* R1716 - OUT4LMIX Input 3 Source */
  378. { 0x000006B5, 0x0080 }, /* R1717 - OUT4LMIX Input 3 Volume */
  379. { 0x000006B6, 0x0000 }, /* R1718 - OUT4LMIX Input 4 Source */
  380. { 0x000006B7, 0x0080 }, /* R1719 - OUT4LMIX Input 4 Volume */
  381. { 0x00000700, 0x0000 }, /* R1792 - AIF1TX1MIX Input 1 Source */
  382. { 0x00000701, 0x0080 }, /* R1793 - AIF1TX1MIX Input 1 Volume */
  383. { 0x00000702, 0x0000 }, /* R1794 - AIF1TX1MIX Input 2 Source */
  384. { 0x00000703, 0x0080 }, /* R1795 - AIF1TX1MIX Input 2 Volume */
  385. { 0x00000704, 0x0000 }, /* R1796 - AIF1TX1MIX Input 3 Source */
  386. { 0x00000705, 0x0080 }, /* R1797 - AIF1TX1MIX Input 3 Volume */
  387. { 0x00000706, 0x0000 }, /* R1798 - AIF1TX1MIX Input 4 Source */
  388. { 0x00000707, 0x0080 }, /* R1799 - AIF1TX1MIX Input 4 Volume */
  389. { 0x00000708, 0x0000 }, /* R1800 - AIF1TX2MIX Input 1 Source */
  390. { 0x00000709, 0x0080 }, /* R1801 - AIF1TX2MIX Input 1 Volume */
  391. { 0x0000070A, 0x0000 }, /* R1802 - AIF1TX2MIX Input 2 Source */
  392. { 0x0000070B, 0x0080 }, /* R1803 - AIF1TX2MIX Input 2 Volume */
  393. { 0x0000070C, 0x0000 }, /* R1804 - AIF1TX2MIX Input 3 Source */
  394. { 0x0000070D, 0x0080 }, /* R1805 - AIF1TX2MIX Input 3 Volume */
  395. { 0x0000070E, 0x0000 }, /* R1806 - AIF1TX2MIX Input 4 Source */
  396. { 0x0000070F, 0x0080 }, /* R1807 - AIF1TX2MIX Input 4 Volume */
  397. { 0x00000710, 0x0000 }, /* R1808 - AIF1TX3MIX Input 1 Source */
  398. { 0x00000711, 0x0080 }, /* R1809 - AIF1TX3MIX Input 1 Volume */
  399. { 0x00000712, 0x0000 }, /* R1810 - AIF1TX3MIX Input 2 Source */
  400. { 0x00000713, 0x0080 }, /* R1811 - AIF1TX3MIX Input 2 Volume */
  401. { 0x00000714, 0x0000 }, /* R1812 - AIF1TX3MIX Input 3 Source */
  402. { 0x00000715, 0x0080 }, /* R1813 - AIF1TX3MIX Input 3 Volume */
  403. { 0x00000716, 0x0000 }, /* R1814 - AIF1TX3MIX Input 4 Source */
  404. { 0x00000717, 0x0080 }, /* R1815 - AIF1TX3MIX Input 4 Volume */
  405. { 0x00000718, 0x0000 }, /* R1816 - AIF1TX4MIX Input 1 Source */
  406. { 0x00000719, 0x0080 }, /* R1817 - AIF1TX4MIX Input 1 Volume */
  407. { 0x0000071A, 0x0000 }, /* R1818 - AIF1TX4MIX Input 2 Source */
  408. { 0x0000071B, 0x0080 }, /* R1819 - AIF1TX4MIX Input 2 Volume */
  409. { 0x0000071C, 0x0000 }, /* R1820 - AIF1TX4MIX Input 3 Source */
  410. { 0x0000071D, 0x0080 }, /* R1821 - AIF1TX4MIX Input 3 Volume */
  411. { 0x0000071E, 0x0000 }, /* R1822 - AIF1TX4MIX Input 4 Source */
  412. { 0x0000071F, 0x0080 }, /* R1823 - AIF1TX4MIX Input 4 Volume */
  413. { 0x00000720, 0x0000 }, /* R1824 - AIF1TX5MIX Input 1 Source */
  414. { 0x00000721, 0x0080 }, /* R1825 - AIF1TX5MIX Input 1 Volume */
  415. { 0x00000722, 0x0000 }, /* R1826 - AIF1TX5MIX Input 2 Source */
  416. { 0x00000723, 0x0080 }, /* R1827 - AIF1TX5MIX Input 2 Volume */
  417. { 0x00000724, 0x0000 }, /* R1828 - AIF1TX5MIX Input 3 Source */
  418. { 0x00000725, 0x0080 }, /* R1829 - AIF1TX5MIX Input 3 Volume */
  419. { 0x00000726, 0x0000 }, /* R1830 - AIF1TX5MIX Input 4 Source */
  420. { 0x00000727, 0x0080 }, /* R1831 - AIF1TX5MIX Input 4 Volume */
  421. { 0x00000728, 0x0000 }, /* R1832 - AIF1TX6MIX Input 1 Source */
  422. { 0x00000729, 0x0080 }, /* R1833 - AIF1TX6MIX Input 1 Volume */
  423. { 0x0000072A, 0x0000 }, /* R1834 - AIF1TX6MIX Input 2 Source */
  424. { 0x0000072B, 0x0080 }, /* R1835 - AIF1TX6MIX Input 2 Volume */
  425. { 0x0000072C, 0x0000 }, /* R1836 - AIF1TX6MIX Input 3 Source */
  426. { 0x0000072D, 0x0080 }, /* R1837 - AIF1TX6MIX Input 3 Volume */
  427. { 0x0000072E, 0x0000 }, /* R1838 - AIF1TX6MIX Input 4 Source */
  428. { 0x0000072F, 0x0080 }, /* R1839 - AIF1TX6MIX Input 4 Volume */
  429. { 0x00000730, 0x0000 }, /* R1840 - AIF1TX7MIX Input 1 Source */
  430. { 0x00000731, 0x0080 }, /* R1841 - AIF1TX7MIX Input 1 Volume */
  431. { 0x00000732, 0x0000 }, /* R1842 - AIF1TX7MIX Input 2 Source */
  432. { 0x00000733, 0x0080 }, /* R1843 - AIF1TX7MIX Input 2 Volume */
  433. { 0x00000734, 0x0000 }, /* R1844 - AIF1TX7MIX Input 3 Source */
  434. { 0x00000735, 0x0080 }, /* R1845 - AIF1TX7MIX Input 3 Volume */
  435. { 0x00000736, 0x0000 }, /* R1846 - AIF1TX7MIX Input 4 Source */
  436. { 0x00000737, 0x0080 }, /* R1847 - AIF1TX7MIX Input 4 Volume */
  437. { 0x00000738, 0x0000 }, /* R1848 - AIF1TX8MIX Input 1 Source */
  438. { 0x00000739, 0x0080 }, /* R1849 - AIF1TX8MIX Input 1 Volume */
  439. { 0x0000073A, 0x0000 }, /* R1850 - AIF1TX8MIX Input 2 Source */
  440. { 0x0000073B, 0x0080 }, /* R1851 - AIF1TX8MIX Input 2 Volume */
  441. { 0x0000073C, 0x0000 }, /* R1852 - AIF1TX8MIX Input 3 Source */
  442. { 0x0000073D, 0x0080 }, /* R1853 - AIF1TX8MIX Input 3 Volume */
  443. { 0x0000073E, 0x0000 }, /* R1854 - AIF1TX8MIX Input 4 Source */
  444. { 0x0000073F, 0x0080 }, /* R1855 - AIF1TX8MIX Input 4 Volume */
  445. { 0x00000740, 0x0000 }, /* R1856 - AIF2TX1MIX Input 1 Source */
  446. { 0x00000741, 0x0080 }, /* R1857 - AIF2TX1MIX Input 1 Volume */
  447. { 0x00000742, 0x0000 }, /* R1858 - AIF2TX1MIX Input 2 Source */
  448. { 0x00000743, 0x0080 }, /* R1859 - AIF2TX1MIX Input 2 Volume */
  449. { 0x00000744, 0x0000 }, /* R1860 - AIF2TX1MIX Input 3 Source */
  450. { 0x00000745, 0x0080 }, /* R1861 - AIF2TX1MIX Input 3 Volume */
  451. { 0x00000746, 0x0000 }, /* R1862 - AIF2TX1MIX Input 4 Source */
  452. { 0x00000747, 0x0080 }, /* R1863 - AIF2TX1MIX Input 4 Volume */
  453. { 0x00000748, 0x0000 }, /* R1864 - AIF2TX2MIX Input 1 Source */
  454. { 0x00000749, 0x0080 }, /* R1865 - AIF2TX2MIX Input 1 Volume */
  455. { 0x0000074A, 0x0000 }, /* R1866 - AIF2TX2MIX Input 2 Source */
  456. { 0x0000074B, 0x0080 }, /* R1867 - AIF2TX2MIX Input 2 Volume */
  457. { 0x0000074C, 0x0000 }, /* R1868 - AIF2TX2MIX Input 3 Source */
  458. { 0x0000074D, 0x0080 }, /* R1869 - AIF2TX2MIX Input 3 Volume */
  459. { 0x0000074E, 0x0000 }, /* R1870 - AIF2TX2MIX Input 4 Source */
  460. { 0x0000074F, 0x0080 }, /* R1871 - AIF2TX2MIX Input 4 Volume */
  461. { 0x00000750, 0x0000 }, /* R1872 - AIF2TX3MIX Input 1 Source */
  462. { 0x00000751, 0x0080 }, /* R1873 - AIF2TX3MIX Input 1 Volume */
  463. { 0x00000752, 0x0000 }, /* R1874 - AIF2TX3MIX Input 2 Source */
  464. { 0x00000753, 0x0080 }, /* R1875 - AIF2TX3MIX Input 2 Volume */
  465. { 0x00000754, 0x0000 }, /* R1876 - AIF2TX3MIX Input 3 Source */
  466. { 0x00000755, 0x0080 }, /* R1877 - AIF2TX3MIX Input 3 Volume */
  467. { 0x00000756, 0x0000 }, /* R1878 - AIF2TX3MIX Input 4 Source */
  468. { 0x00000757, 0x0080 }, /* R1879 - AIF2TX3MIX Input 4 Volume */
  469. { 0x00000758, 0x0000 }, /* R1880 - AIF2TX4MIX Input 1 Source */
  470. { 0x00000759, 0x0080 }, /* R1881 - AIF2TX4MIX Input 1 Volume */
  471. { 0x0000075A, 0x0000 }, /* R1882 - AIF2TX4MIX Input 2 Source */
  472. { 0x0000075B, 0x0080 }, /* R1883 - AIF2TX4MIX Input 2 Volume */
  473. { 0x0000075C, 0x0000 }, /* R1884 - AIF2TX4MIX Input 3 Source */
  474. { 0x0000075D, 0x0080 }, /* R1885 - AIF2TX4MIX Input 3 Volume */
  475. { 0x0000075E, 0x0000 }, /* R1886 - AIF2TX4MIX Input 4 Source */
  476. { 0x0000075F, 0x0080 }, /* R1887 - AIF2TX4MIX Input 4 Volume */
  477. { 0x00000760, 0x0000 }, /* R1888 - AIF2TX5MIX Input 1 Source */
  478. { 0x00000761, 0x0080 }, /* R1889 - AIF2TX5MIX Input 1 Volume */
  479. { 0x00000762, 0x0000 }, /* R1890 - AIF2TX5MIX Input 2 Source */
  480. { 0x00000763, 0x0080 }, /* R1891 - AIF2TX5MIX Input 2 Volume */
  481. { 0x00000764, 0x0000 }, /* R1892 - AIF2TX5MIX Input 3 Source */
  482. { 0x00000765, 0x0080 }, /* R1893 - AIF2TX5MIX Input 3 Volume */
  483. { 0x00000766, 0x0000 }, /* R1894 - AIF2TX5MIX Input 4 Source */
  484. { 0x00000767, 0x0080 }, /* R1895 - AIF2TX5MIX Input 4 Volume */
  485. { 0x00000768, 0x0000 }, /* R1896 - AIF2TX6MIX Input 1 Source */
  486. { 0x00000769, 0x0080 }, /* R1897 - AIF2TX6MIX Input 1 Volume */
  487. { 0x0000076A, 0x0000 }, /* R1898 - AIF2TX6MIX Input 2 Source */
  488. { 0x0000076B, 0x0080 }, /* R1899 - AIF2TX6MIX Input 2 Volume */
  489. { 0x0000076C, 0x0000 }, /* R1900 - AIF2TX6MIX Input 3 Source */
  490. { 0x0000076D, 0x0080 }, /* R1901 - AIF2TX6MIX Input 3 Volume */
  491. { 0x0000076E, 0x0000 }, /* R1902 - AIF2TX6MIX Input 4 Source */
  492. { 0x0000076F, 0x0080 }, /* R1903 - AIF2TX6MIX Input 4 Volume */
  493. { 0x00000780, 0x0000 }, /* R1920 - AIF3TX1MIX Input 1 Source */
  494. { 0x00000781, 0x0080 }, /* R1921 - AIF3TX1MIX Input 1 Volume */
  495. { 0x00000782, 0x0000 }, /* R1922 - AIF3TX1MIX Input 2 Source */
  496. { 0x00000783, 0x0080 }, /* R1923 - AIF3TX1MIX Input 2 Volume */
  497. { 0x00000784, 0x0000 }, /* R1924 - AIF3TX1MIX Input 3 Source */
  498. { 0x00000785, 0x0080 }, /* R1925 - AIF3TX1MIX Input 3 Volume */
  499. { 0x00000786, 0x0000 }, /* R1926 - AIF3TX1MIX Input 4 Source */
  500. { 0x00000787, 0x0080 }, /* R1927 - AIF3TX1MIX Input 4 Volume */
  501. { 0x00000788, 0x0000 }, /* R1928 - AIF3TX2MIX Input 1 Source */
  502. { 0x00000789, 0x0080 }, /* R1929 - AIF3TX2MIX Input 1 Volume */
  503. { 0x0000078A, 0x0000 }, /* R1930 - AIF3TX2MIX Input 2 Source */
  504. { 0x0000078B, 0x0080 }, /* R1931 - AIF3TX2MIX Input 2 Volume */
  505. { 0x0000078C, 0x0000 }, /* R1932 - AIF3TX2MIX Input 3 Source */
  506. { 0x0000078D, 0x0080 }, /* R1933 - AIF3TX2MIX Input 3 Volume */
  507. { 0x0000078E, 0x0000 }, /* R1934 - AIF3TX2MIX Input 4 Source */
  508. { 0x0000078F, 0x0080 }, /* R1935 - AIF3TX2MIX Input 4 Volume */
  509. { 0x00000880, 0x0000 }, /* R2176 - EQ1MIX Input 1 Source */
  510. { 0x00000881, 0x0080 }, /* R2177 - EQ1MIX Input 1 Volume */
  511. { 0x00000882, 0x0000 }, /* R2178 - EQ1MIX Input 2 Source */
  512. { 0x00000883, 0x0080 }, /* R2179 - EQ1MIX Input 2 Volume */
  513. { 0x00000884, 0x0000 }, /* R2180 - EQ1MIX Input 3 Source */
  514. { 0x00000885, 0x0080 }, /* R2181 - EQ1MIX Input 3 Volume */
  515. { 0x00000886, 0x0000 }, /* R2182 - EQ1MIX Input 4 Source */
  516. { 0x00000887, 0x0080 }, /* R2183 - EQ1MIX Input 4 Volume */
  517. { 0x00000888, 0x0000 }, /* R2184 - EQ2MIX Input 1 Source */
  518. { 0x00000889, 0x0080 }, /* R2185 - EQ2MIX Input 1 Volume */
  519. { 0x0000088A, 0x0000 }, /* R2186 - EQ2MIX Input 2 Source */
  520. { 0x0000088B, 0x0080 }, /* R2187 - EQ2MIX Input 2 Volume */
  521. { 0x0000088C, 0x0000 }, /* R2188 - EQ2MIX Input 3 Source */
  522. { 0x0000088D, 0x0080 }, /* R2189 - EQ2MIX Input 3 Volume */
  523. { 0x0000088E, 0x0000 }, /* R2190 - EQ2MIX Input 4 Source */
  524. { 0x0000088F, 0x0080 }, /* R2191 - EQ2MIX Input 4 Volume */
  525. { 0x000008C0, 0x0000 }, /* R2240 - DRC1LMIX Input 1 Source */
  526. { 0x000008C1, 0x0080 }, /* R2241 - DRC1LMIX Input 1 Volume */
  527. { 0x000008C2, 0x0000 }, /* R2242 - DRC1LMIX Input 2 Source */
  528. { 0x000008C3, 0x0080 }, /* R2243 - DRC1LMIX Input 2 Volume */
  529. { 0x000008C4, 0x0000 }, /* R2244 - DRC1LMIX Input 3 Source */
  530. { 0x000008C5, 0x0080 }, /* R2245 - DRC1LMIX Input 3 Volume */
  531. { 0x000008C6, 0x0000 }, /* R2246 - DRC1LMIX Input 4 Source */
  532. { 0x000008C7, 0x0080 }, /* R2247 - DRC1LMIX Input 4 Volume */
  533. { 0x000008C8, 0x0000 }, /* R2248 - DRC1RMIX Input 1 Source */
  534. { 0x000008C9, 0x0080 }, /* R2249 - DRC1RMIX Input 1 Volume */
  535. { 0x000008CA, 0x0000 }, /* R2250 - DRC1RMIX Input 2 Source */
  536. { 0x000008CB, 0x0080 }, /* R2251 - DRC1RMIX Input 2 Volume */
  537. { 0x000008CC, 0x0000 }, /* R2252 - DRC1RMIX Input 3 Source */
  538. { 0x000008CD, 0x0080 }, /* R2253 - DRC1RMIX Input 3 Volume */
  539. { 0x000008CE, 0x0000 }, /* R2254 - DRC1RMIX Input 4 Source */
  540. { 0x000008CF, 0x0080 }, /* R2255 - DRC1RMIX Input 4 Volume */
  541. { 0x000008D0, 0x0000 }, /* R2256 - DRC2LMIX Input 1 Source */
  542. { 0x000008D1, 0x0080 }, /* R2257 - DRC2LMIX Input 1 Volume */
  543. { 0x000008D2, 0x0000 }, /* R2258 - DRC2LMIX Input 2 Source */
  544. { 0x000008D3, 0x0080 }, /* R2259 - DRC2LMIX Input 2 Volume */
  545. { 0x000008D4, 0x0000 }, /* R2260 - DRC2LMIX Input 3 Source */
  546. { 0x000008D5, 0x0080 }, /* R2261 - DRC2LMIX Input 3 Volume */
  547. { 0x000008D6, 0x0000 }, /* R2262 - DRC2LMIX Input 4 Source */
  548. { 0x000008D7, 0x0080 }, /* R2263 - DRC2LMIX Input 4 Volume */
  549. { 0x000008D8, 0x0000 }, /* R2264 - DRC2RMIX Input 1 Source */
  550. { 0x000008D9, 0x0080 }, /* R2265 - DRC2RMIX Input 1 Volume */
  551. { 0x000008DA, 0x0000 }, /* R2266 - DRC2RMIX Input 2 Source */
  552. { 0x000008DB, 0x0080 }, /* R2267 - DRC2RMIX Input 2 Volume */
  553. { 0x000008DC, 0x0000 }, /* R2268 - DRC2RMIX Input 3 Source */
  554. { 0x000008DD, 0x0080 }, /* R2269 - DRC2RMIX Input 3 Volume */
  555. { 0x000008DE, 0x0000 }, /* R2270 - DRC2RMIX Input 4 Source */
  556. { 0x000008DF, 0x0080 }, /* R2271 - DRC2RMIX Input 4 Volume */
  557. { 0x00000900, 0x0000 }, /* R2304 - HPLP1MIX Input 1 Source */
  558. { 0x00000901, 0x0080 }, /* R2305 - HPLP1MIX Input 1 Volume */
  559. { 0x00000902, 0x0000 }, /* R2306 - HPLP1MIX Input 2 Source */
  560. { 0x00000903, 0x0080 }, /* R2307 - HPLP1MIX Input 2 Volume */
  561. { 0x00000904, 0x0000 }, /* R2308 - HPLP1MIX Input 3 Source */
  562. { 0x00000905, 0x0080 }, /* R2309 - HPLP1MIX Input 3 Volume */
  563. { 0x00000906, 0x0000 }, /* R2310 - HPLP1MIX Input 4 Source */
  564. { 0x00000907, 0x0080 }, /* R2311 - HPLP1MIX Input 4 Volume */
  565. { 0x00000908, 0x0000 }, /* R2312 - HPLP2MIX Input 1 Source */
  566. { 0x00000909, 0x0080 }, /* R2313 - HPLP2MIX Input 1 Volume */
  567. { 0x0000090A, 0x0000 }, /* R2314 - HPLP2MIX Input 2 Source */
  568. { 0x0000090B, 0x0080 }, /* R2315 - HPLP2MIX Input 2 Volume */
  569. { 0x0000090C, 0x0000 }, /* R2316 - HPLP2MIX Input 3 Source */
  570. { 0x0000090D, 0x0080 }, /* R2317 - HPLP2MIX Input 3 Volume */
  571. { 0x0000090E, 0x0000 }, /* R2318 - HPLP2MIX Input 4 Source */
  572. { 0x0000090F, 0x0080 }, /* R2319 - HPLP2MIX Input 4 Volume */
  573. { 0x00000910, 0x0000 }, /* R2320 - HPLP3MIX Input 1 Source */
  574. { 0x00000911, 0x0080 }, /* R2321 - HPLP3MIX Input 1 Volume */
  575. { 0x00000912, 0x0000 }, /* R2322 - HPLP3MIX Input 2 Source */
  576. { 0x00000913, 0x0080 }, /* R2323 - HPLP3MIX Input 2 Volume */
  577. { 0x00000914, 0x0000 }, /* R2324 - HPLP3MIX Input 3 Source */
  578. { 0x00000915, 0x0080 }, /* R2325 - HPLP3MIX Input 3 Volume */
  579. { 0x00000916, 0x0000 }, /* R2326 - HPLP3MIX Input 4 Source */
  580. { 0x00000917, 0x0080 }, /* R2327 - HPLP3MIX Input 4 Volume */
  581. { 0x00000918, 0x0000 }, /* R2328 - HPLP4MIX Input 1 Source */
  582. { 0x00000919, 0x0080 }, /* R2329 - HPLP4MIX Input 1 Volume */
  583. { 0x0000091A, 0x0000 }, /* R2330 - HPLP4MIX Input 2 Source */
  584. { 0x0000091B, 0x0080 }, /* R2331 - HPLP4MIX Input 2 Volume */
  585. { 0x0000091C, 0x0000 }, /* R2332 - HPLP4MIX Input 3 Source */
  586. { 0x0000091D, 0x0080 }, /* R2333 - HPLP4MIX Input 3 Volume */
  587. { 0x0000091E, 0x0000 }, /* R2334 - HPLP4MIX Input 4 Source */
  588. { 0x0000091F, 0x0080 }, /* R2335 - HPLP4MIX Input 4 Volume */
  589. { 0x00000980, 0x0000 }, /* R2432 - DSP2LMIX Input 1 Source */
  590. { 0x00000981, 0x0080 }, /* R2433 - DSP2LMIX Input 1 Volume */
  591. { 0x00000982, 0x0000 }, /* R2434 - DSP2LMIX Input 2 Source */
  592. { 0x00000983, 0x0080 }, /* R2435 - DSP2LMIX Input 2 Volume */
  593. { 0x00000984, 0x0000 }, /* R2436 - DSP2LMIX Input 3 Source */
  594. { 0x00000985, 0x0080 }, /* R2437 - DSP2LMIX Input 3 Volume */
  595. { 0x00000986, 0x0000 }, /* R2438 - DSP2LMIX Input 4 Source */
  596. { 0x00000987, 0x0080 }, /* R2439 - DSP2LMIX Input 4 Volume */
  597. { 0x00000988, 0x0000 }, /* R2440 - DSP2RMIX Input 1 Source */
  598. { 0x00000989, 0x0080 }, /* R2441 - DSP2RMIX Input 1 Volume */
  599. { 0x0000098A, 0x0000 }, /* R2442 - DSP2RMIX Input 2 Source */
  600. { 0x0000098B, 0x0080 }, /* R2443 - DSP2RMIX Input 2 Volume */
  601. { 0x0000098C, 0x0000 }, /* R2444 - DSP2RMIX Input 3 Source */
  602. { 0x0000098D, 0x0080 }, /* R2445 - DSP2RMIX Input 3 Volume */
  603. { 0x0000098E, 0x0000 }, /* R2446 - DSP2RMIX Input 4 Source */
  604. { 0x0000098F, 0x0080 }, /* R2447 - DSP2RMIX Input 4 Volume */
  605. { 0x00000990, 0x0000 }, /* R2448 - DSP2AUX1MIX Input 1 Source */
  606. { 0x00000998, 0x0000 }, /* R2456 - DSP2AUX2MIX Input 1 Source */
  607. { 0x000009A0, 0x0000 }, /* R2464 - DSP2AUX3MIX Input 1 Source */
  608. { 0x000009A8, 0x0000 }, /* R2472 - DSP2AUX4MIX Input 1 Source */
  609. { 0x000009B0, 0x0000 }, /* R2480 - DSP2AUX5MIX Input 1 Source */
  610. { 0x000009B8, 0x0000 }, /* R2488 - DSP2AUX6MIX Input 1 Source */
  611. { 0x000009C0, 0x0000 }, /* R2496 - DSP3LMIX Input 1 Source */
  612. { 0x000009C1, 0x0080 }, /* R2497 - DSP3LMIX Input 1 Volume */
  613. { 0x000009C2, 0x0000 }, /* R2498 - DSP3LMIX Input 2 Source */
  614. { 0x000009C3, 0x0080 }, /* R2499 - DSP3LMIX Input 2 Volume */
  615. { 0x000009C4, 0x0000 }, /* R2500 - DSP3LMIX Input 3 Source */
  616. { 0x000009C5, 0x0080 }, /* R2501 - DSP3LMIX Input 3 Volume */
  617. { 0x000009C6, 0x0000 }, /* R2502 - DSP3LMIX Input 4 Source */
  618. { 0x000009C7, 0x0080 }, /* R2503 - DSP3LMIX Input 4 Volume */
  619. { 0x000009C8, 0x0000 }, /* R2504 - DSP3RMIX Input 1 Source */
  620. { 0x000009C9, 0x0080 }, /* R2505 - DSP3RMIX Input 1 Volume */
  621. { 0x000009CA, 0x0000 }, /* R2506 - DSP3RMIX Input 2 Source */
  622. { 0x000009CB, 0x0080 }, /* R2507 - DSP3RMIX Input 2 Volume */
  623. { 0x000009CC, 0x0000 }, /* R2508 - DSP3RMIX Input 3 Source */
  624. { 0x000009CD, 0x0080 }, /* R2509 - DSP3RMIX Input 3 Volume */
  625. { 0x000009CE, 0x0000 }, /* R2510 - DSP3RMIX Input 4 Source */
  626. { 0x000009CF, 0x0080 }, /* R2511 - DSP3RMIX Input 4 Volume */
  627. { 0x000009D0, 0x0000 }, /* R2512 - DSP3AUX1MIX Input 1 Source */
  628. { 0x000009D8, 0x0000 }, /* R2520 - DSP3AUX2MIX Input 1 Source */
  629. { 0x000009E0, 0x0000 }, /* R2528 - DSP3AUX3MIX Input 1 Source */
  630. { 0x000009E8, 0x0000 }, /* R2536 - DSP3AUX4MIX Input 1 Source */
  631. { 0x000009F0, 0x0000 }, /* R2544 - DSP3AUX5MIX Input 1 Source */
  632. { 0x000009F8, 0x0000 }, /* R2552 - DSP3AUX6MIX Input 1 Source */
  633. { 0x00000A80, 0x0000 }, /* R2688 - ASRC1LMIX Input 1 Source */
  634. { 0x00000A88, 0x0000 }, /* R2696 - ASRC1RMIX Input 1 Source */
  635. { 0x00000A90, 0x0000 }, /* R2704 - ASRC2LMIX Input 1 Source */
  636. { 0x00000A98, 0x0000 }, /* R2712 - ASRC2RMIX Input 1 Source */
  637. { 0x00000B00, 0x0000 }, /* R2816 - ISRC1DEC1MIX Input 1 Source */
  638. { 0x00000B08, 0x0000 }, /* R2824 - ISRC1DEC2MIX Input 1 Source */
  639. { 0x00000B10, 0x0000 }, /* R2832 - ISRC1DEC3MIX Input 1 Source */
  640. { 0x00000B18, 0x0000 }, /* R2840 - ISRC1DEC4MIX Input 1 Source */
  641. { 0x00000B20, 0x0000 }, /* R2848 - ISRC1INT1MIX Input 1 Source */
  642. { 0x00000B28, 0x0000 }, /* R2856 - ISRC1INT2MIX Input 1 Source */
  643. { 0x00000B30, 0x0000 }, /* R2864 - ISRC1INT3MIX Input 1 Source */
  644. { 0x00000B38, 0x0000 }, /* R2872 - ISRC1INT4MIX Input 1 Source */
  645. { 0x00000B40, 0x0000 }, /* R2880 - ISRC2DEC1MIX Input 1 Source */
  646. { 0x00000B48, 0x0000 }, /* R2888 - ISRC2DEC2MIX Input 1 Source */
  647. { 0x00000B50, 0x0000 }, /* R2896 - ISRC2DEC3MIX Input 1 Source */
  648. { 0x00000B58, 0x0000 }, /* R2904 - ISRC2DEC4MIX Input 1 Source */
  649. { 0x00000B60, 0x0000 }, /* R2912 - ISRC2INT1MIX Input 1 Source */
  650. { 0x00000B68, 0x0000 }, /* R2920 - ISRC2INT2MIX Input 1 Source */
  651. { 0x00000B70, 0x0000 }, /* R2928 - ISRC2INT3MIX Input 1 Source */
  652. { 0x00000B78, 0x0000 }, /* R2936 - ISRC2INT4MIX Input 1 Source */
  653. { 0x00000B80, 0x0000 }, /* R2944 - ISRC3DEC1MIX Input 1 Source */
  654. { 0x00000B88, 0x0000 }, /* R2952 - ISRC3DEC2MIX Input 1 Source */
  655. { 0x00000B90, 0x0000 }, /* R2960 - ISRC3DEC3MIX Input 1 Source */
  656. { 0x00000B98, 0x0000 }, /* R2968 - ISRC3DEC4MIX Input 1 Source */
  657. { 0x00000BA0, 0x0000 }, /* R2976 - ISRC3INT1MIX Input 1 Source */
  658. { 0x00000BA8, 0x0000 }, /* R2984 - ISRC3INT2MIX Input 1 Source */
  659. { 0x00000BB0, 0x0000 }, /* R2992 - ISRC3INT3MIX Input 1 Source */
  660. { 0x00000BB8, 0x0000 }, /* R3000 - ISRC3INT4MIX Input 1 Source */
  661. { 0x00000C00, 0xA101 }, /* R3072 - GPIO1 CTRL */
  662. { 0x00000C01, 0xA101 }, /* R3073 - GPIO2 CTRL */
  663. { 0x00000C0F, 0x0400 }, /* R3087 - IRQ CTRL 1 */
  664. { 0x00000C10, 0x1000 }, /* R3088 - GPIO Debounce Config */
  665. { 0x00000C20, 0x0002 }, /* R3104 - Misc Pad Ctrl 1 */
  666. { 0x00000C21, 0x0000 }, /* R3105 - Misc Pad Ctrl 2 */
  667. { 0x00000C22, 0x0000 }, /* R3106 - Misc Pad Ctrl 3 */
  668. { 0x00000C23, 0x0000 }, /* R3107 - Misc Pad Ctrl 4 */
  669. { 0x00000C24, 0x0000 }, /* R3108 - Misc Pad Ctrl 5 */
  670. { 0x00000C25, 0x0000 }, /* R3109 - Misc Pad Ctrl 6 */
  671. { 0x00000C30, 0x0404 }, /* R3120 - Misc Pad Ctrl 7 */
  672. { 0x00000C32, 0x0404 }, /* R3122 - Misc Pad Ctrl 9 */
  673. { 0x00000C33, 0x0404 }, /* R3123 - Misc Pad Ctrl 10 */
  674. { 0x00000C34, 0x0404 }, /* R3124 - Misc Pad Ctrl 11 */
  675. { 0x00000C35, 0x0404 }, /* R3125 - Misc Pad Ctrl 12 */
  676. { 0x00000C36, 0x0400 }, /* R3126 - Misc Pad Ctrl 13 */
  677. { 0x00000C37, 0x0404 }, /* R3127 - Misc Pad Ctrl 14 */
  678. { 0x00000C39, 0x0400 }, /* R3129 - Misc Pad Ctrl 16 */
  679. { 0x00000D08, 0x0007 }, /* R3336 - Interrupt Status 1 Mask */
  680. { 0x00000D09, 0x06FF }, /* R3337 - Interrupt Status 2 Mask */
  681. { 0x00000D0A, 0xCFEF }, /* R3338 - Interrupt Status 3 Mask */
  682. { 0x00000D0B, 0xFFC3 }, /* R3339 - Interrupt Status 4 Mask */
  683. { 0x00000D0C, 0x000B }, /* R3340 - Interrupt Status 5 Mask */
  684. { 0x00000D0D, 0xD005 }, /* R3341 - Interrupt Status 6 Mask */
  685. { 0x00000D0F, 0x0000 }, /* R3343 - Interrupt Control */
  686. { 0x00000D18, 0x0007 }, /* R3352 - IRQ2 Status 1 Mask */
  687. { 0x00000D19, 0x06FF }, /* R3353 - IRQ2 Status 2 Mask */
  688. { 0x00000D1A, 0xCFEF }, /* R3354 - IRQ2 Status 3 Mask */
  689. { 0x00000D1B, 0xFFC3 }, /* R3355 - IRQ2 Status 4 Mask */
  690. { 0x00000D1C, 0x000B }, /* R3356 - IRQ2 Status 5 Mask */
  691. { 0x00000D1D, 0xD005 }, /* R3357 - IRQ2 Status 6 Mask */
  692. { 0x00000D1F, 0x0000 }, /* R3359 - IRQ2 Control */
  693. { 0x00000E00, 0x0000 }, /* R3584 - FX_Ctrl1 */
  694. { 0x00000E10, 0x6318 }, /* R3600 - EQ1_1 */
  695. { 0x00000E11, 0x6300 }, /* R3601 - EQ1_2 */
  696. { 0x00000E12, 0x0FC8 }, /* R3602 - EQ1_3 */
  697. { 0x00000E13, 0x03FE }, /* R3603 - EQ1_4 */
  698. { 0x00000E14, 0x00E0 }, /* R3604 - EQ1_5 */
  699. { 0x00000E15, 0x1EC4 }, /* R3605 - EQ1_6 */
  700. { 0x00000E16, 0xF136 }, /* R3606 - EQ1_7 */
  701. { 0x00000E17, 0x0409 }, /* R3607 - EQ1_8 */
  702. { 0x00000E18, 0x04CC }, /* R3608 - EQ1_9 */
  703. { 0x00000E19, 0x1C9B }, /* R3609 - EQ1_10 */
  704. { 0x00000E1A, 0xF337 }, /* R3610 - EQ1_11 */
  705. { 0x00000E1B, 0x040B }, /* R3611 - EQ1_12 */
  706. { 0x00000E1C, 0x0CBB }, /* R3612 - EQ1_13 */
  707. { 0x00000E1D, 0x16F8 }, /* R3613 - EQ1_14 */
  708. { 0x00000E1E, 0xF7D9 }, /* R3614 - EQ1_15 */
  709. { 0x00000E1F, 0x040A }, /* R3615 - EQ1_16 */
  710. { 0x00000E20, 0x1F14 }, /* R3616 - EQ1_17 */
  711. { 0x00000E21, 0x058C }, /* R3617 - EQ1_18 */
  712. { 0x00000E22, 0x0563 }, /* R3618 - EQ1_19 */
  713. { 0x00000E23, 0x4000 }, /* R3619 - EQ1_20 */
  714. { 0x00000E24, 0x0B75 }, /* R3620 - EQ1_21 */
  715. { 0x00000E26, 0x6318 }, /* R3622 - EQ2_1 */
  716. { 0x00000E27, 0x6300 }, /* R3623 - EQ2_2 */
  717. { 0x00000E28, 0x0FC8 }, /* R3624 - EQ2_3 */
  718. { 0x00000E29, 0x03FE }, /* R3625 - EQ2_4 */
  719. { 0x00000E2A, 0x00E0 }, /* R3626 - EQ2_5 */
  720. { 0x00000E2B, 0x1EC4 }, /* R3627 - EQ2_6 */
  721. { 0x00000E2C, 0xF136 }, /* R3628 - EQ2_7 */
  722. { 0x00000E2D, 0x0409 }, /* R3629 - EQ2_8 */
  723. { 0x00000E2E, 0x04CC }, /* R3630 - EQ2_9 */
  724. { 0x00000E2F, 0x1C9B }, /* R3631 - EQ2_10 */
  725. { 0x00000E30, 0xF337 }, /* R3632 - EQ2_11 */
  726. { 0x00000E31, 0x040B }, /* R3633 - EQ2_12 */
  727. { 0x00000E32, 0x0CBB }, /* R3634 - EQ2_13 */
  728. { 0x00000E33, 0x16F8 }, /* R3635 - EQ2_14 */
  729. { 0x00000E34, 0xF7D9 }, /* R3636 - EQ2_15 */
  730. { 0x00000E35, 0x040A }, /* R3637 - EQ2_16 */
  731. { 0x00000E36, 0x1F14 }, /* R3638 - EQ2_17 */
  732. { 0x00000E37, 0x058C }, /* R3639 - EQ2_18 */
  733. { 0x00000E38, 0x0563 }, /* R3640 - EQ2_19 */
  734. { 0x00000E39, 0x4000 }, /* R3641 - EQ2_20 */
  735. { 0x00000E3A, 0x0B75 }, /* R3642 - EQ2_21 */
  736. { 0x00000E80, 0x0018 }, /* R3712 - DRC1 ctrl1 */
  737. { 0x00000E81, 0x0933 }, /* R3713 - DRC1 ctrl2 */
  738. { 0x00000E82, 0x0018 }, /* R3714 - DRC1 ctrl3 */
  739. { 0x00000E83, 0x0000 }, /* R3715 - DRC1 ctrl4 */
  740. { 0x00000E84, 0x0000 }, /* R3716 - DRC1 ctrl5 */
  741. { 0x00000E89, 0x0018 }, /* R3721 - DRC2 ctrl1 */
  742. { 0x00000E8A, 0x0933 }, /* R3722 - DRC2 ctrl2 */
  743. { 0x00000E8B, 0x0018 }, /* R3723 - DRC2 ctrl3 */
  744. { 0x00000E8C, 0x0000 }, /* R3724 - DRC2 ctrl4 */
  745. { 0x00000E8D, 0x0000 }, /* R3725 - DRC2 ctrl5 */
  746. { 0x00000EC0, 0x0000 }, /* R3776 - HPLPF1_1 */
  747. { 0x00000EC1, 0x0000 }, /* R3777 - HPLPF1_2 */
  748. { 0x00000EC4, 0x0000 }, /* R3780 - HPLPF2_1 */
  749. { 0x00000EC5, 0x0000 }, /* R3781 - HPLPF2_2 */
  750. { 0x00000EC8, 0x0000 }, /* R3784 - HPLPF3_1 */
  751. { 0x00000EC9, 0x0000 }, /* R3785 - HPLPF3_2 */
  752. { 0x00000ECC, 0x0000 }, /* R3788 - HPLPF4_1 */
  753. { 0x00000ECD, 0x0000 }, /* R3789 - HPLPF4_2 */
  754. { 0x00000EE0, 0x0000 }, /* R3808 - ASRC_ENABLE */
  755. { 0x00000EE2, 0x0000 }, /* R3810 - ASRC_RATE1 */
  756. { 0x00000EE3, 0x4000 }, /* R3811 - ASRC_RATE2 */
  757. { 0x00000EF0, 0x0000 }, /* R3824 - ISRC 1 CTRL 1 */
  758. { 0x00000EF1, 0x0000 }, /* R3825 - ISRC 1 CTRL 2 */
  759. { 0x00000EF2, 0x0000 }, /* R3826 - ISRC 1 CTRL 3 */
  760. { 0x00000EF3, 0x0000 }, /* R3827 - ISRC 2 CTRL 1 */
  761. { 0x00000EF4, 0x0000 }, /* R3828 - ISRC 2 CTRL 2 */
  762. { 0x00000EF5, 0x0000 }, /* R3829 - ISRC 2 CTRL 3 */
  763. { 0x00000EF6, 0x0000 }, /* R3830 - ISRC 3 CTRL 1 */
  764. { 0x00000EF7, 0x0000 }, /* R3831 - ISRC 3 CTRL 2 */
  765. { 0x00000EF8, 0x0000 }, /* R3832 - ISRC 3 CTRL 3 */
  766. { 0x00001200, 0x0010 }, /* R4608 - DSP2 Control 1 */
  767. { 0x00001300, 0x0010 }, /* R4864 - DSP3 Control 1 */
  768. };
  769. static bool cs47l24_is_adsp_memory(unsigned int reg)
  770. {
  771. switch (reg) {
  772. case 0x200000 ... 0x205fff: /* DSP2 PM */
  773. case 0x280000 ... 0x281fff: /* DSP2 ZM */
  774. case 0x290000 ... 0x2a7fff: /* DSP2 XM */
  775. case 0x2a8000 ... 0x2b3fff: /* DSP2 YM */
  776. case 0x300000 ... 0x308fff: /* DSP3 PM */
  777. case 0x380000 ... 0x381fff: /* DSP3 ZM */
  778. case 0x390000 ... 0x3a7fff: /* DSP3 XM */
  779. case 0x3a8000 ... 0x3b3fff: /* DSP3 YM */
  780. return true;
  781. default:
  782. return false;
  783. }
  784. }
  785. static bool cs47l24_readable_register(struct device *dev, unsigned int reg)
  786. {
  787. switch (reg) {
  788. case ARIZONA_SOFTWARE_RESET:
  789. case ARIZONA_DEVICE_REVISION:
  790. case ARIZONA_CTRL_IF_SPI_CFG_1:
  791. case ARIZONA_WRITE_SEQUENCER_CTRL_0:
  792. case ARIZONA_WRITE_SEQUENCER_CTRL_1:
  793. case ARIZONA_WRITE_SEQUENCER_CTRL_2:
  794. case ARIZONA_TONE_GENERATOR_1:
  795. case ARIZONA_TONE_GENERATOR_2:
  796. case ARIZONA_TONE_GENERATOR_3:
  797. case ARIZONA_TONE_GENERATOR_4:
  798. case ARIZONA_TONE_GENERATOR_5:
  799. case ARIZONA_PWM_DRIVE_1:
  800. case ARIZONA_PWM_DRIVE_2:
  801. case ARIZONA_PWM_DRIVE_3:
  802. case ARIZONA_SEQUENCE_CONTROL:
  803. case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_1:
  804. case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_2:
  805. case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_3:
  806. case ARIZONA_SAMPLE_RATE_SEQUENCE_SELECT_4:
  807. case ARIZONA_COMFORT_NOISE_GENERATOR:
  808. case ARIZONA_HAPTICS_CONTROL_1:
  809. case ARIZONA_HAPTICS_CONTROL_2:
  810. case ARIZONA_HAPTICS_PHASE_1_INTENSITY:
  811. case ARIZONA_HAPTICS_PHASE_1_DURATION:
  812. case ARIZONA_HAPTICS_PHASE_2_INTENSITY:
  813. case ARIZONA_HAPTICS_PHASE_2_DURATION:
  814. case ARIZONA_HAPTICS_PHASE_3_INTENSITY:
  815. case ARIZONA_HAPTICS_PHASE_3_DURATION:
  816. case ARIZONA_HAPTICS_STATUS:
  817. case ARIZONA_CLOCK_32K_1:
  818. case ARIZONA_SYSTEM_CLOCK_1:
  819. case ARIZONA_SAMPLE_RATE_1:
  820. case ARIZONA_SAMPLE_RATE_2:
  821. case ARIZONA_SAMPLE_RATE_3:
  822. case ARIZONA_SAMPLE_RATE_1_STATUS:
  823. case ARIZONA_SAMPLE_RATE_2_STATUS:
  824. case ARIZONA_SAMPLE_RATE_3_STATUS:
  825. case ARIZONA_ASYNC_CLOCK_1:
  826. case ARIZONA_ASYNC_SAMPLE_RATE_1:
  827. case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS:
  828. case ARIZONA_ASYNC_SAMPLE_RATE_2:
  829. case ARIZONA_ASYNC_SAMPLE_RATE_2_STATUS:
  830. case ARIZONA_OUTPUT_SYSTEM_CLOCK:
  831. case ARIZONA_OUTPUT_ASYNC_CLOCK:
  832. case ARIZONA_RATE_ESTIMATOR_1:
  833. case ARIZONA_RATE_ESTIMATOR_2:
  834. case ARIZONA_RATE_ESTIMATOR_3:
  835. case ARIZONA_RATE_ESTIMATOR_4:
  836. case ARIZONA_RATE_ESTIMATOR_5:
  837. case ARIZONA_FLL1_CONTROL_1:
  838. case ARIZONA_FLL1_CONTROL_2:
  839. case ARIZONA_FLL1_CONTROL_3:
  840. case ARIZONA_FLL1_CONTROL_4:
  841. case ARIZONA_FLL1_CONTROL_5:
  842. case ARIZONA_FLL1_CONTROL_6:
  843. case ARIZONA_FLL1_CONTROL_7:
  844. case ARIZONA_FLL1_SYNCHRONISER_1:
  845. case ARIZONA_FLL1_SYNCHRONISER_2:
  846. case ARIZONA_FLL1_SYNCHRONISER_3:
  847. case ARIZONA_FLL1_SYNCHRONISER_4:
  848. case ARIZONA_FLL1_SYNCHRONISER_5:
  849. case ARIZONA_FLL1_SYNCHRONISER_6:
  850. case ARIZONA_FLL1_SYNCHRONISER_7:
  851. case ARIZONA_FLL1_SPREAD_SPECTRUM:
  852. case ARIZONA_FLL1_GPIO_CLOCK:
  853. case ARIZONA_FLL2_CONTROL_1:
  854. case ARIZONA_FLL2_CONTROL_2:
  855. case ARIZONA_FLL2_CONTROL_3:
  856. case ARIZONA_FLL2_CONTROL_4:
  857. case ARIZONA_FLL2_CONTROL_5:
  858. case ARIZONA_FLL2_CONTROL_6:
  859. case ARIZONA_FLL2_CONTROL_7:
  860. case ARIZONA_FLL2_SYNCHRONISER_1:
  861. case ARIZONA_FLL2_SYNCHRONISER_2:
  862. case ARIZONA_FLL2_SYNCHRONISER_3:
  863. case ARIZONA_FLL2_SYNCHRONISER_4:
  864. case ARIZONA_FLL2_SYNCHRONISER_5:
  865. case ARIZONA_FLL2_SYNCHRONISER_6:
  866. case ARIZONA_FLL2_SYNCHRONISER_7:
  867. case ARIZONA_FLL2_SPREAD_SPECTRUM:
  868. case ARIZONA_FLL2_GPIO_CLOCK:
  869. case ARIZONA_MIC_BIAS_CTRL_1:
  870. case ARIZONA_MIC_BIAS_CTRL_2:
  871. case ARIZONA_HP_CTRL_1L:
  872. case ARIZONA_HP_CTRL_1R:
  873. case ARIZONA_INPUT_ENABLES:
  874. case ARIZONA_INPUT_ENABLES_STATUS:
  875. case ARIZONA_INPUT_RATE:
  876. case ARIZONA_INPUT_VOLUME_RAMP:
  877. case ARIZONA_HPF_CONTROL:
  878. case ARIZONA_IN1L_CONTROL:
  879. case ARIZONA_ADC_DIGITAL_VOLUME_1L:
  880. case ARIZONA_DMIC1L_CONTROL:
  881. case ARIZONA_IN1R_CONTROL:
  882. case ARIZONA_ADC_DIGITAL_VOLUME_1R:
  883. case ARIZONA_DMIC1R_CONTROL:
  884. case ARIZONA_IN2L_CONTROL:
  885. case ARIZONA_ADC_DIGITAL_VOLUME_2L:
  886. case ARIZONA_DMIC2L_CONTROL:
  887. case ARIZONA_IN2R_CONTROL:
  888. case ARIZONA_ADC_DIGITAL_VOLUME_2R:
  889. case ARIZONA_DMIC2R_CONTROL:
  890. case ARIZONA_OUTPUT_ENABLES_1:
  891. case ARIZONA_OUTPUT_STATUS_1:
  892. case ARIZONA_RAW_OUTPUT_STATUS_1:
  893. case ARIZONA_OUTPUT_RATE_1:
  894. case ARIZONA_OUTPUT_VOLUME_RAMP:
  895. case ARIZONA_OUTPUT_PATH_CONFIG_1L:
  896. case ARIZONA_DAC_DIGITAL_VOLUME_1L:
  897. case ARIZONA_DAC_VOLUME_LIMIT_1L:
  898. case ARIZONA_NOISE_GATE_SELECT_1L:
  899. case ARIZONA_DAC_DIGITAL_VOLUME_1R:
  900. case ARIZONA_DAC_VOLUME_LIMIT_1R:
  901. case ARIZONA_NOISE_GATE_SELECT_1R:
  902. case ARIZONA_DAC_DIGITAL_VOLUME_4L:
  903. case ARIZONA_OUT_VOLUME_4L:
  904. case ARIZONA_NOISE_GATE_SELECT_4L:
  905. case ARIZONA_DAC_AEC_CONTROL_1:
  906. case ARIZONA_NOISE_GATE_CONTROL:
  907. case ARIZONA_HP1_SHORT_CIRCUIT_CTRL:
  908. case ARIZONA_AIF1_BCLK_CTRL:
  909. case ARIZONA_AIF1_TX_PIN_CTRL:
  910. case ARIZONA_AIF1_RX_PIN_CTRL:
  911. case ARIZONA_AIF1_RATE_CTRL:
  912. case ARIZONA_AIF1_FORMAT:
  913. case ARIZONA_AIF1_TX_BCLK_RATE:
  914. case ARIZONA_AIF1_RX_BCLK_RATE:
  915. case ARIZONA_AIF1_FRAME_CTRL_1:
  916. case ARIZONA_AIF1_FRAME_CTRL_2:
  917. case ARIZONA_AIF1_FRAME_CTRL_3:
  918. case ARIZONA_AIF1_FRAME_CTRL_4:
  919. case ARIZONA_AIF1_FRAME_CTRL_5:
  920. case ARIZONA_AIF1_FRAME_CTRL_6:
  921. case ARIZONA_AIF1_FRAME_CTRL_7:
  922. case ARIZONA_AIF1_FRAME_CTRL_8:
  923. case ARIZONA_AIF1_FRAME_CTRL_9:
  924. case ARIZONA_AIF1_FRAME_CTRL_10:
  925. case ARIZONA_AIF1_FRAME_CTRL_11:
  926. case ARIZONA_AIF1_FRAME_CTRL_12:
  927. case ARIZONA_AIF1_FRAME_CTRL_13:
  928. case ARIZONA_AIF1_FRAME_CTRL_14:
  929. case ARIZONA_AIF1_FRAME_CTRL_15:
  930. case ARIZONA_AIF1_FRAME_CTRL_16:
  931. case ARIZONA_AIF1_FRAME_CTRL_17:
  932. case ARIZONA_AIF1_FRAME_CTRL_18:
  933. case ARIZONA_AIF1_TX_ENABLES:
  934. case ARIZONA_AIF1_RX_ENABLES:
  935. case ARIZONA_AIF2_BCLK_CTRL:
  936. case ARIZONA_AIF2_TX_PIN_CTRL:
  937. case ARIZONA_AIF2_RX_PIN_CTRL:
  938. case ARIZONA_AIF2_RATE_CTRL:
  939. case ARIZONA_AIF2_FORMAT:
  940. case ARIZONA_AIF2_TX_BCLK_RATE:
  941. case ARIZONA_AIF2_RX_BCLK_RATE:
  942. case ARIZONA_AIF2_FRAME_CTRL_1:
  943. case ARIZONA_AIF2_FRAME_CTRL_2:
  944. case ARIZONA_AIF2_FRAME_CTRL_3:
  945. case ARIZONA_AIF2_FRAME_CTRL_4:
  946. case ARIZONA_AIF2_FRAME_CTRL_5:
  947. case ARIZONA_AIF2_FRAME_CTRL_6:
  948. case ARIZONA_AIF2_FRAME_CTRL_7:
  949. case ARIZONA_AIF2_FRAME_CTRL_8:
  950. case ARIZONA_AIF2_FRAME_CTRL_11:
  951. case ARIZONA_AIF2_FRAME_CTRL_12:
  952. case ARIZONA_AIF2_FRAME_CTRL_13:
  953. case ARIZONA_AIF2_FRAME_CTRL_14:
  954. case ARIZONA_AIF2_FRAME_CTRL_15:
  955. case ARIZONA_AIF2_FRAME_CTRL_16:
  956. case ARIZONA_AIF2_TX_ENABLES:
  957. case ARIZONA_AIF2_RX_ENABLES:
  958. case ARIZONA_AIF3_BCLK_CTRL:
  959. case ARIZONA_AIF3_TX_PIN_CTRL:
  960. case ARIZONA_AIF3_RX_PIN_CTRL:
  961. case ARIZONA_AIF3_RATE_CTRL:
  962. case ARIZONA_AIF3_FORMAT:
  963. case ARIZONA_AIF3_TX_BCLK_RATE:
  964. case ARIZONA_AIF3_RX_BCLK_RATE:
  965. case ARIZONA_AIF3_FRAME_CTRL_1:
  966. case ARIZONA_AIF3_FRAME_CTRL_2:
  967. case ARIZONA_AIF3_FRAME_CTRL_3:
  968. case ARIZONA_AIF3_FRAME_CTRL_4:
  969. case ARIZONA_AIF3_FRAME_CTRL_11:
  970. case ARIZONA_AIF3_FRAME_CTRL_12:
  971. case ARIZONA_AIF3_TX_ENABLES:
  972. case ARIZONA_AIF3_RX_ENABLES:
  973. case ARIZONA_PWM1MIX_INPUT_1_SOURCE:
  974. case ARIZONA_PWM1MIX_INPUT_1_VOLUME:
  975. case ARIZONA_PWM1MIX_INPUT_2_SOURCE:
  976. case ARIZONA_PWM1MIX_INPUT_2_VOLUME:
  977. case ARIZONA_PWM1MIX_INPUT_3_SOURCE:
  978. case ARIZONA_PWM1MIX_INPUT_3_VOLUME:
  979. case ARIZONA_PWM1MIX_INPUT_4_SOURCE:
  980. case ARIZONA_PWM1MIX_INPUT_4_VOLUME:
  981. case ARIZONA_PWM2MIX_INPUT_1_SOURCE:
  982. case ARIZONA_PWM2MIX_INPUT_1_VOLUME:
  983. case ARIZONA_PWM2MIX_INPUT_2_SOURCE:
  984. case ARIZONA_PWM2MIX_INPUT_2_VOLUME:
  985. case ARIZONA_PWM2MIX_INPUT_3_SOURCE:
  986. case ARIZONA_PWM2MIX_INPUT_3_VOLUME:
  987. case ARIZONA_PWM2MIX_INPUT_4_SOURCE:
  988. case ARIZONA_PWM2MIX_INPUT_4_VOLUME:
  989. case ARIZONA_OUT1LMIX_INPUT_1_SOURCE:
  990. case ARIZONA_OUT1LMIX_INPUT_1_VOLUME:
  991. case ARIZONA_OUT1LMIX_INPUT_2_SOURCE:
  992. case ARIZONA_OUT1LMIX_INPUT_2_VOLUME:
  993. case ARIZONA_OUT1LMIX_INPUT_3_SOURCE:
  994. case ARIZONA_OUT1LMIX_INPUT_3_VOLUME:
  995. case ARIZONA_OUT1LMIX_INPUT_4_SOURCE:
  996. case ARIZONA_OUT1LMIX_INPUT_4_VOLUME:
  997. case ARIZONA_OUT1RMIX_INPUT_1_SOURCE:
  998. case ARIZONA_OUT1RMIX_INPUT_1_VOLUME:
  999. case ARIZONA_OUT1RMIX_INPUT_2_SOURCE:
  1000. case ARIZONA_OUT1RMIX_INPUT_2_VOLUME:
  1001. case ARIZONA_OUT1RMIX_INPUT_3_SOURCE:
  1002. case ARIZONA_OUT1RMIX_INPUT_3_VOLUME:
  1003. case ARIZONA_OUT1RMIX_INPUT_4_SOURCE:
  1004. case ARIZONA_OUT1RMIX_INPUT_4_VOLUME:
  1005. case ARIZONA_OUT4LMIX_INPUT_1_SOURCE:
  1006. case ARIZONA_OUT4LMIX_INPUT_1_VOLUME:
  1007. case ARIZONA_OUT4LMIX_INPUT_2_SOURCE:
  1008. case ARIZONA_OUT4LMIX_INPUT_2_VOLUME:
  1009. case ARIZONA_OUT4LMIX_INPUT_3_SOURCE:
  1010. case ARIZONA_OUT4LMIX_INPUT_3_VOLUME:
  1011. case ARIZONA_OUT4LMIX_INPUT_4_SOURCE:
  1012. case ARIZONA_OUT4LMIX_INPUT_4_VOLUME:
  1013. case ARIZONA_AIF1TX1MIX_INPUT_1_SOURCE:
  1014. case ARIZONA_AIF1TX1MIX_INPUT_1_VOLUME:
  1015. case ARIZONA_AIF1TX1MIX_INPUT_2_SOURCE:
  1016. case ARIZONA_AIF1TX1MIX_INPUT_2_VOLUME:
  1017. case ARIZONA_AIF1TX1MIX_INPUT_3_SOURCE:
  1018. case ARIZONA_AIF1TX1MIX_INPUT_3_VOLUME:
  1019. case ARIZONA_AIF1TX1MIX_INPUT_4_SOURCE:
  1020. case ARIZONA_AIF1TX1MIX_INPUT_4_VOLUME:
  1021. case ARIZONA_AIF1TX2MIX_INPUT_1_SOURCE:
  1022. case ARIZONA_AIF1TX2MIX_INPUT_1_VOLUME:
  1023. case ARIZONA_AIF1TX2MIX_INPUT_2_SOURCE:
  1024. case ARIZONA_AIF1TX2MIX_INPUT_2_VOLUME:
  1025. case ARIZONA_AIF1TX2MIX_INPUT_3_SOURCE:
  1026. case ARIZONA_AIF1TX2MIX_INPUT_3_VOLUME:
  1027. case ARIZONA_AIF1TX2MIX_INPUT_4_SOURCE:
  1028. case ARIZONA_AIF1TX2MIX_INPUT_4_VOLUME:
  1029. case ARIZONA_AIF1TX3MIX_INPUT_1_SOURCE:
  1030. case ARIZONA_AIF1TX3MIX_INPUT_1_VOLUME:
  1031. case ARIZONA_AIF1TX3MIX_INPUT_2_SOURCE:
  1032. case ARIZONA_AIF1TX3MIX_INPUT_2_VOLUME:
  1033. case ARIZONA_AIF1TX3MIX_INPUT_3_SOURCE:
  1034. case ARIZONA_AIF1TX3MIX_INPUT_3_VOLUME:
  1035. case ARIZONA_AIF1TX3MIX_INPUT_4_SOURCE:
  1036. case ARIZONA_AIF1TX3MIX_INPUT_4_VOLUME:
  1037. case ARIZONA_AIF1TX4MIX_INPUT_1_SOURCE:
  1038. case ARIZONA_AIF1TX4MIX_INPUT_1_VOLUME:
  1039. case ARIZONA_AIF1TX4MIX_INPUT_2_SOURCE:
  1040. case ARIZONA_AIF1TX4MIX_INPUT_2_VOLUME:
  1041. case ARIZONA_AIF1TX4MIX_INPUT_3_SOURCE:
  1042. case ARIZONA_AIF1TX4MIX_INPUT_3_VOLUME:
  1043. case ARIZONA_AIF1TX4MIX_INPUT_4_SOURCE:
  1044. case ARIZONA_AIF1TX4MIX_INPUT_4_VOLUME:
  1045. case ARIZONA_AIF1TX5MIX_INPUT_1_SOURCE:
  1046. case ARIZONA_AIF1TX5MIX_INPUT_1_VOLUME:
  1047. case ARIZONA_AIF1TX5MIX_INPUT_2_SOURCE:
  1048. case ARIZONA_AIF1TX5MIX_INPUT_2_VOLUME:
  1049. case ARIZONA_AIF1TX5MIX_INPUT_3_SOURCE:
  1050. case ARIZONA_AIF1TX5MIX_INPUT_3_VOLUME:
  1051. case ARIZONA_AIF1TX5MIX_INPUT_4_SOURCE:
  1052. case ARIZONA_AIF1TX5MIX_INPUT_4_VOLUME:
  1053. case ARIZONA_AIF1TX6MIX_INPUT_1_SOURCE:
  1054. case ARIZONA_AIF1TX6MIX_INPUT_1_VOLUME:
  1055. case ARIZONA_AIF1TX6MIX_INPUT_2_SOURCE:
  1056. case ARIZONA_AIF1TX6MIX_INPUT_2_VOLUME:
  1057. case ARIZONA_AIF1TX6MIX_INPUT_3_SOURCE:
  1058. case ARIZONA_AIF1TX6MIX_INPUT_3_VOLUME:
  1059. case ARIZONA_AIF1TX6MIX_INPUT_4_SOURCE:
  1060. case ARIZONA_AIF1TX6MIX_INPUT_4_VOLUME:
  1061. case ARIZONA_AIF1TX7MIX_INPUT_1_SOURCE:
  1062. case ARIZONA_AIF1TX7MIX_INPUT_1_VOLUME:
  1063. case ARIZONA_AIF1TX7MIX_INPUT_2_SOURCE:
  1064. case ARIZONA_AIF1TX7MIX_INPUT_2_VOLUME:
  1065. case ARIZONA_AIF1TX7MIX_INPUT_3_SOURCE:
  1066. case ARIZONA_AIF1TX7MIX_INPUT_3_VOLUME:
  1067. case ARIZONA_AIF1TX7MIX_INPUT_4_SOURCE:
  1068. case ARIZONA_AIF1TX7MIX_INPUT_4_VOLUME:
  1069. case ARIZONA_AIF1TX8MIX_INPUT_1_SOURCE:
  1070. case ARIZONA_AIF1TX8MIX_INPUT_1_VOLUME:
  1071. case ARIZONA_AIF1TX8MIX_INPUT_2_SOURCE:
  1072. case ARIZONA_AIF1TX8MIX_INPUT_2_VOLUME:
  1073. case ARIZONA_AIF1TX8MIX_INPUT_3_SOURCE:
  1074. case ARIZONA_AIF1TX8MIX_INPUT_3_VOLUME:
  1075. case ARIZONA_AIF1TX8MIX_INPUT_4_SOURCE:
  1076. case ARIZONA_AIF1TX8MIX_INPUT_4_VOLUME:
  1077. case ARIZONA_AIF2TX1MIX_INPUT_1_SOURCE:
  1078. case ARIZONA_AIF2TX1MIX_INPUT_1_VOLUME:
  1079. case ARIZONA_AIF2TX1MIX_INPUT_2_SOURCE:
  1080. case ARIZONA_AIF2TX1MIX_INPUT_2_VOLUME:
  1081. case ARIZONA_AIF2TX1MIX_INPUT_3_SOURCE:
  1082. case ARIZONA_AIF2TX1MIX_INPUT_3_VOLUME:
  1083. case ARIZONA_AIF2TX1MIX_INPUT_4_SOURCE:
  1084. case ARIZONA_AIF2TX1MIX_INPUT_4_VOLUME:
  1085. case ARIZONA_AIF2TX2MIX_INPUT_1_SOURCE:
  1086. case ARIZONA_AIF2TX2MIX_INPUT_1_VOLUME:
  1087. case ARIZONA_AIF2TX2MIX_INPUT_2_SOURCE:
  1088. case ARIZONA_AIF2TX2MIX_INPUT_2_VOLUME:
  1089. case ARIZONA_AIF2TX2MIX_INPUT_3_SOURCE:
  1090. case ARIZONA_AIF2TX2MIX_INPUT_3_VOLUME:
  1091. case ARIZONA_AIF2TX2MIX_INPUT_4_SOURCE:
  1092. case ARIZONA_AIF2TX2MIX_INPUT_4_VOLUME:
  1093. case ARIZONA_AIF2TX3MIX_INPUT_1_SOURCE:
  1094. case ARIZONA_AIF2TX3MIX_INPUT_1_VOLUME:
  1095. case ARIZONA_AIF2TX3MIX_INPUT_2_SOURCE:
  1096. case ARIZONA_AIF2TX3MIX_INPUT_2_VOLUME:
  1097. case ARIZONA_AIF2TX3MIX_INPUT_3_SOURCE:
  1098. case ARIZONA_AIF2TX3MIX_INPUT_3_VOLUME:
  1099. case ARIZONA_AIF2TX3MIX_INPUT_4_SOURCE:
  1100. case ARIZONA_AIF2TX3MIX_INPUT_4_VOLUME:
  1101. case ARIZONA_AIF2TX4MIX_INPUT_1_SOURCE:
  1102. case ARIZONA_AIF2TX4MIX_INPUT_1_VOLUME:
  1103. case ARIZONA_AIF2TX4MIX_INPUT_2_SOURCE:
  1104. case ARIZONA_AIF2TX4MIX_INPUT_2_VOLUME:
  1105. case ARIZONA_AIF2TX4MIX_INPUT_3_SOURCE:
  1106. case ARIZONA_AIF2TX4MIX_INPUT_3_VOLUME:
  1107. case ARIZONA_AIF2TX4MIX_INPUT_4_SOURCE:
  1108. case ARIZONA_AIF2TX4MIX_INPUT_4_VOLUME:
  1109. case ARIZONA_AIF2TX5MIX_INPUT_1_SOURCE:
  1110. case ARIZONA_AIF2TX5MIX_INPUT_1_VOLUME:
  1111. case ARIZONA_AIF2TX5MIX_INPUT_2_SOURCE:
  1112. case ARIZONA_AIF2TX5MIX_INPUT_2_VOLUME:
  1113. case ARIZONA_AIF2TX5MIX_INPUT_3_SOURCE:
  1114. case ARIZONA_AIF2TX5MIX_INPUT_3_VOLUME:
  1115. case ARIZONA_AIF2TX5MIX_INPUT_4_SOURCE:
  1116. case ARIZONA_AIF2TX5MIX_INPUT_4_VOLUME:
  1117. case ARIZONA_AIF2TX6MIX_INPUT_1_SOURCE:
  1118. case ARIZONA_AIF2TX6MIX_INPUT_1_VOLUME:
  1119. case ARIZONA_AIF2TX6MIX_INPUT_2_SOURCE:
  1120. case ARIZONA_AIF2TX6MIX_INPUT_2_VOLUME:
  1121. case ARIZONA_AIF2TX6MIX_INPUT_3_SOURCE:
  1122. case ARIZONA_AIF2TX6MIX_INPUT_3_VOLUME:
  1123. case ARIZONA_AIF2TX6MIX_INPUT_4_SOURCE:
  1124. case ARIZONA_AIF2TX6MIX_INPUT_4_VOLUME:
  1125. case ARIZONA_AIF3TX1MIX_INPUT_1_SOURCE:
  1126. case ARIZONA_AIF3TX1MIX_INPUT_1_VOLUME:
  1127. case ARIZONA_AIF3TX1MIX_INPUT_2_SOURCE:
  1128. case ARIZONA_AIF3TX1MIX_INPUT_2_VOLUME:
  1129. case ARIZONA_AIF3TX1MIX_INPUT_3_SOURCE:
  1130. case ARIZONA_AIF3TX1MIX_INPUT_3_VOLUME:
  1131. case ARIZONA_AIF3TX1MIX_INPUT_4_SOURCE:
  1132. case ARIZONA_AIF3TX1MIX_INPUT_4_VOLUME:
  1133. case ARIZONA_AIF3TX2MIX_INPUT_1_SOURCE:
  1134. case ARIZONA_AIF3TX2MIX_INPUT_1_VOLUME:
  1135. case ARIZONA_AIF3TX2MIX_INPUT_2_SOURCE:
  1136. case ARIZONA_AIF3TX2MIX_INPUT_2_VOLUME:
  1137. case ARIZONA_AIF3TX2MIX_INPUT_3_SOURCE:
  1138. case ARIZONA_AIF3TX2MIX_INPUT_3_VOLUME:
  1139. case ARIZONA_AIF3TX2MIX_INPUT_4_SOURCE:
  1140. case ARIZONA_AIF3TX2MIX_INPUT_4_VOLUME:
  1141. case ARIZONA_EQ1MIX_INPUT_1_SOURCE:
  1142. case ARIZONA_EQ1MIX_INPUT_1_VOLUME:
  1143. case ARIZONA_EQ1MIX_INPUT_2_SOURCE:
  1144. case ARIZONA_EQ1MIX_INPUT_2_VOLUME:
  1145. case ARIZONA_EQ1MIX_INPUT_3_SOURCE:
  1146. case ARIZONA_EQ1MIX_INPUT_3_VOLUME:
  1147. case ARIZONA_EQ1MIX_INPUT_4_SOURCE:
  1148. case ARIZONA_EQ1MIX_INPUT_4_VOLUME:
  1149. case ARIZONA_EQ2MIX_INPUT_1_SOURCE:
  1150. case ARIZONA_EQ2MIX_INPUT_1_VOLUME:
  1151. case ARIZONA_EQ2MIX_INPUT_2_SOURCE:
  1152. case ARIZONA_EQ2MIX_INPUT_2_VOLUME:
  1153. case ARIZONA_EQ2MIX_INPUT_3_SOURCE:
  1154. case ARIZONA_EQ2MIX_INPUT_3_VOLUME:
  1155. case ARIZONA_EQ2MIX_INPUT_4_SOURCE:
  1156. case ARIZONA_EQ2MIX_INPUT_4_VOLUME:
  1157. case ARIZONA_DRC1LMIX_INPUT_1_SOURCE:
  1158. case ARIZONA_DRC1LMIX_INPUT_1_VOLUME:
  1159. case ARIZONA_DRC1LMIX_INPUT_2_SOURCE:
  1160. case ARIZONA_DRC1LMIX_INPUT_2_VOLUME:
  1161. case ARIZONA_DRC1LMIX_INPUT_3_SOURCE:
  1162. case ARIZONA_DRC1LMIX_INPUT_3_VOLUME:
  1163. case ARIZONA_DRC1LMIX_INPUT_4_SOURCE:
  1164. case ARIZONA_DRC1LMIX_INPUT_4_VOLUME:
  1165. case ARIZONA_DRC1RMIX_INPUT_1_SOURCE:
  1166. case ARIZONA_DRC1RMIX_INPUT_1_VOLUME:
  1167. case ARIZONA_DRC1RMIX_INPUT_2_SOURCE:
  1168. case ARIZONA_DRC1RMIX_INPUT_2_VOLUME:
  1169. case ARIZONA_DRC1RMIX_INPUT_3_SOURCE:
  1170. case ARIZONA_DRC1RMIX_INPUT_3_VOLUME:
  1171. case ARIZONA_DRC1RMIX_INPUT_4_SOURCE:
  1172. case ARIZONA_DRC1RMIX_INPUT_4_VOLUME:
  1173. case ARIZONA_DRC2LMIX_INPUT_1_SOURCE:
  1174. case ARIZONA_DRC2LMIX_INPUT_1_VOLUME:
  1175. case ARIZONA_DRC2LMIX_INPUT_2_SOURCE:
  1176. case ARIZONA_DRC2LMIX_INPUT_2_VOLUME:
  1177. case ARIZONA_DRC2LMIX_INPUT_3_SOURCE:
  1178. case ARIZONA_DRC2LMIX_INPUT_3_VOLUME:
  1179. case ARIZONA_DRC2LMIX_INPUT_4_SOURCE:
  1180. case ARIZONA_DRC2LMIX_INPUT_4_VOLUME:
  1181. case ARIZONA_DRC2RMIX_INPUT_1_SOURCE:
  1182. case ARIZONA_DRC2RMIX_INPUT_1_VOLUME:
  1183. case ARIZONA_DRC2RMIX_INPUT_2_SOURCE:
  1184. case ARIZONA_DRC2RMIX_INPUT_2_VOLUME:
  1185. case ARIZONA_DRC2RMIX_INPUT_3_SOURCE:
  1186. case ARIZONA_DRC2RMIX_INPUT_3_VOLUME:
  1187. case ARIZONA_DRC2RMIX_INPUT_4_SOURCE:
  1188. case ARIZONA_DRC2RMIX_INPUT_4_VOLUME:
  1189. case ARIZONA_HPLP1MIX_INPUT_1_SOURCE:
  1190. case ARIZONA_HPLP1MIX_INPUT_1_VOLUME:
  1191. case ARIZONA_HPLP1MIX_INPUT_2_SOURCE:
  1192. case ARIZONA_HPLP1MIX_INPUT_2_VOLUME:
  1193. case ARIZONA_HPLP1MIX_INPUT_3_SOURCE:
  1194. case ARIZONA_HPLP1MIX_INPUT_3_VOLUME:
  1195. case ARIZONA_HPLP1MIX_INPUT_4_SOURCE:
  1196. case ARIZONA_HPLP1MIX_INPUT_4_VOLUME:
  1197. case ARIZONA_HPLP2MIX_INPUT_1_SOURCE:
  1198. case ARIZONA_HPLP2MIX_INPUT_1_VOLUME:
  1199. case ARIZONA_HPLP2MIX_INPUT_2_SOURCE:
  1200. case ARIZONA_HPLP2MIX_INPUT_2_VOLUME:
  1201. case ARIZONA_HPLP2MIX_INPUT_3_SOURCE:
  1202. case ARIZONA_HPLP2MIX_INPUT_3_VOLUME:
  1203. case ARIZONA_HPLP2MIX_INPUT_4_SOURCE:
  1204. case ARIZONA_HPLP2MIX_INPUT_4_VOLUME:
  1205. case ARIZONA_HPLP3MIX_INPUT_1_SOURCE:
  1206. case ARIZONA_HPLP3MIX_INPUT_1_VOLUME:
  1207. case ARIZONA_HPLP3MIX_INPUT_2_SOURCE:
  1208. case ARIZONA_HPLP3MIX_INPUT_2_VOLUME:
  1209. case ARIZONA_HPLP3MIX_INPUT_3_SOURCE:
  1210. case ARIZONA_HPLP3MIX_INPUT_3_VOLUME:
  1211. case ARIZONA_HPLP3MIX_INPUT_4_SOURCE:
  1212. case ARIZONA_HPLP3MIX_INPUT_4_VOLUME:
  1213. case ARIZONA_HPLP4MIX_INPUT_1_SOURCE:
  1214. case ARIZONA_HPLP4MIX_INPUT_1_VOLUME:
  1215. case ARIZONA_HPLP4MIX_INPUT_2_SOURCE:
  1216. case ARIZONA_HPLP4MIX_INPUT_2_VOLUME:
  1217. case ARIZONA_HPLP4MIX_INPUT_3_SOURCE:
  1218. case ARIZONA_HPLP4MIX_INPUT_3_VOLUME:
  1219. case ARIZONA_HPLP4MIX_INPUT_4_SOURCE:
  1220. case ARIZONA_HPLP4MIX_INPUT_4_VOLUME:
  1221. case ARIZONA_DSP2LMIX_INPUT_1_SOURCE:
  1222. case ARIZONA_DSP2LMIX_INPUT_1_VOLUME:
  1223. case ARIZONA_DSP2LMIX_INPUT_2_SOURCE:
  1224. case ARIZONA_DSP2LMIX_INPUT_2_VOLUME:
  1225. case ARIZONA_DSP2LMIX_INPUT_3_SOURCE:
  1226. case ARIZONA_DSP2LMIX_INPUT_3_VOLUME:
  1227. case ARIZONA_DSP2LMIX_INPUT_4_SOURCE:
  1228. case ARIZONA_DSP2LMIX_INPUT_4_VOLUME:
  1229. case ARIZONA_DSP2RMIX_INPUT_1_SOURCE:
  1230. case ARIZONA_DSP2RMIX_INPUT_1_VOLUME:
  1231. case ARIZONA_DSP2RMIX_INPUT_2_SOURCE:
  1232. case ARIZONA_DSP2RMIX_INPUT_2_VOLUME:
  1233. case ARIZONA_DSP2RMIX_INPUT_3_SOURCE:
  1234. case ARIZONA_DSP2RMIX_INPUT_3_VOLUME:
  1235. case ARIZONA_DSP2RMIX_INPUT_4_SOURCE:
  1236. case ARIZONA_DSP2RMIX_INPUT_4_VOLUME:
  1237. case ARIZONA_DSP2AUX1MIX_INPUT_1_SOURCE:
  1238. case ARIZONA_DSP2AUX2MIX_INPUT_1_SOURCE:
  1239. case ARIZONA_DSP2AUX3MIX_INPUT_1_SOURCE:
  1240. case ARIZONA_DSP2AUX4MIX_INPUT_1_SOURCE:
  1241. case ARIZONA_DSP2AUX5MIX_INPUT_1_SOURCE:
  1242. case ARIZONA_DSP2AUX6MIX_INPUT_1_SOURCE:
  1243. case ARIZONA_DSP3LMIX_INPUT_1_SOURCE:
  1244. case ARIZONA_DSP3LMIX_INPUT_1_VOLUME:
  1245. case ARIZONA_DSP3LMIX_INPUT_2_SOURCE:
  1246. case ARIZONA_DSP3LMIX_INPUT_2_VOLUME:
  1247. case ARIZONA_DSP3LMIX_INPUT_3_SOURCE:
  1248. case ARIZONA_DSP3LMIX_INPUT_3_VOLUME:
  1249. case ARIZONA_DSP3LMIX_INPUT_4_SOURCE:
  1250. case ARIZONA_DSP3LMIX_INPUT_4_VOLUME:
  1251. case ARIZONA_DSP3RMIX_INPUT_1_SOURCE:
  1252. case ARIZONA_DSP3RMIX_INPUT_1_VOLUME:
  1253. case ARIZONA_DSP3RMIX_INPUT_2_SOURCE:
  1254. case ARIZONA_DSP3RMIX_INPUT_2_VOLUME:
  1255. case ARIZONA_DSP3RMIX_INPUT_3_SOURCE:
  1256. case ARIZONA_DSP3RMIX_INPUT_3_VOLUME:
  1257. case ARIZONA_DSP3RMIX_INPUT_4_SOURCE:
  1258. case ARIZONA_DSP3RMIX_INPUT_4_VOLUME:
  1259. case ARIZONA_DSP3AUX1MIX_INPUT_1_SOURCE:
  1260. case ARIZONA_DSP3AUX2MIX_INPUT_1_SOURCE:
  1261. case ARIZONA_DSP3AUX3MIX_INPUT_1_SOURCE:
  1262. case ARIZONA_DSP3AUX4MIX_INPUT_1_SOURCE:
  1263. case ARIZONA_DSP3AUX5MIX_INPUT_1_SOURCE:
  1264. case ARIZONA_DSP3AUX6MIX_INPUT_1_SOURCE:
  1265. case ARIZONA_ASRC1LMIX_INPUT_1_SOURCE:
  1266. case ARIZONA_ASRC1RMIX_INPUT_1_SOURCE:
  1267. case ARIZONA_ASRC2LMIX_INPUT_1_SOURCE:
  1268. case ARIZONA_ASRC2RMIX_INPUT_1_SOURCE:
  1269. case ARIZONA_ISRC1DEC1MIX_INPUT_1_SOURCE:
  1270. case ARIZONA_ISRC1DEC2MIX_INPUT_1_SOURCE:
  1271. case ARIZONA_ISRC1DEC3MIX_INPUT_1_SOURCE:
  1272. case ARIZONA_ISRC1DEC4MIX_INPUT_1_SOURCE:
  1273. case ARIZONA_ISRC1INT1MIX_INPUT_1_SOURCE:
  1274. case ARIZONA_ISRC1INT2MIX_INPUT_1_SOURCE:
  1275. case ARIZONA_ISRC1INT3MIX_INPUT_1_SOURCE:
  1276. case ARIZONA_ISRC1INT4MIX_INPUT_1_SOURCE:
  1277. case ARIZONA_ISRC2DEC1MIX_INPUT_1_SOURCE:
  1278. case ARIZONA_ISRC2DEC2MIX_INPUT_1_SOURCE:
  1279. case ARIZONA_ISRC2DEC3MIX_INPUT_1_SOURCE:
  1280. case ARIZONA_ISRC2DEC4MIX_INPUT_1_SOURCE:
  1281. case ARIZONA_ISRC2INT1MIX_INPUT_1_SOURCE:
  1282. case ARIZONA_ISRC2INT2MIX_INPUT_1_SOURCE:
  1283. case ARIZONA_ISRC2INT3MIX_INPUT_1_SOURCE:
  1284. case ARIZONA_ISRC2INT4MIX_INPUT_1_SOURCE:
  1285. case ARIZONA_ISRC3DEC1MIX_INPUT_1_SOURCE:
  1286. case ARIZONA_ISRC3DEC2MIX_INPUT_1_SOURCE:
  1287. case ARIZONA_ISRC3DEC3MIX_INPUT_1_SOURCE:
  1288. case ARIZONA_ISRC3DEC4MIX_INPUT_1_SOURCE:
  1289. case ARIZONA_ISRC3INT1MIX_INPUT_1_SOURCE:
  1290. case ARIZONA_ISRC3INT2MIX_INPUT_1_SOURCE:
  1291. case ARIZONA_ISRC3INT3MIX_INPUT_1_SOURCE:
  1292. case ARIZONA_ISRC3INT4MIX_INPUT_1_SOURCE:
  1293. case ARIZONA_GPIO1_CTRL:
  1294. case ARIZONA_GPIO2_CTRL:
  1295. case ARIZONA_IRQ_CTRL_1:
  1296. case ARIZONA_GPIO_DEBOUNCE_CONFIG:
  1297. case ARIZONA_MISC_PAD_CTRL_1:
  1298. case ARIZONA_MISC_PAD_CTRL_2:
  1299. case ARIZONA_MISC_PAD_CTRL_3:
  1300. case ARIZONA_MISC_PAD_CTRL_4:
  1301. case ARIZONA_MISC_PAD_CTRL_5:
  1302. case ARIZONA_MISC_PAD_CTRL_6:
  1303. case ARIZONA_MISC_PAD_CTRL_7:
  1304. case ARIZONA_MISC_PAD_CTRL_9:
  1305. case ARIZONA_MISC_PAD_CTRL_10:
  1306. case ARIZONA_MISC_PAD_CTRL_11:
  1307. case ARIZONA_MISC_PAD_CTRL_12:
  1308. case ARIZONA_MISC_PAD_CTRL_13:
  1309. case ARIZONA_MISC_PAD_CTRL_14:
  1310. case ARIZONA_MISC_PAD_CTRL_16:
  1311. case ARIZONA_INTERRUPT_STATUS_1:
  1312. case ARIZONA_INTERRUPT_STATUS_2:
  1313. case ARIZONA_INTERRUPT_STATUS_3:
  1314. case ARIZONA_INTERRUPT_STATUS_4:
  1315. case ARIZONA_INTERRUPT_STATUS_5:
  1316. case ARIZONA_INTERRUPT_STATUS_6:
  1317. case ARIZONA_INTERRUPT_STATUS_1_MASK:
  1318. case ARIZONA_INTERRUPT_STATUS_2_MASK:
  1319. case ARIZONA_INTERRUPT_STATUS_3_MASK:
  1320. case ARIZONA_INTERRUPT_STATUS_4_MASK:
  1321. case ARIZONA_INTERRUPT_STATUS_5_MASK:
  1322. case ARIZONA_INTERRUPT_STATUS_6_MASK:
  1323. case ARIZONA_INTERRUPT_CONTROL:
  1324. case ARIZONA_IRQ2_STATUS_1:
  1325. case ARIZONA_IRQ2_STATUS_2:
  1326. case ARIZONA_IRQ2_STATUS_3:
  1327. case ARIZONA_IRQ2_STATUS_4:
  1328. case ARIZONA_IRQ2_STATUS_5:
  1329. case ARIZONA_IRQ2_STATUS_6:
  1330. case ARIZONA_IRQ2_STATUS_1_MASK:
  1331. case ARIZONA_IRQ2_STATUS_2_MASK:
  1332. case ARIZONA_IRQ2_STATUS_3_MASK:
  1333. case ARIZONA_IRQ2_STATUS_4_MASK:
  1334. case ARIZONA_IRQ2_STATUS_5_MASK:
  1335. case ARIZONA_IRQ2_STATUS_6_MASK:
  1336. case ARIZONA_IRQ2_CONTROL:
  1337. case ARIZONA_INTERRUPT_RAW_STATUS_2:
  1338. case ARIZONA_INTERRUPT_RAW_STATUS_3:
  1339. case ARIZONA_INTERRUPT_RAW_STATUS_4:
  1340. case ARIZONA_INTERRUPT_RAW_STATUS_5:
  1341. case ARIZONA_INTERRUPT_RAW_STATUS_6:
  1342. case ARIZONA_INTERRUPT_RAW_STATUS_7:
  1343. case ARIZONA_INTERRUPT_RAW_STATUS_8:
  1344. case ARIZONA_INTERRUPT_RAW_STATUS_9:
  1345. case ARIZONA_IRQ_PIN_STATUS:
  1346. case ARIZONA_FX_CTRL1:
  1347. case ARIZONA_FX_CTRL2:
  1348. case ARIZONA_EQ1_1:
  1349. case ARIZONA_EQ1_2:
  1350. case ARIZONA_EQ1_3:
  1351. case ARIZONA_EQ1_4:
  1352. case ARIZONA_EQ1_5:
  1353. case ARIZONA_EQ1_6:
  1354. case ARIZONA_EQ1_7:
  1355. case ARIZONA_EQ1_8:
  1356. case ARIZONA_EQ1_9:
  1357. case ARIZONA_EQ1_10:
  1358. case ARIZONA_EQ1_11:
  1359. case ARIZONA_EQ1_12:
  1360. case ARIZONA_EQ1_13:
  1361. case ARIZONA_EQ1_14:
  1362. case ARIZONA_EQ1_15:
  1363. case ARIZONA_EQ1_16:
  1364. case ARIZONA_EQ1_17:
  1365. case ARIZONA_EQ1_18:
  1366. case ARIZONA_EQ1_19:
  1367. case ARIZONA_EQ1_20:
  1368. case ARIZONA_EQ1_21:
  1369. case ARIZONA_EQ2_1:
  1370. case ARIZONA_EQ2_2:
  1371. case ARIZONA_EQ2_3:
  1372. case ARIZONA_EQ2_4:
  1373. case ARIZONA_EQ2_5:
  1374. case ARIZONA_EQ2_6:
  1375. case ARIZONA_EQ2_7:
  1376. case ARIZONA_EQ2_8:
  1377. case ARIZONA_EQ2_9:
  1378. case ARIZONA_EQ2_10:
  1379. case ARIZONA_EQ2_11:
  1380. case ARIZONA_EQ2_12:
  1381. case ARIZONA_EQ2_13:
  1382. case ARIZONA_EQ2_14:
  1383. case ARIZONA_EQ2_15:
  1384. case ARIZONA_EQ2_16:
  1385. case ARIZONA_EQ2_17:
  1386. case ARIZONA_EQ2_18:
  1387. case ARIZONA_EQ2_19:
  1388. case ARIZONA_EQ2_20:
  1389. case ARIZONA_EQ2_21:
  1390. case ARIZONA_DRC1_CTRL1:
  1391. case ARIZONA_DRC1_CTRL2:
  1392. case ARIZONA_DRC1_CTRL3:
  1393. case ARIZONA_DRC1_CTRL4:
  1394. case ARIZONA_DRC1_CTRL5:
  1395. case ARIZONA_DRC2_CTRL1:
  1396. case ARIZONA_DRC2_CTRL2:
  1397. case ARIZONA_DRC2_CTRL3:
  1398. case ARIZONA_DRC2_CTRL4:
  1399. case ARIZONA_DRC2_CTRL5:
  1400. case ARIZONA_HPLPF1_1:
  1401. case ARIZONA_HPLPF1_2:
  1402. case ARIZONA_HPLPF2_1:
  1403. case ARIZONA_HPLPF2_2:
  1404. case ARIZONA_HPLPF3_1:
  1405. case ARIZONA_HPLPF3_2:
  1406. case ARIZONA_HPLPF4_1:
  1407. case ARIZONA_HPLPF4_2:
  1408. case ARIZONA_ASRC_ENABLE:
  1409. case ARIZONA_ASRC_STATUS:
  1410. case ARIZONA_ASRC_RATE1:
  1411. case ARIZONA_ASRC_RATE2:
  1412. case ARIZONA_ISRC_1_CTRL_1:
  1413. case ARIZONA_ISRC_1_CTRL_2:
  1414. case ARIZONA_ISRC_1_CTRL_3:
  1415. case ARIZONA_ISRC_2_CTRL_1:
  1416. case ARIZONA_ISRC_2_CTRL_2:
  1417. case ARIZONA_ISRC_2_CTRL_3:
  1418. case ARIZONA_ISRC_3_CTRL_1:
  1419. case ARIZONA_ISRC_3_CTRL_2:
  1420. case ARIZONA_ISRC_3_CTRL_3:
  1421. case ARIZONA_DSP2_CONTROL_1:
  1422. case ARIZONA_DSP2_CLOCKING_1:
  1423. case ARIZONA_DSP2_STATUS_1:
  1424. case ARIZONA_DSP2_STATUS_2:
  1425. case ARIZONA_DSP2_STATUS_3:
  1426. case ARIZONA_DSP2_STATUS_4:
  1427. case ARIZONA_DSP2_WDMA_BUFFER_1:
  1428. case ARIZONA_DSP2_WDMA_BUFFER_2:
  1429. case ARIZONA_DSP2_WDMA_BUFFER_3:
  1430. case ARIZONA_DSP2_WDMA_BUFFER_4:
  1431. case ARIZONA_DSP2_WDMA_BUFFER_5:
  1432. case ARIZONA_DSP2_WDMA_BUFFER_6:
  1433. case ARIZONA_DSP2_WDMA_BUFFER_7:
  1434. case ARIZONA_DSP2_WDMA_BUFFER_8:
  1435. case ARIZONA_DSP2_RDMA_BUFFER_1:
  1436. case ARIZONA_DSP2_RDMA_BUFFER_2:
  1437. case ARIZONA_DSP2_RDMA_BUFFER_3:
  1438. case ARIZONA_DSP2_RDMA_BUFFER_4:
  1439. case ARIZONA_DSP2_RDMA_BUFFER_5:
  1440. case ARIZONA_DSP2_RDMA_BUFFER_6:
  1441. case ARIZONA_DSP2_WDMA_CONFIG_1:
  1442. case ARIZONA_DSP2_WDMA_CONFIG_2:
  1443. case ARIZONA_DSP2_WDMA_OFFSET_1:
  1444. case ARIZONA_DSP2_RDMA_CONFIG_1:
  1445. case ARIZONA_DSP2_RDMA_OFFSET_1:
  1446. case ARIZONA_DSP2_EXTERNAL_START_SELECT_1:
  1447. case ARIZONA_DSP2_SCRATCH_0:
  1448. case ARIZONA_DSP2_SCRATCH_1:
  1449. case ARIZONA_DSP2_SCRATCH_2:
  1450. case ARIZONA_DSP2_SCRATCH_3:
  1451. case ARIZONA_DSP3_CONTROL_1:
  1452. case ARIZONA_DSP3_CLOCKING_1:
  1453. case ARIZONA_DSP3_STATUS_1:
  1454. case ARIZONA_DSP3_STATUS_2:
  1455. case ARIZONA_DSP3_STATUS_3:
  1456. case ARIZONA_DSP3_STATUS_4:
  1457. case ARIZONA_DSP3_WDMA_BUFFER_1:
  1458. case ARIZONA_DSP3_WDMA_BUFFER_2:
  1459. case ARIZONA_DSP3_WDMA_BUFFER_3:
  1460. case ARIZONA_DSP3_WDMA_BUFFER_4:
  1461. case ARIZONA_DSP3_WDMA_BUFFER_5:
  1462. case ARIZONA_DSP3_WDMA_BUFFER_6:
  1463. case ARIZONA_DSP3_WDMA_BUFFER_7:
  1464. case ARIZONA_DSP3_WDMA_BUFFER_8:
  1465. case ARIZONA_DSP3_RDMA_BUFFER_1:
  1466. case ARIZONA_DSP3_RDMA_BUFFER_2:
  1467. case ARIZONA_DSP3_RDMA_BUFFER_3:
  1468. case ARIZONA_DSP3_RDMA_BUFFER_4:
  1469. case ARIZONA_DSP3_RDMA_BUFFER_5:
  1470. case ARIZONA_DSP3_RDMA_BUFFER_6:
  1471. case ARIZONA_DSP3_WDMA_CONFIG_1:
  1472. case ARIZONA_DSP3_WDMA_CONFIG_2:
  1473. case ARIZONA_DSP3_WDMA_OFFSET_1:
  1474. case ARIZONA_DSP3_RDMA_CONFIG_1:
  1475. case ARIZONA_DSP3_RDMA_OFFSET_1:
  1476. case ARIZONA_DSP3_EXTERNAL_START_SELECT_1:
  1477. case ARIZONA_DSP3_SCRATCH_0:
  1478. case ARIZONA_DSP3_SCRATCH_1:
  1479. case ARIZONA_DSP3_SCRATCH_2:
  1480. case ARIZONA_DSP3_SCRATCH_3:
  1481. return true;
  1482. default:
  1483. return cs47l24_is_adsp_memory(reg);
  1484. }
  1485. }
  1486. static bool cs47l24_volatile_register(struct device *dev, unsigned int reg)
  1487. {
  1488. switch (reg) {
  1489. case ARIZONA_SOFTWARE_RESET:
  1490. case ARIZONA_DEVICE_REVISION:
  1491. case ARIZONA_WRITE_SEQUENCER_CTRL_0:
  1492. case ARIZONA_WRITE_SEQUENCER_CTRL_1:
  1493. case ARIZONA_WRITE_SEQUENCER_CTRL_2:
  1494. case ARIZONA_HAPTICS_STATUS:
  1495. case ARIZONA_SAMPLE_RATE_1_STATUS:
  1496. case ARIZONA_SAMPLE_RATE_2_STATUS:
  1497. case ARIZONA_SAMPLE_RATE_3_STATUS:
  1498. case ARIZONA_ASYNC_SAMPLE_RATE_1_STATUS:
  1499. case ARIZONA_ASYNC_SAMPLE_RATE_2_STATUS:
  1500. case ARIZONA_HP_CTRL_1L:
  1501. case ARIZONA_HP_CTRL_1R:
  1502. case ARIZONA_INPUT_ENABLES_STATUS:
  1503. case ARIZONA_OUTPUT_STATUS_1:
  1504. case ARIZONA_RAW_OUTPUT_STATUS_1:
  1505. case ARIZONA_INTERRUPT_STATUS_1:
  1506. case ARIZONA_INTERRUPT_STATUS_2:
  1507. case ARIZONA_INTERRUPT_STATUS_3:
  1508. case ARIZONA_INTERRUPT_STATUS_4:
  1509. case ARIZONA_INTERRUPT_STATUS_5:
  1510. case ARIZONA_INTERRUPT_STATUS_6:
  1511. case ARIZONA_IRQ2_STATUS_1:
  1512. case ARIZONA_IRQ2_STATUS_2:
  1513. case ARIZONA_IRQ2_STATUS_3:
  1514. case ARIZONA_IRQ2_STATUS_4:
  1515. case ARIZONA_IRQ2_STATUS_5:
  1516. case ARIZONA_IRQ2_STATUS_6:
  1517. case ARIZONA_INTERRUPT_RAW_STATUS_2:
  1518. case ARIZONA_INTERRUPT_RAW_STATUS_3:
  1519. case ARIZONA_INTERRUPT_RAW_STATUS_4:
  1520. case ARIZONA_INTERRUPT_RAW_STATUS_5:
  1521. case ARIZONA_INTERRUPT_RAW_STATUS_6:
  1522. case ARIZONA_INTERRUPT_RAW_STATUS_7:
  1523. case ARIZONA_INTERRUPT_RAW_STATUS_8:
  1524. case ARIZONA_INTERRUPT_RAW_STATUS_9:
  1525. case ARIZONA_IRQ_PIN_STATUS:
  1526. case ARIZONA_FX_CTRL2:
  1527. case ARIZONA_ASRC_STATUS:
  1528. case ARIZONA_DSP2_STATUS_1:
  1529. case ARIZONA_DSP2_STATUS_2:
  1530. case ARIZONA_DSP2_STATUS_3:
  1531. case ARIZONA_DSP2_STATUS_4:
  1532. case ARIZONA_DSP2_WDMA_BUFFER_1:
  1533. case ARIZONA_DSP2_WDMA_BUFFER_2:
  1534. case ARIZONA_DSP2_WDMA_BUFFER_3:
  1535. case ARIZONA_DSP2_WDMA_BUFFER_4:
  1536. case ARIZONA_DSP2_WDMA_BUFFER_5:
  1537. case ARIZONA_DSP2_WDMA_BUFFER_6:
  1538. case ARIZONA_DSP2_WDMA_BUFFER_7:
  1539. case ARIZONA_DSP2_WDMA_BUFFER_8:
  1540. case ARIZONA_DSP2_RDMA_BUFFER_1:
  1541. case ARIZONA_DSP2_RDMA_BUFFER_2:
  1542. case ARIZONA_DSP2_RDMA_BUFFER_3:
  1543. case ARIZONA_DSP2_RDMA_BUFFER_4:
  1544. case ARIZONA_DSP2_RDMA_BUFFER_5:
  1545. case ARIZONA_DSP2_RDMA_BUFFER_6:
  1546. case ARIZONA_DSP2_WDMA_CONFIG_1:
  1547. case ARIZONA_DSP2_WDMA_CONFIG_2:
  1548. case ARIZONA_DSP2_WDMA_OFFSET_1:
  1549. case ARIZONA_DSP2_RDMA_CONFIG_1:
  1550. case ARIZONA_DSP2_RDMA_OFFSET_1:
  1551. case ARIZONA_DSP2_EXTERNAL_START_SELECT_1:
  1552. case ARIZONA_DSP2_SCRATCH_0:
  1553. case ARIZONA_DSP2_SCRATCH_1:
  1554. case ARIZONA_DSP2_SCRATCH_2:
  1555. case ARIZONA_DSP2_SCRATCH_3:
  1556. case ARIZONA_DSP2_CLOCKING_1:
  1557. case ARIZONA_DSP3_STATUS_1:
  1558. case ARIZONA_DSP3_STATUS_2:
  1559. case ARIZONA_DSP3_STATUS_3:
  1560. case ARIZONA_DSP3_STATUS_4:
  1561. case ARIZONA_DSP3_WDMA_BUFFER_1:
  1562. case ARIZONA_DSP3_WDMA_BUFFER_2:
  1563. case ARIZONA_DSP3_WDMA_BUFFER_3:
  1564. case ARIZONA_DSP3_WDMA_BUFFER_4:
  1565. case ARIZONA_DSP3_WDMA_BUFFER_5:
  1566. case ARIZONA_DSP3_WDMA_BUFFER_6:
  1567. case ARIZONA_DSP3_WDMA_BUFFER_7:
  1568. case ARIZONA_DSP3_WDMA_BUFFER_8:
  1569. case ARIZONA_DSP3_RDMA_BUFFER_1:
  1570. case ARIZONA_DSP3_RDMA_BUFFER_2:
  1571. case ARIZONA_DSP3_RDMA_BUFFER_3:
  1572. case ARIZONA_DSP3_RDMA_BUFFER_4:
  1573. case ARIZONA_DSP3_RDMA_BUFFER_5:
  1574. case ARIZONA_DSP3_RDMA_BUFFER_6:
  1575. case ARIZONA_DSP3_WDMA_CONFIG_1:
  1576. case ARIZONA_DSP3_WDMA_CONFIG_2:
  1577. case ARIZONA_DSP3_WDMA_OFFSET_1:
  1578. case ARIZONA_DSP3_RDMA_CONFIG_1:
  1579. case ARIZONA_DSP3_RDMA_OFFSET_1:
  1580. case ARIZONA_DSP3_EXTERNAL_START_SELECT_1:
  1581. case ARIZONA_DSP3_SCRATCH_0:
  1582. case ARIZONA_DSP3_SCRATCH_1:
  1583. case ARIZONA_DSP3_SCRATCH_2:
  1584. case ARIZONA_DSP3_SCRATCH_3:
  1585. case ARIZONA_DSP3_CLOCKING_1:
  1586. return true;
  1587. default:
  1588. return cs47l24_is_adsp_memory(reg);
  1589. }
  1590. }
  1591. #define CS47L24_MAX_REGISTER 0x3b3fff
  1592. const struct regmap_config cs47l24_spi_regmap = {
  1593. .reg_bits = 32,
  1594. .pad_bits = 16,
  1595. .val_bits = 16,
  1596. .reg_format_endian = REGMAP_ENDIAN_BIG,
  1597. .val_format_endian = REGMAP_ENDIAN_BIG,
  1598. .max_register = CS47L24_MAX_REGISTER,
  1599. .readable_reg = cs47l24_readable_register,
  1600. .volatile_reg = cs47l24_volatile_register,
  1601. .cache_type = REGCACHE_RBTREE,
  1602. .reg_defaults = cs47l24_reg_default,
  1603. .num_reg_defaults = ARRAY_SIZE(cs47l24_reg_default),
  1604. };
  1605. EXPORT_SYMBOL_GPL(cs47l24_spi_regmap);