34#ifndef MSP432E4_SYSTEMCONTROL_H
35#define MSP432E4_SYSTEMCONTROL_H
47#define SYSCTL_DID0 MMIO32(SYSCTL_BASE + 0x000)
49#define SYSCTL_DID1 MMIO32(SYSCTL_BASE + 0x004)
51#define SYSCTL_PTBOCTL MMIO32(SYSCTL_BASE + 0x038)
53#define SYSCTL_RIS MMIO32(SYSCTL_BASE + 0x050)
55#define SYSCTL_IMC MMIO32(SYSCTL_BASE + 0x054)
57#define SYSCTL_MISC MMIO32(SYSCTL_BASE + 0x058)
59#define SYSCTL_RESC MMIO32(SYSCTL_BASE + 0x05C)
61#define SYSCTL_PWRTC MMIO32(SYSCTL_BASE + 0x060)
63#define SYSCTL_NMIC MMIO32(SYSCTL_BASE + 0x064)
65#define SYSCTL_MOSCCTL MMIO32(SYSCTL_BASE + 0x07C)
67#define SYSCTL_RSCLKCFG MMIO32(SYSCTL_BASE + 0x0B0)
69#define SYSCTL_MEMTIM0 MMIO32(SYSCTL_BASE + 0x0C0)
71#define SYSCTL_ALTCLKCFG MMIO32(SYSCTL_BASE + 0x138)
73#define SYSCTL_DSCLKCFG MMIO32(SYSCTL_BASE + 0x144)
75#define SYSCTL_DIVSCLK MMIO32(SYSCTL_BASE + 0x148)
77#define SYSCTL_SYSPROP MMIO32(SYSCTL_BASE + 0x14C)
79#define SYSCTL_PIOSCCAL MMIO32(SYSCTL_BASE + 0x150)
81#define SYSCTL_PIOSCSTAT MMIO32(SYSCTL_BASE + 0x154)
83#define SYSCTL_PLLFREQ0 MMIO32(SYSCTL_BASE + 0x160)
85#define SYSCTL_PLLFREQ1 MMIO32(SYSCTL_BASE + 0x164)
87#define SYSCTL_PLLSTAT MMIO32(SYSCTL_BASE + 0x168)
89#define SYSCTL_SLPPWRCFG MMIO32(SYSCTL_BASE + 0x188)
91#define SYSCTL_DSLPPWRCFG MMIO32(SYSCTL_BASE + 0x18C)
93#define SYSCTL_NVMSTAT MMIO32(SYSCTL_BASE + 0x1A0)
95#define SYSCTL_LDOSPCTL MMIO32(SYSCTL_BASE + 0x1B4)
97#define SYSCTL_LDOSPCAL MMIO32(SYSCTL_BASE + 0x1B8)
99#define SYSCTL_LDODPCTL MMIO32(SYSCTL_BASE + 0x1BC)
101#define SYSCTL_LDODPCAL MMIO32(SYSCTL_BASE + 0x1C0)
103#define SYSCTL_SDPMST MMIO32(SYSCTL_BASE + 0x1CC)
105#define SYSCTL_RESBEHAVCTL MMIO32(SYSCTL_BASE + 0x1D8)
107#define SYSCTL_HSSR MMIO32(SYSCTL_BASE + 0x1F4)
109#define SYSCTL_USBPDS MMIO32(SYSCTL_BASE + 0x280)
111#define SYSCTL_USBMPC MMIO32(SYSCTL_BASE + 0x284)
113#define SYSCTL_EMACPDS MMIO32(SYSCTL_BASE + 0x288)
115#define SYSCTL_EMACMPC MMIO32(SYSCTL_BASE + 0x28C)
117#define SYSCTL_LCDPDS MMIO32(SYSCTL_BASE + 0x290)
119#define SYSCTL_LCDMPC MMIO32(SYSCTL_BASE + 0x294)
121#define SYSCTL_CAN0PDS MMIO32(SYSCTL_BASE + 0x298)
123#define SYSCTL_CAN0MPC MMIO32(SYSCTL_BASE + 0x29C)
125#define SYSCTL_CAN1PDS MMIO32(SYSCTL_BASE + 0x2A0)
127#define SYSCTL_CAN1MPC MMIO32(SYSCTL_BASE + 0x2A4)
130#define SYSCTL_PPWD MMIO32(SYSCTL_BASE + 0x300)
132#define SYSCTL_PPTIMER MMIO32(SYSCTL_BASE + 0x304)
134#define SYSCTL_PPGPIO MMIO32(SYSCTL_BASE + 0x308)
136#define SYSCTL_PPDMA MMIO32(SYSCTL_BASE + 0x30C)
138#define SYSCTL_PPEPI MMIO32(SYSCTL_BASE + 0x310)
140#define SYSCTL_PPHIB MMIO32(SYSCTL_BASE + 0x314)
142#define SYSCTL_PPUART MMIO32(SYSCTL_BASE + 0x318)
144#define SYSCTL_PPSSI MMIO32(SYSCTL_BASE + 0x31C)
146#define SYSCTL_PPI2C MMIO32(SYSCTL_BASE + 0x320)
148#define SYSCTL_PPUSB MMIO32(SYSCTL_BASE + 0x328)
150#define SYSCTL_PPEPHY MMIO32(SYSCTL_BASE + 0x330)
152#define SYSCTL_PPCAN MMIO32(SYSCTL_BASE + 0x334)
154#define SYSCTL_PPADC MMIO32(SYSCTL_BASE + 0x338)
156#define SYSCTL_PPACMP MMIO32(SYSCTL_BASE + 0x33C)
158#define SYSCTL_PPPWM MMIO32(SYSCTL_BASE + 0x340)
160#define SYSCTL_PPQEI MMIO32(SYSCTL_BASE + 0x344)
162#define SYSCTL_PPEEPROM MMIO32(SYSCTL_BASE + 0x358)
164#define SYSCTL_PPCCM MMIO32(SYSCTL_BASE + 0x374)
166#define SYSCTL_PPLCD MMIO32(SYSCTL_BASE + 0x390)
168#define SYSCTL_PPOWIRE MMIO32(SYSCTL_BASE + 0x398)
170#define SYSCTL_PPEMAC MMIO32(SYSCTL_BASE + 0x39C)
172#define SYSCTL_PPPRB MMIO32(SYSCTL_BASE + 0x3A0)
175#define SYSCTL_SRWD MMIO32(SYSCTL_BASE + 0x500)
177#define SYSCTL_SRTIMER MMIO32(SYSCTL_BASE + 0x504)
179#define SYSCTL_SRGPIO MMIO32(SYSCTL_BASE + 0x508)
181#define SYSCTL_SRDMA MMIO32(SYSCTL_BASE + 0x50C)
183#define SYSCTL_SREPI MMIO32(SYSCTL_BASE + 0x510)
185#define SYSCTL_SRHIB MMIO32(SYSCTL_BASE + 0x514)
187#define SYSCTL_SRUART MMIO32(SYSCTL_BASE + 0x518)
189#define SYSCTL_SRSSI MMIO32(SYSCTL_BASE + 0x51C)
191#define SYSCTL_SRI2C MMIO32(SYSCTL_BASE + 0x520)
193#define SYSCTL_SRUSB MMIO32(SYSCTL_BASE + 0x528)
195#define SYSCTL_SREPHY MMIO32(SYSCTL_BASE + 0x530)
197#define SYSCTL_SRCAN MMIO32(SYSCTL_BASE + 0x534)
199#define SYSCTL_SRADC MMIO32(SYSCTL_BASE + 0x538)
201#define SYSCTL_SRACMP MMIO32(SYSCTL_BASE + 0x53C)
203#define SYSCTL_SRPWM MMIO32(SYSCTL_BASE + 0x540)
205#define SYSCTL_SRQEI MMIO32(SYSCTL_BASE + 0x544)
207#define SYSCTL_SREEPROM MMIO32(SYSCTL_BASE + 0x558)
209#define SYSCTL_SRCCM MMIO32(SYSCTL_BASE + 0x574)
211#define SYSCTL_SRLCD MMIO32(SYSCTL_BASE + 0x590)
213#define SYSCTL_SROWIRE MMIO32(SYSCTL_BASE + 0x598)
215#define SYSCTL_SREMAC MMIO32(SYSCTL_BASE + 0x59C)
218#define SYSCTL_RCGCWD MMIO32(SYSCTL_BASE + 0x600)
220#define SYSCTL_RCGCTIMER MMIO32(SYSCTL_BASE + 0x604)
222#define SYSCTL_RCGCGPIO MMIO32(SYSCTL_BASE + 0x608)
224#define SYSCTL_RCGCDMA MMIO32(SYSCTL_BASE + 0x60C)
226#define SYSCTL_RCGCEPI MMIO32(SYSCTL_BASE + 0x610)
228#define SYSCTL_RCGCHIB MMIO32(SYSCTL_BASE + 0x614)
230#define SYSCTL_RCGCUART MMIO32(SYSCTL_BASE + 0x618)
232#define SYSCTL_RCGCSSI MMIO32(SYSCTL_BASE + 0x61C)
234#define SYSCTL_RCGCI2C MMIO32(SYSCTL_BASE + 0x620)
236#define SYSCTL_RCGCUSB MMIO32(SYSCTL_BASE + 0x628)
238#define SYSCTL_RCGCEPHY MMIO32(SYSCTL_BASE + 0x630)
240#define SYSCTL_RCGCCAN MMIO32(SYSCTL_BASE + 0x634)
242#define SYSCTL_RCGCADC MMIO32(SYSCTL_BASE + 0x638)
244#define SYSCTL_RCGCACMP MMIO32(SYSCTL_BASE + 0x63C)
246#define SYSCTL_RCGCPWM MMIO32(SYSCTL_BASE + 0x640)
248#define SYSCTL_RCGCQEI MMIO32(SYSCTL_BASE + 0x644)
250#define SYSCTL_RCGCEEPROM MMIO32(SYSCTL_BASE + 0x658)
252#define SYSCTL_RCGCCCM MMIO32(SYSCTL_BASE + 0x674)
254#define SYSCTL_RCGCLCD MMIO32(SYSCTL_BASE + 0x690)
256#define SYSCTL_RCGCOWIRE MMIO32(SYSCTL_BASE + 0x698)
258#define SYSCTL_RCGCEMAC MMIO32(SYSCTL_BASE + 0x69C)
261#define SYSCTL_SCGCWD MMIO32(SYSCTL_BASE + 0x700)
263#define SYSCTL_SCGCTIMER MMIO32(SYSCTL_BASE + 0x704)
265#define SYSCTL_SCGCGPIO MMIO32(SYSCTL_BASE + 0x708)
267#define SYSCTL_SCGCDMA MMIO32(SYSCTL_BASE + 0x70C)
269#define SYSCTL_SCGCEPI MMIO32(SYSCTL_BASE + 0x710)
271#define SYSCTL_SCGCHIB MMIO32(SYSCTL_BASE + 0x714)
273#define SYSCTL_SCGCUART MMIO32(SYSCTL_BASE + 0x718)
275#define SYSCTL_SCGCSSI MMIO32(SYSCTL_BASE + 0x71C)
277#define SYSCTL_SCGCI2C MMIO32(SYSCTL_BASE + 0x720)
279#define SYSCTL_SCGCUSB MMIO32(SYSCTL_BASE + 0x728)
281#define SYSCTL_SCGCEPHY MMIO32(SYSCTL_BASE + 0x730)
283#define SYSCTL_SCGCCAN MMIO32(SYSCTL_BASE + 0x734)
285#define SYSCTL_SCGCADC MMIO32(SYSCTL_BASE + 0x738)
287#define SYSCTL_SCGCACMP MMIO32(SYSCTL_BASE + 0x73C)
289#define SYSCTL_SCGCPWM MMIO32(SYSCTL_BASE + 0x740)
291#define SYSCTL_SCGCQEI MMIO32(SYSCTL_BASE + 0x744)
293#define SYSCTL_SCGCEEPROM MMIO32(SYSCTL_BASE + 0x758)
295#define SYSCTL_SCGCCCM MMIO32(SYSCTL_BASE + 0x774)
297#define SYSCTL_SCGCLCD MMIO32(SYSCTL_BASE + 0x790)
299#define SYSCTL_SCGCOWIRE MMIO32(SYSCTL_BASE + 0x798)
301#define SYSCTL_SCGCEMAC MMIO32(SYSCTL_BASE + 0x79C)
304#define SYSCTL_DCGCWD MMIO32(SYSCTL_BASE + 0x800)
306#define SYSCTL_DCGCTIMER MMIO32(SYSCTL_BASE + 0x804)
308#define SYSCTL_DCGCGPIO MMIO32(SYSCTL_BASE + 0x808)
310#define SYSCTL_DCGCDMA MMIO32(SYSCTL_BASE + 0x80C)
312#define SYSCTL_DCGCEPI MMIO32(SYSCTL_BASE + 0x810)
314#define SYSCTL_DCGCHIB MMIO32(SYSCTL_BASE + 0x814)
316#define SYSCTL_DCGCUART MMIO32(SYSCTL_BASE + 0x818)
318#define SYSCTL_DCGCSSI MMIO32(SYSCTL_BASE + 0x81C)
320#define SYSCTL_DCGCI2C MMIO32(SYSCTL_BASE + 0x820)
322#define SYSCTL_DCGCUSB MMIO32(SYSCTL_BASE + 0x828)
324#define SYSCTL_DCGCEPHY MMIO32(SYSCTL_BASE + 0x830)
326#define SYSCTL_DCGCCAN MMIO32(SYSCTL_BASE + 0x834)
328#define SYSCTL_DCGCADC MMIO32(SYSCTL_BASE + 0x838)
330#define SYSCTL_DCGCACMP MMIO32(SYSCTL_BASE + 0x83C)
332#define SYSCTL_DCGCPWM MMIO32(SYSCTL_BASE + 0x840)
334#define SYSCTL_DCGCQEI MMIO32(SYSCTL_BASE + 0x844)
336#define SYSCTL_DCGCEEPROM MMIO32(SYSCTL_BASE + 0x858)
338#define SYSCTL_DCGCCCM MMIO32(SYSCTL_BASE + 0x874)
340#define SYSCTL_DCGCLCD MMIO32(SYSCTL_BASE + 0x890)
342#define SYSCTL_DCGCOWIRE MMIO32(SYSCTL_BASE + 0x898)
344#define SYSCTL_DCGCEMAC MMIO32(SYSCTL_BASE + 0x89C)
347#define SYSCTL_PCWD MMIO32(SYSCTL_BASE + 0x900)
349#define SYSCTL_PCTIMER MMIO32(SYSCTL_BASE + 0x904)
351#define SYSCTL_PCGPIO MMIO32(SYSCTL_BASE + 0x908)
353#define SYSCTL_PCDMA MMIO32(SYSCTL_BASE + 0x90C)
355#define SYSCTL_PCEPI MMIO32(SYSCTL_BASE + 0x910)
357#define SYSCTL_PCHIB MMIO32(SYSCTL_BASE + 0x914)
359#define SYSCTL_PCUART MMIO32(SYSCTL_BASE + 0x918)
361#define SYSCTL_PCSSI MMIO32(SYSCTL_BASE + 0x91C)
363#define SYSCTL_PCI2C MMIO32(SYSCTL_BASE + 0x920)
365#define SYSCTL_PCUSB MMIO32(SYSCTL_BASE + 0x928)
367#define SYSCTL_PCEPHY MMIO32(SYSCTL_BASE + 0x930)
369#define SYSCTL_PCCAN MMIO32(SYSCTL_BASE + 0x934)
371#define SYSCTL_PCADC MMIO32(SYSCTL_BASE + 0x938)
373#define SYSCTL_PCACMP MMIO32(SYSCTL_BASE + 0x93C)
375#define SYSCTL_PCPWM MMIO32(SYSCTL_BASE + 0x940)
377#define SYSCTL_PCQEI MMIO32(SYSCTL_BASE + 0x944)
379#define SYSCTL_PCEEPROM MMIO32(SYSCTL_BASE + 0x958)
381#define SYSCTL_PCCCM MMIO32(SYSCTL_BASE + 0x974)
383#define SYSCTL_PCLCD MMIO32(SYSCTL_BASE + 0x990)
385#define SYSCTL_PCOWIRE MMIO32(SYSCTL_BASE + 0x998)
387#define SYSCTL_PCEMAC MMIO32(SYSCTL_BASE + 0x99C)
390#define SYSCTL_PRWD MMIO32(SYSCTL_BASE + 0xA00)
392#define SYSCTL_PRTIMER MMIO32(SYSCTL_BASE + 0xA04)
394#define SYSCTL_PRGPIO MMIO32(SYSCTL_BASE + 0xA08)
396#define SYSCTL_PRDMA MMIO32(SYSCTL_BASE + 0xA0C)
398#define SYSCTL_PREPI MMIO32(SYSCTL_BASE + 0xA10)
400#define SYSCTL_PRHIB MMIO32(SYSCTL_BASE + 0xA14)
402#define SYSCTL_PRUART MMIO32(SYSCTL_BASE + 0xA18)
404#define SYSCTL_PRSSI MMIO32(SYSCTL_BASE + 0xA1C)
406#define SYSCTL_PRI2C MMIO32(SYSCTL_BASE + 0xA20)
408#define SYSCTL_PRUSB MMIO32(SYSCTL_BASE + 0xA28)
410#define SYSCTL_PREPHY MMIO32(SYSCTL_BASE + 0xA30)
412#define SYSCTL_PRCAN MMIO32(SYSCTL_BASE + 0xA34)
414#define SYSCTL_PRADC MMIO32(SYSCTL_BASE + 0xA38)
416#define SYSCTL_PRACMP MMIO32(SYSCTL_BASE + 0xA3C)
418#define SYSCTL_PRPWM MMIO32(SYSCTL_BASE + 0xA40)
420#define SYSCTL_PRQEI MMIO32(SYSCTL_BASE + 0xA44)
422#define SYSCTL_PREEPROM MMIO32(SYSCTL_BASE + 0xA58)
424#define SYSCTL_PRCCM MMIO32(SYSCTL_BASE + 0xA74)
426#define SYSCTL_PRLCD MMIO32(SYSCTL_BASE + 0xA90)
428#define SYSCTL_PROWIRE MMIO32(SYSCTL_BASE + 0xA98)
430#define SYSCTL_PREMAC MMIO32(SYSCTL_BASE + 0xA9C)
433#define SYSCTL_UNIQUEID0 MMIO32(SYSCTL_BASE + 0xF20)
435#define SYSCTL_UNIQUEID1 MMIO32(SYSCTL_BASE + 0xF24)
437#define SYSCTL_UNIQUEID2 MMIO32(SYSCTL_BASE + 0xF28)
439#define SYSCTL_UNIQUEID3 MMIO32(SYSCTL_BASE + 0xF2C)
446#define SYSCTL_DID0_VER_SHIFT (28)
448#define SYSCTL_DID0_VER_MASK (0x7)
450#define SYSCTL_DID0_CLASS_SHIFT (16)
452#define SYSCTL_DID0_CLASS_MASK (0xFF)
454#define SYSCTL_DID0_MAJOR_SHIFT (8)
456#define SYSCTL_DID0_MAJOR_MASK (0xFF)
458#define SYSCTL_DID0_MINOR_SHIFT (0)
460#define SYSCTL_DID0_MINOR_MASK (0xFF)
467#define SYSCTL_DID1_VER_SHIFT (28)
469#define SYSCTL_DID1_VER_MASK (0xF)
471#define SYSCTL_DID1_FAM_SHIFT (24)
473#define SYSCTL_DID1_FAM_MASK (0xF)
475#define SYSCTL_DID1_PARTNO_SHIFT (16)
477#define SYSCTL_DID1_PARTNO_MASK (0xFF)
479#define SYSCTL_DID1_PINCOUNT_SHIFT (13)
481#define SYSCTL_DID1_PINCOUNT_MASK (0x7)
483#define SYSCTL_DID1_PINCOUNT_128P (0x6)
485#define SYSCTL_DID1_PINCOUNT_212P (0x7)
487#define SYSCTL_DID1_TEMP_SHIFT (5)
489#define SYSCTL_DID1_TEMP_MASK (0x7)
491#define SYSCTL_DID1_TEMP_COMMERCIAL (0x0)
493#define SYSCTL_DID1_TEMP_INDUSTRIAL (0x1)
495#define SYSCTL_DID1_TEMP_EXTENDED (0x2)
497#define SYSCTL_DID1_PKG_SHIFT (3)
499#define SYSCTL_DID1_PKG_MASK (0x3)
501#define SYSCTL_DID1_PKG_QFP (0x1)
503#define SYSCTL_DID1_PKG_BGA (0x2)
505#define SYSCTL_DID1_ROHS (1 << 2)
507#define SYSCTL_DID1_QUAL_SHIFT (0)
509#define SYSCTL_DID1_QUAL_MASK (0x3)
511#define SYSCTL_DID1_QUAL_SAMPLE (0x0)
513#define SYSCTL_DID1_QUAL_PILOT (0x1)
515#define SYSCTL_DID1_QUAL_QUALIFIED (0x2)
522#define SYSCTL_PTBOCTL_VDDA_UBOR_SHIFT (8)
524#define SYSCTL_PTBOCTL_VDDA_UBOR_MASK (0x3)
526#define SYSCTL_PTBOCTL_VDDA_UBOR_NO (0x0)
528#define SYSCTL_PTBOCTL_VDDA_UBOR_INT (0x1)
530#define SYSCTL_PTBOCTL_VDDA_UBOR_NMI (0x2)
532#define SYSCTL_PTBOCTL_VDDA_UBOR_RESET (0x3)
534#define SYSCTL_PTBOCTL_VDD_UBOR_SHIFT (1)
536#define SYSCTL_PTBOCTL_VDD_UBOR_MASK (0x3)
538#define SYSCTL_PTBOCTL_VDD_UBOR_NO (0x0)
540#define SYSCTL_PTBOCTL_VDD_UBOR_INT (0x1)
542#define SYSCTL_PTBOCTL_VDD_UBOR_NMI (0x2)
544#define SYSCTL_PTBOCTL_VDD_UBOR_RESET (0x3)
551#define SYSCTL_RIS_MOSCPUPRIS (1 << 8)
553#define SYSCTL_RIS_PLLLRIS (1 << 6)
555#define SYSCTL_RIS_MOFRIS (1 << 3)
557#define SYSCTL_RIS_BORRIS (1 << 1)
564#define SYSCTL_IMC_MOSCPUPIM (1 << 8)
566#define SYSCTL_IMC_PLLLIM (1 << 6)
568#define SYSCTL_IMC_MOFIM (1 << 3)
570#define SYSCTL_IMC_BORIM (1 << 1)
577#define SYSCTL_MISC_MOSCPUPMIS (1 << 8)
579#define SYSCTL_MISC_PLLLMIS (1 << 6)
581#define SYSCTL_MISC_MOFMIS (1 << 3)
583#define SYSCTL_MISC_BORMIS (1 << 1)
590#define SYSCTL_RESC_MOSCFAIL (1 << 16)
592#define SYSCTL_RESC_HSSR (1 << 12)
594#define SYSCTL_RESC_WDT1 (1 << 5)
596#define SYSCTL_RESC_SW (1 << 4)
598#define SYSCTL_RESC_WDT0 (1 << 3)
600#define SYSCTL_RESC_BOR (1 << 2)
602#define SYSCTL_RESC_POR (1 << 1)
604#define SYSCTL_RESC_EXT (1 << 0)
611#define SYSCTL_PWRTC_VDDA_UBOR (1 << 4)
613#define SYSCTL_PWRTC_VDD_UBOR (1 << 0)
620#define SYSCTL_NMIC_MOSCFAIL (1 << 16)
622#define SYSCTL_NMIC_TAMPER (1 << 9)
624#define SYSCTL_NMIC_WDT1 (1 << 5)
626#define SYSCTL_NMIC_WDT0 (1 << 3)
628#define SYSCTL_NMIC_POWER (1 << 2)
630#define SYSCTL_NMIC_EXTERNAL (1 << 0)
637#define SYSCTL_MOSCCTL_OSCRNG (1 << 4)
639#define SYSCTL_MOSCCTL_PWRDN (1 << 3)
641#define SYSCTL_MOSCCTL_NOXTAL (1 << 2)
643#define SYSCTL_MOSCCTL_MOSCIM (1 << 1)
645#define SYSCTL_MOSCCTL_CVAL (1 << 0)
652#define SYSCTL_RSCLKCFG_MEMTIMU (1 << 31)
654#define SYSCTL_RSCLKCFG_NEWFREQ (1 << 30)
656#define SYSCTL_RSCLKCFG_ACG (1 << 29)
658#define SYSCTL_RSCLKCFG_USEPLL (1 << 28)
660#define SYSCTL_RSCLKCFG_PLLSRC_SHIFT (24)
662#define SYSCTL_RSCLKCFG_PLLSRC_MASK (0xF)
664#define SYSCTL_RSCLKCFG_PLLSRC_MOSC (0x3)
666#define SYSCTL_RSCLKCFG_OSCSRC_SHIFT (20)
668#define SYSCTL_RSCLKCFG_OSCSRC_MASK (0xF)
670#define SYSCTL_RSCLKCFG_OSCSRC_LFIOSC (0x2)
672#define SYSCTL_RSCLKCFG_OSCSRC_MOSC (0x3)
674#define SYSCTL_RSCLKCFG_OSCSRC_RTCOSC (0x4)
676#define SYSCTL_RSCLKCFG_OSYSDIV_SHIFT (10)
678#define SYSCTL_RSCLKCFG_OSYSDIV_MASK (0x3FF)
680#define SYSCTL_RSCLKCFG_PSYSDIV_SHIFT (0)
682#define SYSCTL_RSCLKCFG_PSYSDIV_MASK (0x3FF)
700#define SYSCTL_MEMTIM0_EBCHT_SHIFT (22)
702#define SYSCTL_MEMTIM0_EBCHT_MASK (0xF)
704#define SYSCTL_MEMTIM0_EBCHT_0_POINT_5 (0x0)
706#define SYSCTL_MEMTIM0_EBCHT_1 (0x1)
708#define SYSCTL_MEMTIM0_EBCHT_1_POINT_5 (0x2)
710#define SYSCTL_MEMTIM0_EBCHT_2 (0x3)
712#define SYSCTL_MEMTIM0_EBCHT_2_POINT_5 (0x4)
714#define SYSCTL_MEMTIM0_EBCHT_3 (0x5)
716#define SYSCTL_MEMTIM0_EBCHT_3_POINT_5 (0x6)
718#define SYSCTL_MEMTIM0_EBCHT_4 (0x7)
720#define SYSCTL_MEMTIM0_EBCHT_4_POINT_5 (0x8)
722#define SYSCTL_MEMTIM0_EBCE (1 << 21)
724#define SYSCTL_MEMTIM0_EWS_SHIFT (16)
726#define SYSCTL_MEMTIM0_EWS_MASK (0xF)
728#define SYSCTL_MEMTIM0_EWS_1 (0x1)
730#define SYSCTL_MEMTIM0_EWS_2 (0x2)
732#define SYSCTL_MEMTIM0_EWS_3 (0x3)
734#define SYSCTL_MEMTIM0_EWS_4 (0x4)
736#define SYSCTL_MEMTIM0_EWS_5 (0x5)
738#define SYSCTL_MEMTIM0_EWS_6 (0x6)
740#define SYSCTL_MEMTIM0_EWS_7 (0x7)
742#define SYSCTL_MEMTIM0_FBCHT_SHIFT (6)
744#define SYSCTL_MEMTIM0_FBCHT_MASK (0xF)
746#define SYSCTL_MEMTIM0_FBCHT_0_POINT_5 (0x0)
748#define SYSCTL_MEMTIM0_FBCHT_1 (0x1)
750#define SYSCTL_MEMTIM0_FBCHT_1_POINT_5 (0x2)
752#define SYSCTL_MEMTIM0_FBCHT_2 (0x3)
754#define SYSCTL_MEMTIM0_FBCHT_2_POINT_5 (0x4)
756#define SYSCTL_MEMTIM0_FBCHT_3 (0x5)
758#define SYSCTL_MEMTIM0_FBCHT_3_POINT_5 (0x6)
760#define SYSCTL_MEMTIM0_FBCHT_4 (0x7)
762#define SYSCTL_MEMTIM0_FBCHT_4_POINT_5 (0x8)
764#define SYSCTL_MEMTIM0_FBCE (1 << 5)
766#define SYSCTL_MEMTIM0_FWS_SHIFT (0)
768#define SYSCTL_MEMTIM0_FWS_MASK (0xF)
770#define SYSCTL_MEMTIM0_FWS_1 (0x1)
772#define SYSCTL_MEMTIM0_FWS_2 (0x2)
774#define SYSCTL_MEMTIM0_FWS_3 (0x3)
776#define SYSCTL_MEMTIM0_FWS_4 (0x4)
778#define SYSCTL_MEMTIM0_FWS_5 (0x5)
780#define SYSCTL_MEMTIM0_FWS_6 (0x6)
782#define SYSCTL_MEMTIM0_FWS_7 (0x7)
789#define SYSCTL_ALTCLKCFG_ALTCLK_SHIFT (0)
791#define SYSCTL_ALTCLKCFG_ALTCLK_MASK (0xF)
793#define SYSCTL_ALTCLKCFG_ALTCLK_RTCOSC (0x3)
795#define SYSCTL_ALTCLKCFG_ALTCLK_LFIOSC (0x4)
802#define SYSCTL_DSCLKCFG_PIOSCPD (1 << 31)
804#define SYSCTL_DSCLKCFG_MOSCDPD (1 << 30)
806#define SYSCTL_DSCLKCFG_DSOSCSRC_SHIFT (20)
808#define SYSCTL_DSCLKCFG_DSOSCSRC_MASK (0xF)
810#define SYSCTL_DSCLKCFG_DSOSCSRC_LFIOSC (0x2)
812#define SYSCTL_DSCLKCFG_DSOSCSRC_MOSC (0x3)
814#define SYSCTL_DSCLKCFG_DSOSCSRC_RTCOSC (0x4)
816#define SYSCTL_DSCLKCFG_DSSYSDIV_SHIFT (0)
818#define SYSCTL_DSCLKCFG_DSSYSDIV_MASK (0x3FF)
825#define SYSCTL_DIVSCLK_EN (1 << 31)
827#define SYSCTL_DIVSCLK_SRC_SHIFT (16)
829#define SYSCTL_DIVSCLK_SRC_MASK (0x3)
831#define SYSCTL_DIVSCLK_SRC_PIOSC (0x1)
833#define SYSCTL_DIVSCLK_SRC_MOSC (0x2)
835#define SYSCTL_DIVSCLK_DIV_SHIFT (0)
837#define SYSCTL_DIVSCLK_DIV_MASK (0xF)
839#define SYSCTL_DIVSCLK_DIV_1 (0x0)
841#define SYSCTL_DIVSCLK_DIV_2 (0x1)
848#define SYSCTL_SYSPROP_LDOSME (1 << 17)
850#define SYSCTL_SYSPROP_TSPDE (1 << 16)
852#define SYSCTL_SYSPROP_PIOSCPDE (1 << 12)
854#define SYSCTL_SYSPROP_SRAMSM (1 << 11)
856#define SYSCTL_SYSPROP_SRAMLPM (1 << 10)
858#define SYSCTL_SYSPROP_FLASHLPM (1 << 8)
860#define SYSCTL_SYSPROP_LDOSEQ (1 << 5)
862#define SYSCTL_SYSPROP_FPU (1 << 0)
870#define SYSCTL_PIOSCCAL_UTEN (1 << 31)
872#define SYSCTL_PIOSCCAL_CAL (1 << 9)
874#define SYSCTL_PIOSCCAL_UPDATE (1 << 8)
876#define SYSCTL_PIOSCCAL_UT_SHIFT (0)
878#define SYSCTL_PIOSCCAL_UT_MASK (0x7F)
886#define SYSCTL_PIOSCSTAT_DT_SHIFT (16)
888#define SYSCTL_PIOSCSTAT_DT_MASK (0x7F)
890#define SYSCTL_PIOSCSTAT_RESULT_SHIFT (8)
892#define SYSCTL_PIOSCSTAT_RESULT_MASK (0x3)
894#define SYSCTL_PIOSCSTAT_RESULT_NOT_ATTEMPT (0x0)
896#define SYSCTL_PIOSCSTAT_RESULT_COMPLETE (0x1)
898#define SYSCTL_PIOSCSTAT_RESULT_FAIL (0x2)
900#define SYSCTL_PIOSCSTAT_CT_SHIFT (0)
902#define SYSCTL_PIOSCSTAT_CT_MASK (0x7F)
909#define SYSCTL_PLLFREQ0_PLLPWR (1 << 23)
911#define SYSCTL_PLLFREQ0_MFRAC_SHIFT (10)
913#define SYSCTL_PLLFREQ0_MFRAC_MASK (0x3FF)
915#define SYSCTL_PLLFREQ0_MINT_SHIFT (0)
917#define SYSCTL_PLLFREQ0_MINT_MASK (0x3FF)
924#define SYSCTL_PLLFREQ1_Q_SHIFT (8)
926#define SYSCTL_PLLFREQ1_Q_MASK (0x1F)
928#define SYSCTL_PLLFREQ1_N_SHIFT (0)
930#define SYSCTL_PLLFREQ1_N_MASK (0x1F)
937#define SYSCTL_PLLSTAT_LOCK (1 << 0)
944#define SYSCTL_SLPPWRCFG_FLASHPM_SHIFT (4)
946#define SYSCTL_SLPPWRCFG_FLASHPM_MASK (0x3)
948#define SYSCTL_SLPPWRCFG_FLASHPM_ACTIVE (0x0)
950#define SYSCTL_SLPPWRCFG_FLASHPM_LP (0x2)
952#define SYSCTL_SLPPWRCFG_SRAMPM_SHIFT (0)
954#define SYSCTL_SLPPWRCFG_SRAMPM_MASK (0x3)
956#define SYSCTL_SLPPWRCFG_SRAMPM_ACTIVE (0x0)
958#define SYSCTL_SLPPWRCFG_SRAMPM_STANDBY (0x1)
960#define SYSCTL_SLPPWRCFG_SRAMPM_LP (0x3)
967#define SYSCTL_DSLPPWRCFG_LDOSM (1 << 9)
969#define SYSCTL_DSLPPWRCFG_TSPD (1 << 8)
971#define SYSCTL_DSLPPWRCFG_FLASHPM_SHIFT (4)
973#define SYSCTL_DSLPPWRCFG_FLASHPM_MASK (0x3)
975#define SYSCTL_DSLPPWRCFG_FLASHPM_ACTIVE (0x0)
977#define SYSCTL_DSLPPWRCFG_FLASHPM_LP (0x2)
979#define SYSCTL_DSLPPWRCFG_SRAMPM_SHIFT (0)
981#define SYSCTL_DSLPPWRCFG_SRAMPM_MASK (0x3)
983#define SYSCTL_DSLPPWRCFG_SRAMPM_ACTIVE (0x0)
985#define SYSCTL_DSLPPWRCFG_SRAMPM_STANDBY (0x1)
987#define SYSCTL_DSLPPWRCFG_SRAMPM_LP (0x3)
994#define SYSCTL_NVMSTAT_FWB (1 << 0)
1001#define SYSCTL_LDOSPCTL_VADJEN (1 << 31)
1003#define SYSCTL_LDOSPCTL_VLDO_SHIFT (0)
1005#define SYSCTL_LDOSPCTL_VLDO_MASK (0xFF)
1007#define SYSCTL_LDOSPCTL_VLDO_0_POINT_90 (0x12)
1009#define SYSCTL_LDOSPCTL_VLDO_0_POINT_95 (0x13)
1011#define SYSCTL_LDOSPCTL_VLDO_1_POINT_00 (0x14)
1013#define SYSCTL_LDOSPCTL_VLDO_1_POINT_05 (0x15)
1015#define SYSCTL_LDOSPCTL_VLDO_1_POINT_10 (0x16)
1017#define SYSCTL_LDOSPCTL_VLDO_1_POINT_15 (0x17)
1019#define SYSCTL_LDOSPCTL_VLDO_1_POINT_20 (0x18)
1026#define SYSCTL_LDOSPCAL_WITHPLL_SHIFT (8)
1028#define SYSCTL_LDOSPCAL_WITHPLL_MASK (0xFF)
1030#define SYSCTL_LDOSPCAL_NOPLL_SHIFT (0)
1032#define SYSCTL_LDOSPCAL_NOPLL_MASK (0xFF)
1039#define SYSCTL_LDODPCTL_VADJEN (1 << 31)
1041#define SYSCTL_LDODPCTL_VLDO_SHIFT (0)
1043#define SYSCTL_LDODPCTL_VLDO_MASK (0xFF)
1045#define SYSCTL_LDODPCTL_VLDO_0_POINT_90 (0x12)
1047#define SYSCTL_LDODPCTL_VLDO_0_POINT_95 (0x13)
1049#define SYSCTL_LDODPCTL_VLDO_1_POINT_00 (0x14)
1051#define SYSCTL_LDODPCTL_VLDO_1_POINT_05 (0x15)
1053#define SYSCTL_LDODPCTL_VLDO_1_POINT_10 (0x16)
1055#define SYSCTL_LDODPCTL_VLDO_1_POINT_15 (0x17)
1057#define SYSCTL_LDODPCTL_VLDO_1_POINT_20 (0x18)
1064#define SYSCTL_LDODPCAL_NOPLL_SHIFT (8)
1066#define SYSCTL_LDODPCAL_NOPLL_MASK (0xFF)
1068#define SYSCTL_LDODPCAL_30KHZ_SHIFT (0)
1070#define SYSCTL_LDODPCAL_30KHZ_MASK (0xFF)
1077#define SYSCTL_SDPMST_LDOUA (1 << 19)
1079#define SYSCTL_SDPMST_FLASHLP (1 << 18)
1081#define SYSCTL_SDPMST_LOWPWR (1 << 17)
1083#define SYSCTL_SDPMST_PRACT (1 << 16)
1085#define SYSCTL_SDPMST_PPDW (1 << 7)
1087#define SYSCTL_SDPMST_LMAXERR (1 << 6)
1089#define SYSCTL_SDPMST_LSMINERR (1 << 4)
1091#define SYSCTL_SDPMST_LDMINERR (1 << 3)
1093#define SYSCTL_SDPMST_PPDERR (1 << 2)
1095#define SYSCTL_SDPMST_FPDERR (1 << 1)
1097#define SYSCTL_SDPMST_SPDERR (1 << 0)
1104#define SYSCTL_RESBEHAVCTL_SYSRES (0x2)
1106#define SYSCTL_RESBEHAVCTL_POR (0x3)
1108#define SYSCTL_RESBEHAVCTL_WDOG1_SHIFT (6)
1110#define SYSCTL_RESBEHAVCTL_WDOG1_MASK (0x3)
1112#define SYSCTL_RESBEHAVCTL_WDOG0_SHIFT (4)
1114#define SYSCTL_RESBEHAVCTL_WDOG0_MASK (0x3)
1116#define SYSCTL_RESBEHAVCTL_BOR_SHIFT (2)
1118#define SYSCTL_RESBEHAVCTL_BOR_MASK (0x3)
1120#define SYSCTL_RESBEHAVCTL_EXTRES_SHIFT (2)
1122#define SYSCTL_RESBEHAVCTL_EXTRES_MASK (0x3)
1129#define SYSCTL_HSSR_KEY_SHIFT (24)
1131#define SYSCTL_HSSR_KEY_MASK (0xFF)
1133#define SYSCTL_HSSR_KEY_VALUE (0xCA)
1135#define SYSCTL_HSSR_CDOFF_SHIFT (0)
1137#define SYSCTL_HSSR_CDOFF_MASK (0xFFFFFF)
1139#define SYSCTL_HSSR_CDOFF_NO_REQUEST (0x000000)
1141#define SYSCTL_HSSR_CDOFF_ERROR (0xFFFFFF)
1148#define SYSCTL_USBPDS_MEMSTAT_SHIFT (2)
1150#define SYSCTL_USBPDS_MEMSTAT_MASK (0x3)
1152#define SYSCTL_USBPDS_MEMSTAT_ARR_OFF (0x0)
1154#define SYSCTL_USBPDS_MEMSTAT_SRAM_RET (0x1)
1156#define SYSCTL_USBPDS_MEMSTAT_ARR_ON (0x3)
1158#define SYSCTL_USBPDS_PWRSTAT_SHIFT (0)
1160#define SYSCTL_USBPDS_PWRSTAT_MASK (0x3)
1162#define SYSCTL_USBPDS_PWRSTAT_OFF (0x0)
1164#define SYSCTL_USBPDS_PWRSTAT_ON (0x3)
1171#define SYSCTL_USBMPC_PWRCTL_SHIFT (0)
1173#define SYSCTL_USBMPC_PWRCTL_MASK (0x3)
1175#define SYSCTL_USBMPC_PWRCTL_ARR_OFF (0x0)
1177#define SYSCTL_USBMPC_PWRCTL_SRAM_RET (0x1)
1179#define SYSCTL_USBMPC_PWRCTL_ARR_ON (0x3)
1186#define SYSCTL_EMACPDS_MEMSTAT_SHIFT (2)
1188#define SYSCTL_EMACPDS_MEMSTAT_MASK (0x3)
1190#define SYSCTL_EMACPDS_MEMSTAT_ARR_OFF (0x0)
1192#define SYSCTL_EMACPDS_MEMSTAT_ARR_ON (0x3)
1194#define SYSCTL_EMACPDS_PWRSTAT_SHIFT (0)
1196#define SYSCTL_EMACPDS_PWRSTAT_MASK (0x3)
1198#define SYSCTL_EMACPDS_PWRSTAT_OFF (0x0)
1200#define SYSCTL_EMACPDS_PWRSTAT_ON (0x3)
1207#define SYSCTL_EMACMPC_PWRCTL_SHIFT (0)
1209#define SYSCTL_EMACMPC_PWRCTL_MASK (0x3)
1211#define SYSCTL_EMACMPC_PWRCTL_ARR_OFF (0x0)
1213#define SYSCTL_EMACMPC_PWRCTL_ARR_ON (0x3)
1220#define SYSCTL_LCDPDS_MEMSTAT_SHIFT (2)
1222#define SYSCTL_LCDPDS_MEMSTAT_MASK (0x3)
1224#define SYSCTL_LCDPDS_MEMSTAT_ARR_OFF (0x0)
1226#define SYSCTL_LCDPDS_MEMSTAT_ARR_ON (0x3)
1228#define SYSCTL_LCDPDS_PWRSTAT_SHIFT (0)
1230#define SYSCTL_LCDPDS_PWRSTAT_MASK (0x3)
1232#define SYSCTL_LCDPDS_PWRSTAT_OFF (0x0)
1234#define SYSCTL_LCDPDS_PWRSTAT_ON (0x3)
1241#define SYSCTL_LCDMPC_PWRCTL_SHIFT (0)
1243#define SYSCTL_LCDMPC_PWRCTL_MASK (0x3)
1245#define SYSCTL_LCDMPC_PWRCTL_ARR_OFF (0x0)
1247#define SYSCTL_LCDMPC_PWRCTL_ARR_ON (0x3)
1254#define SYSCTL_CAN0PDS_MEMSTAT_SHIFT (2)
1256#define SYSCTL_CAN0PDS_MEMSTAT_MASK (0x3)
1258#define SYSCTL_CAN0PDS_MEMSTAT_ARR_OFF (0x0)
1260#define SYSCTL_CAN0PDS_MEMSTAT_ARR_ON (0x3)
1262#define SYSCTL_CAN0PDS_PWRSTAT_SHIFT (0)
1264#define SYSCTL_CAN0PDS_PWRSTAT_MASK (0x3)
1266#define SYSCTL_CAN0PDS_PWRSTAT_OFF (0x0)
1268#define SYSCTL_CAN0PDS_PWRSTAT_ON (0x3)
1275#define SYSCTL_CAN0MPC_PWRCTL_SHIFT (0)
1277#define SYSCTL_CAN0MPC_PWRCTL_MASK (0x3)
1279#define SYSCTL_CAN0MPC_PWRCTL_ARR_OFF (0x0)
1281#define SYSCTL_CAN0MPC_PWRCTL_ARR_ON (0x3)
1288#define SYSCTL_CAN1PDS_MEMSTAT_SHIFT (2)
1290#define SYSCTL_CAN1PDS_MEMSTAT_MASK (0x3)
1292#define SYSCTL_CAN1PDS_MEMSTAT_ARR_OFF (0x0)
1294#define SYSCTL_CAN1PDS_MEMSTAT_ARR_ON (0x3)
1296#define SYSCTL_CAN1PDS_PWRSTAT_SHIFT (0)
1298#define SYSCTL_CAN1PDS_PWRSTAT_MASK (0x3)
1300#define SYSCTL_CAN1PDS_PWRSTAT_OFF (0x0)
1302#define SYSCTL_CAN1PDS_PWRSTAT_ON (0x3)
1309#define SYSCTL_CAN1MPC_PWRCTL_SHIFT (0)
1311#define SYSCTL_CAN1MPC_PWRCTL_MASK (0x3)
1313#define SYSCTL_CAN1MPC_PWRCTL_ARR_OFF (0x0)
1315#define SYSCTL_CAN1MPC_PWRCTL_ARR_ON (0x3)
1346#define _REG_BIT(base, bit) (((base) << 5) + (bit))
void sysctl_periph_set_power_state(enum msp432_power_mode power_mode, enum msp432_periph periph)
System Control Peripheral Set Power State.
bool sysctl_periph_is_ready(enum msp432_periph periph)
System Control Peripheral Is Ready.
msp432_power_mode
Power mode definitions.
void sysctl_periph_clock_disable(enum msp432_clock_mode clock_mode, enum msp432_periph periph)
System Control Disable Peripheral Clock.
void sysctl_periph_clock_enable(enum msp432_clock_mode clock_mode, enum msp432_periph periph)
System Control Enable Peripheral Clock.
void sysctl_periph_reset(enum msp432_periph periph)
System Control Peripheral Software Reset.
#define _REG_BIT(base, bit)
msp432_clock_mode
Clock mode definitions The definitions are specified in the form offset from SYSCTL_BASE.
msp432_periph
Peripheral list definitions The definitions are specified in the form 31:5 register offset from first...
void sysctl_periph_clear_reset(enum msp432_periph periph)
System Control Peripheral Clear Software Reset.
bool sysctl_periph_is_present(enum msp432_periph periph)
System Control Peripheral Is Present.