F2837xD_sysctrl.h 86 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964
  1. //###########################################################################
  2. //
  3. // FILE: F2837xD_sysctrl.h
  4. //
  5. // TITLE: SYSCTRL Register Definitions.
  6. //
  7. //###########################################################################
  8. // $TI Release: F2837xD Support Library v3.05.00.00 $
  9. // $Release Date: Tue Jun 26 03:15:23 CDT 2018 $
  10. // $Copyright:
  11. // Copyright (C) 2013-2018 Texas Instruments Incorporated - http://www.ti.com/
  12. //
  13. // Redistribution and use in source and binary forms, with or without
  14. // modification, are permitted provided that the following conditions
  15. // are met:
  16. //
  17. // Redistributions of source code must retain the above copyright
  18. // notice, this list of conditions and the following disclaimer.
  19. //
  20. // Redistributions in binary form must reproduce the above copyright
  21. // notice, this list of conditions and the following disclaimer in the
  22. // documentation and/or other materials provided with the
  23. // distribution.
  24. //
  25. // Neither the name of Texas Instruments Incorporated nor the names of
  26. // its contributors may be used to endorse or promote products derived
  27. // from this software without specific prior written permission.
  28. //
  29. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  30. // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  31. // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  32. // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  33. // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  34. // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  35. // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  36. // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  37. // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  38. // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  39. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  40. // $
  41. //###########################################################################
  42. #ifndef __F2837xD_SYSCTRL_H__
  43. #define __F2837xD_SYSCTRL_H__
  44. #ifdef __cplusplus
  45. extern "C" {
  46. #endif
  47. //---------------------------------------------------------------------------
  48. // SYSCTRL Individual Register Bit Definitions:
  49. struct DEVCFGLOCK1_BITS { // bits description
  50. Uint16 CPUSEL0:1; // 0 Lock bit for CPUSEL0 register
  51. Uint16 CPUSEL1:1; // 1 Lock bit for CPUSEL1 register
  52. Uint16 CPUSEL2:1; // 2 Lock bit for CPUSEL2 register
  53. Uint16 CPUSEL3:1; // 3 Lock bit for CPUSEL3 register
  54. Uint16 CPUSEL4:1; // 4 Lock bit for CPUSEL4 register
  55. Uint16 CPUSEL5:1; // 5 Lock bit for CPUSEL5 register
  56. Uint16 CPUSEL6:1; // 6 Lock bit for CPUSEL6 register
  57. Uint16 CPUSEL7:1; // 7 Lock bit for CPUSEL7 register
  58. Uint16 CPUSEL8:1; // 8 Lock bit for CPUSEL8 register
  59. Uint16 CPUSEL9:1; // 9 Lock bit for CPUSEL9 register
  60. Uint16 CPUSEL10:1; // 10 Lock bit for CPUSEL10 register
  61. Uint16 CPUSEL11:1; // 11 Lock bit for CPUSEL11 register
  62. Uint16 CPUSEL12:1; // 12 Lock bit for CPUSEL12 register
  63. Uint16 CPUSEL13:1; // 13 Lock bit for CPUSEL13 register
  64. Uint16 CPUSEL14:1; // 14 Lock bit for CPUSEL14 register
  65. Uint16 rsvd1:1; // 15 Reserved
  66. Uint16 rsvd2:16; // 31:16 Reserved
  67. };
  68. union DEVCFGLOCK1_REG {
  69. Uint32 all;
  70. struct DEVCFGLOCK1_BITS bit;
  71. };
  72. struct PARTIDL_BITS { // bits description
  73. Uint16 rsvd1:3; // 2:0 Reserved
  74. Uint16 rsvd2:2; // 4:3 Reserved
  75. Uint16 rsvd3:1; // 5 Reserved
  76. Uint16 QUAL:2; // 7:6 Qualification Status
  77. Uint16 PIN_COUNT:3; // 10:8 Device Pin Count
  78. Uint16 rsvd4:1; // 11 Reserved
  79. Uint16 rsvd5:1; // 12 Reserved
  80. Uint16 INSTASPIN:2; // 14:13 Motorware feature set
  81. Uint16 rsvd6:1; // 15 Reserved
  82. Uint16 FLASH_SIZE:8; // 23:16 Flash size in KB
  83. Uint16 rsvd7:4; // 27:24 Reserved
  84. Uint16 PARTID_FORMAT_REVISION:4; // 31:28 Revision of the PARTID format
  85. };
  86. union PARTIDL_REG {
  87. Uint32 all;
  88. struct PARTIDL_BITS bit;
  89. };
  90. struct PARTIDH_BITS { // bits description
  91. Uint16 rsvd1:8; // 7:0 Reserved
  92. Uint16 FAMILY:8; // 15:8 Device family
  93. Uint16 PARTNO:8; // 23:16 Device part number
  94. Uint16 DEVICE_CLASS_ID:8; // 31:24 Device class ID
  95. };
  96. union PARTIDH_REG {
  97. Uint32 all;
  98. struct PARTIDH_BITS bit;
  99. };
  100. struct DC0_BITS { // bits description
  101. Uint16 SINGLE_CORE:1; // 0 Single Core vs Dual Core
  102. Uint16 rsvd1:15; // 15:1 Reserved
  103. Uint16 rsvd2:16; // 31:16 Reserved
  104. };
  105. union DC0_REG {
  106. Uint32 all;
  107. struct DC0_BITS bit;
  108. };
  109. struct DC1_BITS { // bits description
  110. Uint16 CPU1_FPU_TMU:1; // 0 CPU1's FPU1+TMU1
  111. Uint16 CPU2_FPU_TMU:1; // 1 CPU2's FPU2+TMU2
  112. Uint16 CPU1_VCU:1; // 2 CPU1's VCU
  113. Uint16 CPU2_VCU:1; // 3 CPU2's VCU
  114. Uint16 rsvd1:2; // 5:4 Reserved
  115. Uint16 CPU1_CLA1:1; // 6 CPU1.CLA1
  116. Uint16 rsvd2:1; // 7 Reserved
  117. Uint16 CPU2_CLA1:1; // 8 CPU2.CLA1
  118. Uint16 rsvd3:1; // 9 Reserved
  119. Uint16 rsvd4:6; // 15:10 Reserved
  120. Uint16 rsvd5:16; // 31:16 Reserved
  121. };
  122. union DC1_REG {
  123. Uint32 all;
  124. struct DC1_BITS bit;
  125. };
  126. struct DC2_BITS { // bits description
  127. Uint16 EMIF1:1; // 0 EMIF1
  128. Uint16 EMIF2:1; // 1 EMIF2
  129. Uint16 rsvd1:14; // 15:2 Reserved
  130. Uint16 rsvd2:16; // 31:16 Reserved
  131. };
  132. union DC2_REG {
  133. Uint32 all;
  134. struct DC2_BITS bit;
  135. };
  136. struct DC3_BITS { // bits description
  137. Uint16 EPWM1:1; // 0 EPWM1
  138. Uint16 EPWM2:1; // 1 EPWM2
  139. Uint16 EPWM3:1; // 2 EPWM3
  140. Uint16 EPWM4:1; // 3 EPWM4
  141. Uint16 EPWM5:1; // 4 EPWM5
  142. Uint16 EPWM6:1; // 5 EPWM6
  143. Uint16 EPWM7:1; // 6 EPWM7
  144. Uint16 EPWM8:1; // 7 EPWM8
  145. Uint16 EPWM9:1; // 8 EPWM9
  146. Uint16 EPWM10:1; // 9 EPWM10
  147. Uint16 EPWM11:1; // 10 EPWM11
  148. Uint16 EPWM12:1; // 11 EPWM12
  149. Uint16 rsvd1:1; // 12 Reserved
  150. Uint16 rsvd2:1; // 13 Reserved
  151. Uint16 rsvd3:1; // 14 Reserved
  152. Uint16 rsvd4:1; // 15 Reserved
  153. Uint16 rsvd5:16; // 31:16 Reserved
  154. };
  155. union DC3_REG {
  156. Uint32 all;
  157. struct DC3_BITS bit;
  158. };
  159. struct DC4_BITS { // bits description
  160. Uint16 ECAP1:1; // 0 ECAP1
  161. Uint16 ECAP2:1; // 1 ECAP2
  162. Uint16 ECAP3:1; // 2 ECAP3
  163. Uint16 ECAP4:1; // 3 ECAP4
  164. Uint16 ECAP5:1; // 4 ECAP5
  165. Uint16 ECAP6:1; // 5 ECAP6
  166. Uint16 rsvd1:1; // 6 Reserved
  167. Uint16 rsvd2:1; // 7 Reserved
  168. Uint16 rsvd3:8; // 15:8 Reserved
  169. Uint16 rsvd4:16; // 31:16 Reserved
  170. };
  171. union DC4_REG {
  172. Uint32 all;
  173. struct DC4_BITS bit;
  174. };
  175. struct DC5_BITS { // bits description
  176. Uint16 EQEP1:1; // 0 EQEP1
  177. Uint16 EQEP2:1; // 1 EQEP2
  178. Uint16 EQEP3:1; // 2 EQEP3
  179. Uint16 rsvd1:1; // 3 Reserved
  180. Uint16 rsvd2:12; // 15:4 Reserved
  181. Uint16 rsvd3:16; // 31:16 Reserved
  182. };
  183. union DC5_REG {
  184. Uint32 all;
  185. struct DC5_BITS bit;
  186. };
  187. struct DC6_BITS { // bits description
  188. Uint16 CLB1:1; // 0 CLB1
  189. Uint16 CLB2:1; // 1 CLB2
  190. Uint16 CLB3:1; // 2 CLB3
  191. Uint16 CLB4:1; // 3 CLB4
  192. Uint16 rsvd1:1; // 4 Reserved
  193. Uint16 rsvd2:1; // 5 Reserved
  194. Uint16 rsvd3:1; // 6 Reserved
  195. Uint16 rsvd4:1; // 7 Reserved
  196. Uint16 rsvd5:8; // 15:8 Reserved
  197. Uint16 rsvd6:16; // 31:16 Reserved
  198. };
  199. union DC6_REG {
  200. Uint32 all;
  201. struct DC6_BITS bit;
  202. };
  203. struct DC7_BITS { // bits description
  204. Uint16 SD1:1; // 0 SD1
  205. Uint16 SD2:1; // 1 SD2
  206. Uint16 rsvd1:1; // 2 Reserved
  207. Uint16 rsvd2:1; // 3 Reserved
  208. Uint16 rsvd3:1; // 4 Reserved
  209. Uint16 rsvd4:1; // 5 Reserved
  210. Uint16 rsvd5:1; // 6 Reserved
  211. Uint16 rsvd6:1; // 7 Reserved
  212. Uint16 rsvd7:8; // 15:8 Reserved
  213. Uint16 rsvd8:16; // 31:16 Reserved
  214. };
  215. union DC7_REG {
  216. Uint32 all;
  217. struct DC7_BITS bit;
  218. };
  219. struct DC8_BITS { // bits description
  220. Uint16 SCI_A:1; // 0 SCI_A
  221. Uint16 SCI_B:1; // 1 SCI_B
  222. Uint16 SCI_C:1; // 2 SCI_C
  223. Uint16 SCI_D:1; // 3 SCI_D
  224. Uint16 rsvd1:12; // 15:4 Reserved
  225. Uint16 rsvd2:16; // 31:16 Reserved
  226. };
  227. union DC8_REG {
  228. Uint32 all;
  229. struct DC8_BITS bit;
  230. };
  231. struct DC9_BITS { // bits description
  232. Uint16 SPI_A:1; // 0 SPI_A
  233. Uint16 SPI_B:1; // 1 SPI_B
  234. Uint16 SPI_C:1; // 2 SPI_C
  235. Uint16 rsvd1:1; // 3 Reserved
  236. Uint16 rsvd2:12; // 15:4 Reserved
  237. Uint16 rsvd3:1; // 16 Reserved
  238. Uint16 rsvd4:1; // 17 Reserved
  239. Uint16 rsvd5:14; // 31:18 Reserved
  240. };
  241. union DC9_REG {
  242. Uint32 all;
  243. struct DC9_BITS bit;
  244. };
  245. struct DC10_BITS { // bits description
  246. Uint16 I2C_A:1; // 0 I2C_A
  247. Uint16 I2C_B:1; // 1 I2C_B
  248. Uint16 rsvd1:14; // 15:2 Reserved
  249. Uint16 rsvd2:1; // 16 Reserved
  250. Uint16 rsvd3:1; // 17 Reserved
  251. Uint16 rsvd4:14; // 31:18 Reserved
  252. };
  253. union DC10_REG {
  254. Uint32 all;
  255. struct DC10_BITS bit;
  256. };
  257. struct DC11_BITS { // bits description
  258. Uint16 CAN_A:1; // 0 CAN_A
  259. Uint16 CAN_B:1; // 1 CAN_B
  260. Uint16 rsvd1:1; // 2 Reserved
  261. Uint16 rsvd2:1; // 3 Reserved
  262. Uint16 rsvd3:12; // 15:4 Reserved
  263. Uint16 rsvd4:16; // 31:16 Reserved
  264. };
  265. union DC11_REG {
  266. Uint32 all;
  267. struct DC11_BITS bit;
  268. };
  269. struct DC12_BITS { // bits description
  270. Uint16 McBSP_A:1; // 0 McBSP_A
  271. Uint16 McBSP_B:1; // 1 McBSP_B
  272. Uint16 rsvd1:14; // 15:2 Reserved
  273. Uint16 USB_A:2; // 17:16 Decides the capability of the USB_A Module
  274. Uint16 rsvd2:2; // 19:18 Reserved
  275. Uint16 rsvd3:12; // 31:20 Reserved
  276. };
  277. union DC12_REG {
  278. Uint32 all;
  279. struct DC12_BITS bit;
  280. };
  281. struct DC13_BITS { // bits description
  282. Uint16 uPP_A:1; // 0 uPP_A
  283. Uint16 rsvd1:1; // 1 Reserved
  284. Uint16 rsvd2:14; // 15:2 Reserved
  285. Uint16 rsvd3:16; // 31:16 Reserved
  286. };
  287. union DC13_REG {
  288. Uint32 all;
  289. struct DC13_BITS bit;
  290. };
  291. struct DC14_BITS { // bits description
  292. Uint16 ADC_A:1; // 0 ADC_A
  293. Uint16 ADC_B:1; // 1 ADC_B
  294. Uint16 ADC_C:1; // 2 ADC_C
  295. Uint16 ADC_D:1; // 3 ADC_D
  296. Uint16 rsvd1:12; // 15:4 Reserved
  297. Uint16 rsvd2:16; // 31:16 Reserved
  298. };
  299. union DC14_REG {
  300. Uint32 all;
  301. struct DC14_BITS bit;
  302. };
  303. struct DC15_BITS { // bits description
  304. Uint16 CMPSS1:1; // 0 CMPSS1
  305. Uint16 CMPSS2:1; // 1 CMPSS2
  306. Uint16 CMPSS3:1; // 2 CMPSS3
  307. Uint16 CMPSS4:1; // 3 CMPSS4
  308. Uint16 CMPSS5:1; // 4 CMPSS5
  309. Uint16 CMPSS6:1; // 5 CMPSS6
  310. Uint16 CMPSS7:1; // 6 CMPSS7
  311. Uint16 CMPSS8:1; // 7 CMPSS8
  312. Uint16 rsvd1:8; // 15:8 Reserved
  313. Uint16 rsvd2:16; // 31:16 Reserved
  314. };
  315. union DC15_REG {
  316. Uint32 all;
  317. struct DC15_BITS bit;
  318. };
  319. struct DC17_BITS { // bits description
  320. Uint16 rsvd1:1; // 0 Reserved
  321. Uint16 rsvd2:1; // 1 Reserved
  322. Uint16 rsvd3:1; // 2 Reserved
  323. Uint16 rsvd4:1; // 3 Reserved
  324. Uint16 rsvd5:12; // 15:4 Reserved
  325. Uint16 DAC_A:1; // 16 Buffered-DAC_A
  326. Uint16 DAC_B:1; // 17 Buffered-DAC_B
  327. Uint16 DAC_C:1; // 18 Buffered-DAC_C
  328. Uint16 rsvd6:1; // 19 Reserved
  329. Uint16 rsvd7:12; // 31:20 Reserved
  330. };
  331. union DC17_REG {
  332. Uint32 all;
  333. struct DC17_BITS bit;
  334. };
  335. struct DC18_BITS { // bits description
  336. Uint16 LS0_1:1; // 0 LS0_1
  337. Uint16 LS1_1:1; // 1 LS1_1
  338. Uint16 LS2_1:1; // 2 LS2_1
  339. Uint16 LS3_1:1; // 3 LS3_1
  340. Uint16 LS4_1:1; // 4 LS4_1
  341. Uint16 LS5_1:1; // 5 LS5_1
  342. Uint16 rsvd1:10; // 15:6 Reserved
  343. Uint16 rsvd2:16; // 31:16 Reserved
  344. };
  345. union DC18_REG {
  346. Uint32 all;
  347. struct DC18_BITS bit;
  348. };
  349. struct DC19_BITS { // bits description
  350. Uint16 LS0_2:1; // 0 LS0_2
  351. Uint16 LS1_2:1; // 1 LS1_2
  352. Uint16 LS2_2:1; // 2 LS2_2
  353. Uint16 LS3_2:1; // 3 LS3_2
  354. Uint16 LS4_2:1; // 4 LS4_2
  355. Uint16 LS5_2:1; // 5 LS5_2
  356. Uint16 rsvd1:10; // 15:6 Reserved
  357. Uint16 rsvd2:16; // 31:16 Reserved
  358. };
  359. union DC19_REG {
  360. Uint32 all;
  361. struct DC19_BITS bit;
  362. };
  363. struct DC20_BITS { // bits description
  364. Uint16 GS0:1; // 0 GS0
  365. Uint16 GS1:1; // 1 GS1
  366. Uint16 GS2:1; // 2 GS2
  367. Uint16 GS3:1; // 3 GS3
  368. Uint16 GS4:1; // 4 GS4
  369. Uint16 GS5:1; // 5 GS5
  370. Uint16 GS6:1; // 6 GS6
  371. Uint16 GS7:1; // 7 GS7
  372. Uint16 GS8:1; // 8 GS8
  373. Uint16 GS9:1; // 9 GS9
  374. Uint16 GS10:1; // 10 GS10
  375. Uint16 GS11:1; // 11 GS11
  376. Uint16 GS12:1; // 12 GS12
  377. Uint16 GS13:1; // 13 GS13
  378. Uint16 GS14:1; // 14 GS14
  379. Uint16 GS15:1; // 15 GS15
  380. Uint16 rsvd1:16; // 31:16 Reserved
  381. };
  382. union DC20_REG {
  383. Uint32 all;
  384. struct DC20_BITS bit;
  385. };
  386. struct PERCNF1_BITS { // bits description
  387. Uint16 ADC_A_MODE:1; // 0 ADC_A mode setting bit
  388. Uint16 ADC_B_MODE:1; // 1 ADC_B mode setting bit
  389. Uint16 ADC_C_MODE:1; // 2 ADC_C mode setting bit
  390. Uint16 ADC_D_MODE:1; // 3 ADC_D mode setting bit
  391. Uint16 rsvd1:12; // 15:4 Reserved
  392. Uint16 USB_A_PHY:1; // 16 USB_A_PHY
  393. Uint16 rsvd2:1; // 17 Reserved
  394. Uint16 rsvd3:14; // 31:18 Reserved
  395. };
  396. union PERCNF1_REG {
  397. Uint32 all;
  398. struct PERCNF1_BITS bit;
  399. };
  400. struct FUSEERR_BITS { // bits description
  401. Uint16 ALERR:5; // 4:0 Efuse Autoload Error Status
  402. Uint16 ERR:1; // 5 Efuse Self Test Error Status
  403. Uint16 rsvd1:10; // 15:6 Reserved
  404. Uint16 rsvd2:16; // 31:16 Reserved
  405. };
  406. union FUSEERR_REG {
  407. Uint32 all;
  408. struct FUSEERR_BITS bit;
  409. };
  410. struct SOFTPRES0_BITS { // bits description
  411. Uint16 CPU1_CLA1:1; // 0 CPU1_CLA1 software reset bit
  412. Uint16 rsvd1:1; // 1 Reserved
  413. Uint16 CPU2_CLA1:1; // 2 CPU2_CLA1 software reset bit
  414. Uint16 rsvd2:1; // 3 Reserved
  415. Uint16 rsvd3:12; // 15:4 Reserved
  416. Uint16 rsvd4:16; // 31:16 Reserved
  417. };
  418. union SOFTPRES0_REG {
  419. Uint32 all;
  420. struct SOFTPRES0_BITS bit;
  421. };
  422. struct SOFTPRES1_BITS { // bits description
  423. Uint16 EMIF1:1; // 0 EMIF1 software reset bit
  424. Uint16 EMIF2:1; // 1 EMIF2 software reset bit
  425. Uint16 rsvd1:14; // 15:2 Reserved
  426. Uint16 rsvd2:16; // 31:16 Reserved
  427. };
  428. union SOFTPRES1_REG {
  429. Uint32 all;
  430. struct SOFTPRES1_BITS bit;
  431. };
  432. struct SOFTPRES2_BITS { // bits description
  433. Uint16 EPWM1:1; // 0 EPWM1 software reset bit
  434. Uint16 EPWM2:1; // 1 EPWM2 software reset bit
  435. Uint16 EPWM3:1; // 2 EPWM3 software reset bit
  436. Uint16 EPWM4:1; // 3 EPWM4 software reset bit
  437. Uint16 EPWM5:1; // 4 EPWM5 software reset bit
  438. Uint16 EPWM6:1; // 5 EPWM6 software reset bit
  439. Uint16 EPWM7:1; // 6 EPWM7 software reset bit
  440. Uint16 EPWM8:1; // 7 EPWM8 software reset bit
  441. Uint16 EPWM9:1; // 8 EPWM9 software reset bit
  442. Uint16 EPWM10:1; // 9 EPWM10 software reset bit
  443. Uint16 EPWM11:1; // 10 EPWM11 software reset bit
  444. Uint16 EPWM12:1; // 11 EPWM12 software reset bit
  445. Uint16 rsvd1:1; // 12 Reserved
  446. Uint16 rsvd2:1; // 13 Reserved
  447. Uint16 rsvd3:1; // 14 Reserved
  448. Uint16 rsvd4:1; // 15 Reserved
  449. Uint16 rsvd5:16; // 31:16 Reserved
  450. };
  451. union SOFTPRES2_REG {
  452. Uint32 all;
  453. struct SOFTPRES2_BITS bit;
  454. };
  455. struct SOFTPRES3_BITS { // bits description
  456. Uint16 ECAP1:1; // 0 ECAP1 software reset bit
  457. Uint16 ECAP2:1; // 1 ECAP2 software reset bit
  458. Uint16 ECAP3:1; // 2 ECAP3 software reset bit
  459. Uint16 ECAP4:1; // 3 ECAP4 software reset bit
  460. Uint16 ECAP5:1; // 4 ECAP5 software reset bit
  461. Uint16 ECAP6:1; // 5 ECAP6 software reset bit
  462. Uint16 rsvd1:1; // 6 Reserved
  463. Uint16 rsvd2:1; // 7 Reserved
  464. Uint16 rsvd3:8; // 15:8 Reserved
  465. Uint16 rsvd4:16; // 31:16 Reserved
  466. };
  467. union SOFTPRES3_REG {
  468. Uint32 all;
  469. struct SOFTPRES3_BITS bit;
  470. };
  471. struct SOFTPRES4_BITS { // bits description
  472. Uint16 EQEP1:1; // 0 EQEP1 software reset bit
  473. Uint16 EQEP2:1; // 1 EQEP2 software reset bit
  474. Uint16 EQEP3:1; // 2 EQEP3 software reset bit
  475. Uint16 rsvd1:1; // 3 Reserved
  476. Uint16 rsvd2:12; // 15:4 Reserved
  477. Uint16 rsvd3:16; // 31:16 Reserved
  478. };
  479. union SOFTPRES4_REG {
  480. Uint32 all;
  481. struct SOFTPRES4_BITS bit;
  482. };
  483. struct SOFTPRES6_BITS { // bits description
  484. Uint16 SD1:1; // 0 SD1 software reset bit
  485. Uint16 SD2:1; // 1 SD2 software reset bit
  486. Uint16 rsvd1:1; // 2 Reserved
  487. Uint16 rsvd2:1; // 3 Reserved
  488. Uint16 rsvd3:1; // 4 Reserved
  489. Uint16 rsvd4:1; // 5 Reserved
  490. Uint16 rsvd5:1; // 6 Reserved
  491. Uint16 rsvd6:1; // 7 Reserved
  492. Uint16 rsvd7:8; // 15:8 Reserved
  493. Uint16 rsvd8:16; // 31:16 Reserved
  494. };
  495. union SOFTPRES6_REG {
  496. Uint32 all;
  497. struct SOFTPRES6_BITS bit;
  498. };
  499. struct SOFTPRES7_BITS { // bits description
  500. Uint16 SCI_A:1; // 0 SCI_A software reset bit
  501. Uint16 SCI_B:1; // 1 SCI_B software reset bit
  502. Uint16 SCI_C:1; // 2 SCI_C software reset bit
  503. Uint16 SCI_D:1; // 3 SCI_D software reset bit
  504. Uint16 rsvd1:12; // 15:4 Reserved
  505. Uint16 rsvd2:16; // 31:16 Reserved
  506. };
  507. union SOFTPRES7_REG {
  508. Uint32 all;
  509. struct SOFTPRES7_BITS bit;
  510. };
  511. struct SOFTPRES8_BITS { // bits description
  512. Uint16 SPI_A:1; // 0 SPI_A software reset bit
  513. Uint16 SPI_B:1; // 1 SPI_B software reset bit
  514. Uint16 SPI_C:1; // 2 SPI_C software reset bit
  515. Uint16 rsvd1:1; // 3 Reserved
  516. Uint16 rsvd2:12; // 15:4 Reserved
  517. Uint16 rsvd3:1; // 16 Reserved
  518. Uint16 rsvd4:1; // 17 Reserved
  519. Uint16 rsvd5:14; // 31:18 Reserved
  520. };
  521. union SOFTPRES8_REG {
  522. Uint32 all;
  523. struct SOFTPRES8_BITS bit;
  524. };
  525. struct SOFTPRES9_BITS { // bits description
  526. Uint16 I2C_A:1; // 0 I2C_A software reset bit
  527. Uint16 I2C_B:1; // 1 I2C_B software reset bit
  528. Uint16 rsvd1:14; // 15:2 Reserved
  529. Uint16 rsvd2:1; // 16 Reserved
  530. Uint16 rsvd3:1; // 17 Reserved
  531. Uint16 rsvd4:14; // 31:18 Reserved
  532. };
  533. union SOFTPRES9_REG {
  534. Uint32 all;
  535. struct SOFTPRES9_BITS bit;
  536. };
  537. struct SOFTPRES11_BITS { // bits description
  538. Uint16 McBSP_A:1; // 0 McBSP_A software reset bit
  539. Uint16 McBSP_B:1; // 1 McBSP_B software reset bit
  540. Uint16 rsvd1:14; // 15:2 Reserved
  541. Uint16 USB_A:1; // 16 USB_A software reset bit
  542. Uint16 rsvd2:1; // 17 Reserved
  543. Uint16 rsvd3:14; // 31:18 Reserved
  544. };
  545. union SOFTPRES11_REG {
  546. Uint32 all;
  547. struct SOFTPRES11_BITS bit;
  548. };
  549. struct SOFTPRES13_BITS { // bits description
  550. Uint16 ADC_A:1; // 0 ADC_A software reset bit
  551. Uint16 ADC_B:1; // 1 ADC_B software reset bit
  552. Uint16 ADC_C:1; // 2 ADC_C software reset bit
  553. Uint16 ADC_D:1; // 3 ADC_D software reset bit
  554. Uint16 rsvd1:12; // 15:4 Reserved
  555. Uint16 rsvd2:16; // 31:16 Reserved
  556. };
  557. union SOFTPRES13_REG {
  558. Uint32 all;
  559. struct SOFTPRES13_BITS bit;
  560. };
  561. struct SOFTPRES14_BITS { // bits description
  562. Uint16 CMPSS1:1; // 0 CMPSS1 software reset bit
  563. Uint16 CMPSS2:1; // 1 CMPSS2 software reset bit
  564. Uint16 CMPSS3:1; // 2 CMPSS3 software reset bit
  565. Uint16 CMPSS4:1; // 3 CMPSS4 software reset bit
  566. Uint16 CMPSS5:1; // 4 CMPSS5 software reset bit
  567. Uint16 CMPSS6:1; // 5 CMPSS6 software reset bit
  568. Uint16 CMPSS7:1; // 6 CMPSS7 software reset bit
  569. Uint16 CMPSS8:1; // 7 CMPSS8 software reset bit
  570. Uint16 rsvd1:8; // 15:8 Reserved
  571. Uint16 rsvd2:16; // 31:16 Reserved
  572. };
  573. union SOFTPRES14_REG {
  574. Uint32 all;
  575. struct SOFTPRES14_BITS bit;
  576. };
  577. struct SOFTPRES16_BITS { // bits description
  578. Uint16 rsvd1:1; // 0 Reserved
  579. Uint16 rsvd2:1; // 1 Reserved
  580. Uint16 rsvd3:1; // 2 Reserved
  581. Uint16 rsvd4:1; // 3 Reserved
  582. Uint16 rsvd5:12; // 15:4 Reserved
  583. Uint16 DAC_A:1; // 16 Buffered_DAC_A software reset bit
  584. Uint16 DAC_B:1; // 17 Buffered_DAC_B software reset bit
  585. Uint16 DAC_C:1; // 18 Buffered_DAC_C software reset bit
  586. Uint16 rsvd6:1; // 19 Reserved
  587. Uint16 rsvd7:12; // 31:20 Reserved
  588. };
  589. union SOFTPRES16_REG {
  590. Uint32 all;
  591. struct SOFTPRES16_BITS bit;
  592. };
  593. struct CPUSEL0_BITS { // bits description
  594. Uint16 EPWM1:1; // 0 EPWM1 CPU select bit
  595. Uint16 EPWM2:1; // 1 EPWM2 CPU select bit
  596. Uint16 EPWM3:1; // 2 EPWM3 CPU select bit
  597. Uint16 EPWM4:1; // 3 EPWM4 CPU select bit
  598. Uint16 EPWM5:1; // 4 EPWM5 CPU select bit
  599. Uint16 EPWM6:1; // 5 EPWM6 CPU select bit
  600. Uint16 EPWM7:1; // 6 EPWM7 CPU select bit
  601. Uint16 EPWM8:1; // 7 EPWM8 CPU select bit
  602. Uint16 EPWM9:1; // 8 EPWM9 CPU select bit
  603. Uint16 EPWM10:1; // 9 EPWM10 CPU select bit
  604. Uint16 EPWM11:1; // 10 EPWM11 CPU select bit
  605. Uint16 EPWM12:1; // 11 EPWM12 CPU select bit
  606. Uint16 rsvd1:1; // 12 Reserved
  607. Uint16 rsvd2:1; // 13 Reserved
  608. Uint16 rsvd3:1; // 14 Reserved
  609. Uint16 rsvd4:1; // 15 Reserved
  610. Uint16 rsvd5:16; // 31:16 Reserved
  611. };
  612. union CPUSEL0_REG {
  613. Uint32 all;
  614. struct CPUSEL0_BITS bit;
  615. };
  616. struct CPUSEL1_BITS { // bits description
  617. Uint16 ECAP1:1; // 0 ECAP1 CPU select bit
  618. Uint16 ECAP2:1; // 1 ECAP2 CPU select bit
  619. Uint16 ECAP3:1; // 2 ECAP3 CPU select bit
  620. Uint16 ECAP4:1; // 3 ECAP4 CPU select bit
  621. Uint16 ECAP5:1; // 4 ECAP5 CPU select bit
  622. Uint16 ECAP6:1; // 5 ECAP6 CPU select bit
  623. Uint16 rsvd1:1; // 6 Reserved
  624. Uint16 rsvd2:1; // 7 Reserved
  625. Uint16 rsvd3:8; // 15:8 Reserved
  626. Uint16 rsvd4:16; // 31:16 Reserved
  627. };
  628. union CPUSEL1_REG {
  629. Uint32 all;
  630. struct CPUSEL1_BITS bit;
  631. };
  632. struct CPUSEL2_BITS { // bits description
  633. Uint16 EQEP1:1; // 0 EQEP1 CPU select bit
  634. Uint16 EQEP2:1; // 1 EQEP2 CPU select bit
  635. Uint16 EQEP3:1; // 2 EQEP3 CPU select bit
  636. Uint16 rsvd1:1; // 3 Reserved
  637. Uint16 rsvd2:12; // 15:4 Reserved
  638. Uint16 rsvd3:16; // 31:16 Reserved
  639. };
  640. union CPUSEL2_REG {
  641. Uint32 all;
  642. struct CPUSEL2_BITS bit;
  643. };
  644. struct CPUSEL4_BITS { // bits description
  645. Uint16 SD1:1; // 0 SD1 CPU select bit
  646. Uint16 SD2:1; // 1 SD2 CPU select bit
  647. Uint16 rsvd1:1; // 2 Reserved
  648. Uint16 rsvd2:1; // 3 Reserved
  649. Uint16 rsvd3:1; // 4 Reserved
  650. Uint16 rsvd4:1; // 5 Reserved
  651. Uint16 rsvd5:1; // 6 Reserved
  652. Uint16 rsvd6:1; // 7 Reserved
  653. Uint16 rsvd7:8; // 15:8 Reserved
  654. Uint16 rsvd8:16; // 31:16 Reserved
  655. };
  656. union CPUSEL4_REG {
  657. Uint32 all;
  658. struct CPUSEL4_BITS bit;
  659. };
  660. struct CPUSEL5_BITS { // bits description
  661. Uint16 SCI_A:1; // 0 SCI_A CPU select bit
  662. Uint16 SCI_B:1; // 1 SCI_B CPU select bit
  663. Uint16 SCI_C:1; // 2 SCI_C CPU select bit
  664. Uint16 SCI_D:1; // 3 SCI_D CPU select bit
  665. Uint16 rsvd1:12; // 15:4 Reserved
  666. Uint16 rsvd2:16; // 31:16 Reserved
  667. };
  668. union CPUSEL5_REG {
  669. Uint32 all;
  670. struct CPUSEL5_BITS bit;
  671. };
  672. struct CPUSEL6_BITS { // bits description
  673. Uint16 SPI_A:1; // 0 SPI_A CPU select bit
  674. Uint16 SPI_B:1; // 1 SPI_B CPU select bit
  675. Uint16 SPI_C:1; // 2 SPI_C CPU select bit
  676. Uint16 rsvd1:1; // 3 Reserved
  677. Uint16 rsvd2:12; // 15:4 Reserved
  678. Uint16 rsvd3:1; // 16 Reserved
  679. Uint16 rsvd4:1; // 17 Reserved
  680. Uint16 rsvd5:14; // 31:18 Reserved
  681. };
  682. union CPUSEL6_REG {
  683. Uint32 all;
  684. struct CPUSEL6_BITS bit;
  685. };
  686. struct CPUSEL7_BITS { // bits description
  687. Uint16 I2C_A:1; // 0 I2C_A CPU select bit
  688. Uint16 I2C_B:1; // 1 I2C_B CPU select bit
  689. Uint16 rsvd1:14; // 15:2 Reserved
  690. Uint16 rsvd2:1; // 16 Reserved
  691. Uint16 rsvd3:1; // 17 Reserved
  692. Uint16 rsvd4:14; // 31:18 Reserved
  693. };
  694. union CPUSEL7_REG {
  695. Uint32 all;
  696. struct CPUSEL7_BITS bit;
  697. };
  698. struct CPUSEL8_BITS { // bits description
  699. Uint16 CAN_A:1; // 0 CAN_A CPU select bit
  700. Uint16 CAN_B:1; // 1 CAN_B CPU select bit
  701. Uint16 rsvd1:1; // 2 Reserved
  702. Uint16 rsvd2:1; // 3 Reserved
  703. Uint16 rsvd3:12; // 15:4 Reserved
  704. Uint16 rsvd4:16; // 31:16 Reserved
  705. };
  706. union CPUSEL8_REG {
  707. Uint32 all;
  708. struct CPUSEL8_BITS bit;
  709. };
  710. struct CPUSEL9_BITS { // bits description
  711. Uint16 McBSP_A:1; // 0 McBSP_A CPU select bit
  712. Uint16 McBSP_B:1; // 1 McBSP_B CPU select bit
  713. Uint16 rsvd1:14; // 15:2 Reserved
  714. Uint16 rsvd2:16; // 31:16 Reserved
  715. };
  716. union CPUSEL9_REG {
  717. Uint32 all;
  718. struct CPUSEL9_BITS bit;
  719. };
  720. struct CPUSEL11_BITS { // bits description
  721. Uint16 ADC_A:1; // 0 ADC_A CPU select bit
  722. Uint16 ADC_B:1; // 1 ADC_B CPU select bit
  723. Uint16 ADC_C:1; // 2 ADC_C CPU select bit
  724. Uint16 ADC_D:1; // 3 ADC_D CPU select bit
  725. Uint16 rsvd1:12; // 15:4 Reserved
  726. Uint16 rsvd2:16; // 31:16 Reserved
  727. };
  728. union CPUSEL11_REG {
  729. Uint32 all;
  730. struct CPUSEL11_BITS bit;
  731. };
  732. struct CPUSEL12_BITS { // bits description
  733. Uint16 CMPSS1:1; // 0 CMPSS1 CPU select bit
  734. Uint16 CMPSS2:1; // 1 CMPSS2 CPU select bit
  735. Uint16 CMPSS3:1; // 2 CMPSS3 CPU select bit
  736. Uint16 CMPSS4:1; // 3 CMPSS4 CPU select bit
  737. Uint16 CMPSS5:1; // 4 CMPSS5 CPU select bit
  738. Uint16 CMPSS6:1; // 5 CMPSS6 CPU select bit
  739. Uint16 CMPSS7:1; // 6 CMPSS7 CPU select bit
  740. Uint16 CMPSS8:1; // 7 CMPSS8 CPU select bit
  741. Uint16 rsvd1:8; // 15:8 Reserved
  742. Uint16 rsvd2:16; // 31:16 Reserved
  743. };
  744. union CPUSEL12_REG {
  745. Uint32 all;
  746. struct CPUSEL12_BITS bit;
  747. };
  748. struct CPUSEL14_BITS { // bits description
  749. Uint16 rsvd1:1; // 0 Reserved
  750. Uint16 rsvd2:1; // 1 Reserved
  751. Uint16 rsvd3:1; // 2 Reserved
  752. Uint16 rsvd4:1; // 3 Reserved
  753. Uint16 rsvd5:12; // 15:4 Reserved
  754. Uint16 DAC_A:1; // 16 Buffered_DAC_A CPU select bit
  755. Uint16 DAC_B:1; // 17 Buffered_DAC_B CPU select bit
  756. Uint16 DAC_C:1; // 18 Buffered_DAC_C CPU select bit
  757. Uint16 rsvd6:1; // 19 Reserved
  758. Uint16 rsvd7:12; // 31:20 Reserved
  759. };
  760. union CPUSEL14_REG {
  761. Uint32 all;
  762. struct CPUSEL14_BITS bit;
  763. };
  764. struct CPU2RESCTL_BITS { // bits description
  765. Uint16 RESET:1; // 0 CPU2 Reset Control bit
  766. Uint16 rsvd1:15; // 15:1 Reserved
  767. Uint16 KEY:16; // 31:16 Key Qualifier for writes to this register
  768. };
  769. union CPU2RESCTL_REG {
  770. Uint32 all;
  771. struct CPU2RESCTL_BITS bit;
  772. };
  773. struct RSTSTAT_BITS { // bits description
  774. Uint16 CPU2RES:1; // 0 CPU2 Reset Status bit
  775. Uint16 CPU2NMIWDRST:1; // 1 Indicates whether a CPU2.NMIWD reset was issued to CPU2
  776. Uint16 CPU2HWBISTRST0:1; // 2 Indicates whether a HWBIST reset was issued to CPU2
  777. Uint16 CPU2HWBISTRST1:1; // 3 Indicates whether a HWBIST reset was issued to CPU2
  778. Uint16 rsvd1:12; // 15:4 Reserved
  779. };
  780. union RSTSTAT_REG {
  781. Uint16 all;
  782. struct RSTSTAT_BITS bit;
  783. };
  784. struct LPMSTAT_BITS { // bits description
  785. Uint16 CPU2LPMSTAT:2; // 1:0 CPU2 LPM Status
  786. Uint16 rsvd1:14; // 15:2 Reserved
  787. };
  788. union LPMSTAT_REG {
  789. Uint16 all;
  790. struct LPMSTAT_BITS bit;
  791. };
  792. struct SYSDBGCTL_BITS { // bits description
  793. Uint16 BIT_0:1; // 0 Used in PLL startup. Only reset by POR.
  794. Uint16 rsvd1:15; // 15:1 Reserved
  795. Uint16 rsvd2:16; // 31:16 Reserved
  796. };
  797. union SYSDBGCTL_REG {
  798. Uint32 all;
  799. struct SYSDBGCTL_BITS bit;
  800. };
  801. struct DEV_CFG_REGS {
  802. union DEVCFGLOCK1_REG DEVCFGLOCK1; // Lock bit for CPUSELx registers
  803. Uint16 rsvd1[6]; // Reserved
  804. union PARTIDL_REG PARTIDL; // Lower 32-bit of Device PART Identification Number
  805. union PARTIDH_REG PARTIDH; // Upper 32-bit of Device PART Identification Number
  806. Uint32 REVID; // Device Revision Number
  807. Uint16 rsvd2[2]; // Reserved
  808. union DC0_REG DC0; // Device Capability: Device Information
  809. union DC1_REG DC1; // Device Capability: Processing Block Customization
  810. union DC2_REG DC2; // Device Capability: EMIF Customization
  811. union DC3_REG DC3; // Device Capability: Peripheral Customization
  812. union DC4_REG DC4; // Device Capability: Peripheral Customization
  813. union DC5_REG DC5; // Device Capability: Peripheral Customization
  814. union DC6_REG DC6; // Device Capability: Peripheral Customization
  815. union DC7_REG DC7; // Device Capability: Peripheral Customization
  816. union DC8_REG DC8; // Device Capability: Peripheral Customization
  817. union DC9_REG DC9; // Device Capability: Peripheral Customization
  818. union DC10_REG DC10; // Device Capability: Peripheral Customization
  819. union DC11_REG DC11; // Device Capability: Peripheral Customization
  820. union DC12_REG DC12; // Device Capability: Peripheral Customization
  821. union DC13_REG DC13; // Device Capability: Peripheral Customization
  822. union DC14_REG DC14; // Device Capability: Analog Modules Customization
  823. union DC15_REG DC15; // Device Capability: Analog Modules Customization
  824. Uint16 rsvd3[2]; // Reserved
  825. union DC17_REG DC17; // Device Capability: Analog Modules Customization
  826. union DC18_REG DC18; // Device Capability: CPU1 Lx SRAM Customization
  827. union DC19_REG DC19; // Device Capability: CPU2 Lx SRAM Customization
  828. union DC20_REG DC20; // Device Capability: GSx SRAM Customization
  829. Uint16 rsvd4[38]; // Reserved
  830. union PERCNF1_REG PERCNF1; // Peripheral Configuration register
  831. Uint16 rsvd5[18]; // Reserved
  832. union FUSEERR_REG FUSEERR; // e-Fuse error Status register
  833. Uint16 rsvd6[12]; // Reserved
  834. union SOFTPRES0_REG SOFTPRES0; // Processing Block Software Reset register
  835. union SOFTPRES1_REG SOFTPRES1; // EMIF Software Reset register
  836. union SOFTPRES2_REG SOFTPRES2; // Peripheral Software Reset register
  837. union SOFTPRES3_REG SOFTPRES3; // Peripheral Software Reset register
  838. union SOFTPRES4_REG SOFTPRES4; // Peripheral Software Reset register
  839. Uint16 rsvd7[2]; // Reserved
  840. union SOFTPRES6_REG SOFTPRES6; // Peripheral Software Reset register
  841. union SOFTPRES7_REG SOFTPRES7; // Peripheral Software Reset register
  842. union SOFTPRES8_REG SOFTPRES8; // Peripheral Software Reset register
  843. union SOFTPRES9_REG SOFTPRES9; // Peripheral Software Reset register
  844. Uint16 rsvd8[2]; // Reserved
  845. union SOFTPRES11_REG SOFTPRES11; // Peripheral Software Reset register
  846. Uint16 rsvd9[2]; // Reserved
  847. union SOFTPRES13_REG SOFTPRES13; // Peripheral Software Reset register
  848. union SOFTPRES14_REG SOFTPRES14; // Peripheral Software Reset register
  849. Uint16 rsvd10[2]; // Reserved
  850. union SOFTPRES16_REG SOFTPRES16; // Peripheral Software Reset register
  851. Uint16 rsvd11[50]; // Reserved
  852. union CPUSEL0_REG CPUSEL0; // CPU Select register for common peripherals
  853. union CPUSEL1_REG CPUSEL1; // CPU Select register for common peripherals
  854. union CPUSEL2_REG CPUSEL2; // CPU Select register for common peripherals
  855. Uint16 rsvd12[2]; // Reserved
  856. union CPUSEL4_REG CPUSEL4; // CPU Select register for common peripherals
  857. union CPUSEL5_REG CPUSEL5; // CPU Select register for common peripherals
  858. union CPUSEL6_REG CPUSEL6; // CPU Select register for common peripherals
  859. union CPUSEL7_REG CPUSEL7; // CPU Select register for common peripherals
  860. union CPUSEL8_REG CPUSEL8; // CPU Select register for common peripherals
  861. union CPUSEL9_REG CPUSEL9; // CPU Select register for common peripherals
  862. Uint16 rsvd13[2]; // Reserved
  863. union CPUSEL11_REG CPUSEL11; // CPU Select register for common peripherals
  864. union CPUSEL12_REG CPUSEL12; // CPU Select register for common peripherals
  865. Uint16 rsvd14[2]; // Reserved
  866. union CPUSEL14_REG CPUSEL14; // CPU Select register for common peripherals
  867. Uint16 rsvd15[46]; // Reserved
  868. union CPU2RESCTL_REG CPU2RESCTL; // CPU2 Reset Control Register
  869. union RSTSTAT_REG RSTSTAT; // Reset Status register for secondary C28x CPUs
  870. union LPMSTAT_REG LPMSTAT; // LPM Status Register for secondary C28x CPUs
  871. Uint16 rsvd16[6]; // Reserved
  872. union SYSDBGCTL_REG SYSDBGCTL; // System Debug Control register
  873. };
  874. struct CLKSEM_BITS { // bits description
  875. Uint16 SEM:2; // 1:0 Semaphore for CLKCFG Ownership by CPU1 or CPU2
  876. Uint16 rsvd1:14; // 15:2 Reserved
  877. Uint16 KEY:16; // 31:16 Key Qualifier for writes to this register
  878. };
  879. union CLKSEM_REG {
  880. Uint32 all;
  881. struct CLKSEM_BITS bit;
  882. };
  883. struct CLKCFGLOCK1_BITS { // bits description
  884. Uint16 CLKSRCCTL1:1; // 0 Lock bit for CLKSRCCTL1 register
  885. Uint16 CLKSRCCTL2:1; // 1 Lock bit for CLKSRCCTL2 register
  886. Uint16 CLKSRCCTL3:1; // 2 Lock bit for CLKSRCCTL3 register
  887. Uint16 SYSPLLCTL1:1; // 3 Lock bit for SYSPLLCTL1 register
  888. Uint16 SYSPLLCTL2:1; // 4 Lock bit for SYSPLLCTL2 register
  889. Uint16 SYSPLLCTL3:1; // 5 Lock bit for SYSPLLCTL3 register
  890. Uint16 SYSPLLMULT:1; // 6 Lock bit for SYSPLLMULT register
  891. Uint16 AUXPLLCTL1:1; // 7 Lock bit for AUXPLLCTL1 register
  892. Uint16 rsvd1:1; // 8 Reserved
  893. Uint16 rsvd2:1; // 9 Reserved
  894. Uint16 AUXPLLMULT:1; // 10 Lock bit for AUXPLLMULT register
  895. Uint16 SYSCLKDIVSEL:1; // 11 Lock bit for SYSCLKDIVSEL register
  896. Uint16 AUXCLKDIVSEL:1; // 12 Lock bit for AUXCLKDIVSEL register
  897. Uint16 PERCLKDIVSEL:1; // 13 Lock bit for PERCLKDIVSEL register
  898. Uint16 rsvd3:1; // 14 Reserved
  899. Uint16 LOSPCP:1; // 15 Lock bit for LOSPCP register
  900. Uint16 rsvd4:16; // 31:16 Reserved
  901. };
  902. union CLKCFGLOCK1_REG {
  903. Uint32 all;
  904. struct CLKCFGLOCK1_BITS bit;
  905. };
  906. struct CLKSRCCTL1_BITS { // bits description
  907. Uint16 OSCCLKSRCSEL:2; // 1:0 OSCCLK Source Select Bit
  908. Uint16 rsvd1:1; // 2 Reserved
  909. Uint16 INTOSC2OFF:1; // 3 Internal Oscillator 2 Off Bit
  910. Uint16 XTALOFF:1; // 4 Crystal (External) Oscillator Off Bit
  911. Uint16 WDHALTI:1; // 5 Watchdog HALT Mode Ignore Bit
  912. Uint16 rsvd2:10; // 15:6 Reserved
  913. Uint16 rsvd3:16; // 31:16 Reserved
  914. };
  915. union CLKSRCCTL1_REG {
  916. Uint32 all;
  917. struct CLKSRCCTL1_BITS bit;
  918. };
  919. struct CLKSRCCTL2_BITS { // bits description
  920. Uint16 AUXOSCCLKSRCSEL:2; // 1:0 AUXOSCCLK Source Select Bit
  921. Uint16 CANABCLKSEL:2; // 3:2 CANA Bit Clock Source Select Bit
  922. Uint16 CANBBCLKSEL:2; // 5:4 CANB Bit Clock Source Select Bit
  923. Uint16 rsvd1:2; // 7:6 Reserved
  924. Uint16 rsvd2:2; // 9:8 Reserved
  925. Uint16 rsvd3:6; // 15:10 Reserved
  926. Uint16 rsvd4:16; // 31:16 Reserved
  927. };
  928. union CLKSRCCTL2_REG {
  929. Uint32 all;
  930. struct CLKSRCCTL2_BITS bit;
  931. };
  932. struct CLKSRCCTL3_BITS { // bits description
  933. Uint16 XCLKOUTSEL:3; // 2:0 XCLKOUT Source Select Bit
  934. Uint16 rsvd1:13; // 15:3 Reserved
  935. Uint16 rsvd2:16; // 31:16 Reserved
  936. };
  937. union CLKSRCCTL3_REG {
  938. Uint32 all;
  939. struct CLKSRCCTL3_BITS bit;
  940. };
  941. struct SYSPLLCTL1_BITS { // bits description
  942. Uint16 PLLEN:1; // 0 SYSPLL enable/disable bit
  943. Uint16 PLLCLKEN:1; // 1 SYSPLL bypassed or included in the PLLSYSCLK path
  944. Uint16 rsvd1:14; // 15:2 Reserved
  945. Uint16 rsvd2:16; // 31:16 Reserved
  946. };
  947. union SYSPLLCTL1_REG {
  948. Uint32 all;
  949. struct SYSPLLCTL1_BITS bit;
  950. };
  951. struct SYSPLLMULT_BITS { // bits description
  952. Uint16 IMULT:7; // 6:0 SYSPLL Integer Multiplier
  953. Uint16 rsvd1:1; // 7 Reserved
  954. Uint16 FMULT:2; // 9:8 SYSPLL Fractional Multiplier
  955. Uint16 rsvd2:6; // 15:10 Reserved
  956. Uint16 rsvd3:16; // 31:16 Reserved
  957. };
  958. union SYSPLLMULT_REG {
  959. Uint32 all;
  960. struct SYSPLLMULT_BITS bit;
  961. };
  962. struct SYSPLLSTS_BITS { // bits description
  963. Uint16 LOCKS:1; // 0 SYSPLL Lock Status Bit
  964. Uint16 SLIPS:1; // 1 SYSPLL Slip Status Bit
  965. Uint16 rsvd1:14; // 15:2 Reserved
  966. Uint16 rsvd2:16; // 31:16 Reserved
  967. };
  968. union SYSPLLSTS_REG {
  969. Uint32 all;
  970. struct SYSPLLSTS_BITS bit;
  971. };
  972. struct AUXPLLCTL1_BITS { // bits description
  973. Uint16 PLLEN:1; // 0 AUXPLL enable/disable bit
  974. Uint16 PLLCLKEN:1; // 1 AUXPLL bypassed or included in the AUXPLLCLK path
  975. Uint16 rsvd1:14; // 15:2 Reserved
  976. Uint16 rsvd2:16; // 31:16 Reserved
  977. };
  978. union AUXPLLCTL1_REG {
  979. Uint32 all;
  980. struct AUXPLLCTL1_BITS bit;
  981. };
  982. struct AUXPLLMULT_BITS { // bits description
  983. Uint16 IMULT:7; // 6:0 AUXPLL Integer Multiplier
  984. Uint16 rsvd1:1; // 7 Reserved
  985. Uint16 FMULT:2; // 9:8 AUXPLL Fractional Multiplier
  986. Uint16 rsvd2:6; // 15:10 Reserved
  987. Uint16 rsvd3:16; // 31:16 Reserved
  988. };
  989. union AUXPLLMULT_REG {
  990. Uint32 all;
  991. struct AUXPLLMULT_BITS bit;
  992. };
  993. struct AUXPLLSTS_BITS { // bits description
  994. Uint16 LOCKS:1; // 0 AUXPLL Lock Status Bit
  995. Uint16 SLIPS:1; // 1 AUXPLL Slip Status Bit
  996. Uint16 rsvd1:14; // 15:2 Reserved
  997. Uint16 rsvd2:16; // 31:16 Reserved
  998. };
  999. union AUXPLLSTS_REG {
  1000. Uint32 all;
  1001. struct AUXPLLSTS_BITS bit;
  1002. };
  1003. struct SYSCLKDIVSEL_BITS { // bits description
  1004. Uint16 PLLSYSCLKDIV:6; // 5:0 PLLSYSCLK Divide Select
  1005. Uint16 rsvd1:10; // 15:6 Reserved
  1006. Uint16 rsvd2:16; // 31:16 Reserved
  1007. };
  1008. union SYSCLKDIVSEL_REG {
  1009. Uint32 all;
  1010. struct SYSCLKDIVSEL_BITS bit;
  1011. };
  1012. struct AUXCLKDIVSEL_BITS { // bits description
  1013. Uint16 AUXPLLDIV:2; // 1:0 AUXPLLCLK Divide Select
  1014. Uint16 rsvd1:14; // 15:2 Reserved
  1015. Uint16 rsvd2:16; // 31:16 Reserved
  1016. };
  1017. union AUXCLKDIVSEL_REG {
  1018. Uint32 all;
  1019. struct AUXCLKDIVSEL_BITS bit;
  1020. };
  1021. struct PERCLKDIVSEL_BITS { // bits description
  1022. Uint16 EPWMCLKDIV:2; // 1:0 EPWM Clock Divide Select
  1023. Uint16 rsvd1:2; // 3:2 Reserved
  1024. Uint16 EMIF1CLKDIV:1; // 4 EMIF1 Clock Divide Select
  1025. Uint16 rsvd2:1; // 5 Reserved
  1026. Uint16 EMIF2CLKDIV:1; // 6 EMIF2 Clock Divide Select
  1027. Uint16 rsvd3:9; // 15:7 Reserved
  1028. Uint16 rsvd4:16; // 31:16 Reserved
  1029. };
  1030. union PERCLKDIVSEL_REG {
  1031. Uint32 all;
  1032. struct PERCLKDIVSEL_BITS bit;
  1033. };
  1034. struct XCLKOUTDIVSEL_BITS { // bits description
  1035. Uint16 XCLKOUTDIV:2; // 1:0 XCLKOUT Divide Select
  1036. Uint16 rsvd1:14; // 15:2 Reserved
  1037. Uint16 rsvd2:16; // 31:16 Reserved
  1038. };
  1039. union XCLKOUTDIVSEL_REG {
  1040. Uint32 all;
  1041. struct XCLKOUTDIVSEL_BITS bit;
  1042. };
  1043. struct LOSPCP_BITS { // bits description
  1044. Uint16 LSPCLKDIV:3; // 2:0 LSPCLK Divide Select
  1045. Uint16 rsvd1:13; // 15:3 Reserved
  1046. Uint16 rsvd2:16; // 31:16 Reserved
  1047. };
  1048. union LOSPCP_REG {
  1049. Uint32 all;
  1050. struct LOSPCP_BITS bit;
  1051. };
  1052. struct MCDCR_BITS { // bits description
  1053. Uint16 MCLKSTS:1; // 0 Missing Clock Status Bit
  1054. Uint16 MCLKCLR:1; // 1 Missing Clock Clear Bit
  1055. Uint16 MCLKOFF:1; // 2 Missing Clock Detect Off Bit
  1056. Uint16 OSCOFF:1; // 3 Oscillator Clock Off Bit
  1057. Uint16 rsvd1:12; // 15:4 Reserved
  1058. Uint16 rsvd2:16; // 31:16 Reserved
  1059. };
  1060. union MCDCR_REG {
  1061. Uint32 all;
  1062. struct MCDCR_BITS bit;
  1063. };
  1064. struct X1CNT_BITS { // bits description
  1065. Uint16 X1CNT:10; // 9:0 X1 Counter
  1066. Uint16 rsvd1:6; // 15:10 Reserved
  1067. Uint16 rsvd2:16; // 31:16 Reserved
  1068. };
  1069. union X1CNT_REG {
  1070. Uint32 all;
  1071. struct X1CNT_BITS bit;
  1072. };
  1073. struct CLK_CFG_REGS {
  1074. union CLKSEM_REG CLKSEM; // Clock Control Semaphore Register
  1075. union CLKCFGLOCK1_REG CLKCFGLOCK1; // Lock bit for CLKCFG registers
  1076. Uint16 rsvd1[4]; // Reserved
  1077. union CLKSRCCTL1_REG CLKSRCCTL1; // Clock Source Control register-1
  1078. union CLKSRCCTL2_REG CLKSRCCTL2; // Clock Source Control register-2
  1079. union CLKSRCCTL3_REG CLKSRCCTL3; // Clock Source Control register-3
  1080. union SYSPLLCTL1_REG SYSPLLCTL1; // SYSPLL Control register-1
  1081. Uint16 rsvd2[4]; // Reserved
  1082. union SYSPLLMULT_REG SYSPLLMULT; // SYSPLL Multiplier register
  1083. union SYSPLLSTS_REG SYSPLLSTS; // SYSPLL Status register
  1084. union AUXPLLCTL1_REG AUXPLLCTL1; // AUXPLL Control register-1
  1085. Uint16 rsvd3[4]; // Reserved
  1086. union AUXPLLMULT_REG AUXPLLMULT; // AUXPLL Multiplier register
  1087. union AUXPLLSTS_REG AUXPLLSTS; // AUXPLL Status register
  1088. union SYSCLKDIVSEL_REG SYSCLKDIVSEL; // System Clock Divider Select register
  1089. union AUXCLKDIVSEL_REG AUXCLKDIVSEL; // Auxillary Clock Divider Select register
  1090. union PERCLKDIVSEL_REG PERCLKDIVSEL; // Peripheral Clock Divider Selet register
  1091. union XCLKOUTDIVSEL_REG XCLKOUTDIVSEL; // XCLKOUT Divider Select register
  1092. Uint16 rsvd4[2]; // Reserved
  1093. union LOSPCP_REG LOSPCP; // Low Speed Clock Source Prescalar
  1094. union MCDCR_REG MCDCR; // Missing Clock Detect Control Register
  1095. union X1CNT_REG X1CNT; // 10-bit Counter on X1 Clock
  1096. };
  1097. struct CPUSYSLOCK1_BITS { // bits description
  1098. Uint16 HIBBOOTMODE:1; // 0 Lock bit for HIBBOOTMODE register
  1099. Uint16 IORESTOREADDR:1; // 1 Lock bit for IORESTOREADDR Register
  1100. Uint16 PIEVERRADDR:1; // 2 Lock bit for PIEVERRADDR Register
  1101. Uint16 PCLKCR0:1; // 3 Lock bit for PCLKCR0 Register
  1102. Uint16 PCLKCR1:1; // 4 Lock bit for PCLKCR1 Register
  1103. Uint16 PCLKCR2:1; // 5 Lock bit for PCLKCR2 Register
  1104. Uint16 PCLKCR3:1; // 6 Lock bit for PCLKCR3 Register
  1105. Uint16 PCLKCR4:1; // 7 Lock bit for PCLKCR4 Register
  1106. Uint16 PCLKCR5:1; // 8 Lock bit for PCLKCR5 Register
  1107. Uint16 PCLKCR6:1; // 9 Lock bit for PCLKCR6 Register
  1108. Uint16 PCLKCR7:1; // 10 Lock bit for PCLKCR7 Register
  1109. Uint16 PCLKCR8:1; // 11 Lock bit for PCLKCR8 Register
  1110. Uint16 PCLKCR9:1; // 12 Lock bit for PCLKCR9 Register
  1111. Uint16 PCLKCR10:1; // 13 Lock bit for PCLKCR10 Register
  1112. Uint16 PCLKCR11:1; // 14 Lock bit for PCLKCR11 Register
  1113. Uint16 PCLKCR12:1; // 15 Lock bit for PCLKCR12 Register
  1114. Uint16 PCLKCR13:1; // 16 Lock bit for PCLKCR13 Register
  1115. Uint16 PCLKCR14:1; // 17 Lock bit for PCLKCR14 Register
  1116. Uint16 PCLKCR15:1; // 18 Lock bit for PCLKCR15 Register
  1117. Uint16 PCLKCR16:1; // 19 Lock bit for PCLKCR16 Register
  1118. Uint16 SECMSEL:1; // 20 Lock bit for SECMSEL Register
  1119. Uint16 LPMCR:1; // 21 Lock bit for LPMCR Register
  1120. Uint16 GPIOLPMSEL0:1; // 22 Lock bit for GPIOLPMSEL0 Register
  1121. Uint16 GPIOLPMSEL1:1; // 23 Lock bit for GPIOLPMSEL1 Register
  1122. Uint16 rsvd1:8; // 31:24 Reserved
  1123. };
  1124. union CPUSYSLOCK1_REG {
  1125. Uint32 all;
  1126. struct CPUSYSLOCK1_BITS bit;
  1127. };
  1128. struct IORESTOREADDR_BITS { // bits description
  1129. Uint32 ADDR:22; // 21:0 restoreIO() routine address
  1130. Uint16 rsvd1:10; // 31:22 Reserved
  1131. };
  1132. union IORESTOREADDR_REG {
  1133. Uint32 all;
  1134. struct IORESTOREADDR_BITS bit;
  1135. };
  1136. struct PIEVERRADDR_BITS { // bits description
  1137. Uint32 ADDR:22; // 21:0 PIE Vector Fetch Error Handler Routine Address
  1138. Uint16 rsvd1:10; // 31:22 Reserved
  1139. };
  1140. union PIEVERRADDR_REG {
  1141. Uint32 all;
  1142. struct PIEVERRADDR_BITS bit;
  1143. };
  1144. struct PCLKCR0_BITS { // bits description
  1145. Uint16 CLA1:1; // 0 CLA1 Clock Enable Bit
  1146. Uint16 rsvd1:1; // 1 Reserved
  1147. Uint16 DMA:1; // 2 DMA Clock Enable bit
  1148. Uint16 CPUTIMER0:1; // 3 CPUTIMER0 Clock Enable bit
  1149. Uint16 CPUTIMER1:1; // 4 CPUTIMER1 Clock Enable bit
  1150. Uint16 CPUTIMER2:1; // 5 CPUTIMER2 Clock Enable bit
  1151. Uint16 rsvd2:10; // 15:6 Reserved
  1152. Uint16 HRPWM:1; // 16 HRPWM Clock Enable Bit
  1153. Uint16 rsvd3:1; // 17 Reserved
  1154. Uint16 TBCLKSYNC:1; // 18 EPWM Time Base Clock sync
  1155. Uint16 GTBCLKSYNC:1; // 19 EPWM Time Base Clock Global sync
  1156. Uint16 rsvd4:12; // 31:20 Reserved
  1157. };
  1158. union PCLKCR0_REG {
  1159. Uint32 all;
  1160. struct PCLKCR0_BITS bit;
  1161. };
  1162. struct PCLKCR1_BITS { // bits description
  1163. Uint16 EMIF1:1; // 0 EMIF1 Clock Enable bit
  1164. Uint16 EMIF2:1; // 1 EMIF2 Clock Enable bit
  1165. Uint16 rsvd1:14; // 15:2 Reserved
  1166. Uint16 rsvd2:16; // 31:16 Reserved
  1167. };
  1168. union PCLKCR1_REG {
  1169. Uint32 all;
  1170. struct PCLKCR1_BITS bit;
  1171. };
  1172. struct PCLKCR2_BITS { // bits description
  1173. Uint16 EPWM1:1; // 0 EPWM1 Clock Enable bit
  1174. Uint16 EPWM2:1; // 1 EPWM2 Clock Enable bit
  1175. Uint16 EPWM3:1; // 2 EPWM3 Clock Enable bit
  1176. Uint16 EPWM4:1; // 3 EPWM4 Clock Enable bit
  1177. Uint16 EPWM5:1; // 4 EPWM5 Clock Enable bit
  1178. Uint16 EPWM6:1; // 5 EPWM6 Clock Enable bit
  1179. Uint16 EPWM7:1; // 6 EPWM7 Clock Enable bit
  1180. Uint16 EPWM8:1; // 7 EPWM8 Clock Enable bit
  1181. Uint16 EPWM9:1; // 8 EPWM9 Clock Enable bit
  1182. Uint16 EPWM10:1; // 9 EPWM10 Clock Enable bit
  1183. Uint16 EPWM11:1; // 10 EPWM11 Clock Enable bit
  1184. Uint16 EPWM12:1; // 11 EPWM12 Clock Enable bit
  1185. Uint16 rsvd1:1; // 12 Reserved
  1186. Uint16 rsvd2:1; // 13 Reserved
  1187. Uint16 rsvd3:1; // 14 Reserved
  1188. Uint16 rsvd4:1; // 15 Reserved
  1189. Uint16 rsvd5:16; // 31:16 Reserved
  1190. };
  1191. union PCLKCR2_REG {
  1192. Uint32 all;
  1193. struct PCLKCR2_BITS bit;
  1194. };
  1195. struct PCLKCR3_BITS { // bits description
  1196. Uint16 ECAP1:1; // 0 ECAP1 Clock Enable bit
  1197. Uint16 ECAP2:1; // 1 ECAP2 Clock Enable bit
  1198. Uint16 ECAP3:1; // 2 ECAP3 Clock Enable bit
  1199. Uint16 ECAP4:1; // 3 ECAP4 Clock Enable bit
  1200. Uint16 ECAP5:1; // 4 ECAP5 Clock Enable bit
  1201. Uint16 ECAP6:1; // 5 ECAP6 Clock Enable bit
  1202. Uint16 rsvd1:1; // 6 Reserved
  1203. Uint16 rsvd2:1; // 7 Reserved
  1204. Uint16 rsvd3:8; // 15:8 Reserved
  1205. Uint16 rsvd4:16; // 31:16 Reserved
  1206. };
  1207. union PCLKCR3_REG {
  1208. Uint32 all;
  1209. struct PCLKCR3_BITS bit;
  1210. };
  1211. struct PCLKCR4_BITS { // bits description
  1212. Uint16 EQEP1:1; // 0 EQEP1 Clock Enable bit
  1213. Uint16 EQEP2:1; // 1 EQEP2 Clock Enable bit
  1214. Uint16 EQEP3:1; // 2 EQEP3 Clock Enable bit
  1215. Uint16 rsvd1:1; // 3 Reserved
  1216. Uint16 rsvd2:12; // 15:4 Reserved
  1217. Uint16 rsvd3:16; // 31:16 Reserved
  1218. };
  1219. union PCLKCR4_REG {
  1220. Uint32 all;
  1221. struct PCLKCR4_BITS bit;
  1222. };
  1223. struct PCLKCR6_BITS { // bits description
  1224. Uint16 SD1:1; // 0 SD1 Clock Enable bit
  1225. Uint16 SD2:1; // 1 SD2 Clock Enable bit
  1226. Uint16 rsvd1:1; // 2 Reserved
  1227. Uint16 rsvd2:1; // 3 Reserved
  1228. Uint16 rsvd3:1; // 4 Reserved
  1229. Uint16 rsvd4:1; // 5 Reserved
  1230. Uint16 rsvd5:1; // 6 Reserved
  1231. Uint16 rsvd6:1; // 7 Reserved
  1232. Uint16 rsvd7:8; // 15:8 Reserved
  1233. Uint16 rsvd8:16; // 31:16 Reserved
  1234. };
  1235. union PCLKCR6_REG {
  1236. Uint32 all;
  1237. struct PCLKCR6_BITS bit;
  1238. };
  1239. struct PCLKCR7_BITS { // bits description
  1240. Uint16 SCI_A:1; // 0 SCI_A Clock Enable bit
  1241. Uint16 SCI_B:1; // 1 SCI_B Clock Enable bit
  1242. Uint16 SCI_C:1; // 2 SCI_C Clock Enable bit
  1243. Uint16 SCI_D:1; // 3 SCI_D Clock Enable bit
  1244. Uint16 rsvd1:12; // 15:4 Reserved
  1245. Uint16 rsvd2:16; // 31:16 Reserved
  1246. };
  1247. union PCLKCR7_REG {
  1248. Uint32 all;
  1249. struct PCLKCR7_BITS bit;
  1250. };
  1251. struct PCLKCR8_BITS { // bits description
  1252. Uint16 SPI_A:1; // 0 SPI_A Clock Enable bit
  1253. Uint16 SPI_B:1; // 1 SPI_B Clock Enable bit
  1254. Uint16 SPI_C:1; // 2 SPI_C Clock Enable bit
  1255. Uint16 rsvd1:1; // 3 Reserved
  1256. Uint16 rsvd2:12; // 15:4 Reserved
  1257. Uint16 rsvd3:1; // 16 Reserved
  1258. Uint16 rsvd4:1; // 17 Reserved
  1259. Uint16 rsvd5:14; // 31:18 Reserved
  1260. };
  1261. union PCLKCR8_REG {
  1262. Uint32 all;
  1263. struct PCLKCR8_BITS bit;
  1264. };
  1265. struct PCLKCR9_BITS { // bits description
  1266. Uint16 I2C_A:1; // 0 I2C_A Clock Enable bit
  1267. Uint16 I2C_B:1; // 1 I2C_B Clock Enable bit
  1268. Uint16 rsvd1:14; // 15:2 Reserved
  1269. Uint16 rsvd2:1; // 16 Reserved
  1270. Uint16 rsvd3:1; // 17 Reserved
  1271. Uint16 rsvd4:14; // 31:18 Reserved
  1272. };
  1273. union PCLKCR9_REG {
  1274. Uint32 all;
  1275. struct PCLKCR9_BITS bit;
  1276. };
  1277. struct PCLKCR10_BITS { // bits description
  1278. Uint16 CAN_A:1; // 0 CAN_A Clock Enable bit
  1279. Uint16 CAN_B:1; // 1 CAN_B Clock Enable bit
  1280. Uint16 rsvd1:1; // 2 Reserved
  1281. Uint16 rsvd2:1; // 3 Reserved
  1282. Uint16 rsvd3:12; // 15:4 Reserved
  1283. Uint16 rsvd4:16; // 31:16 Reserved
  1284. };
  1285. union PCLKCR10_REG {
  1286. Uint32 all;
  1287. struct PCLKCR10_BITS bit;
  1288. };
  1289. struct PCLKCR11_BITS { // bits description
  1290. Uint16 McBSP_A:1; // 0 McBSP_A Clock Enable bit
  1291. Uint16 McBSP_B:1; // 1 McBSP_B Clock Enable bit
  1292. Uint16 rsvd1:14; // 15:2 Reserved
  1293. Uint16 USB_A:1; // 16 USB_A Clock Enable bit
  1294. Uint16 rsvd2:1; // 17 Reserved
  1295. Uint16 rsvd3:14; // 31:18 Reserved
  1296. };
  1297. union PCLKCR11_REG {
  1298. Uint32 all;
  1299. struct PCLKCR11_BITS bit;
  1300. };
  1301. struct PCLKCR12_BITS { // bits description
  1302. Uint16 uPP_A:1; // 0 uPP_A Clock Enable bit
  1303. Uint16 rsvd1:1; // 1 Reserved
  1304. Uint16 rsvd2:14; // 15:2 Reserved
  1305. Uint16 rsvd3:16; // 31:16 Reserved
  1306. };
  1307. union PCLKCR12_REG {
  1308. Uint32 all;
  1309. struct PCLKCR12_BITS bit;
  1310. };
  1311. struct PCLKCR13_BITS { // bits description
  1312. Uint16 ADC_A:1; // 0 ADC_A Clock Enable bit
  1313. Uint16 ADC_B:1; // 1 ADC_B Clock Enable bit
  1314. Uint16 ADC_C:1; // 2 ADC_C Clock Enable bit
  1315. Uint16 ADC_D:1; // 3 ADC_D Clock Enable bit
  1316. Uint16 rsvd1:12; // 15:4 Reserved
  1317. Uint16 rsvd2:16; // 31:16 Reserved
  1318. };
  1319. union PCLKCR13_REG {
  1320. Uint32 all;
  1321. struct PCLKCR13_BITS bit;
  1322. };
  1323. struct PCLKCR14_BITS { // bits description
  1324. Uint16 CMPSS1:1; // 0 CMPSS1 Clock Enable bit
  1325. Uint16 CMPSS2:1; // 1 CMPSS2 Clock Enable bit
  1326. Uint16 CMPSS3:1; // 2 CMPSS3 Clock Enable bit
  1327. Uint16 CMPSS4:1; // 3 CMPSS4 Clock Enable bit
  1328. Uint16 CMPSS5:1; // 4 CMPSS5 Clock Enable bit
  1329. Uint16 CMPSS6:1; // 5 CMPSS6 Clock Enable bit
  1330. Uint16 CMPSS7:1; // 6 CMPSS7 Clock Enable bit
  1331. Uint16 CMPSS8:1; // 7 CMPSS8 Clock Enable bit
  1332. Uint16 rsvd1:8; // 15:8 Reserved
  1333. Uint16 rsvd2:16; // 31:16 Reserved
  1334. };
  1335. union PCLKCR14_REG {
  1336. Uint32 all;
  1337. struct PCLKCR14_BITS bit;
  1338. };
  1339. struct PCLKCR16_BITS { // bits description
  1340. Uint16 rsvd1:1; // 0 Reserved
  1341. Uint16 rsvd2:1; // 1 Reserved
  1342. Uint16 rsvd3:1; // 2 Reserved
  1343. Uint16 rsvd4:1; // 3 Reserved
  1344. Uint16 rsvd5:12; // 15:4 Reserved
  1345. Uint16 DAC_A:1; // 16 Buffered_DAC_A Clock Enable Bit
  1346. Uint16 DAC_B:1; // 17 Buffered_DAC_B Clock Enable Bit
  1347. Uint16 DAC_C:1; // 18 Buffered_DAC_C Clock Enable Bit
  1348. Uint16 rsvd6:1; // 19 Reserved
  1349. Uint16 rsvd7:12; // 31:20 Reserved
  1350. };
  1351. union PCLKCR16_REG {
  1352. Uint32 all;
  1353. struct PCLKCR16_BITS bit;
  1354. };
  1355. struct SECMSEL_BITS { // bits description
  1356. Uint16 PF1SEL:2; // 1:0 Secondary Master Select for VBUS32_1 Bridge
  1357. Uint16 PF2SEL:2; // 3:2 Secondary Master Select for VBUS32_2 Bridge
  1358. Uint16 rsvd1:2; // 5:4 Reserved
  1359. Uint16 rsvd2:2; // 7:6 Reserved
  1360. Uint16 rsvd3:2; // 9:8 Reserved
  1361. Uint16 rsvd4:2; // 11:10 Reserved
  1362. Uint16 rsvd5:2; // 13:12 Reserved
  1363. Uint16 rsvd6:2; // 15:14 Reserved
  1364. Uint16 rsvd7:16; // 31:16 Reserved
  1365. };
  1366. union SECMSEL_REG {
  1367. Uint32 all;
  1368. struct SECMSEL_BITS bit;
  1369. };
  1370. struct LPMCR_BITS { // bits description
  1371. Uint16 LPM:2; // 1:0 Low Power Mode setting
  1372. Uint16 QUALSTDBY:6; // 7:2 STANDBY Wakeup Pin Qualification Setting
  1373. Uint16 rsvd1:7; // 14:8 Reserved
  1374. Uint16 WDINTE:1; // 15 Enable for WDINT wakeup from STANDBY
  1375. Uint16 M0M1MODE:2; // 17:16 Configuration for M0 and M1 mode during HIB
  1376. Uint16 rsvd2:13; // 30:18 Reserved
  1377. Uint16 IOISODIS:1; // 31 IO Isolation Disable
  1378. };
  1379. union LPMCR_REG {
  1380. Uint32 all;
  1381. struct LPMCR_BITS bit;
  1382. };
  1383. struct GPIOLPMSEL0_BITS { // bits description
  1384. Uint16 GPIO0:1; // 0 GPIO0 Enable for LPM Wakeup
  1385. Uint16 GPIO1:1; // 1 GPIO1 Enable for LPM Wakeup
  1386. Uint16 GPIO2:1; // 2 GPIO2 Enable for LPM Wakeup
  1387. Uint16 GPIO3:1; // 3 GPIO3 Enable for LPM Wakeup
  1388. Uint16 GPIO4:1; // 4 GPIO4 Enable for LPM Wakeup
  1389. Uint16 GPIO5:1; // 5 GPIO5 Enable for LPM Wakeup
  1390. Uint16 GPIO6:1; // 6 GPIO6 Enable for LPM Wakeup
  1391. Uint16 GPIO7:1; // 7 GPIO7 Enable for LPM Wakeup
  1392. Uint16 GPIO8:1; // 8 GPIO8 Enable for LPM Wakeup
  1393. Uint16 GPIO9:1; // 9 GPIO9 Enable for LPM Wakeup
  1394. Uint16 GPIO10:1; // 10 GPIO10 Enable for LPM Wakeup
  1395. Uint16 GPIO11:1; // 11 GPIO11 Enable for LPM Wakeup
  1396. Uint16 GPIO12:1; // 12 GPIO12 Enable for LPM Wakeup
  1397. Uint16 GPIO13:1; // 13 GPIO13 Enable for LPM Wakeup
  1398. Uint16 GPIO14:1; // 14 GPIO14 Enable for LPM Wakeup
  1399. Uint16 GPIO15:1; // 15 GPIO15 Enable for LPM Wakeup
  1400. Uint16 GPIO16:1; // 16 GPIO16 Enable for LPM Wakeup
  1401. Uint16 GPIO17:1; // 17 GPIO17 Enable for LPM Wakeup
  1402. Uint16 GPIO18:1; // 18 GPIO18 Enable for LPM Wakeup
  1403. Uint16 GPIO19:1; // 19 GPIO19 Enable for LPM Wakeup
  1404. Uint16 GPIO20:1; // 20 GPIO20 Enable for LPM Wakeup
  1405. Uint16 GPIO21:1; // 21 GPIO21 Enable for LPM Wakeup
  1406. Uint16 GPIO22:1; // 22 GPIO22 Enable for LPM Wakeup
  1407. Uint16 GPIO23:1; // 23 GPIO23 Enable for LPM Wakeup
  1408. Uint16 GPIO24:1; // 24 GPIO24 Enable for LPM Wakeup
  1409. Uint16 GPIO25:1; // 25 GPIO25 Enable for LPM Wakeup
  1410. Uint16 GPIO26:1; // 26 GPIO26 Enable for LPM Wakeup
  1411. Uint16 GPIO27:1; // 27 GPIO27 Enable for LPM Wakeup
  1412. Uint16 GPIO28:1; // 28 GPIO28 Enable for LPM Wakeup
  1413. Uint16 GPIO29:1; // 29 GPIO29 Enable for LPM Wakeup
  1414. Uint16 GPIO30:1; // 30 GPIO30 Enable for LPM Wakeup
  1415. Uint16 GPIO31:1; // 31 GPIO31 Enable for LPM Wakeup
  1416. };
  1417. union GPIOLPMSEL0_REG {
  1418. Uint32 all;
  1419. struct GPIOLPMSEL0_BITS bit;
  1420. };
  1421. struct GPIOLPMSEL1_BITS { // bits description
  1422. Uint16 GPIO32:1; // 0 GPIO32 Enable for LPM Wakeup
  1423. Uint16 GPIO33:1; // 1 GPIO33 Enable for LPM Wakeup
  1424. Uint16 GPIO34:1; // 2 GPIO34 Enable for LPM Wakeup
  1425. Uint16 GPIO35:1; // 3 GPIO35 Enable for LPM Wakeup
  1426. Uint16 GPIO36:1; // 4 GPIO36 Enable for LPM Wakeup
  1427. Uint16 GPIO37:1; // 5 GPIO37 Enable for LPM Wakeup
  1428. Uint16 GPIO38:1; // 6 GPIO38 Enable for LPM Wakeup
  1429. Uint16 GPIO39:1; // 7 GPIO39 Enable for LPM Wakeup
  1430. Uint16 GPIO40:1; // 8 GPIO40 Enable for LPM Wakeup
  1431. Uint16 GPIO41:1; // 9 GPIO41 Enable for LPM Wakeup
  1432. Uint16 GPIO42:1; // 10 GPIO42 Enable for LPM Wakeup
  1433. Uint16 GPIO43:1; // 11 GPIO43 Enable for LPM Wakeup
  1434. Uint16 GPIO44:1; // 12 GPIO44 Enable for LPM Wakeup
  1435. Uint16 GPIO45:1; // 13 GPIO45 Enable for LPM Wakeup
  1436. Uint16 GPIO46:1; // 14 GPIO46 Enable for LPM Wakeup
  1437. Uint16 GPIO47:1; // 15 GPIO47 Enable for LPM Wakeup
  1438. Uint16 GPIO48:1; // 16 GPIO48 Enable for LPM Wakeup
  1439. Uint16 GPIO49:1; // 17 GPIO49 Enable for LPM Wakeup
  1440. Uint16 GPIO50:1; // 18 GPIO50 Enable for LPM Wakeup
  1441. Uint16 GPIO51:1; // 19 GPIO51 Enable for LPM Wakeup
  1442. Uint16 GPIO52:1; // 20 GPIO52 Enable for LPM Wakeup
  1443. Uint16 GPIO53:1; // 21 GPIO53 Enable for LPM Wakeup
  1444. Uint16 GPIO54:1; // 22 GPIO54 Enable for LPM Wakeup
  1445. Uint16 GPIO55:1; // 23 GPIO55 Enable for LPM Wakeup
  1446. Uint16 GPIO56:1; // 24 GPIO56 Enable for LPM Wakeup
  1447. Uint16 GPIO57:1; // 25 GPIO57 Enable for LPM Wakeup
  1448. Uint16 GPIO58:1; // 26 GPIO58 Enable for LPM Wakeup
  1449. Uint16 GPIO59:1; // 27 GPIO59 Enable for LPM Wakeup
  1450. Uint16 GPIO60:1; // 28 GPIO60 Enable for LPM Wakeup
  1451. Uint16 GPIO61:1; // 29 GPIO61 Enable for LPM Wakeup
  1452. Uint16 GPIO62:1; // 30 GPIO62 Enable for LPM Wakeup
  1453. Uint16 GPIO63:1; // 31 GPIO63 Enable for LPM Wakeup
  1454. };
  1455. union GPIOLPMSEL1_REG {
  1456. Uint32 all;
  1457. struct GPIOLPMSEL1_BITS bit;
  1458. };
  1459. struct TMR2CLKCTL_BITS { // bits description
  1460. Uint16 TMR2CLKSRCSEL:3; // 2:0 CPU Timer 2 Clock Source Select Bit
  1461. Uint16 TMR2CLKPRESCALE:3; // 5:3 CPU Timer 2 Clock Pre-Scale Value
  1462. Uint16 rsvd1:10; // 15:6 Reserved
  1463. Uint16 rsvd2:16; // 31:16 Reserved
  1464. };
  1465. union TMR2CLKCTL_REG {
  1466. Uint32 all;
  1467. struct TMR2CLKCTL_BITS bit;
  1468. };
  1469. struct RESC_BITS { // bits description
  1470. Uint16 POR:1; // 0 POR Reset Cause Indication Bit
  1471. Uint16 XRSn:1; // 1 XRSn Reset Cause Indication Bit
  1472. Uint16 WDRSn:1; // 2 WDRSn Reset Cause Indication Bit
  1473. Uint16 NMIWDRSn:1; // 3 NMIWDRSn Reset Cause Indication Bit
  1474. Uint16 rsvd1:1; // 4 Reserved
  1475. Uint16 HWBISTn:1; // 5 HWBISTn Reset Cause Indication Bit
  1476. Uint16 HIBRESETn:1; // 6 HIBRESETn Reset Cause Indication Bit
  1477. Uint16 rsvd2:1; // 7 Reserved
  1478. Uint16 SCCRESETn:1; // 8 SCCRESETn Reset Cause Indication Bit
  1479. Uint16 rsvd3:7; // 15:9 Reserved
  1480. Uint16 rsvd4:14; // 29:16 Reserved
  1481. Uint16 XRSn_pin_status:1; // 30 XRSN Pin Status
  1482. Uint16 TRSTn_pin_status:1; // 31 TRSTn Status
  1483. };
  1484. union RESC_REG {
  1485. Uint32 all;
  1486. struct RESC_BITS bit;
  1487. };
  1488. struct CPU_SYS_REGS {
  1489. union CPUSYSLOCK1_REG CPUSYSLOCK1; // Lock bit for CPUSYS registers
  1490. Uint16 rsvd1[4]; // Reserved
  1491. Uint32 HIBBOOTMODE; // HIB Boot Mode Register
  1492. union IORESTOREADDR_REG IORESTOREADDR; // IORestore() routine Address Register
  1493. union PIEVERRADDR_REG PIEVERRADDR; // PIE Vector Fetch Error Address register
  1494. Uint16 rsvd2[22]; // Reserved
  1495. union PCLKCR0_REG PCLKCR0; // Peripheral Clock Gating Registers
  1496. union PCLKCR1_REG PCLKCR1; // Peripheral Clock Gating Registers
  1497. union PCLKCR2_REG PCLKCR2; // Peripheral Clock Gating Registers
  1498. union PCLKCR3_REG PCLKCR3; // Peripheral Clock Gating Registers
  1499. union PCLKCR4_REG PCLKCR4; // Peripheral Clock Gating Registers
  1500. Uint16 rsvd3[2]; // Reserved
  1501. union PCLKCR6_REG PCLKCR6; // Peripheral Clock Gating Registers
  1502. union PCLKCR7_REG PCLKCR7; // Peripheral Clock Gating Registers
  1503. union PCLKCR8_REG PCLKCR8; // Peripheral Clock Gating Registers
  1504. union PCLKCR9_REG PCLKCR9; // Peripheral Clock Gating Registers
  1505. union PCLKCR10_REG PCLKCR10; // Peripheral Clock Gating Registers
  1506. union PCLKCR11_REG PCLKCR11; // Peripheral Clock Gating Registers
  1507. union PCLKCR12_REG PCLKCR12; // Peripheral Clock Gating Registers
  1508. union PCLKCR13_REG PCLKCR13; // Peripheral Clock Gating Registers
  1509. union PCLKCR14_REG PCLKCR14; // Peripheral Clock Gating Registers
  1510. Uint16 rsvd4[2]; // Reserved
  1511. union PCLKCR16_REG PCLKCR16; // Peripheral Clock Gating Registers
  1512. Uint16 rsvd5[48]; // Reserved
  1513. union SECMSEL_REG SECMSEL; // Secondary Master Select register for common peripherals: Selects between CLA & DMA
  1514. union LPMCR_REG LPMCR; // LPM Control Register
  1515. union GPIOLPMSEL0_REG GPIOLPMSEL0; // GPIO LPM Wakeup select registers
  1516. union GPIOLPMSEL1_REG GPIOLPMSEL1; // GPIO LPM Wakeup select registers
  1517. union TMR2CLKCTL_REG TMR2CLKCTL; // Timer2 Clock Measurement functionality control register
  1518. Uint16 rsvd6[2]; // Reserved
  1519. union RESC_REG RESC; // Reset Cause register
  1520. };
  1521. struct SCSR_BITS { // bits description
  1522. Uint16 WDOVERRIDE:1; // 0 WD Override for WDDIS bit
  1523. Uint16 WDENINT:1; // 1 WD Interrupt Enable
  1524. Uint16 WDINTS:1; // 2 WD Interrupt Status
  1525. Uint16 rsvd1:13; // 15:3 Reserved
  1526. };
  1527. union SCSR_REG {
  1528. Uint16 all;
  1529. struct SCSR_BITS bit;
  1530. };
  1531. struct WDCNTR_BITS { // bits description
  1532. Uint16 WDCNTR:8; // 7:0 WD Counter
  1533. Uint16 rsvd1:8; // 15:8 Reserved
  1534. };
  1535. union WDCNTR_REG {
  1536. Uint16 all;
  1537. struct WDCNTR_BITS bit;
  1538. };
  1539. struct WDKEY_BITS { // bits description
  1540. Uint16 WDKEY:8; // 7:0 WD KEY
  1541. Uint16 rsvd1:8; // 15:8 Reserved
  1542. };
  1543. union WDKEY_REG {
  1544. Uint16 all;
  1545. struct WDKEY_BITS bit;
  1546. };
  1547. struct WDCR_BITS { // bits description
  1548. Uint16 WDPS:3; // 2:0 WD Clock Prescalar
  1549. Uint16 WDCHK:3; // 5:3 WD Check Bits
  1550. Uint16 WDDIS:1; // 6 WD Disable
  1551. Uint16 rsvd1:1; // 7 Reserved
  1552. Uint16 rsvd2:8; // 15:8 Reserved
  1553. };
  1554. union WDCR_REG {
  1555. Uint16 all;
  1556. struct WDCR_BITS bit;
  1557. };
  1558. struct WDWCR_BITS { // bits description
  1559. Uint16 MIN:8; // 7:0 WD Min Threshold setting for Windowed Watchdog functionality
  1560. Uint16 FIRSTKEY:1; // 8 First Key Detect Flag
  1561. Uint16 rsvd1:7; // 15:9 Reserved
  1562. };
  1563. union WDWCR_REG {
  1564. Uint16 all;
  1565. struct WDWCR_BITS bit;
  1566. };
  1567. struct WD_REGS {
  1568. Uint16 rsvd1[34]; // Reserved
  1569. union SCSR_REG SCSR; // System Control & Status Register
  1570. union WDCNTR_REG WDCNTR; // Watchdog Counter Register
  1571. Uint16 rsvd2; // Reserved
  1572. union WDKEY_REG WDKEY; // Watchdog Reset Key Register
  1573. Uint16 rsvd3[3]; // Reserved
  1574. union WDCR_REG WDCR; // Watchdog Control Register
  1575. union WDWCR_REG WDWCR; // Watchdog Windowed Control Register
  1576. };
  1577. struct CLA1TASKSRCSELLOCK_BITS { // bits description
  1578. Uint16 CLA1TASKSRCSEL1:1; // 0 CLA1TASKSRCSEL1 Register Lock bit
  1579. Uint16 CLA1TASKSRCSEL2:1; // 1 CLA1TASKSRCSEL2 Register Lock bit
  1580. Uint16 rsvd1:14; // 15:2 Reserved
  1581. Uint16 rsvd2:16; // 31:16 Reserved
  1582. };
  1583. union CLA1TASKSRCSELLOCK_REG {
  1584. Uint32 all;
  1585. struct CLA1TASKSRCSELLOCK_BITS bit;
  1586. };
  1587. struct DMACHSRCSELLOCK_BITS { // bits description
  1588. Uint16 DMACHSRCSEL1:1; // 0 DMACHSRCSEL1 Register Lock bit
  1589. Uint16 DMACHSRCSEL2:1; // 1 DMACHSRCSEL2 Register Lock bit
  1590. Uint16 rsvd1:14; // 15:2 Reserved
  1591. Uint16 rsvd2:16; // 31:16 Reserved
  1592. };
  1593. union DMACHSRCSELLOCK_REG {
  1594. Uint32 all;
  1595. struct DMACHSRCSELLOCK_BITS bit;
  1596. };
  1597. struct CLA1TASKSRCSEL1_BITS { // bits description
  1598. Uint16 TASK1:8; // 7:0 Selects the Trigger Source for TASK1 of CLA1
  1599. Uint16 TASK2:8; // 15:8 Selects the Trigger Source for TASK2 of CLA1
  1600. Uint16 TASK3:8; // 23:16 Selects the Trigger Source for TASK3 of CLA1
  1601. Uint16 TASK4:8; // 31:24 Selects the Trigger Source for TASK4 of CLA1
  1602. };
  1603. union CLA1TASKSRCSEL1_REG {
  1604. Uint32 all;
  1605. struct CLA1TASKSRCSEL1_BITS bit;
  1606. };
  1607. struct CLA1TASKSRCSEL2_BITS { // bits description
  1608. Uint16 TASK5:8; // 7:0 Selects the Trigger Source for TASK5 of CLA1
  1609. Uint16 TASK6:8; // 15:8 Selects the Trigger Source for TASK6 of CLA1
  1610. Uint16 TASK7:8; // 23:16 Selects the Trigger Source for TASK7 of CLA1
  1611. Uint16 TASK8:8; // 31:24 Selects the Trigger Source for TASK8 of CLA1
  1612. };
  1613. union CLA1TASKSRCSEL2_REG {
  1614. Uint32 all;
  1615. struct CLA1TASKSRCSEL2_BITS bit;
  1616. };
  1617. struct DMACHSRCSEL1_BITS { // bits description
  1618. Uint16 CH1:8; // 7:0 Selects the Trigger and Sync Source CH1 of DMA
  1619. Uint16 CH2:8; // 15:8 Selects the Trigger and Sync Source CH2 of DMA
  1620. Uint16 CH3:8; // 23:16 Selects the Trigger and Sync Source CH3 of DMA
  1621. Uint16 CH4:8; // 31:24 Selects the Trigger and Sync Source CH4 of DMA
  1622. };
  1623. union DMACHSRCSEL1_REG {
  1624. Uint32 all;
  1625. struct DMACHSRCSEL1_BITS bit;
  1626. };
  1627. struct DMACHSRCSEL2_BITS { // bits description
  1628. Uint16 CH5:8; // 7:0 Selects the Trigger and Sync Source CH5 of DMA
  1629. Uint16 CH6:8; // 15:8 Selects the Trigger and Sync Source CH6 of DMA
  1630. Uint16 rsvd1:16; // 31:16 Reserved
  1631. };
  1632. union DMACHSRCSEL2_REG {
  1633. Uint32 all;
  1634. struct DMACHSRCSEL2_BITS bit;
  1635. };
  1636. struct DMA_CLA_SRC_SEL_REGS {
  1637. union CLA1TASKSRCSELLOCK_REG CLA1TASKSRCSELLOCK; // CLA1 Task Trigger Source Select Lock Register
  1638. Uint16 rsvd1[2]; // Reserved
  1639. union DMACHSRCSELLOCK_REG DMACHSRCSELLOCK; // DMA Channel Triger Source Select Lock Register
  1640. union CLA1TASKSRCSEL1_REG CLA1TASKSRCSEL1; // CLA1 Task Trigger Source Select Register-1
  1641. union CLA1TASKSRCSEL2_REG CLA1TASKSRCSEL2; // CLA1 Task Trigger Source Select Register-2
  1642. Uint16 rsvd2[12]; // Reserved
  1643. union DMACHSRCSEL1_REG DMACHSRCSEL1; // DMA Channel Trigger Source Select Register-1
  1644. union DMACHSRCSEL2_REG DMACHSRCSEL2; // DMA Channel Trigger Source Select Register-2
  1645. };
  1646. struct SYNCSELECT_BITS { // bits description
  1647. Uint16 EPWM4SYNCIN:3; // 2:0 Selects Sync Input Source for EPWM4
  1648. Uint16 EPWM7SYNCIN:3; // 5:3 Selects Sync Input Source for EPWM7
  1649. Uint16 EPWM10SYNCIN:3; // 8:6 Selects Sync Input Source for EPWM10
  1650. Uint16 ECAP1SYNCIN:3; // 11:9 Selects Sync Input Source for ECAP1
  1651. Uint16 ECAP4SYNCIN:3; // 14:12 Selects Sync Input Source for ECAP4
  1652. Uint16 rsvd1:1; // 15 Reserved
  1653. Uint16 rsvd2:11; // 26:16 Reserved
  1654. Uint16 SYNCOUT:2; // 28:27 Select Syncout Source
  1655. Uint16 rsvd3:3; // 31:29 Reserved
  1656. };
  1657. union SYNCSELECT_REG {
  1658. Uint32 all;
  1659. struct SYNCSELECT_BITS bit;
  1660. };
  1661. struct ADCSOCOUTSELECT_BITS { // bits description
  1662. Uint16 PWM1SOCAEN:1; // 0 PWM1SOCAEN Enable for ADCSOCAO
  1663. Uint16 PWM2SOCAEN:1; // 1 PWM2SOCAEN Enable for ADCSOCAO
  1664. Uint16 PWM3SOCAEN:1; // 2 PWM3SOCAEN Enable for ADCSOCAO
  1665. Uint16 PWM4SOCAEN:1; // 3 PWM4SOCAEN Enable for ADCSOCAO
  1666. Uint16 PWM5SOCAEN:1; // 4 PWM5SOCAEN Enable for ADCSOCAO
  1667. Uint16 PWM6SOCAEN:1; // 5 PWM6SOCAEN Enable for ADCSOCAO
  1668. Uint16 PWM7SOCAEN:1; // 6 PWM7SOCAEN Enable for ADCSOCAO
  1669. Uint16 PWM8SOCAEN:1; // 7 PWM8SOCAEN Enable for ADCSOCAO
  1670. Uint16 PWM9SOCAEN:1; // 8 PWM9SOCAEN Enable for ADCSOCAO
  1671. Uint16 PWM10SOCAEN:1; // 9 PWM10SOCAEN Enable for ADCSOCAO
  1672. Uint16 PWM11SOCAEN:1; // 10 PWM11SOCAEN Enable for ADCSOCAO
  1673. Uint16 PWM12SOCAEN:1; // 11 PWM12SOCAEN Enable for ADCSOCAO
  1674. Uint16 rsvd1:4; // 15:12 Reserved
  1675. Uint16 PWM1SOCBEN:1; // 16 PWM1SOCBEN Enable for ADCSOCBO
  1676. Uint16 PWM2SOCBEN:1; // 17 PWM2SOCBEN Enable for ADCSOCBO
  1677. Uint16 PWM3SOCBEN:1; // 18 PWM3SOCBEN Enable for ADCSOCBO
  1678. Uint16 PWM4SOCBEN:1; // 19 PWM4SOCBEN Enable for ADCSOCBO
  1679. Uint16 PWM5SOCBEN:1; // 20 PWM5SOCBEN Enable for ADCSOCBO
  1680. Uint16 PWM6SOCBEN:1; // 21 PWM6SOCBEN Enable for ADCSOCBO
  1681. Uint16 PWM7SOCBEN:1; // 22 PWM7SOCBEN Enable for ADCSOCBO
  1682. Uint16 PWM8SOCBEN:1; // 23 PWM8SOCBEN Enable for ADCSOCBO
  1683. Uint16 PWM9SOCBEN:1; // 24 PWM9SOCBEN Enable for ADCSOCBO
  1684. Uint16 PWM10SOCBEN:1; // 25 PWM10SOCBEN Enable for ADCSOCBO
  1685. Uint16 PWM11SOCBEN:1; // 26 PWM11SOCBEN Enable for ADCSOCBO
  1686. Uint16 PWM12SOCBEN:1; // 27 PWM12SOCBEN Enable for ADCSOCBO
  1687. Uint16 rsvd2:4; // 31:28 Reserved
  1688. };
  1689. union ADCSOCOUTSELECT_REG {
  1690. Uint32 all;
  1691. struct ADCSOCOUTSELECT_BITS bit;
  1692. };
  1693. struct SYNCSOCLOCK_BITS { // bits description
  1694. Uint16 SYNCSELECT:1; // 0 SYNCSEL Register Lock bit
  1695. Uint16 ADCSOCOUTSELECT:1; // 1 ADCSOCOUTSELECT Register Lock bit
  1696. Uint16 rsvd1:14; // 15:2 Reserved
  1697. Uint16 rsvd2:16; // 31:16 Reserved
  1698. };
  1699. union SYNCSOCLOCK_REG {
  1700. Uint32 all;
  1701. struct SYNCSOCLOCK_BITS bit;
  1702. };
  1703. struct SYNC_SOC_REGS {
  1704. union SYNCSELECT_REG SYNCSELECT; // Sync Input and Output Select Register
  1705. union ADCSOCOUTSELECT_REG ADCSOCOUTSELECT; // External ADC (Off Chip) SOC Select Register
  1706. union SYNCSOCLOCK_REG SYNCSOCLOCK; // SYNCSEL and EXTADCSOC Select Lock register
  1707. };
  1708. //---------------------------------------------------------------------------
  1709. // SYSCTRL External References & Function Declarations:
  1710. //
  1711. #ifdef CPU1
  1712. extern volatile struct WD_REGS WdRegs;
  1713. extern volatile struct SYNC_SOC_REGS SyncSocRegs;
  1714. extern volatile struct DMA_CLA_SRC_SEL_REGS DmaClaSrcSelRegs;
  1715. extern volatile struct DEV_CFG_REGS DevCfgRegs;
  1716. extern volatile struct CLK_CFG_REGS ClkCfgRegs;
  1717. extern volatile struct CPU_SYS_REGS CpuSysRegs;
  1718. #endif
  1719. #ifdef CPU2
  1720. extern volatile struct WD_REGS WdRegs;
  1721. extern volatile struct DMA_CLA_SRC_SEL_REGS DmaClaSrcSelRegs;
  1722. extern volatile struct CLK_CFG_REGS ClkCfgRegs;
  1723. extern volatile struct CPU_SYS_REGS CpuSysRegs;
  1724. #endif
  1725. #ifdef __cplusplus
  1726. }
  1727. #endif /* extern "C" */
  1728. #endif
  1729. //===========================================================================
  1730. // End of file.
  1731. //===========================================================================