libopencm3/include/libopencm3/msp432/e4/systemcontrol.h

1472 lines
56 KiB
C

/** @defgroup systemcontrol_defines System Control Defines
*
* @ingroup MSP432E4xx_defines
*
* @brief Defined Constants and Types for the MSP432E4xx System Control
*
* @version 1.0.0
*
* @date 22 July 2018
*
* LGPL License Terms @ref lgpl_license
*/
/*
* This file is part of the libopencm3 project.
*
* Copyright (C) 2012 Alexandru Gagniuc <mr.nuke.me@gmail.com>
* Copyright (C) 2018 Dmitry Rezvanov <dmitry.rezvanov@yandex.ru>
*
* This library is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef MSP432E4_SYSTEMCONTROL_H
#define MSP432E4_SYSTEMCONTROL_H
/**@{*/
#include <libopencm3/cm3/common.h>
#include <libopencm3/msp432/e4/memorymap.h>
#include <stdbool.h>
/** @defgroup sysctl_registers SYSCTL Registers
* @brief System Control Registers
@{*/
/** Device Identification 0 */
#define SYSCTL_DID0 MMIO32(SYSCTL_BASE + 0x000)
/** Device Identification 1 */
#define SYSCTL_DID1 MMIO32(SYSCTL_BASE + 0x004)
/** Power-Temp Brownout Control */
#define SYSCTL_PTBOCTL MMIO32(SYSCTL_BASE + 0x038)
/** Raw Interrupt Status */
#define SYSCTL_RIS MMIO32(SYSCTL_BASE + 0x050)
/** Interrupt Mask Control */
#define SYSCTL_IMC MMIO32(SYSCTL_BASE + 0x054)
/** RW1C Masked Interrupt Status and Clear */
#define SYSCTL_MISC MMIO32(SYSCTL_BASE + 0x058)
/** Reset Cause */
#define SYSCTL_RESC MMIO32(SYSCTL_BASE + 0x05C)
/** RW1C Power-Temperature Cause */
#define SYSCTL_PWRTC MMIO32(SYSCTL_BASE + 0x060)
/** NMI Cause Register */
#define SYSCTL_NMIC MMIO32(SYSCTL_BASE + 0x064)
/** Main Oscillator Control */
#define SYSCTL_MOSCCTL MMIO32(SYSCTL_BASE + 0x07C)
/** Run and Sleep Mode Configuration Register */
#define SYSCTL_RSCLKCFG MMIO32(SYSCTL_BASE + 0x0B0)
/** Memory Timing Parameter Register 0 for Main Flash and EEPROM */
#define SYSCTL_MEMTIM0 MMIO32(SYSCTL_BASE + 0x0C0)
/** Alternate Clock Configuration */
#define SYSCTL_ALTCLKCFG MMIO32(SYSCTL_BASE + 0x138)
/** Deep Sleep Clock Configuration Register */
#define SYSCTL_DSCLKCFG MMIO32(SYSCTL_BASE + 0x144)
/** Divisor and Source Clock Configuration */
#define SYSCTL_DIVSCLK MMIO32(SYSCTL_BASE + 0x148)
/** System Properties */
#define SYSCTL_SYSPROP MMIO32(SYSCTL_BASE + 0x14C)
/** Precision Internal Oscillator Calibration */
#define SYSCTL_PIOSCCAL MMIO32(SYSCTL_BASE + 0x150)
/** Precision Internal Oscillator Statistics */
#define SYSCTL_PIOSCSTAT MMIO32(SYSCTL_BASE + 0x154)
/** PLL Frequency 0 */
#define SYSCTL_PLLFREQ0 MMIO32(SYSCTL_BASE + 0x160)
/** PLL Frequency 1 */
#define SYSCTL_PLLFREQ1 MMIO32(SYSCTL_BASE + 0x164)
/** PLL Status */
#define SYSCTL_PLLSTAT MMIO32(SYSCTL_BASE + 0x168)
/** Sleep Power Configuration */
#define SYSCTL_SLPPWRCFG MMIO32(SYSCTL_BASE + 0x188)
/** Deep-Sleep Power Configuration */
#define SYSCTL_DSLPPWRCFG MMIO32(SYSCTL_BASE + 0x18C)
/** Non-Volatile Memory Information */
#define SYSCTL_NVMSTAT MMIO32(SYSCTL_BASE + 0x1A0)
/** LDO Sleep Power Control */
#define SYSCTL_LDOSPCTL MMIO32(SYSCTL_BASE + 0x1B4)
/** LDO Sleep Power Calibration */
#define SYSCTL_LDOSPCAL MMIO32(SYSCTL_BASE + 0x1B8)
/** LDO Deep-Sleep Power Control */
#define SYSCTL_LDODPCTL MMIO32(SYSCTL_BASE + 0x1BC)
/** LDO Deep-Sleep Power Calibration */
#define SYSCTL_LDODPCAL MMIO32(SYSCTL_BASE + 0x1C0)
/** Sleep / Deep-Sleep Power Mode Status */
#define SYSCTL_SDPMST MMIO32(SYSCTL_BASE + 0x1CC)
/** Reset Behavior Control Register */
#define SYSCTL_RESBEHAVCTL MMIO32(SYSCTL_BASE + 0x1D8)
/** Hardware System Service Request */
#define SYSCTL_HSSR MMIO32(SYSCTL_BASE + 0x1F4)
/** USB Power Domain Status */
#define SYSCTL_USBPDS MMIO32(SYSCTL_BASE + 0x280)
/** USB Memory Power Control */
#define SYSCTL_USBMPC MMIO32(SYSCTL_BASE + 0x284)
/** Ethernet MAC Power Domain Status */
#define SYSCTL_EMACPDS MMIO32(SYSCTL_BASE + 0x288)
/** Ethernet MAC Memory Power Control */
#define SYSCTL_EMACMPC MMIO32(SYSCTL_BASE + 0x28C)
/** LCD Power Domain Status */
#define SYSCTL_LCDPDS MMIO32(SYSCTL_BASE + 0x290)
/** LCD Memory Power Control */
#define SYSCTL_LCDMPC MMIO32(SYSCTL_BASE + 0x294)
/** CAN 0 Power Domain Status */
#define SYSCTL_CAN0PDS MMIO32(SYSCTL_BASE + 0x298)
/** CAN 0 Memory Power Control */
#define SYSCTL_CAN0MPC MMIO32(SYSCTL_BASE + 0x29C)
/** CAN 1 Power Domain Status */
#define SYSCTL_CAN1PDS MMIO32(SYSCTL_BASE + 0x2A0)
/** CAN 1 Memory Power Control */
#define SYSCTL_CAN1MPC MMIO32(SYSCTL_BASE + 0x2A4)
/** Watchdog Timer Peripheral Present */
#define SYSCTL_PPWD MMIO32(SYSCTL_BASE + 0x300)
/** 16/32-Bit General-Purpose Timer Peripheral Present */
#define SYSCTL_PPTIMER MMIO32(SYSCTL_BASE + 0x304)
/** General-Purpose Input/Output Peripheral Present */
#define SYSCTL_PPGPIO MMIO32(SYSCTL_BASE + 0x308)
/** Micro Direct Memory Access Peripheral Present */
#define SYSCTL_PPDMA MMIO32(SYSCTL_BASE + 0x30C)
/** EPI Peripheral Present */
#define SYSCTL_PPEPI MMIO32(SYSCTL_BASE + 0x310)
/** Hibernation Peripheral Present */
#define SYSCTL_PPHIB MMIO32(SYSCTL_BASE + 0x314)
/** Universal Asynchronous Receiver/Transmitter Peripheral Present */
#define SYSCTL_PPUART MMIO32(SYSCTL_BASE + 0x318)
/** Synchronous Serial Interface Peripheral Present */
#define SYSCTL_PPSSI MMIO32(SYSCTL_BASE + 0x31C)
/** Inter-Integrated Circuit Peripheral Present */
#define SYSCTL_PPI2C MMIO32(SYSCTL_BASE + 0x320)
/** Universal Serial Bus Peripheral Present */
#define SYSCTL_PPUSB MMIO32(SYSCTL_BASE + 0x328)
/** Ethernet PHY Peripheral Present */
#define SYSCTL_PPEPHY MMIO32(SYSCTL_BASE + 0x330)
/** Controller Area Network Peripheral Present */
#define SYSCTL_PPCAN MMIO32(SYSCTL_BASE + 0x334)
/** Analog-to-Digital Converter Peripheral Present */
#define SYSCTL_PPADC MMIO32(SYSCTL_BASE + 0x338)
/** Analog Comparator Peripheral Present */
#define SYSCTL_PPACMP MMIO32(SYSCTL_BASE + 0x33C)
/** Pulse Width Modulator Peripheral Present */
#define SYSCTL_PPPWM MMIO32(SYSCTL_BASE + 0x340)
/** Quadrature Encoder Interface Peripheral Present */
#define SYSCTL_PPQEI MMIO32(SYSCTL_BASE + 0x344)
/** EEPROM Peripheral Present */
#define SYSCTL_PPEEPROM MMIO32(SYSCTL_BASE + 0x358)
/** CRC and Cryptographic Modules Peripheral Present */
#define SYSCTL_PPCCM MMIO32(SYSCTL_BASE + 0x374)
/** LCD Peripheral Present */
#define SYSCTL_PPLCD MMIO32(SYSCTL_BASE + 0x390)
/** 1-Wire Peripheral Present */
#define SYSCTL_PPOWIRE MMIO32(SYSCTL_BASE + 0x398)
/** Ethernet MAC Peripheral Present */
#define SYSCTL_PPEMAC MMIO32(SYSCTL_BASE + 0x39C)
/** Power Regulator Bus Peripheral Present */
#define SYSCTL_PPPRB MMIO32(SYSCTL_BASE + 0x3A0)
/** Watchdog Timer Software Reset */
#define SYSCTL_SRWD MMIO32(SYSCTL_BASE + 0x500)
/** 16/32-Bit General-Purpose Timer Software Reset */
#define SYSCTL_SRTIMER MMIO32(SYSCTL_BASE + 0x504)
/** General-Purpose Input/Output Software Reset */
#define SYSCTL_SRGPIO MMIO32(SYSCTL_BASE + 0x508)
/** Micro Direct Memory Access Software Reset */
#define SYSCTL_SRDMA MMIO32(SYSCTL_BASE + 0x50C)
/** EPI Software Reset */
#define SYSCTL_SREPI MMIO32(SYSCTL_BASE + 0x510)
/** Hibernation Software Reset */
#define SYSCTL_SRHIB MMIO32(SYSCTL_BASE + 0x514)
/** Universal Asynchronous Receiver/Transmitter Software Reset */
#define SYSCTL_SRUART MMIO32(SYSCTL_BASE + 0x518)
/** Synchronous Serial Interface Software Reset */
#define SYSCTL_SRSSI MMIO32(SYSCTL_BASE + 0x51C)
/** Inter-Integrated Circuit Software Reset */
#define SYSCTL_SRI2C MMIO32(SYSCTL_BASE + 0x520)
/** Universal Serial Bus Software Reset */
#define SYSCTL_SRUSB MMIO32(SYSCTL_BASE + 0x528)
/** Ethernet PHY Software Reset */
#define SYSCTL_SREPHY MMIO32(SYSCTL_BASE + 0x530)
/** Controller Area Network Software Reset */
#define SYSCTL_SRCAN MMIO32(SYSCTL_BASE + 0x534)
/** Analog-to-Digital Converter Software Reset */
#define SYSCTL_SRADC MMIO32(SYSCTL_BASE + 0x538)
/** Analog Comparator Software Reset */
#define SYSCTL_SRACMP MMIO32(SYSCTL_BASE + 0x53C)
/** Pulse Width Modulator Software Reset */
#define SYSCTL_SRPWM MMIO32(SYSCTL_BASE + 0x540)
/** Quadrature Encoder Interface Software Reset */
#define SYSCTL_SRQEI MMIO32(SYSCTL_BASE + 0x544)
/** EEPROM Software Reset */
#define SYSCTL_SREEPROM MMIO32(SYSCTL_BASE + 0x558)
/** CRC and Cryptographic Modules Software Reset */
#define SYSCTL_SRCCM MMIO32(SYSCTL_BASE + 0x574)
/** LCD Controller Software Reset */
#define SYSCTL_SRLCD MMIO32(SYSCTL_BASE + 0x590)
/** 1-Wire Software Reset */
#define SYSCTL_SROWIRE MMIO32(SYSCTL_BASE + 0x598)
/** Ethernet MAC Software Reset */
#define SYSCTL_SREMAC MMIO32(SYSCTL_BASE + 0x59C)
/** Watchdog Timer Run Mode Clock Gating Control */
#define SYSCTL_RCGCWD MMIO32(SYSCTL_BASE + 0x600)
/** 16/32-BitGeneral-Purpose Timer RunMode Clock Gating Control */
#define SYSCTL_RCGCTIMER MMIO32(SYSCTL_BASE + 0x604)
/** General-Purpose Input/Output Run Mode Clock Gating Control */
#define SYSCTL_RCGCGPIO MMIO32(SYSCTL_BASE + 0x608)
/** Micro Direct Memory Access Run Mode Clock Gating Control */
#define SYSCTL_RCGCDMA MMIO32(SYSCTL_BASE + 0x60C)
/** EPI Run Mode Clock Gating Control */
#define SYSCTL_RCGCEPI MMIO32(SYSCTL_BASE + 0x610)
/** Hibernation Run Mode Clock Gating Control */
#define SYSCTL_RCGCHIB MMIO32(SYSCTL_BASE + 0x614)
/** Universal Asynchronous Receiver/Transmitter RunMode Clock Gating Control */
#define SYSCTL_RCGCUART MMIO32(SYSCTL_BASE + 0x618)
/** Synchronous Serial Interface Run Mode Clock Gating Control */
#define SYSCTL_RCGCSSI MMIO32(SYSCTL_BASE + 0x61C)
/** Inter-Integrated Circuit Run Mode Clock Gating Control */
#define SYSCTL_RCGCI2C MMIO32(SYSCTL_BASE + 0x620)
/** Universal Serial Bus Run Mode Clock Gating Control */
#define SYSCTL_RCGCUSB MMIO32(SYSCTL_BASE + 0x628)
/** Ethernet PHY Run Mode Clock Gating Control */
#define SYSCTL_RCGCEPHY MMIO32(SYSCTL_BASE + 0x630)
/** Controller Area Network RunMode Clock Gating Control */
#define SYSCTL_RCGCCAN MMIO32(SYSCTL_BASE + 0x634)
/** Analog-to-Digital Converter Run Mode Clock Gating Control */
#define SYSCTL_RCGCADC MMIO32(SYSCTL_BASE + 0x638)
/** Analog Comparator Run Mode Clock Gating Control */
#define SYSCTL_RCGCACMP MMIO32(SYSCTL_BASE + 0x63C)
/** Pulse Width Modulator Run Mode Clock Gating Control */
#define SYSCTL_RCGCPWM MMIO32(SYSCTL_BASE + 0x640)
/** Quadrature Encoder Interface Run Mode Clock Gating Control */
#define SYSCTL_RCGCQEI MMIO32(SYSCTL_BASE + 0x644)
/** EEPROM Run Mode Clock Gating Control */
#define SYSCTL_RCGCEEPROM MMIO32(SYSCTL_BASE + 0x658)
/** CRC and CryptographicModules RunMode ClockGating Control */
#define SYSCTL_RCGCCCM MMIO32(SYSCTL_BASE + 0x674)
/** LCD Controller Run Mode Clock Gating Control */
#define SYSCTL_RCGCLCD MMIO32(SYSCTL_BASE + 0x690)
/** 1-Wire Run Mode Clock Gating Control */
#define SYSCTL_RCGCOWIRE MMIO32(SYSCTL_BASE + 0x698)
/** Ethernet MAC Run Mode Clock Gating Control */
#define SYSCTL_RCGCEMAC MMIO32(SYSCTL_BASE + 0x69C)
/** Watchdog Timer Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCWD MMIO32(SYSCTL_BASE + 0x700)
/** 16/32-Bit General-Purpose Timer Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCTIMER MMIO32(SYSCTL_BASE + 0x704)
/** General-Purpose Input/Output Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCGPIO MMIO32(SYSCTL_BASE + 0x708)
/** Micro Direct Memory Access Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCDMA MMIO32(SYSCTL_BASE + 0x70C)
/** EPI Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCEPI MMIO32(SYSCTL_BASE + 0x710)
/** Hibernation Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCHIB MMIO32(SYSCTL_BASE + 0x714)
/** Universal Asynchronous Receiver/Transmitter S Mode Clock Gating Control */
#define SYSCTL_SCGCUART MMIO32(SYSCTL_BASE + 0x718)
/** Synchronous Serial Interface Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCSSI MMIO32(SYSCTL_BASE + 0x71C)
/** Inter-Integrated Circuit Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCI2C MMIO32(SYSCTL_BASE + 0x720)
/** Universal Serial Bus Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCUSB MMIO32(SYSCTL_BASE + 0x728)
/** Ethernet PHY Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCEPHY MMIO32(SYSCTL_BASE + 0x730)
/** Controller Area Network Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCCAN MMIO32(SYSCTL_BASE + 0x734)
/** Analog-to-Digital Converter Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCADC MMIO32(SYSCTL_BASE + 0x738)
/** Analog Comparator Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCACMP MMIO32(SYSCTL_BASE + 0x73C)
/** PulseWidthModulator Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCPWM MMIO32(SYSCTL_BASE + 0x740)
/** Quadrature Encoder Interface Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCQEI MMIO32(SYSCTL_BASE + 0x744)
/** EEPROM Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCEEPROM MMIO32(SYSCTL_BASE + 0x758)
/** CRC and Cryptographic Modules Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCCCM MMIO32(SYSCTL_BASE + 0x774)
/** LCD Controller Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCLCD MMIO32(SYSCTL_BASE + 0x790)
/** 1-Wire Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCOWIRE MMIO32(SYSCTL_BASE + 0x798)
/** Ethernet MAC Sleep Mode Clock Gating Control */
#define SYSCTL_SCGCEMAC MMIO32(SYSCTL_BASE + 0x79C)
/** Watchdog Timer Deep-SleepMode Clock Gating Control */
#define SYSCTL_DCGCWD MMIO32(SYSCTL_BASE + 0x800)
/** Clock 16/32-Bit General-Purpose Timer Deep-Sleep Mode Gating Control */
#define SYSCTL_DCGCTIMER MMIO32(SYSCTL_BASE + 0x804)
/** General-Purpose Input/Output Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCGPIO MMIO32(SYSCTL_BASE + 0x808)
/** Micro Direct Memory Access Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCDMA MMIO32(SYSCTL_BASE + 0x80C)
/** EPI Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCEPI MMIO32(SYSCTL_BASE + 0x810)
/** Hibernation Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCHIB MMIO32(SYSCTL_BASE + 0x814)
/** Universal Asynchronous Receiver/Transmitter D-S Mode Clock Gating Control*/
#define SYSCTL_DCGCUART MMIO32(SYSCTL_BASE + 0x818)
/** Synchronous Serial Interface Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCSSI MMIO32(SYSCTL_BASE + 0x81C)
/** Inter-Integrated Circuit Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCI2C MMIO32(SYSCTL_BASE + 0x820)
/** Universal Serial Bus Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCUSB MMIO32(SYSCTL_BASE + 0x828)
/** Ethernet PHY Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCEPHY MMIO32(SYSCTL_BASE + 0x830)
/** Controller Area Network Deep-SleepMode Clock Gating Control */
#define SYSCTL_DCGCCAN MMIO32(SYSCTL_BASE + 0x834)
/** Analog-to-Digital Converter Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCADC MMIO32(SYSCTL_BASE + 0x838)
/** Analog Comparator Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCACMP MMIO32(SYSCTL_BASE + 0x83C)
/** Pulse Width Modulator Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCPWM MMIO32(SYSCTL_BASE + 0x840)
/** Quadrature Encoder Interface Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCQEI MMIO32(SYSCTL_BASE + 0x844)
/** EEPROM Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCEEPROM MMIO32(SYSCTL_BASE + 0x858)
/** CRC and Cryptographic Modules Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCCCM MMIO32(SYSCTL_BASE + 0x874)
/** LCD Controller Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCLCD MMIO32(SYSCTL_BASE + 0x890)
/** 1-Wire Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCOWIRE MMIO32(SYSCTL_BASE + 0x898)
/** Ethernet MAC Deep-Sleep Mode Clock Gating Control */
#define SYSCTL_DCGCEMAC MMIO32(SYSCTL_BASE + 0x89C)
/** Watchdog Timer Power Control */
#define SYSCTL_PCWD MMIO32(SYSCTL_BASE + 0x900)
/** 16/32-Bit General-Purpose Timer Power Control */
#define SYSCTL_PCTIMER MMIO32(SYSCTL_BASE + 0x904)
/** General-Purpose Input/Output Power Control */
#define SYSCTL_PCGPIO MMIO32(SYSCTL_BASE + 0x908)
/** Micro Direct Memory Access Power Control */
#define SYSCTL_PCDMA MMIO32(SYSCTL_BASE + 0x90C)
/** External Peripheral Interface Power Control */
#define SYSCTL_PCEPI MMIO32(SYSCTL_BASE + 0x910)
/** Hibernation Power Control */
#define SYSCTL_PCHIB MMIO32(SYSCTL_BASE + 0x914)
/** Universal Asynchronous Receiver/Transmitter Power Control */
#define SYSCTL_PCUART MMIO32(SYSCTL_BASE + 0x918)
/** Synchronous Serial Interface Power Control */
#define SYSCTL_PCSSI MMIO32(SYSCTL_BASE + 0x91C)
/** Inter-Integrated Circuit Power Control */
#define SYSCTL_PCI2C MMIO32(SYSCTL_BASE + 0x920)
/** Universal Serial Bus Power Control */
#define SYSCTL_PCUSB MMIO32(SYSCTL_BASE + 0x928)
/** Ethernet PHY Power Control */
#define SYSCTL_PCEPHY MMIO32(SYSCTL_BASE + 0x930)
/** Controller Area Network Power Control */
#define SYSCTL_PCCAN MMIO32(SYSCTL_BASE + 0x934)
/** Analog-to-Digital Converter Power Control */
#define SYSCTL_PCADC MMIO32(SYSCTL_BASE + 0x938)
/** Analog Comparator Power Control */
#define SYSCTL_PCACMP MMIO32(SYSCTL_BASE + 0x93C)
/** Pulse Width Modulator Power Control */
#define SYSCTL_PCPWM MMIO32(SYSCTL_BASE + 0x940)
/** Quadrature Encoder Interface Power Control */
#define SYSCTL_PCQEI MMIO32(SYSCTL_BASE + 0x944)
/** EEPROM Power Control */
#define SYSCTL_PCEEPROM MMIO32(SYSCTL_BASE + 0x958)
/** CRC and Cryptographic Modules Power Control */
#define SYSCTL_PCCCM MMIO32(SYSCTL_BASE + 0x974)
/** LCD Controller Power Control */
#define SYSCTL_PCLCD MMIO32(SYSCTL_BASE + 0x990)
/** 1-Wire Power Control */
#define SYSCTL_PCOWIRE MMIO32(SYSCTL_BASE + 0x998)
/** Ethernet MAC Power Control */
#define SYSCTL_PCEMAC MMIO32(SYSCTL_BASE + 0x99C)
/** Watchdog Timer Peripheral Ready */
#define SYSCTL_PRWD MMIO32(SYSCTL_BASE + 0xA00)
/** 16/32-Bit General-Purpose Timer Peripheral Ready */
#define SYSCTL_PRTIMER MMIO32(SYSCTL_BASE + 0xA04)
/** General-Purpose Input/Output Peripheral Ready */
#define SYSCTL_PRGPIO MMIO32(SYSCTL_BASE + 0xA08)
/** Micro Direct Memory Access Peripheral Ready */
#define SYSCTL_PRDMA MMIO32(SYSCTL_BASE + 0xA0C)
/** EPI Peripheral Ready */
#define SYSCTL_PREPI MMIO32(SYSCTL_BASE + 0xA10)
/** Hibernation Peripheral Ready */
#define SYSCTL_PRHIB MMIO32(SYSCTL_BASE + 0xA14)
/** Universal Asynchronous Receiver/Transmitter Peripheral Ready */
#define SYSCTL_PRUART MMIO32(SYSCTL_BASE + 0xA18)
/** Synchronous Serial Interface Peripheral Ready */
#define SYSCTL_PRSSI MMIO32(SYSCTL_BASE + 0xA1C)
/** Inter-Integrated Circuit Peripheral Ready */
#define SYSCTL_PRI2C MMIO32(SYSCTL_BASE + 0xA20)
/** Universal Serial Bus Peripheral Ready */
#define SYSCTL_PRUSB MMIO32(SYSCTL_BASE + 0xA28)
/** Ethernet PHY Peripheral Ready */
#define SYSCTL_PREPHY MMIO32(SYSCTL_BASE + 0xA30)
/** Controller Area Network Peripheral Ready */
#define SYSCTL_PRCAN MMIO32(SYSCTL_BASE + 0xA34)
/** Analog-to-Digital Converter Peripheral Ready */
#define SYSCTL_PRADC MMIO32(SYSCTL_BASE + 0xA38)
/** Analog Comparator Peripheral Ready */
#define SYSCTL_PRACMP MMIO32(SYSCTL_BASE + 0xA3C)
/** Pulse Width Modulator Peripheral Ready */
#define SYSCTL_PRPWM MMIO32(SYSCTL_BASE + 0xA40)
/** Quadrature Encoder Interface Peripheral Ready */
#define SYSCTL_PRQEI MMIO32(SYSCTL_BASE + 0xA44)
/** EEPROM Peripheral Ready */
#define SYSCTL_PREEPROM MMIO32(SYSCTL_BASE + 0xA58)
/** CRC and Cryptographic Modules Peripheral Ready */
#define SYSCTL_PRCCM MMIO32(SYSCTL_BASE + 0xA74)
/** LCD Controller Peripheral Ready */
#define SYSCTL_PRLCD MMIO32(SYSCTL_BASE + 0xA90)
/** 1-Wire Peripheral Ready */
#define SYSCTL_PROWIRE MMIO32(SYSCTL_BASE + 0xA98)
/** Ethernet MAC Peripheral Ready */
#define SYSCTL_PREMAC MMIO32(SYSCTL_BASE + 0xA9C)
/** Unique ID 0 */
#define SYSCTL_UNIQUEID0 MMIO32(SYSCTL_BASE + 0xF20)
/** Unique ID 1 */
#define SYSCTL_UNIQUEID1 MMIO32(SYSCTL_BASE + 0xF24)
/** Unique ID 2 */
#define SYSCTL_UNIQUEID2 MMIO32(SYSCTL_BASE + 0xF28)
/** Unique ID 3 */
#define SYSCTL_UNIQUEID3 MMIO32(SYSCTL_BASE + 0xF2C)
/**@}*/
/** @defgroup sysctl_did0_values SYSCTL_DID0 Values
* @brief System Control Device Identification 0 Register Values
@{*/
/** DID0 Version Shift */
#define SYSCTL_DID0_VER_SHIFT (28)
/** DID0 Version Mask */
#define SYSCTL_DID0_VER_MASK (0x7)
/** Device Class Shift */
#define SYSCTL_DID0_CLASS_SHIFT (16)
/** Device Class Mask */
#define SYSCTL_DID0_CLASS_MASK (0xFF)
/** Major Revision Shift */
#define SYSCTL_DID0_MAJOR_SHIFT (8)
/** Major Revision Mask */
#define SYSCTL_DID0_MAJOR_MASK (0xFF)
/** Minor Revision Shift */
#define SYSCTL_DID0_MINOR_SHIFT (0)
/** Minor Revision Mask */
#define SYSCTL_DID0_MINOR_MASK (0xFF)
/**@}*/
/** @defgroup sysctl_did1_values SYSCTL_DID1 Values
* @brief System Control Device Identification 1 Register Values
@{*/
/** DID1 Version Shift */
#define SYSCTL_DID1_VER_SHIFT (28)
/** DID1 Version Mask */
#define SYSCTL_DID1_VER_MASK (0xF)
/** Family Shift */
#define SYSCTL_DID1_FAM_SHIFT (24)
/** Family Mask */
#define SYSCTL_DID1_FAM_MASK (0xF)
/** Part Number Shift */
#define SYSCTL_DID1_PARTNO_SHIFT (16)
/** Part Number Mask */
#define SYSCTL_DID1_PARTNO_MASK (0xFF)
/** Package Pin Count Shift */
#define SYSCTL_DID1_PINCOUNT_SHIFT (13)
/** Package Pin Count Mask */
#define SYSCTL_DID1_PINCOUNT_MASK (0x7)
/** 128-pin package */
#define SYSCTL_DID1_PINCOUNT_128P (0x6)
/** 212-pin package */
#define SYSCTL_DID1_PINCOUNT_212P (0x7)
/** Temperature Range Shift */
#define SYSCTL_DID1_TEMP_SHIFT (5)
/** Temperature Range Mask */
#define SYSCTL_DID1_TEMP_MASK (0x7)
/** 0°C to +70°C */
#define SYSCTL_DID1_TEMP_COMMERCIAL (0x0)
/** -40°C to +85°C */
#define SYSCTL_DID1_TEMP_INDUSTRIAL (0x1)
/** -40°C to +105°C */
#define SYSCTL_DID1_TEMP_EXTENDED (0x2)
/** Package Type Shift */
#define SYSCTL_DID1_PKG_SHIFT (3)
/** Package Type Mask */
#define SYSCTL_DID1_PKG_MASK (0x3)
/** QFP package */
#define SYSCTL_DID1_PKG_QFP (0x1)
/** BGA package */
#define SYSCTL_DID1_PKG_BGA (0x2)
/** RoHS-compliance */
#define SYSCTL_DID1_ROHS (1 << 2)
/** Qualification Status Shift */
#define SYSCTL_DID1_QUAL_SHIFT (0)
/** Qualification Status Mask */
#define SYSCTL_DID1_QUAL_MASK (0x3)
/** Engineering Sample */
#define SYSCTL_DID1_QUAL_SAMPLE (0x0)
/** Pilot Production */
#define SYSCTL_DID1_QUAL_PILOT (0x1)
/** Fully Qualified */
#define SYSCTL_DID1_QUAL_QUALIFIED (0x2)
/**@}*/
/** @defgroup sysctl_ptboctl_values SYSCTL_PTBOCTL0 Values
* @brief System Control Power-Temp Brownout Control Register Values
@{*/
/** VDDA Under BOR Event Action Shift */
#define SYSCTL_PTBOCTL_VDDA_UBOR_SHIFT (8)
/** VDDA Under BOR Event Action Mask */
#define SYSCTL_PTBOCTL_VDDA_UBOR_MASK (0x3)
/** VDDA Under BOR Event Action - No action */
#define SYSCTL_PTBOCTL_VDDA_UBOR_NO (0x0)
/** VDDA Under BOR Event Action - System Control Interrupt */
#define SYSCTL_PTBOCTL_VDDA_UBOR_INT (0x1)
/** VDDA Under BOR Event Action - Non-maskable interrupt */
#define SYSCTL_PTBOCTL_VDDA_UBOR_NMI (0x2)
/** VDDA Under BOR Event Action - Reset */
#define SYSCTL_PTBOCTL_VDDA_UBOR_RESET (0x3)
/** VDD Under BOR Event Action Shift */
#define SYSCTL_PTBOCTL_VDD_UBOR_SHIFT (1)
/** VDD Under BOR Event Action Mask */
#define SYSCTL_PTBOCTL_VDD_UBOR_MASK (0x3)
/** VDD Under BOR Event Action - No action */
#define SYSCTL_PTBOCTL_VDD_UBOR_NO (0x0)
/** VDD Under BOR Event Action - System Control Interrupt */
#define SYSCTL_PTBOCTL_VDD_UBOR_INT (0x1)
/** VDD Under BOR Event Action - Non-maskable interrupt */
#define SYSCTL_PTBOCTL_VDD_UBOR_NMI (0x2)
/** VDD Under BOR Event Action - Reset */
#define SYSCTL_PTBOCTL_VDD_UBOR_RESET (0x3)
/**@}*/
/** @defgroup sysctl_ric_values SYSCTL_RIS Values
* @brief System Control Raw Interrupt Status Register Values
@{*/
/** MOSC Power Up Raw Interrupt Status */
#define SYSCTL_RIS_MOSCPUPRIS (1 << 8)
/** PLL Lock Raw Interrupt Status */
#define SYSCTL_RIS_PLLLRIS (1 << 6)
/** Main Oscillator Failure Raw Interrupt Status */
#define SYSCTL_RIS_MOFRIS (1 << 3)
/** Brown-Out Reset Raw Interrupt Status */
#define SYSCTL_RIS_BORRIS (1 << 1)
/**@}*/
/** @defgroup sysctl_imc_values SYSCTL_IMC Values
* @brief System Control Interrupt Mask Control Register Values
@{*/
/** MOSC Power Up Raw Interrupt Mask */
#define SYSCTL_IMC_MOSCPUPIM (1 << 8)
/** PLL Lock Raw Interrupt Mask */
#define SYSCTL_IMC_PLLLIM (1 << 6)
/** Main Oscillator Failure Raw Interrupt Mask */
#define SYSCTL_IMC_MOFIM (1 << 3)
/** Brown-Out Reset Raw Interrupt Mask */
#define SYSCTL_IMC_BORIM (1 << 1)
/**@}*/
/** @defgroup sysctl_misc_values SYSCTL_MISC Values
* @brief System Control Masked Interrupt Status and Clear Register Values
@{*/
/** MOSC Power Up Raw Interrupt Status*/
#define SYSCTL_MISC_MOSCPUPMIS (1 << 8)
/** PLL Lock Raw Interrupt Status */
#define SYSCTL_MISC_PLLLMIS (1 << 6)
/** Main Oscillator Failure Raw Interrupt Status */
#define SYSCTL_MISC_MOFMIS (1 << 3)
/** Brown-Out Reset Raw Interrupt Status */
#define SYSCTL_MISC_BORMIS (1 << 1)
/**@}*/
/** @defgroup sysctl_resc_values SYSCTL_RESC Values
* @brief System Control Reset Cause Register Values
@{*/
/** MOSC Failure Reset */
#define SYSCTL_RESC_MOSCFAIL (1 << 16)
/** HSSR Reset */
#define SYSCTL_RESC_HSSR (1 << 12)
/** Watchdog Timer 1 Reset */
#define SYSCTL_RESC_WDT1 (1 << 5)
/** Software Reset */
#define SYSCTL_RESC_SW (1 << 4)
/** Watchdog Timer 0 Reset */
#define SYSCTL_RESC_WDT0 (1 << 3)
/** Brown-Out Reset */
#define SYSCTL_RESC_BOR (1 << 2)
/** Power-On Reset */
#define SYSCTL_RESC_POR (1 << 1)
/** External Reset */
#define SYSCTL_RESC_EXT (1 << 0)
/**@}*/
/** @defgroup sysctl_pwrtc_values SYSCTL_PWRTC Values
* @brief System Control Power-Temperature Cause Register Values
@{*/
/** VDDA Under BOR Status */
#define SYSCTL_PWRTC_VDDA_UBOR (1 << 4)
/** VDD Under BOR Status */
#define SYSCTL_PWRTC_VDD_UBOR (1 << 0)
/**@}*/
/** @defgroup sysctl_nmic_values SYSCTL_NMIC Values
* @brief System Control NMI Cause Register Values
@{*/
/** MOSC Failure NMI */
#define SYSCTL_NMIC_MOSCFAIL (1 << 16)
/** Tamper Event NMI */
#define SYSCTL_NMIC_TAMPER (1 << 9)
/** WDT1 NMI */
#define SYSCTL_NMIC_WDT1 (1 << 5)
/** WDT0 NMI */
#define SYSCTL_NMIC_WDT0 (1 << 3)
/** Power/Brownout Event NMI */
#define SYSCTL_NMIC_POWER (1 << 2)
/** External Pin NMI */
#define SYSCTL_NMIC_EXTERNAL (1 << 0)
/**@}*/
/** @defgroup sysctl_moscctl_values SYSCTL_MOSCCTL Values
* @brief System Control Main Oscillator Control Register Values
@{*/
/** Oscillator Range */
#define SYSCTL_MOSCCTL_OSCRNG (1 << 4)
/** Power Down */
#define SYSCTL_MOSCCTL_PWRDN (1 << 3)
/** No MOSC or Crystal Connected */
#define SYSCTL_MOSCCTL_NOXTAL (1 << 2)
/** MOSC Failure Action */
#define SYSCTL_MOSCCTL_MOSCIM (1 << 1)
/** Clock Validation for MOSC */
#define SYSCTL_MOSCCTL_CVAL (1 << 0)
/**@}*/
/** @defgroup sysctl_rsclkcfg_values SYSCTL_RSCLKCFG Values
* @brief System Control Run and Sleep Mode Configuration Register Values
@{*/
/** Memory Timing Register Update */
#define SYSCTL_RSCLKCFG_MEMTIMU (1 << 31)
/** New PLLFREQ Accept */
#define SYSCTL_RSCLKCFG_NEWFREQ (1 << 30)
/** Auto Clock Gating */
#define SYSCTL_RSCLKCFG_ACG (1 << 29)
/** Use PLL */
#define SYSCTL_RSCLKCFG_USEPLL (1 << 28)
/** PLL Source Shift */
#define SYSCTL_RSCLKCFG_PLLSRC_SHIFT (24)
/** PLL Source Mask */
#define SYSCTL_RSCLKCFG_PLLSRC_MASK (0xF)
/** PLL Source - MOSC */
#define SYSCTL_RSCLKCFG_PLLSRC_MOSC (0x3)
/** Oscillator Source Shift */
#define SYSCTL_RSCLKCFG_OSCSRC_SHIFT (20)
/** Oscillator Source Mask */
#define SYSCTL_RSCLKCFG_OSCSRC_MASK (0xF)
/** Oscillator Source - LFIOSC */
#define SYSCTL_RSCLKCFG_OSCSRC_LFIOSC (0x2)
/** Oscillator Source - MOSC */
#define SYSCTL_RSCLKCFG_OSCSRC_MOSC (0x3)
/** Oscillator Source - RTCOSC */
#define SYSCTL_RSCLKCFG_OSCSRC_RTCOSC (0x4)
/** Oscillator System Clock Divisor Shift */
#define SYSCTL_RSCLKCFG_OSYSDIV_SHIFT (10)
/** Oscillator System Clock Divisor Mask */
#define SYSCTL_RSCLKCFG_OSYSDIV_MASK (0x3FF)
/** PLL System Clock Divisor Shift */
#define SYSCTL_RSCLKCFG_PSYSDIV_SHIFT (0)
/** PLL System Clock Divisor Mask */
#define SYSCTL_RSCLKCFG_PSYSDIV_MASK (0x3FF)
/**@}*/
/** @defgroup sysctl_memtim0_values SYSCTL_MEMTIM0 Values
* @brief System Control Memory Timing Parameter Register 0 for Main Flash
* and EEPROM Register Values
*
* CPU Frequency Range (f) in MHZ |FBCHT and EBCHT|FBCE and EBCE| FWS and EWS|
* -------------------------------| ------------- | ----------- | ---------- |
* 16 | 0x0 (1/2) | 0x1 | 0x0 |
* 16 < f <= 40 | 0x2 (1.5) | 0x0 | 0x1 |
* 40 < f <= 60 | 0x3 (2) | 0x0 | 0x2 |
* 60 < f <= 80 | 0x4 (2.5) | 0x0 | 0x3 |
* 80 < f <= 100 | 0x5 (3) | 0x0 | 0x4 |
* 100 < f <= 120 | 0x6 (3.5) | 0x0 | 0x5 |
*
@{*/
/** EEPROM Clock High Time Shift */
#define SYSCTL_MEMTIM0_EBCHT_SHIFT (22)
/** EEPROM Clock High Time Mask */
#define SYSCTL_MEMTIM0_EBCHT_MASK (0xF)
/** EBCHT - 0.5 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_0_POINT_5 (0x0)
/** EBCHT - 1 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_1 (0x1)
/** EBCHT - 1.5 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_1_POINT_5 (0x2)
/** EBCHT - 2 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_2 (0x3)
/** EBCHT - 2.5 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_2_POINT_5 (0x4)
/** EBCHT - 3 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_3 (0x5)
/** EBCHT - 3.5 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_3_POINT_5 (0x6)
/** EBCHT - 4 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_4 (0x7)
/** EBCHT - 4.5 sys clock period */
#define SYSCTL_MEMTIM0_EBCHT_4_POINT_5 (0x8)
/** EEPROM Bank Clock Edge */
#define SYSCTL_MEMTIM0_EBCE (1 << 21)
/** EEPROM Wait States Shift */
#define SYSCTL_MEMTIM0_EWS_SHIFT (16)
/** EEPROM Wait States Mask */
#define SYSCTL_MEMTIM0_EWS_MASK (0xF)
/** EWS - 1 wait state */
#define SYSCTL_MEMTIM0_EWS_1 (0x1)
/** EWS - 2 wait state */
#define SYSCTL_MEMTIM0_EWS_2 (0x2)
/** EWS - 3 wait state */
#define SYSCTL_MEMTIM0_EWS_3 (0x3)
/** EWS - 4 wait state */
#define SYSCTL_MEMTIM0_EWS_4 (0x4)
/** EWS - 5 wait state */
#define SYSCTL_MEMTIM0_EWS_5 (0x5)
/** EWS - 6 wait state */
#define SYSCTL_MEMTIM0_EWS_6 (0x6)
/** EWS - 7 wait state */
#define SYSCTL_MEMTIM0_EWS_7 (0x7)
/** Flash Clock High Time Shift */
#define SYSCTL_MEMTIM0_FBCHT_SHIFT (6)
/** Flash Clock High Time Mask */
#define SYSCTL_MEMTIM0_FBCHT_MASK (0xF)
/** FBCHT - 0.5 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_0_POINT_5 (0x0)
/** FBCHT - 1 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_1 (0x1)
/** FBCHT - 1.5 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_1_POINT_5 (0x2)
/** FBCHT - 2 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_2 (0x3)
/** FBCHT - 2.5 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_2_POINT_5 (0x4)
/** FBCHT - 3 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_3 (0x5)
/** FBCHT - 3.5 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_3_POINT_5 (0x6)
/** FBCHT - 4 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_4 (0x7)
/** FBCHT - 4.5 sys clock period */
#define SYSCTL_MEMTIM0_FBCHT_4_POINT_5 (0x8)
/** Flash Bank Clock Edge */
#define SYSCTL_MEMTIM0_FBCE (1 << 5)
/** Flash Wait States Shift */
#define SYSCTL_MEMTIM0_FWS_SHIFT (0)
/** Flash Wait States Mask */
#define SYSCTL_MEMTIM0_FWS_MASK (0xF)
/** FWS - 1 wait state */
#define SYSCTL_MEMTIM0_FWS_1 (0x1)
/** FWS - 2 wait state */
#define SYSCTL_MEMTIM0_FWS_2 (0x2)
/** FWS - 3 wait state */
#define SYSCTL_MEMTIM0_FWS_3 (0x3)
/** FWS - 4 wait state */
#define SYSCTL_MEMTIM0_FWS_4 (0x4)
/** FWS - 5 wait state */
#define SYSCTL_MEMTIM0_FWS_5 (0x5)
/** FWS - 6 wait state */
#define SYSCTL_MEMTIM0_FWS_6 (0x6)
/** FWS - 7 wait state */
#define SYSCTL_MEMTIM0_FWS_7 (0x7)
/**@}*/
/** @defgroup sysctl_altclkcfg_values SYSCTL_ALTCLKCFG Values
* @brief System Control Alternate Clock Configuration Register Values
@{*/
/** Alternate Clock Source Shift */
#define SYSCTL_ALTCLKCFG_ALTCLK_SHIFT (0)
/** Alternate Clock Source Mask */
#define SYSCTL_ALTCLKCFG_ALTCLK_MASK (0xF)
/** Alternate Clock Source - RTCOSC */
#define SYSCTL_ALTCLKCFG_ALTCLK_RTCOSC (0x3)
/** Alternate Clock Source - LFIOSC */
#define SYSCTL_ALTCLKCFG_ALTCLK_LFIOSC (0x4)
/**@}*/
/** @defgroup sysctl_dsclkcfg_values SYSCTL_DSCLKCFG Values
* @brief System Control Deep Sleep Clock Configuration Register Values
@{*/
/** PIOSC Power Down */
#define SYSCTL_DSCLKCFG_PIOSCPD (1 << 31)
/** MOSC Disable Power Down */
#define SYSCTL_DSCLKCFG_MOSCDPD (1 << 30)
/** Deep Sleep Oscillator Source Shift */
#define SYSCTL_DSCLKCFG_DSOSCSRC_SHIFT (20)
/** Deep Sleep Oscillator Source Mask */
#define SYSCTL_DSCLKCFG_DSOSCSRC_MASK (0xF)
/** Deep Sleep Oscillator Source - LFIOSC */
#define SYSCTL_DSCLKCFG_DSOSCSRC_LFIOSC (0x2)
/** Deep Sleep Oscillator Source - MOSC */
#define SYSCTL_DSCLKCFG_DSOSCSRC_MOSC (0x3)
/** Deep Sleep Oscillator Source - RTCOSC */
#define SYSCTL_DSCLKCFG_DSOSCSRC_RTCOSC (0x4)
/** Deep Sleep Clock Divisor Shift */
#define SYSCTL_DSCLKCFG_DSSYSDIV_SHIFT (0)
/** Deep Sleep Clock Divisor Mask */
#define SYSCTL_DSCLKCFG_DSSYSDIV_MASK (0x3FF)
/**@}*/
/** @defgroup sysctl_divsclk_values SYSCTL_DIVSCLK Values
* @brief System Control Divisor and Source Clock Configuration Register Values
@{*/
/** DIVSCLK Enable */
#define SYSCTL_DIVSCLK_EN (1 << 31)
/** Clock Source Shift */
#define SYSCTL_DIVSCLK_SRC_SHIFT (16)
/** Clock Source Mask */
#define SYSCTL_DIVSCLK_SRC_MASK (0x3)
/** Clock Source - PIOSCK */
#define SYSCTL_DIVSCLK_SRC_PIOSC (0x1)
/** Clock Source - MOSC */
#define SYSCTL_DIVSCLK_SRC_MOSC (0x2)
/** Divisor Value Shift */
#define SYSCTL_DIVSCLK_DIV_SHIFT (0)
/** Divisor Value Mask */
#define SYSCTL_DIVSCLK_DIV_MASK (0xF)
/** Divisor Value - 1 */
#define SYSCTL_DIVSCLK_DIV_1 (0x0)
/** Divisor Value - 2 */
#define SYSCTL_DIVSCLK_DIV_2 (0x1)
/**@}*/
/** @defgroup sysctl_sysprop_values SYSCTL_SYSPROP Values
* @brief System Control System Properties Register Values
@{*/
/** LDO Sleep Mode Enable */
#define SYSCTL_SYSPROP_LDOSME (1 << 17)
/** Temp Sense Power Down Enable */
#define SYSCTL_SYSPROP_TSPDE (1 << 16)
/** PIOSC Power Down Present */
#define SYSCTL_SYSPROP_PIOSCPDE (1 << 12)
/** SRAM Sleep/Deep-Sleep Standby Mode Present */
#define SYSCTL_SYSPROP_SRAMSM (1 << 11)
/** SRAM Sleep/Deep-Sleep Low Power Mode Present */
#define SYSCTL_SYSPROP_SRAMLPM (1 << 10)
/** Flash Memory Sleep/Deep-Sleep Low Power Mode Present */
#define SYSCTL_SYSPROP_FLASHLPM (1 << 8)
/** Automatic LDO Sequence Control Present */
#define SYSCTL_SYSPROP_LDOSEQ (1 << 5)
/** FPU Present */
#define SYSCTL_SYSPROP_FPU (1 << 0)
/**@}*/
/** @defgroup sysctl_piosccal_values SYSCTL_PIOSCCAL Values
* @brief System Control Precision Internal Oscillator
* Calibration Register Values
@{*/
/** Use User Trim Value */
#define SYSCTL_PIOSCCAL_UTEN (1 << 31)
/** Start Calibration */
#define SYSCTL_PIOSCCAL_CAL (1 << 9)
/** Update Trim */
#define SYSCTL_PIOSCCAL_UPDATE (1 << 8)
/** User Trim Value Shift */
#define SYSCTL_PIOSCCAL_UT_SHIFT (0)
/** User Trim Value Mask */
#define SYSCTL_PIOSCCAL_UT_MASK (0x7F)
/**@}*/
/** @defgroup sysctl_pioscstat_values SYSCTL_PIOSCSTAT Values
* @brief System Control Precision Internal Oscillator
* Statistics Register Values
@{*/
/** Default Trim Value Shift */
#define SYSCTL_PIOSCSTAT_DT_SHIFT (16)
/** Default Trim Value Mask */
#define SYSCTL_PIOSCSTAT_DT_MASK (0x7F)
/** Calibration Result Shift */
#define SYSCTL_PIOSCSTAT_RESULT_SHIFT (8)
/** Calibration Result Mask */
#define SYSCTL_PIOSCSTAT_RESULT_MASK (0x3)
/** Calibration Not Attempted */
#define SYSCTL_PIOSCSTAT_RESULT_NOT_ATTEMPT (0x0)
/** Calibration Completed */
#define SYSCTL_PIOSCSTAT_RESULT_COMPLETE (0x1)
/** Calibration Failed */
#define SYSCTL_PIOSCSTAT_RESULT_FAIL (0x2)
/** Calibration Value Shift */
#define SYSCTL_PIOSCSTAT_CT_SHIFT (0)
/** Calibration Value Mask */
#define SYSCTL_PIOSCSTAT_CT_MASK (0x7F)
/**@}*/
/** @defgroup sysctl_pllfreq0_values SYSCTL_PLLFREQ0 Values
* @brief System Control PLL Frequency 0 Register Values
@{*/
/** PLL Power */
#define SYSCTL_PLLFREQ0_PLLPWR (1 << 23)
/** PLL M Fractional Value Shift */
#define SYSCTL_PLLFREQ0_MFRAC_SHIFT (10)
/** PLL M Fractional Value Mask */
#define SYSCTL_PLLFREQ0_MFRAC_MASK (0x3FF)
/** PLL M Integer Value Shift */
#define SYSCTL_PLLFREQ0_MINT_SHIFT (0)
/** PLL M Integer Value Mask */
#define SYSCTL_PLLFREQ0_MINT_MASK (0x3FF)
/**@}*/
/** @defgroup sysctl_pllfreq1_values SYSCTL_PLLFREQ1 Values
* @brief System Control PLL Frequency 1 Register Values
@{*/
/** PLL Q Value Shift */
#define SYSCTL_PLLFREQ1_Q_SHIFT (8)
/** PLL Q Value Mask */
#define SYSCTL_PLLFREQ1_Q_MASK (0x1F)
/** PLL N Value Shift */
#define SYSCTL_PLLFREQ1_N_SHIFT (0)
/** PLL N Value Mask */
#define SYSCTL_PLLFREQ1_N_MASK (0x1F)
/**@}*/
/** @defgroup sysctl_pllstat_values SYSCTL_PLLSTAT Values
* @brief System Control PLL Status Register Values
@{*/
/** PLL Lock */
#define SYSCTL_PLLSTAT_LOCK (1 << 0)
/**@}*/
/** @defgroup sysctl_slppwrcfg_values SYSCTL_SLPPWRCFG Values
* @brief System Control Sleep Power Configuration Register Values
@{*/
/** Flash Power Modes Shift */
#define SYSCTL_SLPPWRCFG_FLASHPM_SHIFT (4)
/** Flash Power Modes Mask */
#define SYSCTL_SLPPWRCFG_FLASHPM_MASK (0x3)
/** Flash Power Mode - Active mode */
#define SYSCTL_SLPPWRCFG_FLASHPM_ACTIVE (0x0)
/** Flash Power Mode - Low-Power Mode */
#define SYSCTL_SLPPWRCFG_FLASHPM_LP (0x2)
/** SRAM Power Modes Shift */
#define SYSCTL_SLPPWRCFG_SRAMPM_SHIFT (0)
/** SRAM Power Modes Mask */
#define SYSCTL_SLPPWRCFG_SRAMPM_MASK (0x3)
/** SRAM Power Mode - Active mode */
#define SYSCTL_SLPPWRCFG_SRAMPM_ACTIVE (0x0)
/** SRAM Power Mode - Standby mode */
#define SYSCTL_SLPPWRCFG_SRAMPM_STANDBY (0x1)
/** SRAM Power Mode - Low-Power Mode */
#define SYSCTL_SLPPWRCFG_SRAMPM_LP (0x3)
/**@}*/
/** @defgroup sysctl_dslppwrcfg_values SYSCTL_DSLPPWRCFG Values
* @brief System Control Deep-Sleep Power Configuration Register Values
@{*/
/** LDO Sleep Mode */
#define SYSCTL_DSLPPWRCFG_LDOSM (1 << 9)
/** Temp Sense Power Down */
#define SYSCTL_DSLPPWRCFG_TSPD (1 << 8)
/** Flash Power Modes Shift */
#define SYSCTL_DSLPPWRCFG_FLASHPM_SHIFT (4)
/** Flash Power Modes Mask */
#define SYSCTL_DSLPPWRCFG_FLASHPM_MASK (0x3)
/** Flash Power Mode - Active mode */
#define SYSCTL_DSLPPWRCFG_FLASHPM_ACTIVE (0x0)
/** Flash Power Mode - Low-Power Mode */
#define SYSCTL_DSLPPWRCFG_FLASHPM_LP (0x2)
/** SRAM Power Modes Shift */
#define SYSCTL_DSLPPWRCFG_SRAMPM_SHIFT (0)
/** SRAM Power Modes Mask */
#define SYSCTL_DSLPPWRCFG_SRAMPM_MASK (0x3)
/** SRAM Power Mode - Active mode */
#define SYSCTL_DSLPPWRCFG_SRAMPM_ACTIVE (0x0)
/** SRAM Power Mode - Standby mode */
#define SYSCTL_DSLPPWRCFG_SRAMPM_STANDBY (0x1)
/** SRAM Power Mode - Low-Power Mode */
#define SYSCTL_DSLPPWRCFG_SRAMPM_LP (0x3)
/**@}*/
/** @defgroup sysctl_nvmstat_values SYSCTL_NVMSTAT Values
* @brief System Control Non-Volatile Memory Information Register Values
@{*/
/** 32 Word Flash Write Buffer Available */
#define SYSCTL_NVMSTAT_FWB (1 << 0)
/**@}*/
/** @defgroup sysctl_ldospctl_values SYSCTL_LDOSPCTL Values
* @brief System Control LDO Sleep Power Control Register Values
@{*/
/** Voltage Adjust Enable */
#define SYSCTL_LDOSPCTL_VADJEN (1 << 31)
/** LDO Out Voltage Shift */
#define SYSCTL_LDOSPCTL_VLDO_SHIFT (0)
/** LDO Out Voltage Mask */
#define SYSCTL_LDOSPCTL_VLDO_MASK (0xFF)
/** LDO Out Voltage - 0.90V */
#define SYSCTL_LDOSPCTL_VLDO_0_POINT_90 (0x12)
/** LDO Out Voltage - 0.95V */
#define SYSCTL_LDOSPCTL_VLDO_0_POINT_95 (0x13)
/** LDO Out Voltage - 1.00V */
#define SYSCTL_LDOSPCTL_VLDO_1_POINT_00 (0x14)
/** LDO Out Voltage - 1.05V */
#define SYSCTL_LDOSPCTL_VLDO_1_POINT_05 (0x15)
/** LDO Out Voltage - 1.10V */
#define SYSCTL_LDOSPCTL_VLDO_1_POINT_10 (0x16)
/** LDO Out Voltage - 1.15V */
#define SYSCTL_LDOSPCTL_VLDO_1_POINT_15 (0x17)
/** LDO Out Voltage - 1.20V */
#define SYSCTL_LDOSPCTL_VLDO_1_POINT_20 (0x18)
/**@}*/
/** @defgroup sysctl_ldospcal_values SYSCTL_LDOSPCAL Values
* @brief System Control LDO Sleep Power Calibration Register Values
@{*/
/** Sleep With PLL Shift */
#define SYSCTL_LDOSPCAL_WITHPLL_SHIFT (8)
/** Sleep With PLL Mask */
#define SYSCTL_LDOSPCAL_WITHPLL_MASK (0xFF)
/** Sleep Without PLL Shift */
#define SYSCTL_LDOSPCAL_NOPLL_SHIFT (0)
/** Sleep Without PLL Mask */
#define SYSCTL_LDOSPCAL_NOPLL_MASK (0xFF)
/**@}*/
/** @defgroup sysctl_ldodpctl_values SYSCTL_LDODPCTL Values
* @brief System Control LDO Deep-Sleep Power Control Register Values
@{*/
/** Voltage Adjust Enable */
#define SYSCTL_LDODPCTL_VADJEN (1 << 31)
/** LDO Out Voltage Shift */
#define SYSCTL_LDODPCTL_VLDO_SHIFT (0)
/** LDO Out Voltage Mask */
#define SYSCTL_LDODPCTL_VLDO_MASK (0xFF)
/** LDO Out Voltage - 0.90V */
#define SYSCTL_LDODPCTL_VLDO_0_POINT_90 (0x12)
/** LDO Out Voltage - 0.95V */
#define SYSCTL_LDODPCTL_VLDO_0_POINT_95 (0x13)
/** LDO Out Voltage - 1.00V */
#define SYSCTL_LDODPCTL_VLDO_1_POINT_00 (0x14)
/** LDO Out Voltage - 1.05V */
#define SYSCTL_LDODPCTL_VLDO_1_POINT_05 (0x15)
/** LDO Out Voltage - 1.10V */
#define SYSCTL_LDODPCTL_VLDO_1_POINT_10 (0x16)
/** LDO Out Voltage - 1.15V */
#define SYSCTL_LDODPCTL_VLDO_1_POINT_15 (0x17)
/** LDO Out Voltage - 1.20V */
#define SYSCTL_LDODPCTL_VLDO_1_POINT_20 (0x18)
/**@}*/
/** @defgroup sysctl_ldodpcal_values SYSCTL_LDODPCAL Values
* @brief System Control LDO Deep-Sleep Power Calibration Register Values
@{*/
/** Deep-Sleep Without PLL Shift */
#define SYSCTL_LDODPCAL_NOPLL_SHIFT (8)
/** Deep-Sleep Without PLL Mask */
#define SYSCTL_LDODPCAL_NOPLL_MASK (0xFF)
/** Deep-Sleep With IOSC Shift */
#define SYSCTL_LDODPCAL_30KHZ_SHIFT (0)
/** Deep-Sleep With IOSC Mask */
#define SYSCTL_LDODPCAL_30KHZ_MASK (0xFF)
/**@}*/
/** @defgroup sysctl_sdpmst_values SYSCTL_SDPMST Values
* @brief System Control Sleep/Deep-Sleep Power Mode Status Register Values
@{*/
/** LDO Update Active */
#define SYSCTL_SDPMST_LDOUA (1 << 19)
/** Flash Memory in Low Power State */
#define SYSCTL_SDPMST_FLASHLP (1 << 18)
/** Sleep or Deep-Sleep Mode */
#define SYSCTL_SDPMST_LOWPWR (1 << 17)
/** Sleep or Deep-Sleep Power Request Active */
#define SYSCTL_SDPMST_PRACT (1 << 16)
/** PIOSC Power Down Request Warning */
#define SYSCTL_SDPMST_PPDW (1 << 7)
/** VLDO Value Above Max Error */
#define SYSCTL_SDPMST_LMAXERR (1 << 6)
/** VLDO Value Below Minimum Error in Sleep Mode */
#define SYSCTL_SDPMST_LSMINERR (1 << 4)
/** VLDO Value Below Minimum Error in Deep-Sleep Mode */
#define SYSCTL_SDPMST_LDMINERR (1 << 3)
/** PIOSC Power Down Request Error */
#define SYSCTL_SDPMST_PPDERR (1 << 2)
/** Flash Memory Power Down Request Error */
#define SYSCTL_SDPMST_FPDERR (1 << 1)
/** SRAM Power Down Request Error */
#define SYSCTL_SDPMST_SPDERR (1 << 0)
/**@}*/
/** @defgroup sysctl_resbehavctl_values SYSCTL_RESBEHAVCTL Values
* @brief System Control Reset Behavior Control Register Values
@{*/
/** Reset Operation - System Reset */
#define SYSCTL_RESBEHAVCTL_SYSRES (0x2)
/** Reset Operation - Power-On-Reset */
#define SYSCTL_RESBEHAVCTL_POR (0x3)
/** Watchdog 1 Reset Operation Shift */
#define SYSCTL_RESBEHAVCTL_WDOG1_SHIFT (6)
/** Watchdog 1 Reset Operation Mask */
#define SYSCTL_RESBEHAVCTL_WDOG1_MASK (0x3)
/** Watchdog 0 Reset Operation Shift */
#define SYSCTL_RESBEHAVCTL_WDOG0_SHIFT (4)
/** Watchdog 0 Reset Operation Mask */
#define SYSCTL_RESBEHAVCTL_WDOG0_MASK (0x3)
/** BOR Reset Operation Shift */
#define SYSCTL_RESBEHAVCTL_BOR_SHIFT (2)
/** BOR Reset Operation Shift */
#define SYSCTL_RESBEHAVCTL_BOR_MASK (0x3)
/** EXT Reset Operation Shift */
#define SYSCTL_RESBEHAVCTL_EXTRES_SHIFT (2)
/** EXT Reset Operation Mask */
#define SYSCTL_RESBEHAVCTL_EXTRES_MASK (0x3)
/**@}*/
/** @defgroup sysctl_hssr_values SYSCTL_HSSR Values
* @brief System Control Hardware System Service Request Register Values
@{*/
/** Write Key Shift */
#define SYSCTL_HSSR_KEY_SHIFT (24)
/** Write Key Mask */
#define SYSCTL_HSSR_KEY_MASK (0xFF)
/** Key Value for initiate request */
#define SYSCTL_HSSR_KEY_VALUE (0xCA)
/** Command Descriptor Pointer Shift */
#define SYSCTL_HSSR_CDOFF_SHIFT (0)
/** Command Descriptor Pointer Mask */
#define SYSCTL_HSSR_CDOFF_MASK (0xFFFFFF)
/** Command Descriptor - No Request */
#define SYSCTL_HSSR_CDOFF_NO_REQUEST (0x000000)
/** Command Descriptor - Error Or Incomplete Request */
#define SYSCTL_HSSR_CDOFF_ERROR (0xFFFFFF)
/**@}*/
/** @defgroup sysctl_usbpds_values SYSCTL_USBPDS Values
* @brief System Control USB Power Domain Status Register Values
@{*/
/** Memory Array Power Status Shift */
#define SYSCTL_USBPDS_MEMSTAT_SHIFT (2)
/** Memory Array Power Status Mask */
#define SYSCTL_USBPDS_MEMSTAT_MASK (0x3)
/** Memory Array Power Status - Off */
#define SYSCTL_USBPDS_MEMSTAT_ARR_OFF (0x0)
/** Memory Array Power Status - SRAM Retention */
#define SYSCTL_USBPDS_MEMSTAT_SRAM_RET (0x1)
/** Memory Array Power Status - On */
#define SYSCTL_USBPDS_MEMSTAT_ARR_ON (0x3)
/** Power Domain Status Shift */
#define SYSCTL_USBPDS_PWRSTAT_SHIFT (0)
/** Power Domain Status Mask */
#define SYSCTL_USBPDS_PWRSTAT_MASK (0x3)
/** Power Domain Status - Off */
#define SYSCTL_USBPDS_PWRSTAT_OFF (0x0)
/** Power Domain Status - On */
#define SYSCTL_USBPDS_PWRSTAT_ON (0x3)
/**@}*/
/** @defgroup sysctl_usbmpc_values SYSCTL_USBMPC Values
* @brief System Control USB Memory Power Control Register Values
@{*/
/** Memory Array Power Control Shift */
#define SYSCTL_USBMPC_PWRCTL_SHIFT (0)
/** Memory Array Power Control Mask */
#define SYSCTL_USBMPC_PWRCTL_MASK (0x3)
/** Memory Array Power Control - Off */
#define SYSCTL_USBMPC_PWRCTL_ARR_OFF (0x0)
/** Memory Array Power Control - SRAM Retention */
#define SYSCTL_USBMPC_PWRCTL_SRAM_RET (0x1)
/** Memory Array Power Control - On */
#define SYSCTL_USBMPC_PWRCTL_ARR_ON (0x3)
/**@}*/
/** @defgroup sysctl_emacpds_values SYSCTL_EMACPDS Values
* @brief System Control Ethernet MAC Power Domain Status Register Values
@{*/
/** Memory Array Power Status Shift */
#define SYSCTL_EMACPDS_MEMSTAT_SHIFT (2)
/** Memory Array Power Status Mask */
#define SYSCTL_EMACPDS_MEMSTAT_MASK (0x3)
/** Memory Array Power Status - Off */
#define SYSCTL_EMACPDS_MEMSTAT_ARR_OFF (0x0)
/** Memory Array Power Status - On */
#define SYSCTL_EMACPDS_MEMSTAT_ARR_ON (0x3)
/** Power Domain Status Shift*/
#define SYSCTL_EMACPDS_PWRSTAT_SHIFT (0)
/** Power Domain Status Mask */
#define SYSCTL_EMACPDS_PWRSTAT_MASK (0x3)
/** Power Domain Status - Off */
#define SYSCTL_EMACPDS_PWRSTAT_OFF (0x0)
/** Power Domain Status - On */
#define SYSCTL_EMACPDS_PWRSTAT_ON (0x3)
/**@}*/
/** @defgroup sysctl_emacmpc_values SYSCTL_EMACMPC Values
* @brief System Control Ethernet MAC Memory Power Control Register Values
@{*/
/** Memory Array Power Control Shift */
#define SYSCTL_EMACMPC_PWRCTL_SHIFT (0)
/** Memory Array Power Control Mask */
#define SYSCTL_EMACMPC_PWRCTL_MASK (0x3)
/** Memory Array Power Control - Off */
#define SYSCTL_EMACMPC_PWRCTL_ARR_OFF (0x0)
/** Memory Array Power Control - On */
#define SYSCTL_EMACMPC_PWRCTL_ARR_ON (0x3)
/**@}*/
/** @defgroup sysctl_lcdpds_values SYSCTL_LCDPDS Values
* @brief System Control LCD Power Domain Status Register Values
@{*/
/** Memory Array Power Status Shift */
#define SYSCTL_LCDPDS_MEMSTAT_SHIFT (2)
/** Memory Array Power Status Mask */
#define SYSCTL_LCDPDS_MEMSTAT_MASK (0x3)
/** Memory Array Power Status - Off */
#define SYSCTL_LCDPDS_MEMSTAT_ARR_OFF (0x0)
/** Memory Array Power Status - On */
#define SYSCTL_LCDPDS_MEMSTAT_ARR_ON (0x3)
/** Power Domain Status Shift*/
#define SYSCTL_LCDPDS_PWRSTAT_SHIFT (0)
/** Power Domain Status Mask */
#define SYSCTL_LCDPDS_PWRSTAT_MASK (0x3)
/** Power Domain Status - Off */
#define SYSCTL_LCDPDS_PWRSTAT_OFF (0x0)
/** Power Domain Status - On */
#define SYSCTL_LCDPDS_PWRSTAT_ON (0x3)
/**@}*/
/** @defgroup sysctl_lcdmpc_values SYSCTL_LCDMPC Values
* @brief System Control LCD Memory Power Control Register Values
@{*/
/** Memory Array Power Control Shift */
#define SYSCTL_LCDMPC_PWRCTL_SHIFT (0)
/** Memory Array Power Control Mask */
#define SYSCTL_LCDMPC_PWRCTL_MASK (0x3)
/** Memory Array Power Control - Off */
#define SYSCTL_LCDMPC_PWRCTL_ARR_OFF (0x0)
/** Memory Array Power Control - On */
#define SYSCTL_LCDMPC_PWRCTL_ARR_ON (0x3)
/**@}*/
/** @defgroup sysctl_can0pds_values SYSCTL_CAN0PDS Values
* @brief System Control CAN 0 Power Domain Status Register Values
@{*/
/** Memory Array Power Status Shift */
#define SYSCTL_CAN0PDS_MEMSTAT_SHIFT (2)
/** Memory Array Power Status Mask */
#define SYSCTL_CAN0PDS_MEMSTAT_MASK (0x3)
/** Memory Array Power Status - Off */
#define SYSCTL_CAN0PDS_MEMSTAT_ARR_OFF (0x0)
/** Memory Array Power Status - On */
#define SYSCTL_CAN0PDS_MEMSTAT_ARR_ON (0x3)
/** Power Domain Status Shift*/
#define SYSCTL_CAN0PDS_PWRSTAT_SHIFT (0)
/** Power Domain Status Mask */
#define SYSCTL_CAN0PDS_PWRSTAT_MASK (0x3)
/** Power Domain Status - Off */
#define SYSCTL_CAN0PDS_PWRSTAT_OFF (0x0)
/** Power Domain Status - On */
#define SYSCTL_CAN0PDS_PWRSTAT_ON (0x3)
/**@}*/
/** @defgroup sysctl_can0mpc_values SYSCTL_CAN0MPC Values
* @brief System Control CAN 0 Memory Power Control Register Values
@{*/
/** Memory Array Power Control Shift */
#define SYSCTL_CAN0MPC_PWRCTL_SHIFT (0)
/** Memory Array Power Control Mask */
#define SYSCTL_CAN0MPC_PWRCTL_MASK (0x3)
/** Memory Array Power Control - Off */
#define SYSCTL_CAN0MPC_PWRCTL_ARR_OFF (0x0)
/** Memory Array Power Control - On */
#define SYSCTL_CAN0MPC_PWRCTL_ARR_ON (0x3)
/**@}*/
/** @defgroup sysctl_can1pds_values SYSCTL_CAN1PDS Values
* @brief System Control CAN 1 Power Domain Status Register Values
@{*/
/** Memory Array Power Status Shift */
#define SYSCTL_CAN1PDS_MEMSTAT_SHIFT (2)
/** Memory Array Power Status Mask */
#define SYSCTL_CAN1PDS_MEMSTAT_MASK (0x3)
/** Memory Array Power Status - Off */
#define SYSCTL_CAN1PDS_MEMSTAT_ARR_OFF (0x0)
/** Memory Array Power Status - On */
#define SYSCTL_CAN1PDS_MEMSTAT_ARR_ON (0x3)
/** Power Domain Status Shift*/
#define SYSCTL_CAN1PDS_PWRSTAT_SHIFT (0)
/** Power Domain Status Mask */
#define SYSCTL_CAN1PDS_PWRSTAT_MASK (0x3)
/** Power Domain Status - Off */
#define SYSCTL_CAN1PDS_PWRSTAT_OFF (0x0)
/** Power Domain Status - On */
#define SYSCTL_CAN1PDS_PWRSTAT_ON (0x3)
/**@}*/
/** @defgroup sysctl_can1mpc_values SYSCTL_CAN1MPC Values
* @brief System Control CAN 1 Memory Power Control Register Values
@{*/
/** Memory Array Power Control Shift */
#define SYSCTL_CAN1MPC_PWRCTL_SHIFT (0)
/** Memory Array Power Control Mask */
#define SYSCTL_CAN1MPC_PWRCTL_MASK (0x3)
/** Memory Array Power Control - Off */
#define SYSCTL_CAN1MPC_PWRCTL_ARR_OFF (0x0)
/** Memory Array Power Control - On */
#define SYSCTL_CAN1MPC_PWRCTL_ARR_ON (0x3)
/**@}*/
/**
* @brief Clock mode definitions
* The definitions are specified in the form offset from
* SYSCTL_BASE
* @li CLOCK_RUN - Run mode
* @li CLOCK_SLEEP - Sleep mode
* @li CLOCK_DEEP_SLEEP - Deep-Sleep Mode
*/
enum msp432_clock_mode {
CLOCK_RUN = 0x600,
CLOCK_SLEEP = 0x700,
CLOCK_DEEP_SLEEP = 0x800
};
/**
* @brief Power mode definitions
*
* @li POWER_DISABLE - Module is not powered and does not receive a clock
* @li POWER_ENABLE - Module is powered but does not receive a clock
*
* @note If the module is in run, sleep or deep-sleep mode - the module
* is powered and receives a clock regardless of the value of power mode.
*/
enum msp432_power_mode {
POWER_DISABLE = false,
POWER_ENABLE = true
};
#define _REG_BIT(base, bit) (((base) << 5) + (bit))
/**
* @brief Peripheral list definitions
* The definitions are specified in the form
* 31:5 register offset from first register for SR, PP, RCGC,
* SCGC, DCGC, PC, PR
* 4:0 bit offset for the given peripheral
*/
enum msp432_periph {
PERIPH_WD0 = _REG_BIT(0x00, 0),
PERIPH_WD1,
PERIPH_TIMER0 = _REG_BIT(0x04, 0),
PERIPH_TIMER1,
PERIPH_TIMER2,
PERIPH_TIMER3,
PERIPH_TIMER4,
PERIPH_TIMER5,
PERIPH_TIMER6,
PERIPH_TIMER7,
PERIPH_GPIOA = _REG_BIT(0x08, 0),
PERIPH_GPIOB,
PERIPH_GPIOC,
PERIPH_GPIOD,
PERIPH_GPIOE,
PERIPH_GPIOF,
PERIPH_GPIOG,
PERIPH_GPIOH,
PERIPH_GPIOJ,
PERIPH_GPIOK,
PERIPH_GPIOL,
PERIPH_GPIOM,
PERIPH_GPION,
PERIPH_GPIOP,
PERIPH_GPIOQ,
PERIPH_GPIOR,
PERIPH_GPIOS,
PERIPH_GPIOT,
PERIPH_DMA = _REG_BIT(0x0C, 0),
PERIPH_EPI = _REG_BIT(0x10, 0),
PERIPH_HIB = _REG_BIT(0x14, 0),
PERIPH_UART0 = _REG_BIT(0x18, 0),
PERIPH_UART1,
PERIPH_UART2,
PERIPH_UART3,
PERIPH_UART4,
PERIPH_UART5,
PERIPH_UART6,
PERIPH_UART7,
PERIPH_SSI0 = _REG_BIT(0x1C, 0),
PERIPH_SSI1,
PERIPH_SSI2,
PERIPH_SSI3,
PERIPH_I2C0 = _REG_BIT(0x20, 0),
PERIPH_I2C1,
PERIPH_I2C2,
PERIPH_I2C3,
PERIPH_I2C4,
PERIPH_I2C5,
PERIPH_I2C6,
PERIPH_I2C7,
PERIPH_I2C8,
PERIPH_I2C9,
PERIPH_USB0 = _REG_BIT(0x28, 0),
PERIPH_EPHY = _REG_BIT(0x30, 0),
PERIPH_CAN0 = _REG_BIT(0x34, 0),
PERIPH_CAN1,
PERIPH_ADC0 = _REG_BIT(0x38, 0),
PERIPH_ADC1,
PERIPH_ACMP = _REG_BIT(0x3C, 0),
PERIPH_PWM = _REG_BIT(0x40, 0),
PERIPH_QEI = _REG_BIT(0x44, 0),
PERIPH_EEPROM = _REG_BIT(0x58, 0),
PERIPH_CCM = _REG_BIT(0x74, 0),
PERIPH_LCD = _REG_BIT(0x90, 0),
PERIPH_OWIRE = _REG_BIT(0x98, 0),
PERIPH_EMAC = _REG_BIT(0x9C, 0),
PERIPH_PRB = _REG_BIT(0xA0, 0)
};
#undef _REG_BIT
/* Function prototypes ------------------------------------------------------ */
BEGIN_DECLS
void sysctl_periph_clock_enable(enum msp432_clock_mode clock_mode,
enum msp432_periph periph);
void sysctl_periph_clock_disable(enum msp432_clock_mode clock_mode,
enum msp432_periph periph);
void sysctl_periph_reset(enum msp432_periph periph);
void sysctl_periph_clear_reset(enum msp432_periph periph);
bool sysctl_periph_is_present(enum msp432_periph periph);
bool sysctl_periph_is_ready(enum msp432_periph periph);
void sysctl_periph_set_power_state(enum msp432_power_mode power_mode,
enum msp432_periph periph);
END_DECLS
/**@}*/
#endif /* MSP432E4_SYSTEMCONTROL_H */