# SYSCTL Module

System Control (SysCtl) determines the overall operation of the device. The API provides functions to configure the clocking of the device, the set of peripherals that are enabled, the windowed watchdog, the NMI watchdog, and low-power modes. It also provides functions to handle and obtain information about resets and missing clock detection failures.

group `sysctl_api`

  Defines

  `SYSCTL_CLKSRCCTL_DELAY` asm(" RPT #250 || NOP \n RPT #50 || NOP")
  `SYSCTL_REGWRITE_DELAY` asm(" RPT #69 || NOP")
  `SYSCTL_WD_CHKBITS` 0x0028U
  `SYSCTL_WD_ENRSTKEY` 0x0055U
  `SYSCTL_WD_RSTKEY` 0x00AAU
  `SYSCTL_PERIPH_REG_M` 0x001FU
  `SYSCTL_PERIPH_REG_S` 0x0000U
  `SYSCTL_PERIPH_BIT_M` 0x1F00U
  `SYSCTL_PERIPH_BIT_S` 0x0008U
  `SYSCTL_REG_KEY` 0xA5A50000U
  `SYSCTL_PLL_KEY` 0XCAFE0000U
  `SYSCTL_ETHERCATCLKCTL_DIVSRCSEL_S` 0x0U
  `SYSCTL_ETHERCATCLKCTL_PHYCLKEN_S` 0x8U
  `SYSCTL_CLBCLKCTL_TILECLKDIV_S` 0x4U
  `SYSCTL_TYPE_LOCK_S` 0xFU
  `SYSCTL_LPM_IDLE` 0x0000U
  `SYSCTL_LPM_STANDBY` 0x0001U
  `SYSCTL_LPM_HALT` 0x0002U
  `SYSCTL_CPUSEL_DAC_S` 0x10U
  `SYSCTL_DEFAULT_OSC_FREQ` 10000000U
  `SYSCTL_BOOT_ROM_STATUS` 0x0002U
  `SYSCTL_BOOT_ROM_POR` 0x2000U
  `SYSCTL_BOOT_ROM_XRS` 0x1000U
  `Device_cal` ((void (*)(void))((uintptr_t)0x003faae3))
  `SYSCTL_SYSDIV_M` 0x00007F00UL
  `SYSCTL_SYSDIV_S` 8U
  `SYSCTL_REFDIV_M` 0x007C0000UL
  `SYSCTL_REFDIV_S` 18U
  `SYSCTL_ODIV_M` 0x0F800000UL
  `SYSCTL_ODIV_S` 23U
  `SYSCTL_REFDIV`(x) ((((uint32_t)(x) - 1U) << SYSCTL_REFDIV_S

  ) & \

  SYSCTL_REFDIV_M)

    Macro to format Clock divider value. x is a number from 1 to 32.

  `SYSCTL_ODIV`(x) ((((uint32_t)(x) - 1U) << SYSCTL_ODIV_S

  ) & \

  SYSCTL_ODIV_M)

    Macro to format Clock divider value. x is a number from 1 to 32.

  `SYSCTL_SYSDIV`(x) ((x << SYSCTL_SYSDIV_S) & SYSCTL_SYSDIV_M)

    Macro to format system clock divider value. x must be values from 1 to 126.

  `SYSCTL_IMULT_M` 0x000000FFUL
  `SYSCTL_IMULT_S` 0U
  `SYSCTL_IMULT`(x) (((x) << SYSCTL_IMULT_S) & SYSCTL_IMULT_M)

    Macro to format integer multiplier value. x is a number from 1 to 127.

  `SYSCTL_DCC_BASE_M` 0x30000000UL
  `SYSCTL_DCC_BASE_S` 28U
  `SYSCTL_DCC_BASE_0` 0x00000000UL

    DCC0 module.

  `SYSCTL_DCC_BASE_1` 0x10000000UL

    DCC1 module.

  `SYSCTL_DCC_BASE_2` 0x20000000UL

    DCC2 module.

  `SYSCTL_OSCSRC_M` 0x00030000UL
  `SYSCTL_OSCSRC_S` 16U
  `SYSCTL_OSCSRC_OSC2` 0x00000000UL

    Internal oscillator INTOSC2.

  `SYSCTL_OSCSRC_XTAL` 0x00010000U

    External oscillator (XTAL) in crystal mode.

  `SYSCTL_OSCSRC_XTAL_SE` 0x00030000U

    External oscillator (XTAL) in single-ended mode.

  `SYSCTL_OSCSRC_OSC1` 0x00020000UL

    Internal oscillator INTOSC1.

  `SYSCTL_PLL_ENABLE` 0x80000000U

    Enable PLL.

  `SYSCTL_PLL_DISABLE` 0x00000000U

    Disable PLL.

  `SYSCTL_PLL_BYPASS` 0x40000000U

    Bypass PLL.

  `SYSCTL_PLL_CONFIG_M` 0xC0000000U
  `SYSCTL_PLL_RETRIES` 100U
  `SYSCTL_PLLLOCK_TIMEOUT` 2000U
  `SYSCTL_DCC_COUNTER0_TOLERANCE` 1U
  `SYSCTL_DCC_COUNTER0_WINDOW` 1000U
  `SYSCTL_AUXPLL_DIV_1` 0x00000000U

    Auxiliary PLL divide by 1.

  `SYSCTL_AUXPLL_DIV_2` 0x00000100U

    Auxiliary PLL divide by 2.

  `SYSCTL_AUXPLL_DIV_4` 0x00000200U

    Auxiliary PLL divide by 4.

  `SYSCTL_AUXPLL_DIV_8` 0x00000300U

    Auxiliary PLL divide by 8.

  `SYSCTL_AUXPLL_DIV_3` 0x00000400U

    Auxiliary PLL divide by 3.

  `SYSCTL_AUXPLL_DIV_5` 0x00000500U

    Auxiliary PLL divide by 5.

  `SYSCTL_AUXPLL_DIV_6` 0x00000600U

    Auxiliary PLL divide by 6.

  `SYSCTL_AUXPLL_DIV_7` 0x00000700U

    Auxiliary PLL divide by 7.

  `SYSCTL_AUXPLL_REFDIV`(x) SYSCTL_REFDIV((x))

    Macro to format Clock divider value. x is a number from 1 to 32.

  `SYSCTL_AUXPLL_ODIV`(x) SYSCTL_ODIV((x))

    Macro to format Clock divider value. x is a number from 1 to 32.

  `SYSCTL_AUXPLL_IMULT`(x) SYSCTL_IMULT((x))

    Macro to format integer multiplier value. x is a number from 1 to 127.

  `SYSCTL_AUXPLL_FMULT_NONE` 0x00000000U

    No fractional multiplier.

  `SYSCTL_AUXPLL_FMULT_0` 0x00000000U

    No fractional multiplier.

  `SYSCTL_AUXPLL_FMULT_1_4` 0x00004000U

    Fractional multiplier - 0.25.

  `SYSCTL_AUXPLL_FMULT_1_2` 0x00008000U

    Fractional multiplier - 0.50.

  `SYSCTL_AUXPLL_FMULT_3_4` 0x0000C000U

    Fractional multiplier - 0.75.

  `SYSCTL_AUXPLL_OSCSRC_OSC2` 0x00000000UL

    Internal oscillator INTOSC2 as auxiliary clock input.

  `SYSCTL_AUXPLL_OSCSRC_XTAL` 0x00010000UL

    External oscillator (XTAL) as auxiliary clock input.

  `SYSCTL_AUXPLL_OSCSRC_AUXCLKIN` 0x00020000U

    AUXCLKIN (from GPIO) as auxiliary clock input.

  `SYSCTL_AUXPLL_OSCSRC_XTAL_SE` 0x00030000U

    External oscillator (XTAL) in single-ended mode.

  `SYSCTL_AUXPLL_ENABLE` 0x80000000U

    Enable AUXPLL.

  `SYSCTL_AUXPLL_DISABLE` 0x00000000U

    Disable AUXPLL.

  `SYSCTL_AUXPLL_BYPASS` 0x40000000U

    Bypass AUXPLL.

  `SYSCTL_NMI_NMIINT` 0x1U

    NMI Interrupt Flag.

  `SYSCTL_NMI_CLOCKFAIL` 0x2U

    Clock Fail Interrupt Flag.

  `SYSCTL_NMI_UNCERR` 0x4U

    Flash/RAM/ROM Uncorrectable Error NMI Flag.

  `SYSCTL_NMI_REGPARITYERR` 0x8U

    Register parity error.

  `SYSCTL_NMI_CPU1HWBISTERR` 0x10U

    HW BIST Error NMI Flag.

  `SYSCTL_NMI_PIEVECTERR` 0x40U

    PIE Vector Fetch Error Flag.

  `SYSCTL_NMI_SYSDBGNMI` 0x80U

    System Debug Module NMI Flag.

  `SYSCTL_NMI_CLBNMI` 0x100U

    Reconfigurable Logic NMI Flag.

  `SYSCTL_NMI_CPU2WDRSN` 0x200U

    CPU2 WDRSn Reset Indication Flag.

  `SYSCTL_NMI_CPU2NMIWDRSN` 0x400U

    CPU2 NMIWDRSn Reset Indication Flag.

  `SYSCTL_NMI_LSCMPERR` 0x1000U

    Lockstep Compare Error.

  `SYSCTL_NMI_ECATNMIN` 0x2000U

    EtherCAT NMI Flag.

  `SYSCTL_NMI_CRC_FAIL` 0x4000U

    BGCRC calculation failed.

  `SYSCTL_NMI_SWERR` 0x8000U

    SW Error Force NMI Flag.

  `SYSCTL_STATUS_GINT` 0x1U

    Global Interrupt flag.

  `SYSCTL_STATUS_EMIF_ERR` 0x2U

    EMIF error event flag.

  `SYSCTL_STATUS_CORRECTABLE_ERR` 0x4U

    RAM/Flash correctable error flag.

  `SYSCTL_STATUS_RAM_ACC_VIOL` 0x10U

    A RAM access vioation flag.

  `SYSCTL_STATUS_SYS_PLL_SLIP` 0x20U

    System PLL Slip event flag.

  `SYSCTL_STATUS_AUX_PLL_SLIP` 0x40U

    Auxillary PLL Slip event flag.

  `SYSCTL_STATUS_DCC0` 0x80U

    DCC0 Interrupt flag.

  `SYSCTL_STATUS_DCC1` 0x100U

    DCC1 Interrupt flag.

  `SYSCTL_STATUS_DCC2` 0x200U

    DCC2 Interrupt flag.

  `SYSCTL_STATUS_AES_BUS_ERROR` 0x400U

    AES_BUS_ERROR Interrupt flag.

  `SYSCTL_STATUS_EPG1_INT` 0x800U

    EPG1_INT Interrupt flag.

  `SYSCTL_CAUSE_POR` 0x00000001U

    Power-on reset.

  `SYSCTL_CAUSE_XRS` 0x00000002U

    External reset pin.

  `SYSCTL_CAUSE_WDRS` 0x00000004U

    Watchdog reset.

  `SYSCTL_CAUSE_NMIWDRS` 0x00000008U

    NMI watchdog reset.

  `SYSCTL_CAUSE_SCCRESET` 0x00000100U

    SCCRESETn by DCSM.

  `SYSCTL_CAUSE_HWBISTN` 0x00000020U

    HWBISTn Reset.

  `SYSCTL_CAUSE_ECAT_RESET_OUT` 0x00000200U

    ECAT_RESET_OUT Reset.

  `SYSCTL_CAUSE_SIMRESET_CPU1RSN` 0x00000400U

    SIMRESET_CPU1RSn.

  `SYSCTL_CAUSE_SIMRESET_XRSN` 0x00000800U

    SIMRESET_XRSn.

  `SYSCTL_ADCSOC_SRC_PWM1SOCA` 0x1U

    ePWM1 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM2SOCA` 0x2U

    ePWM2 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM3SOCA` 0x4U

    ePWM3 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM4SOCA` 0x8U

    ePWM4 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM5SOCA` 0x10U

    ePWM5 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM6SOCA` 0x20U

    ePWM6 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM7SOCA` 0x40U

    ePWM7 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM8SOCA` 0x80U

    ePWM8 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM9SOCA` 0x100U

    ePWM9 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM10SOCA` 0x200U

    ePWM10 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM11SOCA` 0x400U

    ePWM11 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM12SOCA` 0x800U

    ePWM12 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM13SOCA` 0x1000U

    ePWM13 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM14SOCA` 0x2000U

    ePWM14 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM15SOCA` 0x4000U

    ePWM15 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM16SOCA` 0x8000U

    ePWM16 SOCA for ADCSOCAO

  `SYSCTL_ADCSOC_SRC_PWM1SOCB` 0x10000U

    ePWM1 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM2SOCB` 0x20000U

    ePWM2 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM3SOCB` 0x40000U

    ePWM3 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM4SOCB` 0x80000U

    ePWM4 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM5SOCB` 0x100000U

    ePWM5 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM6SOCB` 0x200000U

    ePWM6 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM7SOCB` 0x400000U

    ePWM7 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM8SOCB` 0x800000U

    ePWM8 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM9SOCB` 0x1000000U

    ePWM9 SOCB for ADCSOCBO

  `SYSCTL_ADCSOC_SRC_PWM13SOCB` 0x10000000U

    ePWM13 SOCB for ADCSOCBO

  Enums

  enum `SysCtl_PeripheralPCLOCKCR`

    The following are values that can be passed to SysCtl_enablePeripheral() and SysCtl_disablePeripheral() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_PERIPH_CLK_CLA1` = 0x0000

      CLA1 clock.

    enumerator `SYSCTL_PERIPH_CLK_DMA` = 0x0200

      DMA clock.

    enumerator `SYSCTL_PERIPH_CLK_TIMER0` = 0x0300

      CPUTIMER0 clock.

    enumerator `SYSCTL_PERIPH_CLK_TIMER1` = 0x0400

      CPUTIMER1 clock.

    enumerator `SYSCTL_PERIPH_CLK_TIMER2` = 0x0500

      CPUTIMER2 clock.

    enumerator `SYSCTL_PERIPH_CLK_CPUBGCRC` = 0x0D00

      CPUBGCRC clock.

    enumerator `SYSCTL_PERIPH_CLK_CLA1BGCRC` = 0x0E00

      CLA1BGCRC clock.

    enumerator `SYSCTL_PERIPH_CLK_TBCLKSYNC` = 0x1200

      TBCLKSYNC clock.

    enumerator `SYSCTL_PERIPH_CLK_GTBCLKSYNC` = 0x1300

      GTBCLKSYNC clock.

    enumerator `SYSCTL_PERIPH_CLK_ERAD` = 0x1800

      ERAD clock.

    enumerator `SYSCTL_PERIPH_CLK_EMIF1` = 0x0001

      EMIF1 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM1` = 0x0002

      EPWM1 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM2` = 0x0102

      EPWM2 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM3` = 0x0202

      EPWM3 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM4` = 0x0302

      EPWM4 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM5` = 0x0402

      EPWM5 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM6` = 0x0502

      EPWM6 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM7` = 0x0602

      EPWM7 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM8` = 0x0702

      EPWM8 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM9` = 0x0802

      EPWM9 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM10` = 0x0902

      EPWM10 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM11` = 0x0A02

      EPWM11 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM12` = 0x0B02

      EPWM12 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM13` = 0x0C02

      EPWM13 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM14` = 0x0D02

      EPWM14 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM15` = 0x0E02

      EPWM15 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM16` = 0x0F02

      EPWM16 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM17` = 0x1002

      EPWM17 clock.

    enumerator `SYSCTL_PERIPH_CLK_EPWM18` = 0x1102

      EPWM18 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP1` = 0x0003

      ECAP1 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP2` = 0x0103

      ECAP2 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP3` = 0x0203

      ECAP3 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP4` = 0x0303

      ECAP4 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP5` = 0x0403

      ECAP5 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP6` = 0x0503

      ECAP6 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAP7` = 0x0603

      ECAP7 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP1` = 0x0004

      EQEP1 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP2` = 0x0104

      EQEP2 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP3` = 0x0204

      EQEP3 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP4` = 0x0304

      EQEP4 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP5` = 0x0404

      EQEP5 clock.

    enumerator `SYSCTL_PERIPH_CLK_EQEP6` = 0x0504

      EQEP6 clock.

    enumerator `SYSCTL_PERIPH_CLK_SD1` = 0x0006

      SD1 clock.

    enumerator `SYSCTL_PERIPH_CLK_SD2` = 0x0106

      SD2 clock.

    enumerator `SYSCTL_PERIPH_CLK_SD3` = 0x0206

      SD3 clock.

    enumerator `SYSCTL_PERIPH_CLK_SD4` = 0x0306

      SD4 clock.

    enumerator `SYSCTL_PERIPH_CLK_SCIA` = 0x0007

      SCI_A clock.

    enumerator `SYSCTL_PERIPH_CLK_SCIB` = 0x0107

      SCI_B clock.

    enumerator `SYSCTL_PERIPH_CLK_UARTA` = 0x1007

      UART_A clock.

    enumerator `SYSCTL_PERIPH_CLK_UARTB` = 0x1107

      UART_B clock.

    enumerator `SYSCTL_PERIPH_CLK_SPIA` = 0x0008

      SPI_A clock.

    enumerator `SYSCTL_PERIPH_CLK_SPIB` = 0x0108

      SPI_B clock.

    enumerator `SYSCTL_PERIPH_CLK_SPIC` = 0x0208

      SPI_C clock.

    enumerator `SYSCTL_PERIPH_CLK_SPID` = 0x0308

      SPI_D clock.

    enumerator `SYSCTL_PERIPH_CLK_I2CA` = 0x0009

      I2C_A clock.

    enumerator `SYSCTL_PERIPH_CLK_I2CB` = 0x0109

      I2C_B clock.

    enumerator `SYSCTL_PERIPH_CLK_PMBUSA` = 0x1009

      PMBUS_A clock.

    enumerator `SYSCTL_PERIPH_CLK_CANA` = 0x000A

      CAN_A clock.

    enumerator `SYSCTL_PERIPH_CLK_MCANA` = 0x040A

      MCAN_A clock.

    enumerator `SYSCTL_PERIPH_CLK_MCANB` = 0x050A

      MCAN_B clock.

    enumerator `SYSCTL_PERIPH_CLK_USBA` = 0x100B

      USB_A clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCA` = 0x000D

      ADC_A clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCB` = 0x010D

      ADC_B clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCC` = 0x020D

      ADC_C clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS1` = 0x000E

      CMPSS1 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS2` = 0x010E

      CMPSS2 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS3` = 0x020E

      CMPSS3 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS4` = 0x030E

      CMPSS4 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS5` = 0x040E

      CMPSS5 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS6` = 0x050E

      CMPSS6 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS7` = 0x060E

      CMPSS7 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS8` = 0x070E

      CMPSS8 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS9` = 0x080E

      CMPSS9 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS10` = 0x090E

      CMPSS10 clock.

    enumerator `SYSCTL_PERIPH_CLK_CMPSS11` = 0x0A0E

      CMPSS11 clock.

    enumerator `SYSCTL_PERIPH_CLK_DACA` = 0x1010

      DAC_A clock.

    enumerator `SYSCTL_PERIPH_CLK_DACC` = 0x1210

      DAC_C clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB1` = 0x0011

      CLB1 clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB2` = 0x0111

      CLB2 clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB3` = 0x0211

      CLB3 clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB4` = 0x0311

      CLB4 clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB5` = 0x0411

      CLB5 clock.

    enumerator `SYSCTL_PERIPH_CLK_CLB6` = 0x0511

      CLB6 clock.

    enumerator `SYSCTL_PERIPH_CLK_FSITXA` = 0x0012

      FSITX_A clock.

    enumerator `SYSCTL_PERIPH_CLK_FSITXB` = 0x0112

      FSITX_B clock.

    enumerator `SYSCTL_PERIPH_CLK_FSIRXA` = 0x1012

      FSIRX_A clock.

    enumerator `SYSCTL_PERIPH_CLK_FSIRXB` = 0x1112

      FSIRX_B clock.

    enumerator `SYSCTL_PERIPH_CLK_FSIRXC` = 0x1212

      FSIRX_C clock.

    enumerator `SYSCTL_PERIPH_CLK_FSIRXD` = 0x1312

      FSIRX_D clock.

    enumerator `SYSCTL_PERIPH_CLK_LINA` = 0x0013

      LIN_A clock.

    enumerator `SYSCTL_PERIPH_CLK_LINB` = 0x0113

      LIN_B clock.

    enumerator `SYSCTL_PERIPH_CLK_DCC0` = 0x0015

      DCC0 clock.

    enumerator `SYSCTL_PERIPH_CLK_DCC1` = 0x0115

      DCC1 clock.

    enumerator `SYSCTL_PERIPH_CLK_DCC2` = 0x0215

      DCC2 clock.

    enumerator `SYSCTL_PERIPH_CLK_ECAT` = 0x0017

      ETHERCAT clock.

    enumerator `SYSCTL_PERIPH_CLK_HRCAL0` = 0x0019

      HRCAL0 clock.

    enumerator `SYSCTL_PERIPH_CLK_HRCAL1` = 0x0119

      HRCAL1 clock.

    enumerator `SYSCTL_PERIPH_CLK_HRCAL2` = 0x0219

      HRCAL2 clock.

    enumerator `SYSCTL_PERIPH_CLK_AESA` = 0x001A

      AESA clock.

    enumerator `SYSCTL_PERIPH_CLK_EPG1` = 0x001B

      EPG1 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER1` = 0x001C

      ADCCHECKER1 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER2` = 0x011C

      ADCCHECKER2 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER3` = 0x021C

      ADCCHECKER3 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER4` = 0x031C

      ADCCHECKER4 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER5` = 0x041C

      ADCCHECKER5 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER6` = 0x051C

      ADCCHECKER6 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER7` = 0x061C

      ADCCHECKER7 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCCHECKER8` = 0x071C

      ADCCHECKER8 clock.

    enumerator `SYSCTL_PERIPH_CLK_ADCSEAGGRCPU1` = 0x101C

      ADCSEAGGRCPU1 clock.

  enum `SysCtl_PeripheralSOFTPRES`

    The following are values that can be passed to SysCtl_resetPeripheral() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_PERIPH_RES_CPU1CLA1` = 0x0000

      Reset CPU1_CLA1 clock.

    enumerator `SYSCTL_PERIPH_RES_CPU1CPUBGCRC` = 0x0D00

      Reset CPU1_CPUBGCRC clock.

    enumerator `SYSCTL_PERIPH_RES_CPU1CLA1BGCRC` = 0x0E00

      Reset CPU1_CLA1BGCRC clock.

    enumerator `SYSCTL_PERIPH_RES_CPU2CPUBGCRC` = 0x1000

      Reset CPU2_CPUBGCRC clock.

    enumerator `SYSCTL_PERIPH_RES_CPU1ERAD` = 0x1800

      Reset CPU1_ERAD clock.

    enumerator `SYSCTL_PERIPH_RES_CPU2ERAD` = 0x1900

      Reset CPU2_ERAD clock.

    enumerator `SYSCTL_PERIPH_RES_EMIF1` = 0x0001

      Reset EMIF1 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM1` = 0x0002

      Reset EPWM1 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM2` = 0x0102

      Reset EPWM2 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM3` = 0x0202

      Reset EPWM3 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM4` = 0x0302

      Reset EPWM4 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM5` = 0x0402

      Reset EPWM5 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM6` = 0x0502

      Reset EPWM6 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM7` = 0x0602

      Reset EPWM7 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM8` = 0x0702

      Reset EPWM8 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM9` = 0x0802

      Reset EPWM9 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM10` = 0x0902

      Reset EPWM10 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM11` = 0x0A02

      Reset EPWM11 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM12` = 0x0B02

      Reset EPWM12 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM13` = 0x0C02

      Reset EPWM13 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM14` = 0x0D02

      Reset EPWM14 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM15` = 0x0E02

      Reset EPWM15 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM16` = 0x0F02

      Reset EPWM16 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM17` = 0x1002

      Reset EPWM17 clock.

    enumerator `SYSCTL_PERIPH_RES_EPWM18` = 0x1102

      Reset EPWM18 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP1` = 0x0003

      Reset ECAP1 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP2` = 0x0103

      Reset ECAP2 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP3` = 0x0203

      Reset ECAP3 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP4` = 0x0303

      Reset ECAP4 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP5` = 0x0403

      Reset ECAP5 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP6` = 0x0503

      Reset ECAP6 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAP7` = 0x0603

      Reset ECAP7 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP1` = 0x0004

      Reset EQEP1 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP2` = 0x0104

      Reset EQEP2 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP3` = 0x0204

      Reset EQEP3 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP4` = 0x0304

      Reset EQEP4 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP5` = 0x0404

      Reset EQEP5 clock.

    enumerator `SYSCTL_PERIPH_RES_EQEP6` = 0x0504

      Reset EQEP6 clock.

    enumerator `SYSCTL_PERIPH_RES_SD1` = 0x0006

      Reset SD1 clock.

    enumerator `SYSCTL_PERIPH_RES_SD2` = 0x0106

      Reset SD2 clock.

    enumerator `SYSCTL_PERIPH_RES_SD3` = 0x0206

      Reset SD3 clock.

    enumerator `SYSCTL_PERIPH_RES_SD4` = 0x0306

      Reset SD4 clock.

    enumerator `SYSCTL_PERIPH_RES_SCIA` = 0x0007

      Reset SCI_A clock.

    enumerator `SYSCTL_PERIPH_RES_SCIB` = 0x0107

      Reset SCI_B clock.

    enumerator `SYSCTL_PERIPH_RES_UARTA` = 0x1007

      Reset UART_A clock.

    enumerator `SYSCTL_PERIPH_RES_UARTB` = 0x1107

      Reset UART_B clock.

    enumerator `SYSCTL_PERIPH_RES_SPIA` = 0x0008

      Reset SPI_A clock.

    enumerator `SYSCTL_PERIPH_RES_SPIB` = 0x0108

      Reset SPI_B clock.

    enumerator `SYSCTL_PERIPH_RES_SPIC` = 0x0208

      Reset SPI_C clock.

    enumerator `SYSCTL_PERIPH_RES_SPID` = 0x0308

      Reset SPI_D clock.

    enumerator `SYSCTL_PERIPH_RES_I2CA` = 0x0009

      Reset I2C_A clock.

    enumerator `SYSCTL_PERIPH_RES_I2CB` = 0x0109

      Reset I2C_B clock.

    enumerator `SYSCTL_PERIPH_RES_PMBUSA` = 0x1009

      Reset PMBUS_A clock.

    enumerator `SYSCTL_PERIPH_RES_CANA` = 0x000A

      Reset CAN_A clock.

    enumerator `SYSCTL_PERIPH_RES_MCANA` = 0x040A

      Reset MCAN_A clock.

    enumerator `SYSCTL_PERIPH_RES_MCANB` = 0x050A

      Reset MCAN_B clock.

    enumerator `SYSCTL_PERIPH_RES_USBA` = 0x100B

      Reset USB_A clock.

    enumerator `SYSCTL_PERIPH_RES_ADCA` = 0x000D

      Reset ADC_A clock.

    enumerator `SYSCTL_PERIPH_RES_ADCB` = 0x010D

      Reset ADC_B clock.

    enumerator `SYSCTL_PERIPH_RES_ADCC` = 0x020D

      Reset ADC_C clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS1` = 0x000E

      Reset CMPSS1 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS2` = 0x010E

      Reset CMPSS2 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS3` = 0x020E

      Reset CMPSS3 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS4` = 0x030E

      Reset CMPSS4 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS5` = 0x040E

      Reset CMPSS5 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS6` = 0x050E

      Reset CMPSS6 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS7` = 0x060E

      Reset CMPSS7 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS8` = 0x070E

      Reset CMPSS8 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS9` = 0x080E

      Reset CMPSS9 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS10` = 0x090E

      Reset CMPSS10 clock.

    enumerator `SYSCTL_PERIPH_RES_CMPSS11` = 0x0A0E

      Reset CMPSS11 clock.

    enumerator `SYSCTL_PERIPH_RES_DACA` = 0x1010

      Reset DAC_A clock.

    enumerator `SYSCTL_PERIPH_RES_DACC` = 0x1210

      Reset DAC_C clock.

    enumerator `SYSCTL_PERIPH_RES_CLB1` = 0x0011

      Reset CLB1 clock.

    enumerator `SYSCTL_PERIPH_RES_CLB2` = 0x0111

      Reset CLB2 clock.

    enumerator `SYSCTL_PERIPH_RES_CLB3` = 0x0211

      Reset CLB3 clock.

    enumerator `SYSCTL_PERIPH_RES_CLB4` = 0x0311

      Reset CLB4 clock.

    enumerator `SYSCTL_PERIPH_RES_CLB5` = 0x0411

      Reset CLB5 clock.

    enumerator `SYSCTL_PERIPH_RES_CLB6` = 0x0511

      Reset CLB6 clock.

    enumerator `SYSCTL_PERIPH_RES_FSITXA` = 0x0012

      Reset FSITX_A clock.

    enumerator `SYSCTL_PERIPH_RES_FSITXB` = 0x0112

      Reset FSITX_B clock.

    enumerator `SYSCTL_PERIPH_RES_FSIRXA` = 0x1012

      Reset FSIRX_A clock.

    enumerator `SYSCTL_PERIPH_RES_FSIRXB` = 0x1112

      Reset FSIRX_B clock.

    enumerator `SYSCTL_PERIPH_RES_FSIRXC` = 0x1212

      Reset FSIRX_C clock.

    enumerator `SYSCTL_PERIPH_RES_FSIRXD` = 0x1312

      Reset FSIRX_D clock.

    enumerator `SYSCTL_PERIPH_RES_LINA` = 0x0013

      Reset LIN_A clock.

    enumerator `SYSCTL_PERIPH_RES_LINB` = 0x0113

      Reset LIN_B clock.

    enumerator `SYSCTL_PERIPH_RES_DCC0` = 0x0015

      Reset DCC0 clock.

    enumerator `SYSCTL_PERIPH_RES_DCC1` = 0x0115

      Reset DCC1 clock.

    enumerator `SYSCTL_PERIPH_RES_DCC2` = 0x0215

      Reset DCC2 clock.

    enumerator `SYSCTL_PERIPH_RES_ECAT` = 0x0017

      Reset ETHERCAT clock.

    enumerator `SYSCTL_PERIPH_RES_AESA` = 0x001A

      Reset AESA clock.

    enumerator `SYSCTL_PERIPH_RES_EPG1` = 0x001B

      Reset EPG1 clock.

    enumerator `SYSCTL_PERIPH_RES_FLASHA` = 0x001C

      Reset FLASHA clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER1` = 0x001D

      Reset ADCCHECKER1 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER2` = 0x011D

      Reset ADCCHECKER2 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER3` = 0x021D

      Reset ADCCHECKER3 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER4` = 0x031D

      Reset ADCCHECKER4 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER5` = 0x041D

      Reset ADCCHECKER5 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER6` = 0x051D

      Reset ADCCHECKER6 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER7` = 0x061D

      Reset ADCCHECKER7 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCCHECKER8` = 0x071D

      Reset ADCCHECKER8 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCSEAGGRCPU1` = 0x101D

      Reset ADCSEAGGRCPU1 clock.

    enumerator `SYSCTL_PERIPH_RES_ADCSEAGGRCPU2` = 0x111D

      Reset ADCSEAGGRCPU2 clock.

  enum `SysCtl_CPUSelPeripheral`

    The following are values that can be passed to SysCtl_lockCPUSelectRegs() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_CPUSEL0_EPWM` = 0x0U

      Configure CPU Select for EPWM.

    enumerator `SYSCTL_CPUSEL1_ECAP` = 0x1U

      Configure CPU Select for ECAP.

    enumerator `SYSCTL_CPUSEL2_EQEP` = 0x2U

      Configure CPU Select for EQEP.

    enumerator `SYSCTL_CPUSEL4_SD` = 0x4U

      Configure CPU Select for SD.

    enumerator `SYSCTL_CPUSEL5_SCI` = 0x5U

      Configure CPU Select for SCI.

    enumerator `SYSCTL_CPUSEL6_SPI` = 0x6U

      Configure CPU Select for SPI.

    enumerator `SYSCTL_CPUSEL7_I2C` = 0x7U

      Configure CPU Select for I2C.

    enumerator `SYSCTL_CPUSEL8_CAN` = 0x8U

      Configure CPU Select for CAN.

    enumerator `SYSCTL_CPUSEL11_ADC` = 0xBU

      Configure CPU Select for ADC.

    enumerator `SYSCTL_CPUSEL12_CMPSS` = 0xCU

      Configure CPU Select for CMPSS.

    enumerator `SYSCTL_CPUSEL13_DCC` = 0xDU

      Configure CPU Select for DCC.

    enumerator `SYSCTL_CPUSEL14_DAC` = 0xEU

      Configure CPU Select for DAC.

    enumerator `SYSCTL_CPUSEL15_CLB` = 0xFU

      Configure CPU Select for CLB.

    enumerator `SYSCTL_CPUSEL16_FSI` = 0x10U

      Configure CPU Select for FSI.

    enumerator `SYSCTL_CPUSEL17_LIN` = 0x11U

      Configure CPU Select for LIN.

    enumerator `SYSCTL_CPUSEL23_ECAT` = 0x17U

      Configure CPU Select for ETHERCAT.

    enumerator `SYSCTL_CPUSEL25_HRCAL` = 0x19U

      Configure CPU Select for HRCAL.

    enumerator `SYSCTL_CPUSEL26_AES` = 0x1AU

      Configure CPU Select for AES.

    enumerator `SYSCTL_CPUSEL27_EPG` = 0x1BU

      Configure CPU Select for EPG.

  enum `SysCtl_CPUSelPeriphInstance`

    The following are values that can be passed to SysCtl_selectCPUForPeripheralInstance() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_CPUSEL_EPWM1` = 0x0000
    enumerator `SYSCTL_CPUSEL_EPWM2` = 0x0100
    enumerator `SYSCTL_CPUSEL_EPWM3` = 0x0200
    enumerator `SYSCTL_CPUSEL_EPWM4` = 0x0300
    enumerator `SYSCTL_CPUSEL_EPWM5` = 0x0400
    enumerator `SYSCTL_CPUSEL_EPWM6` = 0x0500
    enumerator `SYSCTL_CPUSEL_EPWM7` = 0x0600
    enumerator `SYSCTL_CPUSEL_EPWM8` = 0x0700
    enumerator `SYSCTL_CPUSEL_EPWM9` = 0x0800
    enumerator `SYSCTL_CPUSEL_EPWM10` = 0x0900
    enumerator `SYSCTL_CPUSEL_EPWM11` = 0x0A00
    enumerator `SYSCTL_CPUSEL_EPWM12` = 0x0B00
    enumerator `SYSCTL_CPUSEL_EPWM13` = 0x0C00
    enumerator `SYSCTL_CPUSEL_EPWM14` = 0x0D00
    enumerator `SYSCTL_CPUSEL_EPWM15` = 0x0E00
    enumerator `SYSCTL_CPUSEL_EPWM16` = 0x0F00
    enumerator `SYSCTL_CPUSEL_EPWM17` = 0x1000
    enumerator `SYSCTL_CPUSEL_EPWM18` = 0x1100
    enumerator `SYSCTL_CPUSEL_ECAP1` = 0x0001
    enumerator `SYSCTL_CPUSEL_ECAP2` = 0x0101
    enumerator `SYSCTL_CPUSEL_ECAP3` = 0x0201
    enumerator `SYSCTL_CPUSEL_ECAP4` = 0x0301
    enumerator `SYSCTL_CPUSEL_ECAP5` = 0x0401
    enumerator `SYSCTL_CPUSEL_ECAP6` = 0x0501
    enumerator `SYSCTL_CPUSEL_ECAP7` = 0x0601
    enumerator `SYSCTL_CPUSEL_EQEP1` = 0x0002
    enumerator `SYSCTL_CPUSEL_EQEP2` = 0x0102
    enumerator `SYSCTL_CPUSEL_EQEP3` = 0x0202
    enumerator `SYSCTL_CPUSEL_EQEP4` = 0x0302
    enumerator `SYSCTL_CPUSEL_EQEP5` = 0x0402
    enumerator `SYSCTL_CPUSEL_EQEP6` = 0x0502
    enumerator `SYSCTL_CPUSEL_HRCAP6` = 0x0503
    enumerator `SYSCTL_CPUSEL_HRCAP7` = 0x0603
    enumerator `SYSCTL_CPUSEL_SD1` = 0x0004
    enumerator `SYSCTL_CPUSEL_SD2` = 0x0104
    enumerator `SYSCTL_CPUSEL_SD3` = 0x0204
    enumerator `SYSCTL_CPUSEL_SD4` = 0x0304
    enumerator `SYSCTL_CPUSEL_SCIA` = 0x0005
    enumerator `SYSCTL_CPUSEL_SCIB` = 0x0105
    enumerator `SYSCTL_CPUSEL_UARTA` = 0x1005
    enumerator `SYSCTL_CPUSEL_UARTB` = 0x1105
    enumerator `SYSCTL_CPUSEL_SPIA` = 0x0006
    enumerator `SYSCTL_CPUSEL_SPIB` = 0x0106
    enumerator `SYSCTL_CPUSEL_SPIC` = 0x0206
    enumerator `SYSCTL_CPUSEL_SPID` = 0x0306
    enumerator `SYSCTL_CPUSEL_I2CA` = 0x0007
    enumerator `SYSCTL_CPUSEL_I2CB` = 0x0107
    enumerator `SYSCTL_CPUSEL_PMBUSA` = 0x1007
    enumerator `SYSCTL_CPUSEL_CANA` = 0x0008
    enumerator `SYSCTL_CPUSEL_MCANA` = 0x0408
    enumerator `SYSCTL_CPUSEL_MCANB` = 0x0508
    enumerator `SYSCTL_CPUSEL_USBA` = 0x1009
    enumerator `SYSCTL_CPUSEL_ADCA` = 0x000B
    enumerator `SYSCTL_CPUSEL_ADCB` = 0x010B
    enumerator `SYSCTL_CPUSEL_ADCC` = 0x020B
    enumerator `SYSCTL_CPUSEL_CMPSS1` = 0x000C
    enumerator `SYSCTL_CPUSEL_CMPSS2` = 0x010C
    enumerator `SYSCTL_CPUSEL_CMPSS3` = 0x020C
    enumerator `SYSCTL_CPUSEL_CMPSS4` = 0x030C
    enumerator `SYSCTL_CPUSEL_CMPSS5` = 0x040C
    enumerator `SYSCTL_CPUSEL_CMPSS6` = 0x050C
    enumerator `SYSCTL_CPUSEL_CMPSS7` = 0x060C
    enumerator `SYSCTL_CPUSEL_CMPSS8` = 0x070C
    enumerator `SYSCTL_CPUSEL_CMPSS9` = 0x080C
    enumerator `SYSCTL_CPUSEL_CMPSS10` = 0x090C
    enumerator `SYSCTL_CPUSEL_CMPSS11` = 0x0A0C
    enumerator `SYSCTL_CPUSEL_DCC0` = 0x000D
    enumerator `SYSCTL_CPUSEL_DCC1` = 0x010D
    enumerator `SYSCTL_CPUSEL_DCC2` = 0x020D
    enumerator `SYSCTL_CPUSEL_DACA` = 0x100E
    enumerator `SYSCTL_CPUSEL_DACC` = 0x120E
    enumerator `SYSCTL_CPUSEL_CLB1` = 0x000F
    enumerator `SYSCTL_CPUSEL_CLB2` = 0x010F
    enumerator `SYSCTL_CPUSEL_CLB3` = 0x020F
    enumerator `SYSCTL_CPUSEL_CLB4` = 0x030F
    enumerator `SYSCTL_CPUSEL_CLB5` = 0x040F
    enumerator `SYSCTL_CPUSEL_CLB6` = 0x050F
    enumerator `SYSCTL_CPUSEL_FSITXA` = 0x0010
    enumerator `SYSCTL_CPUSEL_FSITXB` = 0x0110
    enumerator `SYSCTL_CPUSEL_FSIRXA` = 0x1010
    enumerator `SYSCTL_CPUSEL_FSIRXB` = 0x1110
    enumerator `SYSCTL_CPUSEL_FSIRXC` = 0x1210
    enumerator `SYSCTL_CPUSEL_FSIRXD` = 0x1310
    enumerator `SYSCTL_CPUSEL_LINA` = 0x0011
    enumerator `SYSCTL_CPUSEL_LINB` = 0x0111
    enumerator `SYSCTL_CPUSEL_ECAT` = 0x0017
    enumerator `SYSCTL_CPUSEL_HRCAL0` = 0x0019
    enumerator `SYSCTL_CPUSEL_HRCAL1` = 0x0119
    enumerator `SYSCTL_CPUSEL_HRCAL2` = 0x0219
    enumerator `SYSCTL_CPUSEL_AESA` = 0x001A
    enumerator `SYSCTL_CPUSEL_EPG1` = 0x001B
    enumerator `SYSCTL_CPUSEL_ADCCHECKER1` = 0x001C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER2` = 0x011C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER3` = 0x021C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER4` = 0x031C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER5` = 0x041C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER6` = 0x051C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER7` = 0x061C
    enumerator `SYSCTL_CPUSEL_ADCCHECKER8` = 0x071C
  enum `SysCtl_CPUSel`

    The following are values that can be passed to SysCtl_selectCPUForPeripheral() as cpuInst parameter.

    Values:

    enumerator `SYSCTL_CPUSEL_CPU1` = 0x0U

      Connect the peripheral (indicated by SysCtl_CPUSelPeripheral) to CPU1.

    enumerator `SYSCTL_CPUSEL_CPU2` = 0x1U

      Connect the peripheral (indicated by SysCtl_CPUSelPeripheral) to CPU2.

  enum `SysCtl_FlashBank`

    Values:

    enumerator `SYSCTL_FLASH_BANK0` = 0U
    enumerator `SYSCTL_FLASH_BANK1` = 2U
    enumerator `SYSCTL_FLASH_BANK2` = 4U
    enumerator `SYSCTL_FLASH_BANK3` = 6U
    enumerator `SYSCTL_FLASH_BANK4` = 8U
  enum `SysCtl_SharedDxRAM`

    Values:

    enumerator `SYSCTL_D2RAM` = 0x4U
    enumerator `SYSCTL_D3RAM` = 0x8U
    enumerator `SYSCTL_D4RAM` = 0x10U
    enumerator `SYSCTL_D5RAM` = 0x20U
  enum `SysCtl_WDPredivider`

    The following are values that can be passed to SysCtl_setWatchdogPredivider() as the predivider parameter.

    Values:

    enumerator `SYSCTL_WD_PREDIV_2` = 0x800

      PREDIVCLK = INTOSC1 / 2.

    enumerator `SYSCTL_WD_PREDIV_4` = 0x900

      PREDIVCLK = INTOSC1 / 4.

    enumerator `SYSCTL_WD_PREDIV_8` = 0xA00

      PREDIVCLK = INTOSC1 / 8.

    enumerator `SYSCTL_WD_PREDIV_16` = 0xB00

      PREDIVCLK = INTOSC1 / 16.

    enumerator `SYSCTL_WD_PREDIV_32` = 0xC00

      PREDIVCLK = INTOSC1 / 32.

    enumerator `SYSCTL_WD_PREDIV_64` = 0xD00

      PREDIVCLK = INTOSC1 / 64.

    enumerator `SYSCTL_WD_PREDIV_128` = 0xE00

      PREDIVCLK = INTOSC1 / 128.

    enumerator `SYSCTL_WD_PREDIV_256` = 0xF00

      PREDIVCLK = INTOSC1 / 256.

    enumerator `SYSCTL_WD_PREDIV_512` = 0x000

      PREDIVCLK = INTOSC1 / 512.

    enumerator `SYSCTL_WD_PREDIV_1024` = 0x100

      PREDIVCLK = INTOSC1 / 1024.

    enumerator `SYSCTL_WD_PREDIV_2048` = 0x200

      PREDIVCLK = INTOSC1 / 2048.

    enumerator `SYSCTL_WD_PREDIV_4096` = 0x300

      PREDIVCLK = INTOSC1 / 4096.

  enum `SysCtl_WDPrescaler`

    The following are values that can be passed to SysCtl_setWatchdogPrescaler() as the prescaler parameter.

    Values:

    enumerator `SYSCTL_WD_PRESCALE_1` = 1

      WDCLK = PREDIVCLK / 1.

    enumerator `SYSCTL_WD_PRESCALE_2` = 2

      WDCLK = PREDIVCLK / 2.

    enumerator `SYSCTL_WD_PRESCALE_4` = 3

      WDCLK = PREDIVCLK / 4.

    enumerator `SYSCTL_WD_PRESCALE_8` = 4

      WDCLK = PREDIVCLK / 8.

    enumerator `SYSCTL_WD_PRESCALE_16` = 5

      WDCLK = PREDIVCLK / 16.

    enumerator `SYSCTL_WD_PRESCALE_32` = 6

      WDCLK = PREDIVCLK / 32.

    enumerator `SYSCTL_WD_PRESCALE_64` = 7

      WDCLK = PREDIVCLK / 64.

  enum `SysCtl_WDMode`

    The following are values that can be passed to SysCtl_setWatchdogMode() as the prescaler parameter.

    Values:

    enumerator `SYSCTL_WD_MODE_RESET`

      Watchdog can generate a reset signal.

    enumerator `SYSCTL_WD_MODE_INTERRUPT`

      Watchdog can generate an interrupt signal; reset signal is disabled.

  enum `SysCtl_LSPCLKPrescaler`

    The following are values that can be passed to SysCtl_setLowSpeedClock() as the prescaler parameter.

    Values:

    enumerator `SYSCTL_LSPCLK_PRESCALE_1` = 0

      LSPCLK = SYSCLK / 1.

    enumerator `SYSCTL_LSPCLK_PRESCALE_2` = 1

      LSPCLK = SYSCLK / 2.

    enumerator `SYSCTL_LSPCLK_PRESCALE_4` = 2

      LSPCLK = SYSCLK / 4 (default)

    enumerator `SYSCTL_LSPCLK_PRESCALE_6` = 3

      LSPCLK = SYSCLK / 6.

    enumerator `SYSCTL_LSPCLK_PRESCALE_8` = 4

      LSPCLK = SYSCLK / 8.

    enumerator `SYSCTL_LSPCLK_PRESCALE_10` = 5

      LSPCLK = SYSCLK / 10.

    enumerator `SYSCTL_LSPCLK_PRESCALE_12` = 6

      LSPCLK = SYSCLK / 12.

    enumerator `SYSCTL_LSPCLK_PRESCALE_14` = 7

      LSPCLK = SYSCLK / 14.

  enum `SysCtl_EPWMCLKDivider`

    The following are values that can be passed to SysCtl_setEPWMClockDivider() as the divider parameter.

    Values:

    enumerator `SYSCTL_EPWMCLK_DIV_1`

      EPWMCLK = PLLSYSCLK / 1.

    enumerator `SYSCTL_EPWMCLK_DIV_2`

      EPWMCLK = PLLSYSCLK / 2.

  enum `SysCtl_EMIF1CLKDivider`

    The following are values that can be passed to SysCtl_setEMIF1ClockDivider() as the divider parameter.

    Values:

    enumerator `SYSCTL_EMIF1CLK_DIV_1`

      EMIF1CLK = PLLSYSCLK / 1.

    enumerator `SYSCTL_EMIF1CLK_DIV_2`

      EMIF1CLK = PLLSYSCLK / 2.

  enum `SysCtl_LINACLKDivider`

    The following are values that can be passed to SysCtl_setLINAClockDivider() as the divider parameter.

    Values:

    enumerator `SYSCTL_LINACLK_DIV_1`

      LINACLK = PLLSYSCLK / 1.

    enumerator `SYSCTL_LINACLK_DIV_2`

      LINACLK = PLLSYSCLK / 2.

    enumerator `SYSCTL_LINACLK_DIV_4`

      LINACLK = PLLSYSCLK / 4.

  enum `SysCtl_LINBCLKDivider`

    The following are values that can be passed to SysCtl_setLINBClockDivider() as the divider parameter.

    Values:

    enumerator `SYSCTL_LINBCLK_DIV_1`

      LINBCLK = PLLSYSCLK / 1.

    enumerator `SYSCTL_LINBCLK_DIV_2`

      LINBCLK = PLLSYSCLK / 2.

    enumerator `SYSCTL_LINBCLK_DIV_4`

      LINBCLK = PLLSYSCLK / 4.

  enum `SysCtl_AccessPeripheral`

    The following are values that can be passed to SysCtl_setPeripheralAccessControl() and SysCtl_getPeripheralAccessControl() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_ACCESS_ADCA` = 0x0

      ADCA access.

    enumerator `SYSCTL_ACCESS_ADCB` = 0x2

      ADCB access.

    enumerator `SYSCTL_ACCESS_ADCC` = 0x4

      ADCC access.

    enumerator `SYSCTL_ACCESS_CMPSS1` = 0x10

      CMPSS1 access.

    enumerator `SYSCTL_ACCESS_CMPSS2` = 0x12

      CMPSS2 access.

    enumerator `SYSCTL_ACCESS_CMPSS3` = 0x14

      CMPSS3 access.

    enumerator `SYSCTL_ACCESS_CMPSS4` = 0x16

      CMPSS4 access.

    enumerator `SYSCTL_ACCESS_CMPSS5` = 0x18

      CMPSS5 access.

    enumerator `SYSCTL_ACCESS_CMPSS6` = 0x1A

      CMPSS6 access.

    enumerator `SYSCTL_ACCESS_CMPSS7` = 0x1C

      CMPSS7 access.

    enumerator `SYSCTL_ACCESS_CMPSS8` = 0x1E

      CMPSS8 access.

    enumerator `SYSCTL_ACCESS_CMPSS9` = 0x20

      CMPSS9 access.

    enumerator `SYSCTL_ACCESS_CMPSS10` = 0x22

      CMPSS10 access.

    enumerator `SYSCTL_ACCESS_CMPSS11` = 0x24

      CMPSS11 access.

    enumerator `SYSCTL_ACCESS_DACA` = 0x28

      DACA access.

    enumerator `SYSCTL_ACCESS_DACC` = 0x2C

      DACC access.

    enumerator `SYSCTL_ACCESS_EPWM1` = 0x48

      EPWM1 access.

    enumerator `SYSCTL_ACCESS_EPWM2` = 0x4A

      EPWM2 access.

    enumerator `SYSCTL_ACCESS_EPWM3` = 0x4C

      EPWM3 access.

    enumerator `SYSCTL_ACCESS_EPWM4` = 0x4E

      EPWM4 access.

    enumerator `SYSCTL_ACCESS_EPWM5` = 0x50

      EPWM5 access.

    enumerator `SYSCTL_ACCESS_EPWM6` = 0x52

      EPWM6 access.

    enumerator `SYSCTL_ACCESS_EPWM7` = 0x54

      EPWM7 access.

    enumerator `SYSCTL_ACCESS_EPWM8` = 0x56

      EPWM8 access.

    enumerator `SYSCTL_ACCESS_EPWM9` = 0x58

      EPWM9 access.

    enumerator `SYSCTL_ACCESS_EPWM10` = 0x5A

      EPWM10 access.

    enumerator `SYSCTL_ACCESS_EPWM11` = 0x5C

      EPWM11 access.

    enumerator `SYSCTL_ACCESS_EPWM12` = 0x5E

      EPWM12 access.

    enumerator `SYSCTL_ACCESS_EPWM13` = 0x60

      EPWM13 access.

    enumerator `SYSCTL_ACCESS_EPWM14` = 0x62

      EPWM14 access.

    enumerator `SYSCTL_ACCESS_EPWM15` = 0x64

      EPWM15 access.

    enumerator `SYSCTL_ACCESS_EPWM16` = 0x66

      EPWM16 access.

    enumerator `SYSCTL_ACCESS_EPWM17` = 0x68

      EPWM17 access.

    enumerator `SYSCTL_ACCESS_EPWM18` = 0x6A

      EPWM18 access.

    enumerator `SYSCTL_ACCESS_EQEP1` = 0x70

      EQEP1 access.

    enumerator `SYSCTL_ACCESS_EQEP2` = 0x72

      EQEP2 access.

    enumerator `SYSCTL_ACCESS_EQEP3` = 0x74

      EQEP3 access.

    enumerator `SYSCTL_ACCESS_EQEP4` = 0x76

      EQEP4 access.

    enumerator `SYSCTL_ACCESS_EQEP5` = 0x78

      EQEP5 access.

    enumerator `SYSCTL_ACCESS_EQEP6` = 0x7A

      EQEP6 access.

    enumerator `SYSCTL_ACCESS_ECAP1` = 0x80

      ECAP1 access.

    enumerator `SYSCTL_ACCESS_ECAP2` = 0x82

      ECAP2 access.

    enumerator `SYSCTL_ACCESS_ECAP3` = 0x84

      ECAP3 access.

    enumerator `SYSCTL_ACCESS_ECAP4` = 0x86

      ECAP4 access.

    enumerator `SYSCTL_ACCESS_ECAP5` = 0x88

      ECAP5 access.

    enumerator `SYSCTL_ACCESS_ECAP6` = 0x8A

      ECAP6 access.

    enumerator `SYSCTL_ACCESS_ECAP7` = 0x8C

      ECAP7 access.

    enumerator `SYSCTL_ACCESS_SDFM1` = 0xA8

      SDFM1 access.

    enumerator `SYSCTL_ACCESS_SDFM2` = 0xAA

      SDFM2 access.

    enumerator `SYSCTL_ACCESS_SDFM3` = 0xAC

      SDFM3 access.

    enumerator `SYSCTL_ACCESS_SDFM4` = 0xAE

      SDFM4 access.

    enumerator `SYSCTL_ACCESS_CLB1` = 0xB0

      CLB1 access.

    enumerator `SYSCTL_ACCESS_CLB2` = 0xB2

      CLB2 access.

    enumerator `SYSCTL_ACCESS_CLB3` = 0xB4

      CLB3 access.

    enumerator `SYSCTL_ACCESS_CLB4` = 0xB6

      CLB4 access.

    enumerator `SYSCTL_ACCESS_CLB5` = 0xB8

      CLB5 access.

    enumerator `SYSCTL_ACCESS_CLB6` = 0xBA

      CLB6 access.

    enumerator `SYSCTL_ACCESS_SCIA` = 0x100

      SCIA access.

    enumerator `SYSCTL_ACCESS_SCIB` = 0x102

      SCIB access.

    enumerator `SYSCTL_ACCESS_SPIA` = 0x110

      SPIA access.

    enumerator `SYSCTL_ACCESS_SPIB` = 0x112

      SPIB access.

    enumerator `SYSCTL_ACCESS_SPIC` = 0x114

      SPIC access.

    enumerator `SYSCTL_ACCESS_SPID` = 0x116

      SPID access.

    enumerator `SYSCTL_ACCESS_I2CA` = 0x120

      I2CA access.

    enumerator `SYSCTL_ACCESS_I2CB` = 0x122

      I2CB access.

    enumerator `SYSCTL_ACCESS_PMBUSA` = 0x130

      PMBUS_A access.

    enumerator `SYSCTL_ACCESS_LINA` = 0x138

      LIN_A access.

    enumerator `SYSCTL_ACCESS_LINB` = 0x13A

      LIN_B access.

    enumerator `SYSCTL_ACCESS_CANA` = 0x140

      DCANA access.

    enumerator `SYSCTL_ACCESS_MCANA` = 0x148

      MCANA access.

    enumerator `SYSCTL_ACCESS_MCANB` = 0x14A

      MCANB access.

    enumerator `SYSCTL_ACCESS_FSIATX` = 0x158

      FSIATX access.

    enumerator `SYSCTL_ACCESS_FSIARX` = 0x15A

      FSIARX access.

    enumerator `SYSCTL_ACCESS_FSIBTX` = 0x15C

      FSIBTX access.

    enumerator `SYSCTL_ACCESS_FSIBRX` = 0x15E

      FSIBRX access.

    enumerator `SYSCTL_ACCESS_FSICRX` = 0x162

      FSICRX access.

    enumerator `SYSCTL_ACCESS_FSIDRX` = 0x166

      FSIDRX access.

    enumerator `SYSCTL_ACCESS_USBA` = 0x18A

      USBA access.

    enumerator `SYSCTL_ACCESS_HRPWM0` = 0x1B2

      HRPWM0 access.

    enumerator `SYSCTL_ACCESS_HRPWM1` = 0x1B4

      HRPWM1 access.

    enumerator `SYSCTL_ACCESS_HRPWM2` = 0x1B6

      HRPWM2 access.

    enumerator `SYSCTL_ACCESS_ECAT` = 0x1B8

      ETHERCAT access.

    enumerator `SYSCTL_ACCESS_AESA` = 0x1BC

      AESA access.

    enumerator `SYSCTL_ACCESS_UARTA` = 0x1BE

      UARTA access.

    enumerator `SYSCTL_ACCESS_UARTB` = 0x1C0

      UARTB access.

  enum `SysCtl_AccessController`

    The following are values that can be passed to SysCtl_setPeripheralAccessControl() and SysCtl_getPeripheralAccessControl() as the controller parameter.

    Values:

    enumerator `SYSCTL_ACCESS_CPUX` = 0U

      CPU access to the peripheral.

    enumerator `SYSCTL_ACCESS_CLA1` = 2U

      CLA1 access to the peripheral.

    enumerator `SYSCTL_ACCESS_DMA1` = 4U

      DMA access to the peripheral.

  enum `SysCtl_AccessPermission`

    The following are values that can be passed to SysCtl_setPeripheralAccessControl() as the permission parameter.

    Values:

    enumerator `SYSCTL_ACCESS_FULL` = 3U

      Full Access for both read and write.

    enumerator `SYSCTL_ACCESS_PROTECTED` = 2U

      Protected RD access such that FIFOs. Clear on read, registers are not changed and no write access.

    enumerator `SYSCTL_ACCESS_NONE` = 0U

      No read or write access.

  enum `SysCtl_ClockOut`

    The following are values that can be passed to SysCtl_selectClockOutSource() as the source parameter.

    Values:

    enumerator `SYSCTL_CLOCKOUT_PLLSYS` = 0U

      PLL System Clock post SYSCLKDIV.

    enumerator `SYSCTL_CLOCKOUT_PLLRAW` = 1U

      PLL Raw Clock.

    enumerator `SYSCTL_CLOCKOUT_SYSCLK` = 2U

      CPU System Clock.

    enumerator `SYSCTL_CLOCKOUT_SYSCLK2` = 3U

      CPU 2 System Clock.

    enumerator `SYSCTL_CLOCKOUT_AUXPLLCLK` = 4U

      Aux PLL Clock.

    enumerator `SYSCTL_CLOCKOUT_INTOSC1` = 5U

      Internal Oscillator 1.

    enumerator `SYSCTL_CLOCKOUT_INTOSC2` = 6U

      Internal Oscillator 2.

    enumerator `SYSCTL_CLOCKOUT_XTALOSC` = 7U

      External Oscillator.

  enum `SysCtl_ExternalOscMode`

    The following are values that can be passed to SysCtl_setExternalOscMode() as the mode parameter.

    Values:

    enumerator `SYSCTL_XTALMODE_CRYSTAL` = 1U

      XTAL Oscillator Crystal Mode.

    enumerator `SYSCTL_XTALMODE_SINGLE` = 2U

      XTAL Oscillator Single-Ended Mode.

  enum `SysCtl_SyncOutputSource`

    The following values define the syncSrc parameter for SysCtl_setSyncOutputConfig().

    Values:

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM1SYNCOUT` = 0X0U

      EPWM1SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM2SYNCOUT` = 0X1U

      EPWM2SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM3SYNCOUT` = 0X2U

      EPWM3SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM4SYNCOUT` = 0X3U

      EPWM4SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM5SYNCOUT` = 0X4U

      EPWM5SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM6SYNCOUT` = 0X5U

      EPWM6SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM7SYNCOUT` = 0X6U

      EPWM7SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM8SYNCOUT` = 0X7U

      EPWM8SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM9SYNCOUT` = 0X8U

      EPWM9SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM10SYNCOUT` = 0X9U

      EPWM10SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM11SYNCOUT` = 0XAU

      EPWM11SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM12SYNCOUT` = 0XBU

      EPWM12SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM13SYNCOUT` = 0XCU

      EPWM13SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM14SYNCOUT` = 0XDU

      EPWM14SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM15SYNCOUT` = 0XEU

      EPWM15SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM16SYNCOUT` = 0XFU

      EPWM16SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM17SYNCOUT` = 0X10U

      EPWM15SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_EPWM18SYNCOUT` = 0X11U

      EPWM16SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP1SYNCOUT` = 0x18

      ECAP1SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP2SYNCOUT` = 0x19

      ECAP2SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP3SYNCOUT` = 0x20

      ECAP3SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP4SYNCOUT` = 0x21

      ECAP4SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP5SYNCOUT` = 0x22

      ECAP5SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP6SYNCOUT` = 0x23

      ECAP6SYNCOUT –> EXTSYNCOUT.

    enumerator `SYSCTL_SYNC_OUT_SRC_ECAP7SYNCOUT` = 0x24

      ECAP7SYNCOUT –> EXTSYNCOUT.

  enum `SysCtl_DeviceParametric`

    The following values define the parametric parameter for SysCtl_getDeviceParametric().

    Values:

    enumerator `SYSCTL_DEVICE_QUAL`

      Device Qualification Status.

    enumerator `SYSCTL_DEVICE_PINCOUNT`

      Device Pin Count.

    enumerator `SYSCTL_DEVICE_FLASH`

      Device Flash size (KB)

    enumerator `SYSCTL_DEVICE_FAMILY`

      Device Family.

    enumerator `SYSCTL_DEVICE_PARTNO`

      Device Part Number.

    enumerator `SYSCTL_DEVICE_CLASSID`

      Device Class ID.

  enum `SysCtl_DeviceConf`

    The following are values that can be passed to SysCtl_lockConfigRegs() as the regs parameter.

    Values:

    enumerator `SYSCTL_DC_PERCNF_PARTID`

      Allows/Blocks write to Device config registers.

    enumerator `SYSCTL_BANKSEL`

      Allows/Blocks write to BANKSEL registers.

  enum `SysCtl_CoreReset`

    The following are values that can be passed to SysCtl_controlCPU2Reset() as the control parameter.

    Values:

    enumerator `SYSCTL_CORE_DEACTIVE`

      Core reset is deactivated.

    enumerator `SYSCTL_CORE_ACTIVE`

      Core is held in reset.

  enum `SysCtl_SelType`

    The following are values that can be passed to SysCtl_configureType() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_USBTYPE` = 0x0

      Configure USB Type :

      - Type 0 : Disable Global interrupt feature

      - TYpe 1 : Enable Global interrupt feature

    enumerator `SYSCTL_ECAPTYPE` = 0x1

      Configure ECAP Type :

      - Type 0 : No EALLOW protection for ECAP registers

      - Type 1 : ECAP registers are EALLOW protected

    enumerator `SYSCTL_SDFMTYPE` = 0x2

      Configure SDFM Type :

      - Type 0 : Data Ready conditions combined with the fault conditions on the interrupt line. Data ready interrupts from individual filters are not generated.

      - Type 1 : Data Ready conditions do not generate the SDFMINT. Each filter generates a separate data ready interrupts.

    enumerator `SYSCTL_MEMMAPTYPE` = 0x4

      Configure MEMMAP Type :

      - Type 0 : Disables re-mapping SDRAM in lower 64kb of address space

      - Type 1 : Enables re-mapping SDRAM in lower 64kb of address space.

  enum `SysCtl_XClkDivider`

    The following are values that can be passed to SysCtl_setXClk() as divider parameter.

    Values:

    enumerator `SYSCTL_XCLKOUT_DIV_1` = 0

      XCLKOUT = XCLKOUT / 1.

    enumerator `SYSCTL_XCLKOUT_DIV_2` = 1

      XCLKOUT = XCLKOUT / 2.

    enumerator `SYSCTL_XCLKOUT_DIV_4` = 2

      XCLKOUT = XCLKOUT / 4.

    enumerator `SYSCTL_XCLKOUT_DIV_8` = 3

      XCLKOUT = XCLKOUT / 8.

  enum `SysCtl_ECatClkDivider`

    The following are values that can be passed to SysCtl_setECatClk() as divider parameter.

    Values:

    enumerator `SYSCTL_ECATCLKOUT_DIV_1`

      ECat clock = ECat clock / 1.

    enumerator `SYSCTL_ECATCLKOUT_DIV_2`

      ECat clock = ECat clock / 2.

    enumerator `SYSCTL_ECATCLKOUT_DIV_3`

      ECat clock = ECat clock / 3.

    enumerator `SYSCTL_ECATCLKOUT_DIV_4`

      ECat clock = ECat clock / 4.

    enumerator `SYSCTL_ECATCLKOUT_DIV_5`

      ECat clock = ECat clock / 5.

    enumerator `SYSCTL_ECATCLKOUT_DIV_6`

      ECat clock = ECat clock / 6.

    enumerator `SYSCTL_ECATCLKOUT_DIV_7`

      ECat clock = ECat clock / 7.

    enumerator `SYSCTL_ECATCLKOUT_DIV_8`

      ECat clock = ECat clock / 8.

  enum `SysCtl_PLLClockSource`

    The following are values that can be passed to SysCtl_setCMClk(), SysCtl_setECatClk() & SysCtl_isPLLValid() as source parameter.

    Values:

    enumerator `SYSCTL_SOURCE_AUXPLL`

      Auxillary PLL.

    enumerator `SYSCTL_SOURCE_SYSPLL`

      System PLL.

  enum `SysCtl_MCANClkDivider`

    The following are values that can be passed to SysCtl_setMCANClk() as divider parameter.

    Values:

    enumerator `SYSCTL_MCANCLK_DIV_1` = 0x0

      MCAN clock = MCAN clock / 1.

    enumerator `SYSCTL_MCANCLK_DIV_2` = 0x1

      MCAN clock = MCAN clock / 2.

    enumerator `SYSCTL_MCANCLK_DIV_3` = 0x2

      MCAN clock = MCAN clock / 3.

    enumerator `SYSCTL_MCANCLK_DIV_4` = 0x3

      MCAN clock = MCAN clock / 4.

    enumerator `SYSCTL_MCANCLK_DIV_5` = 0x4

      MCAN clock = MCAN clock / 5.

    enumerator `SYSCTL_MCANCLK_DIV_6` = 0x5

      MCAN clock = MCAN clock / 6.

    enumerator `SYSCTL_MCANCLK_DIV_7` = 0x6

      MCAN clock = MCAN clock / 7.

    enumerator `SYSCTL_MCANCLK_DIV_8` = 0x7

      MCAN clock = MCAN clock / 8.

    enumerator `SYSCTL_MCANCLK_DIV_9` = 0x8

      MCAN clock = MCAN clock / 9.

    enumerator `SYSCTL_MCANCLK_DIV_10` = 0x9

      MCAN clock = MCAN clock / 10.

    enumerator `SYSCTL_MCANCLK_DIV_11` = 0xA

      MCAN clock = MCAN clock / 11.

    enumerator `SYSCTL_MCANCLK_DIV_12` = 0xB

      MCAN clock = MCAN clock / 12.

    enumerator `SYSCTL_MCANCLK_DIV_13` = 0xC

      MCAN clock = MCAN clock / 13.

    enumerator `SYSCTL_MCANCLK_DIV_14` = 0xD

      MCAN clock = MCAN clock / 14.

    enumerator `SYSCTL_MCANCLK_DIV_15` = 0xE

      MCAN clock = MCAN clock / 15.

    enumerator `SYSCTL_MCANCLK_DIV_16` = 0xF

      MCAN clock = MCAN clock / 16.

    enumerator `SYSCTL_MCANCLK_DIV_17` = 0x10

      MCAN clock = MCAN clock / 17.

    enumerator `SYSCTL_MCANCLK_DIV_18` = 0x11

      MCAN clock = MCAN clock / 18.

    enumerator `SYSCTL_MCANCLK_DIV_19` = 0x12

      MCAN clock = MCAN clock / 19.

    enumerator `SYSCTL_MCANCLK_DIV_20` = 0x13

      MCAN clock = MCAN clock / 20.

  enum `SysCtl_MCANInstance`

    The following are values that can be passed to SysCtl_setMCANClk() as mcanInst parameter.

    Values:

    enumerator `SYSCTL_MCANA` = 1U
    enumerator `SYSCTL_MCANB` = 2U
  enum `SysCtl_AuxPLLClkDivider`

    The following are values that can be passed to SysCtl_setAuxPLLClk() as divider parameter.

    Values:

    enumerator `SYSCTL_AUXPLLCLK_DIV_1`

      AUXPLL clock = AUXPLL clock / 1.

    enumerator `SYSCTL_AUXPLLCLK_DIV_2`

      AUXPLL clock = AUXPLL clock / 2.

    enumerator `SYSCTL_AUXPLLCLK_DIV_4`

      AUXPLL clock = AUXPLL clock / 4.

    enumerator `SYSCTL_AUXPLLCLK_DIV_8`

      AUXPLL clock = AUXPLL clock / 8.

    enumerator `SYSCTL_AUXPLLCLK_DIV_3`

      AUXPLL clock = AUXPLL clock / 3.

    enumerator `SYSCTL_AUXPLLCLK_DIV_5`

      AUXPLL clock = AUXPLL clock / 5.

    enumerator `SYSCTL_AUXPLLCLK_DIV_6`

      AUXPLL clock = AUXPLL clock / 6.

    enumerator `SYSCTL_AUXPLLCLK_DIV_7`

      AUXPLL clock = AUXPLL clock / 7.

  enum `SysCtl_Cputimer2ClkDivider`

    The following are values that can be passed to SysCtl_setCputimer2Clk() as divider parameter.

    Values:

    enumerator `SYSCTL_TMR2CLKPRESCALE_1`

      Cputimer2 clock = Cputimer2 clock / 1.

    enumerator `SYSCTL_TMR2CLKPRESCALE_2`

      Cputimer2 clock = Cputimer2 clock / 2.

    enumerator `SYSCTL_TMR2CLKPRESCALE_4`

      Cputimer2 clock = Cputimer2 clock / 4.

    enumerator `SYSCTL_TMR2CLKPRESCALE_8`

      Cputimer2 clock = Cputimer2 clock / 8.

    enumerator `SYSCTL_TMR2CLKPRESCALE_16`

      Cputimer2 clock = Cputimer2 clock / 16.

  enum `SysCtl_Cputimer2ClkSource`

    The following are values that can be passed to SysCtl_setCputimer2Clk() as source parameter.

    Values:

    enumerator `SYSCTL_TMR2CLKSRCSEL_SYSCLK` = 0U

      System Clock.

    enumerator `SYSCTL_TMR2CLKSRCSEL_INTOSC1` = 1U

      Internal Oscillator 1.

    enumerator `SYSCTL_TMR2CLKSRCSEL_INTOSC2` = 2U

      Internal Oscillator 2.

    enumerator `SYSCTL_TMR2CLKSRCSEL_XTAL` = 3U

      Crystal oscillator.

    enumerator `SYSCTL_TMR2CLKSRCSEL_AUXPLLCLK` = 6U

      Aux PLL CLock.

  enum `SysCtl_ClkRegSel`

    The following are values that can be passed to SysCtl_lockClkConfig() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_REG_SEL_CLKSRCCTL1` = 0x0000

      CLKSRCCTL1 lock.

    enumerator `SYSCTL_REG_SEL_CLKSRCCTL2` = 0x0100

      CLKSRCCTL2 lock.

    enumerator `SYSCTL_REG_SEL_CLKSRCCTL3` = 0x0200

      CLKSRCCTL3 lock.

    enumerator `SYSCTL_REG_SEL_SYSPLLCTL1` = 0x0300

      SYSPLLCTL1 lock.

    enumerator `SYSCTL_REG_SEL_SYSPLLMULT` = 0x0600

      SYSPLLMULT lock.

    enumerator `SYSCTL_REG_SEL_AUXPLLCTL1` = 0x0700

      AUXPLLCTL1 lock.

    enumerator `SYSCTL_REG_SEL_AUXPLLMULT` = 0x0A00

      AUXPLLMULT lock.

    enumerator `SYSCTL_REG_SEL_SYSCLKDIVSEL` = 0x0B00

      SYSCLKDIVSEL lock.

    enumerator `SYSCTL_REG_SEL_AUXCLKDIVSEL` = 0x0C00

      AUXCLKDIVSEL lock.

    enumerator `SYSCTL_REG_SEL_PERCLKDIVSEL` = 0x0D00

      PERCLKDIVSEL lock.

    enumerator `SYSCTL_REG_SEL_CLBCLKCTL` = 0x0E00

      CLBCLKCTL lock.

    enumerator `SYSCTL_REG_SEL_LOSPCP` = 0x0F00

      LOSPCP lock.

    enumerator `SYSCTL_REG_SEL_XTALCR` = 0x1000

      XTALCR lock.

    enumerator `SYSCTL_REG_SEL_EXTRFLTDET` = 0x1100

      EXTRFLTDET lock.

    enumerator `SYSCTL_REG_SEL_ETHERCATCLKCTL` = 0x1200

      ETHERCATCLKCTL lock.

  enum `SysCtl_CpuRegSel`

    The following are values that can be passed to SysCtl_lockSysConfig() as the peripheral parameter.

    Values:

    enumerator `SYSCTL_REG_SEL_PIEVERRADDR` = 0x0200

      PIEVERRADDR lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR0` = 0x0300

      PCLKCR0 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR1` = 0x0400

      PCLKCR1 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR2` = 0x0500

      PCLKCR2 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR3` = 0x0600

      PCLKCR3 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR4` = 0x0700

      PCLKCR4 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR6` = 0x0900

      PCLKCR6 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR7` = 0x0A00

      PCLKCR7 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR8` = 0x0B00

      PCLKCR8 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR9` = 0x0C00

      PCLKCR9 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR10` = 0x0D00

      PCLKCR10 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR11` = 0x0E00

      PCLKCR11 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR13` = 0x1000

      PCLKCR13 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR14` = 0x1100

      PCLKCR14 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR16` = 0x1300

      PCLKCR16 lock.

    enumerator `SYSCTL_REG_SEL_LPMCR` = 0x1500

      LPMCR lock.

    enumerator `SYSCTL_REG_SEL_GPIOLPMSEL0` = 0x1600

      GPIOLPMSEL0 lock.

    enumerator `SYSCTL_REG_SEL_GPIOLPMSEL1` = 0x1700

      GPIOLPMSEL1 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR17` = 0x1800

      PCLKCR17 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR18` = 0x1900

      PCLKCR18 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR19` = 0x1A00

      PCLKCR19 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR21` = 0x1C00

      PCLKCR21 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR22` = 0x1D00

      PCLKCR22 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR23` = 0x1E00

      PCLKCR23 lock.

    enumerator `SYSCTL_REG_SEL_ETHERCATCTL` = 0x0001

      ETHERCATCTL lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR25` = 0x0101

      PCLKCR25 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR26` = 0x0201

      PCLKCR26 lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR27` = 0x0301

      PCLKCR27 lock.

    enumerator `SYSCTL_REG_SEL_LSEN` = 0x0401

      LSEN lock.

    enumerator `SYSCTL_REG_SEL_CMPSSLPMSEL` = 0x0501

      CMPSSLPMSEL lock.

    enumerator `SYSCTL_REG_SEL_PCLKCR28` = 0x0601

      PCLKCR28 lock.

    enumerator `SYSCTL_REG_SEL_USER_REG1_SYSRSN` = 0x1801

      USER_REG1_SYSRSN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG2_SYSRSN` = 0x1901

      USER_REG2_SYSRSN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG1_XRSN` = 0x1A01

      USER_REG1_XRSN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG2_XRSN` = 0x1B01

      USER_REG2_XRSN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG1_PORESETN` = 0x1C01

      USER_REG1_PORESETN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG2_PORESETN` = 0x1D01

      USER_REG2_PORESETN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG3_PORESETN` = 0x1E01

      USER_REG3_PORESETN lock.

    enumerator `SYSCTL_REG_SEL_USER_REG4_PORESETN` = 0x1F01

      USER_REG4_PORESETN lock.

  enum `SysCtl_CLBClkDivider`

    The following are values that can be passed to SysCtl_setCLBClk() as cpuInst parameter.

    Values:

    enumerator `SYSCTL_CLBCLKOUT_DIV_1`

      CLB clock = CLB clock / 1.

    enumerator `SYSCTL_CLBCLKOUT_DIV_2`

      CLB clock = CLB clock / 2.

    enumerator `SYSCTL_CLBCLKOUT_DIV_3`

      CLB clock = CLB clock / 3.

    enumerator `SYSCTL_CLBCLKOUT_DIV_4`

      CLB clock = CLB clock / 4.

    enumerator `SYSCTL_CLBCLKOUT_DIV_5`

      CLB clock = CLB clock / 5.

    enumerator `SYSCTL_CLBCLKOUT_DIV_6`

      CLB clock = CLB clock / 6.

    enumerator `SYSCTL_CLBCLKOUT_DIV_7`

      CLB clock = CLB clock / 7.

    enumerator `SYSCTL_CLBCLKOUT_DIV_8`

      CLB clock = CLB clock / 8.

  enum `SysCtl_CLBTClkDivider`

    Values:

    enumerator `SYSCTL_CLBTCLKOUT_DIV_1`

      CLBTCLKOUT = CLB clock / 1.

    enumerator `SYSCTL_CLBTCLKOUT_DIV_2`

      CLBTCLKOUT = CLB clock / 2.

  enum `SysCtl_CLBInst`

    Values:

    enumerator `SYSCTL_CLB1` = 0x10

      CLB 1 instance.

    enumerator `SYSCTL_CLB2` = 0x11

      CLB 2 instance.

    enumerator `SYSCTL_CLB3` = 0x12

      CLB 3 instance.

    enumerator `SYSCTL_CLB4` = 0x13

      CLB 4 instance.

    enumerator `SYSCTL_CLB5` = 0x14

      CLB 5 instance.

    enumerator `SYSCTL_CLB6` = 0x15

      CLB 6 instance.

  enum `SysCtl_CLBClkm`

    Values:

    enumerator `SYSCTL_CLBCLK_SYNC`

      CLB is synchronous to SYSCLK.

    enumerator `SYSCTL_CLBCLK_ASYNC`

      CLB runs of asynchronous clock.

  enum `SysCtl_UserRegister`

    The following are values that can be passed to SysCtl_setUserRegister() and SysCtl_getUserRegister() as the reg parameter.

    Values:

    enumerator `SYSCTL_USER_REG1_SYSRSN` = 0U

      User register reset by SYSRSn.

    enumerator `SYSCTL_USER_REG2_SYSRSN` = 1U

      User register reset by SYSRSn.

    enumerator `SYSCTL_USER_REG1_XRSN` = 2U

      User register reset by XRSn.

    enumerator `SYSCTL_USER_REG2_XRSN` = 3U

      User register reset by XRSn.

    enumerator `SYSCTL_USER_REG1_PORESETN` = 4U

      User register reset by PORESETn.

    enumerator `SYSCTL_USER_REG2_PORESETN` = 5U

      User register reset by PORESETn.

    enumerator `SYSCTL_USER_REG3_PORESETN` = 6U

      User register reset by PORESETn.

    enumerator `SYSCTL_USER_REG4_PORESETN` = 7U

      User register reset by PORESETn.

  enum `SysCtl_LFUUserRegister`

    The following are values that can be passed to SysCtl_setLFUUserRegister() and SysCtl_getLFUUserRegister() as the reg parameter.

    Values:

    enumerator `SYSCTL_LFU_USER_REG1_SYSRSN` = 0U

      User register reset by SYSRSn.

    enumerator `SYSCTL_LFU_USER_REG2_SYSRSN` = 1U

      User register reset by SYSRSn.

    enumerator `SYSCTL_LFU_USER_REG1_XRSN` = 2U

      User register reset by XRSn.

    enumerator `SYSCTL_LFU_USER_REG2_XRSN` = 3U

      User register reset by XRSn.

    enumerator `SYSCTL_LFU_USER_REG1_PORESETN` = 4U

      User register reset by PORESETn.

    enumerator `SYSCTL_LFU_USER_REG2_PORESETN` = 5U

      User register reset by PORESETn.

  enum `SysCtl_DevicePartNumber`

    The following are device part numbers that can be passed to SysCtl_emulateDevice() as the input parameter.

    Values:

    enumerator `SYSCTL_EMULATE_F28P650DK9` = 0U
    enumerator `SYSCTL_EMULATE_F28P650DK7` = 1U
    enumerator `SYSCTL_EMULATE_F28P650DK8` = 2U
    enumerator `SYSCTL_EMULATE_F28P650SK7` = 3U
    enumerator `SYSCTL_EMULATE_F28P659DK8` = 4U
    enumerator `SYSCTL_EMULATE_F28P650DK6` = 5U
    enumerator `SYSCTL_EMULATE_F28P650SK6` = 6U
    enumerator `SYSCTL_EMULATE_F28P659DH8` = 7U
    enumerator `SYSCTL_EMULATE_F28P659SH6` = 8U
    enumerator `SYSCTL_EMULATE_F28P650DH6` = 9U
    enumerator `SYSCTL_EMULATE_F28P650SH6` = 10U
  enum `SysCtl_CMPSSLPMSel`

    Values that can be passed to SysCtl_disableCMPSSLPMWakeupPin() and SysCtl_enableCMPSSLPMWakeupPin() as the pin input parameter.

    Values:

    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_1H` = 0x00
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_1L` = 0x01
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_2H` = 0x02
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_2L` = 0x03
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_3H` = 0x04
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_3L` = 0x05
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_4H` = 0x06
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_4L` = 0x07
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_5H` = 0x08
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_5L` = 0x09
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_6H` = 0x0A
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_6L` = 0x0B
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_7H` = 0x0C
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_7L` = 0x0D
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_8H` = 0x0E
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_8L` = 0x0F
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_9H` = 0x10
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_9L` = 0x11
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_10H` = 0x12
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_10L` = 0x13
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_11H` = 0x14
    enumerator `SYSCTL_CMPSSLPMSEL_CMPSS_11L` = 0x15

  Functions

  void `SysCtl_deviceCal`(void)

    Wrapper function for Device_cal function

    Return

      None.

    Parameters

      - `None`: This is a wrapper function for the Device_cal function available in the OTP memory.

  void `SysCtl_resetPeripheral`(SysCtl_PeripheralSOFTPRES peripheral)

    Resets a peripheral

    This function uses the SOFTPRESx registers to reset a specified peripheral. Module registers will be returned to their reset states.

    Parameters

      - `peripheral`: is the peripheral to reset.

    Note

      This includes registers containing trim values.The peripheral software reset needed by CPU2 can be communicated to CPU1 via IPC for all shared peripherals.

    Return

      None.

  void `SysCtl_enablePeripheral`(SysCtl_PeripheralPCLOCKCR peripheral)

    Enables a peripheral.

    Peripherals are enabled with this function. At power-up, all peripherals are disabled; they must be enabled in order to operate or respond to register reads/writes.

    Parameters

      - `peripheral`: is the peripheral to enable.

    Note

      Note that there should be atleast 5 cycles delay between enabling the peripheral clock and accessing the peripheral registers. The delay should be added by the user if the peripheral is accessed immediately after this function call. Use asm(” RPT #5 || NOP”); to add 5 cycle delay post this function call.

    Return

      None.

  void `SysCtl_disablePeripheral`(SysCtl_PeripheralPCLOCKCR peripheral)

    Disables a peripheral.

    Peripherals are disabled with this function. Once disabled, they will not operate or respond to register reads/writes.

    Parameters

      - `peripheral`: is the peripheral to disable.

    Return

      None.

  void `SysCtl_resetDevice`(void)

    Resets the device.

    This function performs a watchdog reset of the device.

    Return

      This function does not return.

  uint32_t `SysCtl_getResetCause`(void)

    Gets the reason for a reset.

    This function will return the reason(s) for a reset. Since the reset reasons are sticky until either cleared by software or an external reset, multiple reset reasons may be returned if multiple resets have occurred. The reset reason will be a logical OR of

    - SYSCTL_CAUSE_POR - Power-on reset

    - SYSCTL_CAUSE_XRS - External reset pin

    - SYSCTL_CAUSE_WDRS - Watchdog reset

    - SYSCTL_CAUSE_NMIWDRS - NMI watchdog reset

    - SYSCTL_CAUSE_SCCRESET - SCCRESETn reset from DCSM

    - SYSCTL_CAUSE_HWBISTN - HWBISTn Reset

    - SYSCTL_CAUSE_ECAT_RESET_OUT - ECAT_RESET_OUT Reset

    - SYSCTL_CAUSE_SIMRESET_CPU1RSN - SIMRESET_CPU1RSn

    - SYSCTL_CAUSE_SIMRESET_XRSN - SIMRESET_XRSn

    Note

      If you re-purpose the reserved boot ROM RAM, the POR and XRS reset statuses won’t be accurate.

    Return

      Returns the reason(s) for a reset.

  void `SysCtl_clearResetCause`(uint32_t rstCauses)

    Clears reset reasons.

    This function clears the specified sticky reset reasons. Once cleared, another reset for the same reason can be detected, and a reset for a different reason can be distinguished (instead of having two reset causes set). If the reset reason is used by an application, all reset causes should be cleared after they are retrieved with

    SysCtl_getResetCause().
    Parameters

      - `rstCauses`: are the reset causes to be cleared; must be a logical OR of

        - SYSCTL_CAUSE_POR - Power-on reset

        - SYSCTL_CAUSE_XRS - External reset pin

        - SYSCTL_CAUSE_WDRS - Watchdog reset

        - SYSCTL_CAUSE_NMIWDRS - NMI watchdog reset

        - SYSCTL_CAUSE_SCCRESET - SCCRESETn reset from DCSM

        - SYSCTL_CAUSE_HWBISTN - HWBISTn Reset

        - SYSCTL_CAUSE_ECAT_RESET_OUT - ECAT_RESET_OUT Reset

        - SYSCTL_CAUSE_SIMRESET_CPU1RSN - SIMRESET_CPU1RSn

        - SYSCTL_CAUSE_SIMRESET_XRSN - SIMRESET_XRSn

    Note

      Some reset causes are cleared by the boot ROM.

    Return

      None.

  void `SysCtl_setLowSpeedClock`(SysCtl_LSPCLKPrescaler prescaler)

    Sets the low speed peripheral clock rate prescaler.

    This function configures the clock rate of the low speed peripherals. The

    prescaler parameter is the value by which the SYSCLK rate is divided to get the LSPCLK rate. For example, a prescaler of SYSCTL_LSPCLK_PRESCALE_4 will result in a LSPCLK rate that is a quarter of the SYSCLK rate.
    Parameters

      - `prescaler`: is the LSPCLK rate relative to SYSCLK

    Return

      None.

  void `SysCtl_setEPWMClockDivider`(SysCtl_EPWMCLKDivider divider)

    Sets the ePWM clock divider.

    This function configures the clock rate of the EPWMCLK. The

    divider parameter is the value by which the SYSCLK rate is divided to get the EPWMCLK rate. For example, SYSCTL_EPWMCLK_DIV_2 will select an EPWMCLK rate that is half the PLLSYSCLK rate.
    Parameters

      - `divider`: is the value by which PLLSYSCLK is divided

    Return

      None.

  void `SysCtl_setEMIF1ClockDivider`(SysCtl_EMIF1CLKDivider divider)

    Sets the EMIF1 clock divider.

    This function configures the clock rate of the EMIF1CLK. The

    divider parameter is the value by which the SYSCLK rate is divided to get the EMIF1CLK rate. For example, SYSCTL_EMIF1CLK_DIV_2 will select an EMIF1CLK rate that is half the PLLSYSCLK (or CPU1.SYSCLK on a dual core device) rate.
    Parameters

      - `divider`: is the value by which PLLSYSCLK (or CPU1.SYSCLK on a dual core device) is divided

    Return

      None.

  void `SysCtl_setLINAClockDivider`(SysCtl_LINACLKDivider divider)

    Sets the LINA clock divider.

    This function configures the clock rate of the LINACLK. The

    divider parameter is the value by which the SYSCLK rate is divided to get the LINACLK rate. For example, SYSCTL_LINACLK_DIV_2 will select an LINACLK rate that is half the PLLSYSCLK rate.
    Parameters

      - `divider`: is the value by which PLLSYSCLK is divided

    Return

      None.

  void `SysCtl_setLINBClockDivider`(SysCtl_LINBCLKDivider divider)

    Sets the LINB clock divider.

    This function configures the clock rate of the LINBCLK. The

    divider parameter is the value by which the SYSCLK rate is divided to get the LINBCLK rate. For example, SYSCTL_LINBCLK_DIV_2 will select an LINBCLK rate that is half the PLLSYSCLK rate.
    Parameters

      - `divider`: is the value by which PLLSYSCLK is divided

    Return

      None.

  void `SysCtl_selectClockOutSource`(SysCtl_ClockOut source)

    Selects a clock source to mux to an external GPIO pin (XCLKOUT).

    This function configures the specified clock source to be muxed to an external clock out (XCLKOUT) GPIO pin. The

    source parameter may take a value of one of the following values:

    - SYSCTL_CLOCKOUT_PLLSYS

    - SYSCTL_CLOCKOUT_PLLRAW

    - SYSCTL_CLOCKOUT_SYSCLK

    - SYSCTL_CLOCKOUT_SYSCLK2

    - SYSCTL_CLOCKOUT_AUXPLLCLK

    - SYSCTL_CLOCKOUT_INTOSC1

    - SYSCTL_CLOCKOUT_INTOSC2

    - SYSCTL_CLOCKOUT_XTALOSC

    Parameters

      - `source`: is the internal clock source to be configured.

    Return

      None.

  void `SysCtl_setExternalOscMode`(SysCtl_ExternalOscMode mode)

    Set the external oscillator mode.

    This function sets the external oscillator mode specified by the

    mode parameter which may take one of two values:

    - SYSCTL_XTALMODE_CRYSTAL - Crystal Mode

    - SYSCTL_XTALMODE_SINGLE - Single-Ended Mode

    Parameters

      - `mode`: is the external oscillator mode to be configured.

    Note

      The external oscillator must be powered off before this configuration can be performed.

    Return

      None.

  uint16_t `SysCtl_getExternalOscCounterValue`(void)

    Gets the external oscillator counter value.

    This function returns the X1 clock counter value. When the return value reaches 0x3FF, it freezes. Before switching from INTOSC2 to an external oscillator (XTAL), an application should call this function to make sure the counter is saturated.

    Return

      Returns the value of the 10-bit X1 clock counter.

  void `SysCtl_clearExternalOscCounterValue`(void)

    Clears the external oscillator counter value.

    Return

      None.

  void `SysCtl_turnOnOsc`(uint32_t oscSource)

    Turns on the specified oscillator sources.

    This function turns on the oscillator specified by the

    oscSource parameter which may take a value of SYSCTL_OSCSRC_XTAL
    Parameters

      - `oscSource`: is the oscillator source to be configured.

    Note

      SYSCTL_OSCSRC_OSC1 is not a valid value for oscSource.

    Return

      None.

  void `SysCtl_turnOffOsc`(uint32_t oscSource)

    Turns off the specified oscillator sources.

    This function turns off the oscillator specified by the

    oscSource parameter which may take a value of SYSCTL_OSCSRC_XTAL
    Parameters

      - `oscSource`: is the oscillator source to be configured.

    Note

      SYSCTL_OSCSRC_OSC1 is not a valid value for oscSource.

    Return

      None.

  void `SysCtl_enterIdleMode`(void)

    Enters IDLE mode.

    This function puts the device into IDLE mode. The CPU clock is gated while all peripheral clocks are left running. Any enabled interrupt will wake the CPU up from IDLE mode.

    Return

      None.

  void `SysCtl_enterStandbyMode`(void)

    Enters STANDBY mode.

    This function puts the device into STANDBY mode. This will gate both the CPU clock and any peripheral clocks derived from SYSCLK. The watchdog is left active, and an NMI or an optional watchdog interrupt will wake the CPU subsystem from STANDBY mode.

    GPIOs may be configured to wake the CPU subsystem. See SysCtl_enableLPMWakeupPin().

    The CPU will receive an interrupt (WAKEINT) on wakeup.

    Return

      None.

  void `SysCtl_enterHaltMode`(void)

    Enters HALT mode.

    This function puts the device into HALT mode. This will gate almost all systems and clocks and allows for the power-down of oscillators and analog blocks. The watchdog may be left clocked to produce a reset. See SysCtl_enableWatchdogInHalt() to enable this. GPIOs should be configured to wake the CPU subsystem. See SysCtl_enableLPMWakeupPin().

    Enter HALT mode (dual CPU). Puts CPU2 in IDLE mode first.

    The CPU will receive an interrupt (WAKEINT) on wakeup.

    Return

      None.

  void `SysCtl_enableLPMWakeupPin`(uint32_t pin)

    Enables a pin to wake up the device from the following mode(s):

    - STANDBY

    - HALT

    This function connects a pin to the LPM circuit, allowing an event on the pin to wake up the device when when it is in following mode(s):

    - STANDBY

    - HALT

    Parameters

      - `pin`: is the identifying number of the pin.

    The pin is specified by its numerical value. For example, GPIO34 is specified by passing 34 as pin. Only GPIOs 0 through 63 are capable of being connected to the LPM circuit.

    Return

      None.

  void `SysCtl_disableLPMWakeupPin`(uint32_t pin)

    Disables a pin to wake up the device from the following mode(s):

    - STANDBY

    - HALT

    This function disconnects a pin to the LPM circuit, disallowing an event on the pin to wake up the device when when it is in following mode(s):

    - STANDBY

    - HALT

    Parameters

      - `pin`: is the identifying number of the pin.

    The pin is specified by its numerical value. For example, GPIO34 is specified by passing 34 as pin. Only GPIOs 0 through 63 are valid.

    Return

      None.

  void `SysCtl_enableCMPSSLPMWakeupPin`(SysCtl_CMPSSLPMSel pin)

    Connects the selected pin to LPM circuit

    The

    This function connects a pin to the LPM circuit

    Parameters

      - `pin`: parameter can be a value from the enumeration SysCtl_CMPSSLPMSel

    Return

      None.

  void `SysCtl_disableCMPSSLPMWakeupPin`(SysCtl_CMPSSLPMSel pin)

    Disonnects the selected pin from LPM circuit

    The

    This function disconnects a pin from the LPM circuit

    Parameters

      - `pin`: parameter can be a value from the enumeration SysCtl_CMPSSLPMSel

    Return

      None.

  void `SysCtl_setStandbyQualificationPeriod`(uint16_t cycles)

    Sets the number of cycles to qualify an input on waking from STANDBY mode.

    This function sets the number of OSCCLK clock cycles used to qualify the selected inputs when waking from STANDBY mode. The

    cycles parameter should be passed a cycle count between 2 and 65 cycles inclusive.
    Parameters

      - `cycles`: is the number of OSCCLK cycles.

    Return

      None.

  void `SysCtl_enableWatchdogStandbyWakeup`(void)

    Enable the device to wake from STANDBY mode upon a watchdog interrupt.

    Note

      In order to use this option, you must configure the watchdog to generate an interrupt using SysCtl_setWatchdogMode().

    Return

      None.

  void `SysCtl_disableWatchdogStandbyWakeup`(void)

    Disable the device from waking from STANDBY mode upon a watchdog interrupt.

    Return

      None.

  void `SysCtl_enableWatchdogInHalt`(void)

    Enable the watchdog to run while in HALT mode.

    This function configures the watchdog to continue to run while in HALT mode. Additionally, INTOSC1 and INTOSC2 are not powered down when the system enters HALT mode. By default the watchdog is gated when the system enters HALT.

    Return

      None.

  void `SysCtl_disableWatchdogInHalt`(void)

    Disable the watchdog from running while in HALT mode.

    This function gates the watchdog when the system enters HALT mode. INTOSC1 and INTOSC2 will be powered down. This is the default behavior of the device.

    Return

      None.

  void `SysCtl_setWatchdogMode`(SysCtl_WDMode mode)

    Configures whether the watchdog generates a reset or an interrupt signal.

    This function configures the action taken when the watchdog counter reaches its maximum value. When the

    mode parameter is SYSCTL_WD_MODE_INTERRUPT, the watchdog is enabled to generate a watchdog interrupt signal and disables the generation of a reset signal. This will allow the watchdog module to wake up the device from IDLE or STANDBY if desired (see SysCtl_enableWatchdogStandbyWakeup()).
    Parameters

      - `mode`: is a flag to select the watchdog mode.

    When the mode parameter is SYSCTL_WD_MODE_RESET, the watchdog will be put into reset mode and generation of a watchdog interrupt signal will be disabled. This is how the watchdog is configured by default.

    Note

      Check the status of the watchdog interrupt using SysCtl_isWatchdogInterruptActive() before calling this function. If the interrupt is still active, switching from interrupt mode to reset mode will immediately reset the device.

    Return

      None.

  bool `SysCtl_isWatchdogInterruptActive`(void)

    Gets the status of the watchdog interrupt signal.

    This function returns the status of the watchdog interrupt signal. If the interrupt is active, this function will return true. If false, the interrupt is NOT active.

    Note

      Make sure to call this function to ensure that the interrupt is not active before making any changes to the configuration of the watchdog to prevent any unexpected behavior. For instance, switching from interrupt mode to reset mode while the interrupt is active will immediately reset the device.

    Return

      true if the interrupt is active and false if it is not.

  void `SysCtl_disableWatchdog`(void)

    Disables the watchdog.

    This function disables the watchdog timer. Note that the watchdog timer is enabled on reset.

    Return

      None.

  void `SysCtl_enableWatchdog`(void)

    Enables the watchdog.

    This function enables the watchdog timer. Note that the watchdog timer is enabled on reset.

    Return

      None.

  bool `SysCtl_isWatchdogEnabled`(void)

    Checks if the watchdog is enabled or not

    This function returns the watchdog status whether it is enabled or disabled

    Return

      true if the watchdog is enabled & false if the watchdog is disabled

  void `SysCtl_serviceWatchdog`(void)

    Services the watchdog.

    This function resets the watchdog.

    Return

      None.

  void `SysCtl_enableWatchdogReset`(void)

    Writes the first key to enter the watchdog reset.

    This function writes the first key to enter the watchdog reset.

    Return

      None.

  void `SysCtl_resetWatchdog`(void)

    Writes the second key to reset the watchdog.

    This function writes the second key to reset the watchdog.

    Return

      None.

  void `SysCtl_setWatchdogPredivider`(SysCtl_WDPredivider predivider)

    Sets up watchdog clock (WDCLK) pre-divider.

    This function sets up the watchdog clock (WDCLK) pre-divider. There are two dividers that scale INTOSC1 to WDCLK. The

    predivider parameter divides INTOSC1 down to PREDIVCLK and the prescaler (set by the SysCtl_setWatchdogPrescaler() function) divides PREDIVCLK down to WDCLK.
    Parameters

      - `predivider`: is the value that configures the pre-divider.

    Return

      None.

  void `SysCtl_setWatchdogPrescaler`(SysCtl_WDPrescaler prescaler)

    Sets up watchdog clock (WDCLK) prescaler.

    This function sets up the watchdog clock (WDCLK) prescaler. There are two dividers that scale INTOSC1 to WDCLK. The predivider (set with the

    SysCtl_setWatchdogPredivider() function) divides INTOSC1 down to PREDIVCLK and the prescaler parameter divides PREDIVCLK down to WDCLK.
    Parameters

      - `prescaler`: is the value that configures the watchdog clock relative to the value from the pre-divider.

    Return

      None.

  uint16_t `SysCtl_getWatchdogCounterValue`(void)

    Gets the watchdog counter value.

    Return

      Returns the current value of the 8-bit watchdog counter. If this count value overflows, a watchdog output pulse is generated.

  bool `SysCtl_getWatchdogResetStatus`(void)

    Gets the watchdog reset status.

    This function returns the watchdog reset status. If this function returns true, that indicates that a watchdog reset generated the last reset condition. Otherwise, it was an external device or power-up reset condition.

    Return

      Returns true if the watchdog generated the last reset condition.

  void `SysCtl_clearWatchdogResetStatus`(void)

    Clears the watchdog reset status.

    This function clears the watchdog reset status. To check if it was set first, see SysCtl_getWatchdogResetStatus().

    Return

      None.

  void `SysCtl_setWatchdogWindowValue`(uint16_t value)

    Set the minimum threshold value for windowed watchdog

    This function sets the minimum threshold value used to define the lower limit of the windowed watchdog functionality.

    Parameters

      - `value`: is the value to set the window threshold

    Return

      None.

  void `SysCtl_clearWatchdogOverride`(void)

    Clears the watchdog override.

    This function clears the watchdog override and locks the watchdog timer module to remain in its prior state which could be either enable /disable. The watchdog timer will remain in this state until the next system reset.

    Return

      None.

  void `SysCtl_enableNMIGlobalInterrupt`(void)

    Enable the NMI Global interrupt bit

    Note: This bit should be set after the device security related initialization is complete.

    Return

      None.

  bool `SysCtl_getNMIStatus`(void)

    Read NMI interrupts.

    Read the current state of NMI interrupt.

    Return

      true if NMI interrupt is triggered, false if not.

  uint16_t `SysCtl_getNMIFlagStatus`(void)

    Read NMI Flags.

    Read the current state of individual NMI interrupts

    Return

      Value of NMIFLG register. These defines are provided to decode the value:

      - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

      - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

      - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

      - SYSCTL_NMI_REGPARITYERR - Register parity error

      - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

      - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

      - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

      - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

      - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

      - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

      - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

      - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

      - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

      - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

  bool `SysCtl_isNMIFlagSet`(uint16_t nmiFlags)

    Check if the individual NMI interrupts are set.

    Check if interrupt flags corresponding to the passed in bit mask are asserted.

    Parameters

      - `nmiFlags`: Bit mask of the NMI interrupts that user wants to clear. The bit format of this parameter is same as of the NMIFLG register. These defines are provided:

        - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

        - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

        - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

        - SYSCTL_NMI_REGPARITYERR - Register parity error

        - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

        - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

        - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

        - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

        - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

        - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

        - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

        - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

        - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

        - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

    Return

      true if any of the NMI asked for in the parameter bit mask is set. false if none of the NMI requested in the parameter bit mask are set.

  void `SysCtl_clearNMIStatus`(uint16_t nmiFlags)

    Function to clear individual NMI interrupts.

    Clear NMI interrupt flags that correspond with the passed in bit mask.

    Parameters

      - `nmiFlags`: Bit mask of the NMI interrupts that user wants to clear. The bit format of this parameter is same as of the NMIFLG register. These defines are provided:

        - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

        - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

        - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

        - SYSCTL_NMI_REGPARITYERR - Register parity error

        - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

        - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

        - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

        - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

        - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

        - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

        - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

        - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

        - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

        - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

    Note: The NMI Interrupt flag is always cleared by default and therefore doesn’t have to be included in the bit mask.

    Return

      None.

  void `SysCtl_clearAllNMIFlags`(void)

    Clear all the NMI Flags that are currently set.

    Return

      None.

  void `SysCtl_forceNMIFlags`(uint16_t nmiFlags)

    Function to force individual NMI interrupt fail flags

    Return

      None.

    Parameters

      - `nmiFlags`: Bit mask of the NMI interrupts that user wants to clear. The bit format of this parameter is same as of the NMIFLG register. These defines are provided:

        - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

        - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

        - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

        - SYSCTL_NMI_REGPARITYERR - Register parity error

        - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

        - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

        - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

        - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

        - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

        - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

        - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

        - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

        - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

        - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

  uint16_t `SysCtl_getNMIWatchdogCounter`(void)

    Gets the NMI watchdog counter value.

    Note: The counter is clocked at the SYSCLKOUT rate.

    Return

      Returns the NMI watchdog counter register’s current value.

  void `SysCtl_setNMIWatchdogPeriod`(uint16_t wdPeriod)

    Sets the NMI watchdog period value.

    This function writes to the NMI watchdog period register that holds the value to which the NMI watchdog counter is compared. When the two registers match, a reset is generated. By default, the period is 0xFFFF.

    Parameters

      - `wdPeriod`: is the 16-bit value at which a reset is generated.

    Note

      If a value smaller than the current counter value is passed into the wdPeriod parameter, a NMIRSn will be forced.

    Return

      None.

  uint16_t `SysCtl_getNMIWatchdogPeriod`(void)

    Gets the NMI watchdog period value.

    Return

      Returns the NMI watchdog period register’s current value.

  uint32_t `SysCtl_getNMIShadowFlagStatus`(void)

    Read NMI Shadow Flags.

    Read the current state of individual NMI interrupts

    Return

      Value of NMISHDFLG register. These defines are provided to decode the value:

      - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

      - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

      - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

      - SYSCTL_NMI_REGPARITYERR - Register parity error

      - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

      - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

      - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

      - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

      - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

      - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

      - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

      - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

      - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

      - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

  bool `SysCtl_isNMIShadowFlagSet`(uint16_t nmiFlags)

    Check if the individual NMI shadow flags are set.

    Check if interrupt flags corresponding to the passed in bit mask are asserted.

    Parameters

      - `nmiFlags`: Bit mask of the NMI interrupts that user wants to clear. The bit format of this parameter is same as of the NMIFLG register. These defines are provided:

        - SYSCTL_NMI_NMIINT - NMI Interrupt Flag

        - SYSCTL_NMI_CLOCKFAIL - Clock Fail Interrupt Flag

        - SYSCTL_NMI_UNCERR - Flash/RAM/ROM Uncorrectable Error NMI Flag

        - SYSCTL_NMI_REGPARITYERR - Register parity error

        - SYSCTL_NMI_CPU1HWBISTERR - HW BIST Error NMI Flag

        - SYSCTL_NMI_PIEVECTERR - PIE Vector Fetch Error Flag

        - SYSCTL_NMI_SYSDBGNMI - System Debug Module NMI Flag

        - SYSCTL_NMI_CLBNMI - Reconfigurable Logic NMI Flag

        - SYSCTL_NMI_CPU2WDRSN - CPU2 WDRSn Reset Indication Flag

        - SYSCTL_NMI_CPU2NMIWDRSN - CPU2 NMIWDRSn Reset Indication Flag

        - SYSCTL_NMI_LSCMPERR - Lockstep Compare Error

        - SYSCTL_NMI_ECATNMIN - EtherCAT NMI Flag

        - SYSCTL_NMI_CRC_FAIL - BGCRC calculation failed.

        - SYSCTL_NMI_SWERR - SW Error Force NMI Flag

    Return

      true if any of the NMI asked for in the parameter bit mask is set. false if none of the NMI requested in the parameter bit mask are set.

  void `SysCtl_enableMCD`(void)

    Enable the missing clock detection (MCD) Logic

    Return

      None.

  void `SysCtl_disableMCD`(void)

    Disable the missing clock detection (MCD) Logic

    Return

      None.

  bool `SysCtl_isMCDClockFailureDetected`(void)

    Get the missing clock detection Failure Status

    Note

      A failure means the oscillator clock is missing

    Return

      Returns true if a failure is detected or false if a failure isn’t detected

  void `SysCtl_resetMCD`(void)

    Reset the missing clock detection logic after clock failure

    Return

      None.

  void `SysCtl_connectMCDClockSource`(void)

    Re-connect missing clock detection clock source to stop simulating clock failure

    Return

      None.

  void `SysCtl_disconnectMCDClockSource`(void)

    Disconnect missing clock detection clock source to simulate clock failure. This is for testing the MCD functionality.

    Return

      None.

  void `SysCtl_lockAccessControlRegs`(void)

    Lock the Access Control Registers

    This function locks the access control registers and puts them in a read-only state.

    Note

      Only a reset can unlock the access control registers.

    Return

      None.

  void `SysCtl_setPeripheralAccessControl`(SysCtl_AccessPeripheral peripheral, SysCtl_AccessController controller, SysCtl_AccessPermission permission)

    Set the peripheral access control permissions

    This function sets the specified peripheral access control permissions for the the specified controller

    Parameters

      - `peripheral`: is the selected peripheral

      - `controller`: is the selected controller

      - `permission`: is the selected access permissions

    The peripheral parameter can have one enumerated value in the format of SYSCTL_ACCESS_X where X is the name of the peripheral instance to be configured such as SYSCTL_ACCESS_ADCA.

    The controller parameter can have one the following enumerated values:

    - SYSCTL_ACCESS_CPUX

    - SYSCTL_ACCESS_CLA1

    - SYSCTL_ACCESS_DMA1

    The permission parameter can have one the following enumerated values:

    - SYSCTL_ACCESS_FULL - Full Access for both read and write

    - SYSCTL_ACCESS_PROTECTED - Protected read access such that FIFOs, clear on read registers are not changed, and no write access

    - SYSCTL_ACCESS_NONE - No read or write access

    Return

      None.

  uint16_t `SysCtl_getPeripheralAccessControl`(SysCtl_AccessPeripheral peripheral, SysCtl_AccessController controller)

    Get the peripheral access control permissions

    This function gets the specified peripheral access control permissions for the the specified controller

    Parameters

      - `peripheral`: is the selected peripheral

      - `controller`: is the selected controller

    The peripheral parameter can have one enumerated value in the format of SYSCTL_ACCESS_X where X is the name of the peripheral instance to be configured such as SYSCTL_ACCESS_ADCA.

    The controller parameter can have one the following enumerated values:

    - SYSCTL_ACCESS_CPUX

    - SYSCTL_ACCESS_CLA1

    - SYSCTL_ACCESS_DMA1

    Return

      Returns one of the following enumerated permission values:

      - SYSCTL_ACCESS_FULL - Full Access for both read and write

      - SYSCTL_ACCESS_PROTECTED - Protected read access such that FIFOs, clear on read registers are not changed, and no write access

      - SYSCTL_ACCESS_NONE - No read or write access

  void `SysCtl_setSyncOutputConfig`(SysCtl_SyncOutputSource syncSrc)

    Configures the sync output source.

    This function configures the sync output source from the ePWM modules. The

    syncSrc parameter is a value SYSCTL_SYNC_OUT_SRC_XXXX, where XXXX is a sync signal coming from an ePWM such as SYSCTL_SYNC_OUT_SRC_EPWM1SYNCOUT
    Parameters

      - `syncSrc`: is sync output source selection.

    Return

      None.

  void `SysCtl_enableExtADCSOCSource`(uint32_t adcsocSrc)

    Enables ePWM SOC signals to drive an external (off-chip) ADCSOC signal.

    This function configures which ePWM SOC signals are enabled as a source for either ADCSOCAO or ADCSOCBO. The

    adcsocSrc parameter takes a logical OR of SYSCTL_ADCSOC_SRC_PWMxSOCA/B values that correspond to different signals.
    Parameters

      - `adcsocSrc`: is a bit field of the selected signals to be enabled

    Return

      None.

  void `SysCtl_disableExtADCSOCSource`(uint32_t adcsocSrc)

    Disables ePWM SOC signals from driving an external ADCSOC signal.

    This function configures which ePWM SOC signals are disabled as a source for either ADCSOCAO or ADCSOCBO. The

    adcsocSrc parameter takes a logical OR of SYSCTL_ADCSOC_SRC_PWMxSOCA/B values that correspond to different signals.
    Parameters

      - `adcsocSrc`: is a bit field of the selected signals to be disabled

    Return

      None.

  void `SysCtl_lockExtADCSOCSelect`(void)

    Locks the SOC Select of the Trig X-BAR.

    This function locks the external ADC SOC select of the Trig X-BAR.

    Return

      None.

  void `SysCtl_lockSyncSelect`(void)

    Locks the Sync Select of the Trig X-BAR.

    This function locks Sync Input and Output Select of the Trig X-BAR.

    Return

      None.

  void `SysCtl_selectCPUForPeripheralInstance`(SysCtl_CPUSelPeriphInstance peripheral, SysCtl_CPUSel cpuInst)

    Configures whether a peripheral is connected to CPU1 or CPU2.

    The

    peripheral parameter can have one enumerated value from SysCtl_CPUSelPeriphInstance
    Parameters

      - `peripheral`: is the peripheral for which CPU needs to be configured.

      - `cpuInst`: is the CPU to which the peripheral instance need to be connected.

    The cpuInst parameter can have one the following values:

    - SYSCTL_CPUSEL_CPU1 - to connect to CPU1

    - SYSCTL_CPUSEL_CPU2 - to connect to CPU2

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  uint32_t `SysCtl_getDeviceRevision`(void)

    Get the Device Silicon Revision ID

    This function returns the silicon revision ID for the device.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      Returns the silicon revision ID value.

  void `SysCtl_lockCPUSelectRegs`(SysCtl_CPUSelPeripheral peripheral)

    Locks the CPU select registers for the peripherals

    The

    peripheral parameter can have one enumerated value from SysCtl_CPUSelPeripheral
    Parameters

      - `peripheral`: is the peripheral for which CPU needs to be selected.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  bool `SysCtl_isCPU2Reset`(void)

    Check if the CPU2 is held in reset or not

    Provides the reset status of CPU2 to CPU1

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      true if CPU2 core is in reset false if CPU2 core is out of reset

  uint16_t `SysCtl_getCPU2ResetStatus`(void)

    Gets the status/causes of the CPU2 reset.

    The function provides causes of the CPU2 being in reset / not. This could be either of the following values or a combination of both:

    - SYSCTL_RSTSTAT_CPU2RES

    - SYSCTL_RSTSTAT_CPU2NMIWDRST

    - SYSCTL_RSTSTAT_CPU2HWBISTRST

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      Reset cause of CPU2.

  void `SysCtl_clearCPU2ResetStatus`(uint16_t rstCauses)

    Clears the CPU2 reset status.

    This function clears the CPU2 reset status. This could be either of the following values or a combination of both:

    Parameters

      - `rstCauses`: are the reset causes to be cleared

    - SYSCTL_RSTSTAT_CPU2NMIWDRST

    - SYSCTL_RSTSTAT_CPU2HWBISTRST.

    To check if it was set first, see SysCtl_getCPU2ResetStatus().

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  uint16_t `SysCtl_getCPU2LPMStatus`(void)

    Gets the state of the CPU2.

    The function indicates the power mode of the CPU2. It could be either in ACTIVE , IDLE or STANDBY mode.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      Power mode of CPU2.

  uint16_t `SysCtl_getSemOwner`(void)

    Gets the Ownership details for clock configuration

    A CPU can perform read/writes to any of the CLKCFG registers only if it owns the semaphore. Otherwise, writes are ignored and reads will return 0x0.

    Note

      Reads and writes of this ownership register are always allowed from both CPU1 and CPU2.

    Return

      Clock control Ownership details

  void `SysCtl_setXClk`(SysCtl_XClkDivider divider)

    Sets up XCLK divider.

    This function sets up the XCLK divider. There is only one divider that scales INTOSC1 to XCLK.

    Parameters

      - `divider`: is the value that configures the divider.

    The divider parameter can have one enumerated value from SysCtl_XClkDivider

    Return

      None.

  void `SysCtl_setECatClk`(SysCtl_ECatClkDivider divider, SysCtl_PLLClockSource source, uint16_t enable)

    Sets up Ethercat CLK source, divider & PHY clock.

    This function sets up the Ethercat CLK divider based on the source that is selected. There is only one divider that scales the “source” to Ethercat CLK. This also enables/disables the etherCAT PHY clock.

    Parameters

      - `divider`: is the value that configures the divider.

      - `source`: is the source for the clock divider

      - `enable`: enables/disables the etherCAT PHY clock

    The divider parameter can have one enumerated value from SysCtl_ECatClkDivider The source parameter can have one enumerated value from SysCtl_PLLClockSource The enable parameter can be either of these values: 0x0U: etherCAT PHY clock is disabled 0x1U: etherCAT PHY clock is enabled

    Return

      None.

  void `SysCtl_setPLLSysClk`(uint16_t divider)

    Sets up PLLSYSCLK divider.

    This function sets up the PLLSYSCLK divider. There is only one divider that scales PLLSYSCLK to generate the system clock.

    Parameters

      - `divider`: is the value that configures the divider.

    The divider parameter can have any value (even/odd) from 1-126

    Return

      None.

    Note

      Please make sure to check if the PLL is locked and valid using the SysCtl_isPLLValid() before setting the divider.

  void `SysCtl_setAuxPLLClk`(SysCtl_AuxPLLClkDivider divider)

    Sets up AUXPLLCLK divider.

    This function sets up the AUXPLLCLK divider. There is only one divider that scales AUXPLLCLK to generate the system clock.

    Parameters

      - `divider`: is the value that configures the divider.

    The divider parameter can have one enumerated value from SysCtl_AuxPLLClkDivider

    Return

      None.

    Note

      Please make sure to check if the PLL is locked and valid using the SysCtl_isPLLValid() before setting the divider.

  void `SysCtl_setMCANClk`(SysCtl_MCANInstance mcanInst, SysCtl_MCANClkDivider divider)

    Sets up MCAN Clk divider.

    This function sets up the MCANCLK divider. There is only one divider that scales MCAN clock.

    Parameters

      - `mcanInst`: is the MCAN instance

      - `divider`: is the value that configures the divider.

    The mcanInst parameter can have one enumerated value from SysCtl_MCANInstance The divider parameter can have one enumerated value from SysCtl_MCANClkDivider

    Return

      None.

  void `SysCtl_setCputimer2Clk`(SysCtl_Cputimer2ClkDivider divider, SysCtl_Cputimer2ClkSource source)

    Sets up CPU Timer 2 CLK source & divider.

    This function sets up the CPU Timer 2 CLK divider based on the source that is selected. There is only one divider that scales the “source” to CPU Timer 2 CLK.

    Parameters

      - `divider`: is the value that configures the divider.

      - `source`: is the source for the clock divider

    The divider parameter can have one enumerated value from SysCtl_Cputimer2ClkDivider The source parameter can have one enumerated value from SysCtl_Cputimer2ClkSource

    Return

      None.

  void `SysCtl_enableEthercatI2Cloopback`(void)

    Enables the Ethercat I2C loopback.

    This function enables the Ethercat I2C loopback. Note that the Ethercat I2C loopback is disabled on reset.

    Return

      None.

  void `SysCtl_disableEthercatI2Cloopback`(void)

    Disables the Ethercat I2C loopback.

    This function disables the Ethercat I2C loopback.Note that the Ethercat I2C loopback is enabled on reset.

    Return

      None.

  uint32_t `SysCtl_getPIEVErrAddr`(void)

    Gets the PIE Vector Fetch Error Handler Routine Address.

    The function indicates the address of the PIE Vector Fetch Error handler routine.

    Return

      Error Handler Address.

    Note

      Its the responsibility of user to initialize this register. If this register is not initialized, a default error handler at address 0x3fffbe will get executed.

  void `SysCtl_simulateReset`(uint32_t rstCauses)

    Simulates a reset to the CPU1

    The

    rstCauses parameter can be one/ more of these values: SYSCTL_SIMRESET_CPU1RSN or SYSCTL_SIMRESET_XRSN
    Parameters

      - `rstCauses`: is the cause for the reset.

    Return

      None.

    Note

      This API exists only on CPU1

  uint32_t `SysCtl_getInterruptStatus`(void)

    Gets the status of interrupts due to multiple different errors in the system.

    Return

      the Interrupt generated on the system. The values can be one/ more from:

      - SYSCTL_STATUS_EMIF_ERR

      - SYSCTL_STATUS_CORRECTABLE_ERR

      - SYSCTL_STATUS_RAM_ACC_VIOL

      - SYSCTL_STATUS_SYS_PLL_SLIP

      - SYSCTL_STATUS_AUX_PLL_SLIP

      - SYSCTL_STATUS_DCC0

      - SYSCTL_STATUS_DCC1

      - SYSCTL_STATUS_DCC2

      - SYSCTL_STATUS_AES_BUS_ERROR

      - SYSCTL_STATUS_EPG1_INT

  void `SysCtl_clearInterruptStatus`(uint32_t intFlags)

    Clears the interrupts due to multiple different errors in the system.

    The

    intFlags parameter are the Interrupts generated on errors in the system that need to be cleared. The values can be one or more from:

    - SYSCTL_STATUS_GINT

    - SYSCTL_STATUS_EMIF_ERR

    - SYSCTL_STATUS_CORRECTABLE_ERR

    - SYSCTL_STATUS_RAM_ACC_VIOL

    - SYSCTL_STATUS_SYS_PLL_SLIP

    - SYSCTL_STATUS_AUX_PLL_SLIP

    - SYSCTL_STATUS_DCC0

    - SYSCTL_STATUS_DCC1

    - SYSCTL_STATUS_DCC2

    - SYSCTL_STATUS_AES_BUS_ERROR

    - SYSCTL_STATUS_EPG1_INT

    Parameters

      - `intFlags`: is the interrupt that needs to be cleared.

    Return

      None.

  void `SysCtl_setInterruptStatus`(uint32_t intFlags)

    Sets the interrupts for the multiple different errors in the system.

    The

    intFlags parameter are the Interrupts that can be set for the errors in the system. The values can be one/ more from:

    - SYSCTL_STATUS_EMIF_ERR

    - SYSCTL_STATUS_CORRECTABLE_ERR

    - SYSCTL_STATUS_RAM_ACC_VIOL

    - SYSCTL_STATUS_SYS_PLL_SLIP

    - SYSCTL_STATUS_AUX_PLL_SLIP

    - SYSCTL_STATUS_DCC0

    - SYSCTL_STATUS_DCC1

    - SYSCTL_STATUS_DCC2

    - SYSCTL_STATUS_AES_BUS_ERROR

    - SYSCTL_STATUS_EPG1_INT

    Parameters

      - `intFlags`: is the interrupt that needs to be set.

    Return

      None.

    Note

      This API is present only on CPU1.

  uint32_t `SysCtl_getInterruptStatusMask`(void)

    Gets the masked interrupts due to multiple different errors in the system.

    Return

      the Interrupt generated on the system. The values can be one/ more from:

      - SYSCTL_STATUS_EMIF_ERR

      - SYSCTL_STATUS_CORRECTABLE_ERR

      - SYSCTL_STATUS_RAM_ACC_VIOL

      - SYSCTL_STATUS_SYS_PLL_SLIP

      - SYSCTL_STATUS_AUX_PLL_SLIP

      - SYSCTL_STATUS_DCC0

      - SYSCTL_STATUS_DCC1

      - SYSCTL_STATUS_DCC2

      - SYSCTL_STATUS_AES_BUS_ERROR

      - SYSCTL_STATUS_EPG1_INT

  void `SysCtl_setInterruptStatusMask`(uint32_t intFlags)

    Masks the interrupts for the multiple different errors in the system.

    The

    intFlags parameter are the Interrupts that can be masked for the errors in the system. The values can be one/ more from:

    - SYSCTL_STATUS_EMIF_ERR

    - SYSCTL_STATUS_CORRECTABLE_ERR

    - SYSCTL_STATUS_RAM_ACC_VIOL

    - SYSCTL_STATUS_SYS_PLL_SLIP

    - SYSCTL_STATUS_AUX_PLL_SLIP

    - SYSCTL_STATUS_DCC0

    - SYSCTL_STATUS_DCC1

    - SYSCTL_STATUS_DCC2

    - SYSCTL_STATUS_AES_BUS_ERROR

    - SYSCTL_STATUS_EPG1_INT

    Parameters

      - `intFlags`: is the interrupt that needs to be set.

    Return

      None.

    Note

      This API is present only on CPU1.

  void `SysCtl_lockConfigRegs`(SysCtl_DeviceConf regs)

    Locks the Device configuration registers

    This function locks the Device configuration registers.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  void `SysCtl_CLBClkConfig`(SysCtl_CLBInst inst, SysCtl_CLBClkm config)

    Sets up CLB CLK configurations for a particuler CLB.

    This function sets up the CLB CLK configurations based on the instance that is selected.

    Parameters

      - `inst`: is the CLB instance that needs clock settings.

      - `config`: is the mode for the clock

    The inst parameter can have one enumerated value from SysCtl_CLBInst The config parameter can have one enumerated value from SysCtl_CLBClkm

    Return

      None.

  bool `SysCtl_isErrorTriggered`(void)

    Check if One or more of the error sources triggered

    Following are the events/triggers that can indicate an error:

    1. nmi interrupt on C28x

    2. Watchdog reset

    3. Error on a Pie vector fetch

    4. Efuse error

    5. nmi interrupt on CM

       Return

         true if the error is triggered false if the error is not triggered

  bool `SysCtl_getErrorPinStatus`(void)

    Check if Error status pin is high or not

    Return

      true if the error status pin is high false if the error status pin is low

  void `SysCtl_forceError`(void)

    Forces an error flag to set to indicate an error being generated.

    Return

      None.

  void `SysCtl_clearError`(void)

    Clears any error flag set due to error generated.

    Return

      None.

  void `SysCtl_selectErrPinPolarity`(uint16_t pol)

    Selects the polarity of the error pin

    The

    pol parameter can take any of the below values: 0x0U: If an error is already triggered, Error pin will be driven with a value of 0, else 1. 0x1U: If an error is already triggered, Error pin will be driven with a value of 1, else 0.
    Parameters

      - `pol`: is the ERROR pin polarity

    Return

      None.

  void `SysCtl_lockErrControl`(void)

    Locks the Error control registers

    This function locks the Error configuration registers.

    Return

      None.

    Note

      The lock register is cleared only on a system reset.

  bool `SysCtl_isMCANWakeStatusSet`(SysCtl_MCANInstance mcanInst)

    Check if the MCAN wakeup event has occured.

    The

    mcanInst parameter can have one enumerated value from SysCtl_MCANInstance
    Parameters

      - `mcanInst`: is the MCAN instance

    Return

      true if the MCAN wakeup event has occured. false if the MCAN wakeup event has not occured.

  void `SysCtl_clearMCANWakeStatus`(SysCtl_MCANInstance mcanInst)

    Clears the MCAN wakeup event status.

    This function clears the MCAN wakeup event status. To check if it was set first, see

    SysCtl_isMCANWakeStatusSet().
    Parameters

      - `mcanInst`: is the MCAN instance

    The mcanInst parameter can have one enumerated value from SysCtl_MCANInstance

    Return

      None.

  void `SysCtl_setUserRegister`(SysCtl_UserRegister reg, uint32_t value)

    Sets the user register.

    This function sets sepcified user register. The

    value parameter can have one enumerated value from SysCtl_UserRegister.
    Parameters

      - `reg`: is the register to be set

      - `value`: is the value to be set

    Return

      None.

  uint32_t `SysCtl_getUserRegister`(SysCtl_UserRegister reg)

    Gets the user register.

    This function sets sepcified user register. The

    value parameter can have one enumerated value from SysCtl_UserRegister.
    Parameters

      - `reg`: is the register to be set

    Return

      value of the specified register.

  void `SysCtl_setLFUCPU`(uint16_t value)

    Sets the LFU_CPU configuration

    Note

      This bit is used by compiler/application code for implementing CPU LFU

    Return

      None

    Parameters

      - `value`: is the value to be set.

        - 0 : No pending requests

        - 1 : LFU Request in progress

  uint16_t `SysCtl_getLFUCPU`(void)

    Gets the LFU_CPU configuration

    Note

      This bit is used by compiler/application code for implementing CPU LFU

    Return

      0 if No pending requests, 1 if LFU Request is in progress

  void `SysCtl_setLFUCLA1`(uint16_t value)

    Sets the LFU_CLA configuration

    Note

      This bit is used by compiler/application code for implementing CLA LFU

    Return

      None

    Parameters

      - `value`: is the value to be set.

        - 0 : No pending requests

        - 1 : LFU Request in progress

  uint16_t `SysCtl_getLFUCLA1`(void)

    Gets the LFU_CLA configuration

    Note

      This bit is used by compiler/application code for implementing CLA LFU

    Return

      0 if No pending requests, 1 if LFU Request is in progress

  void `SysCtl_swapPieVectorAndLS01`(bool swap)

    Swap PIE Vector Table to alternate location and swap LS0 and LS1

    Return

      None

    Parameters

      - `swap`: Whether to enable or disable swap

        - true : PIE Vector Table is swapped to alternate location. LS0 and LS1 is swapped

        - false : PIE vector table is mapped to the original location LS0 and LS1 is mapped to original location

  void `SysCtl_swapPieVector`(bool swap)

    Swap PIE Vector Table to alternate location

    Return

      None

    Parameters

      - `swap`: Whether to enable or disable swap

        - true : PIE Vector Table is swapped to alternate location

        - false : PIE vector table is mapped to the original location

  bool `SysCtl_isPieVectorSwap`(void)

    Checks if the PIE Vector Table is swapped or not

    Return

      true if the PIE Vector Table is mapped to original location, false if PIE Vector Table is swapped to alternate location

    Parameters

      - `reg`: is the register to be set

      - `value`: is the value to be set

  void `SysCtl_swapLS01`(bool swap)

    Swap LS0 and LS1

    Return

      None

    Parameters

      - `swap`: Whether to enable or disable swap

        - true : LS0 and LS1 is swapped

        - false : LS0 and LS1 is mapped to original location

  bool `SysCtl_isLS01Swap`(void)

    Checks if the LS0 and LS1 are swapped or not

    Return

      true if the LS0 and LS1 is mapped to original location, false if LS0 and LS1 is swapped

    Parameters

      - `reg`: is the register to be set

      - `value`: is the value to be set

  void `SysCtl_setLFUUserRegister`(SysCtl_LFUUserRegister reg, uint32_t value)

    Sets the user register.

    This function sets specified LFU user register. The

    value parameter can have one enumerated value from SysCtl_LFUUserRegister.
    Parameters

      - `reg`: is the register to be set

      - `value`: is the value to be set

    Return

      None.

  uint32_t `SysCtl_getLFUUserRegister`(SysCtl_LFUUserRegister reg)

    Gets the user register.

    This function sets specified LFU user register. The

    value parameter can have one enumerated value from SysCtl_LFUUserRegister.
    Parameters

      - `reg`: is the register to be set

    Return

      value of the specified register.

  void `SysCtl_lockLFUConfigRegister`(void)

    Locks the LFUConfig register

    Return

      None.

  void `SysCtl_lockLFUUserRegister`(SysCtl_LFUUserRegister reg)

    Locks the LFU User registers

    Return

      None.

    Parameters

      - `register`: to be locked

  void `SysCtl_unlockLFUConfigRegister`(void)

    Unlocks the LFUConfig register

    Return

      None.

  void `SysCtl_unlockLFUUserRegister`(SysCtl_LFUUserRegister reg)

    Unlocks the LFU User registers

    Return

      None.

    Parameters

      - `register`: to be unlocked

  void `SysCtl_commitLFUConfigRegister`(void)

    Commits the LFUConfig register

    Return

      None.

  void `SysCtl_commitLFUUserRegister`(SysCtl_LFUUserRegister reg)

    Commits the LFU User registers

    Return

      None.

    Parameters

      - `register`: to be committed

  void `SysCtl_allocateFlashBank`(SysCtl_FlashBank flashBank, SysCtl_CPUSel cpu)

    Allocates the Flash Bank to selected CPU

    Note

      This function should be called from CPU1 only

    Return

      None.

    Parameters

      - `flashBank`: is Flash bank to be configured (SYSCTL_FLASH_BANK0-4)

      - `cpu`: is the CPU to be allocated to (SYSCTL_CPUSEL_CPU1/2)

  void `SysCtl_allocateDxRAM`(SysCtl_SharedDxRAM ram, SysCtl_CPUSel cpu)

    Allocates the DxRAM to selected CPU

    Note

      D0 and D1 RAMs are available only on CPU1. D2-5 RAMs can be allocated to CPU1 or CPU2

    Note

      This function should be called from CPU1 only

    Return

      None.

    Parameters

      - `ram`: is DxRAM to be configured (SYSCTL_D2RAM - SYSCTL_D5RAM)

      - `cpu`: is the CPU to be allocated to (SYSCTL_CPUSEL_CPU1/2)

  void `SysCtl_lockDxRAMConfig`(void)

    Locks the DxRAM configuration

    Note

      This function should be called from CPU1 only

    Return

      None.

  uint32_t `SysCtl_getDeviceUID0`(void)

    Get the device UID_UNIQUE0 value

    This function returns the device UID_UNIQUE0 value

    Return

      Returns the device UID_UNIQUE0 value

  uint32_t `SysCtl_getDeviceUID1`(void)

    Get the device UID_UNIQUE1 value

    This function returns the device UID_UNIQUE1 value

    Return

      Returns the device UID_UNIQUE1 value

  void `SysCtl_delay`(uint32_t count)

    Delays for a fixed number of cycles.

    This function generates a constant length delay using assembly code. The loop takes 5 cycles per iteration plus 9 cycles of overhead.

    Parameters

      - `count`: is the number of delay loop iterations to perform.

    Note

      If count is equal to zero, the loop will underflow and run for a very long time.

    Note

      Refer to the macro DEVICE_DELAY_US(x) in device.h which can be used to insert a delay in microseconds.

    Return

      None.

  uint32_t `SysCtl_getClock`(uint32_t clockInHz)

    Calculates the system clock frequency (SYSCLK).

    This function determines the frequency of the system clock based on the frequency of the oscillator clock source (from

    clockInHz) and the PLL and clock divider configuration registers.
    Parameters

      - `clockInHz`: is the frequency of the oscillator clock source (OSCCLK).

    Return

      Returns the system clock frequency. If a missing clock is detected, the function will return the INTOSC1 frequency. This needs to be corrected and cleared (see SysCtl_resetMCD()) before trying to call this function again.

  uint32_t `SysCtl_getAuxClock`(uint32_t clockInHz)

    Calculates the system auxiliary clock frequency (AUXPLLCLK).

    This function determines the frequency of the auxiliary clock based on the frequency of the oscillator clock source (from

    clockInHz) and the AUXPLL and clock divider configuration registers.
    Parameters

      - `clockInHz`: is the frequency of the oscillator clock source (AUXOSCCLK).

    Return

      Returns the auxiliary clock frequency.

  bool `SysCtl_setClock`(uint32_t config)

    Configures the clocking of the device.

    This function configures the clocking of the device. The input crystal frequency, oscillator to be used, use of the PLL, and the system clock divider are all configured with this function.

    Parameters

      - `config`: is the required configuration of the device clocking.

    The config parameter is the OR of several different values, many of which are grouped into sets where only one can be chosen.

    - The system clock divider is chosen with the macro SYSCTL_SYSDIV(x) where x is either 1 or an even value up to 126.

    - The use of the PLL is chosen with ONLY one of the below modes: SYSCTL_PLL_ENABLE - This is to Enable the PLL Clock to the System or SYSCTL_PLL_BYPASS -This is to Bypass the PLLCLK from the System, this will also power up the PLL if the user desires to power up the PLL but not use it for System. or SYSCTL_PLL_DISABLE-This is to Power Down the PLL and Bypass the PLLCLK to the System.

    - The integer multiplier is chosen SYSCTL_IMULT(x) where x is a value from 1 to 127.

    - The oscillator source chosen with SYSCTL_OSCSRC_OSC2, SYSCTL_OSCSRC_XTAL, SYSCTL_OSCSRC_XTAL_SE or SYSCTL_OSCSRC_OSC1.

    This function uses the DCC to check that the PLLRAWCLK is running at the expected rate. If you are using the DCC, you must back up its configuration before calling this function and restore it afterward. Locking PLL sequence is only done if the multipliers are updated.

    Note

      See your device errata for more details about locking the PLL.

    Return

      Returns false if a missing clock error is detected. This needs to be cleared (see SysCtl_resetMCD()) before trying to call this function again. Also, returns false if the PLLRAWCLK is not running and its expected rate. Otherwise, returns true.

  bool `SysCtl_isPLLValid`(uint32_t base, uint32_t oscSource, SysCtl_PLLClockSource pllclk, uint32_t pllMultDiv)

    Validates PLL Raw Clock Frequency (PLLRAWCLK)

    This function uses DCC module to validate the PLL clock frequency. It uses oscSource as a reference clock for DCC, and PLL is used as clock under test. As long as the Counter0 (running of oscSource) & Counter1 (running of PLL) expire at the same time, DCC will not generate an Error. This function gives 100 attempts for PLL to lock and make sure frequency is as expected.

    Parameters

      - `base`: is the DCC module base address

      - `oscSource`: is the Clock Source for the PLL that is also used for DCC

      - `pllclk`: is the PLL Clock which has to be validated.

      - `pllMultDiv`: has the PLL Multiplier Register configuration which include integer multiplier and divider values used to configure the DCC Counter1 clock

    - The oscSource parameter is the oscillator source chosen with SYSCTL_OSCSRC_OSC2, SYSCTL_OSCSRC_XTAL, SYSCTL_OSCSRC_XTAL_SE or SYSCTL_OSCSRC_OSC1.

    - The pllclk parameter can have one enumerated value from SysCtl_PLLClockSource

    - The pllMultDiv parameter is a bitwise OR of SYSCTL_IMULT(x) where x is a value from 1 to 127 and both of the following divider values which is chosen with the macro SYSCTL_REFDIV(x) and SYSCTL_ODIV(x) where x is a value from 1 to 32 and can be different for both macros.

      Return

        Returns true if the DCCSTATUS error flag is not set. Otherwise, returns false.

    Note

      This function does not validate if PLL output frequency (PLLRAWCLK) is within the operating range as per the datasheet.

  void `SysCtl_selectXTAL`(void)

    Configures the external oscillator for the clocking of the device.

    This function configures the external oscillator (XTAL) to be used for the clocking of the device in crystal mode. It follows the procedure to turn on the oscillator, wait for it to power up, and select it as the source of the system clock.

    Please note that this function blocks while it waits for the XTAL to power up. If the XTAL does not manage to power up properly, the function will loop for a long time. It is recommended that you modify this function to add an appropriate timeout and error-handling procedure.

    Return

      None.

  void `SysCtl_selectXTALSingleEnded`(void)

    Configures the external oscillator for the clocking of the device in single-ended mode.

    This function configures the external oscillator (XTAL) to be used for the clocking of the device in single-ended mode. It follows the procedure to turn on the oscillator, wait for it to power up, and select it as the source of the system clock.

    Please note that this function blocks while it waits for the XTAL to power up. If the XTAL does not manage to power up properly, the function will loop for a long time. It is recommended that you modify this function to add an appropriate timeout and error-handling procedure.

    Return

      None.

  void `SysCtl_selectOscSource`(uint32_t oscSource)

    Selects the oscillator to be used for the clocking of the device.

    This function configures the oscillator to be used in the clocking of the device. The

    oscSource parameter may take a value of SYSCTL_OSCSRC_OSC2, SYSCTL_OSCSRC_XTAL, SYSCTL_OSCSRC_XTAL_SE, or SYSCTL_OSCSRC_OSC1.
    Parameters

      - `oscSource`: is the oscillator source to be configured.

    See

      SysCtl_turnOnOsc()

    Return

      None.

  void `SysCtl_selectOscSourceAuxPLL`(uint32_t oscSource)

    Selects the oscillator to be used for the AUXPLL.

    This function configures the oscillator to be used in the clocking of the AUXPLL. The

    oscSource parameter may take a value of SYSCTL_OSCSRC_OSC2, SYSCTL_OSCSRC_XTAL, SYSCTL_OSCSRC_XTAL_SE, or SYSCTL_OSCSRC_OSC1.
    Parameters

      - `oscSource`: is the oscillator source to be configured.

    See

      SysCtl_turnOnOsc()

    Return

      None.

  uint32_t `SysCtl_getLowSpeedClock`(uint32_t clockInHz)

    Calculates the low-speed peripheral clock frequency (LSPCLK).

    This function determines the frequency of the low-speed peripheral clock based on the frequency of the oscillator clock source (from

    clockInHz) and the PLL and clock divider configuration registers.
    Parameters

      - `clockInHz`: is the frequency of the oscillator clock source (OSCCLK).

    Return

      Returns the low-speed peripheral clock frequency.

  uint16_t `SysCtl_getDeviceParametric`(SysCtl_DeviceParametric parametric)

    Get the device part parametric value

    This function gets the device part parametric value.

    Parameters

      - `parametric`: is the requested device parametric value

    The parametric parameter can have one the following enumerated values:

    - SYSCTL_DEVICE_QUAL - Device Qualification Status

    - SYSCTL_DEVICE_PINCOUNT - Device Pin Count

    - SYSCTL_DEVICE_FLASH - Device Flash size (KB)

    - SYSCTL_DEVICE_FAMILY - Device Family

    - SYSCTL_DEVICE_PARTNO - Device Part Number

    - SYSCTL_DEVICE_CLASSID - Device Class ID

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      Returns the specified parametric value.

  void `SysCtl_setAuxClock`(uint32_t config)

    Configures the auxiliary PLL.

    This function configures the clock source for auxiliary PLL, the integer multiplier, fractional multiplier and divider.

    Parameters

      - `config`: is the required configuration of the device clocking.

    The config parameter is the OR of several different values, many of which are grouped into sets where only one can be chosen.

    - The system clock divider is chosen with one of the following macros: SYSCTL_AUXPLL_DIV_1, SYSCTL_AUXPLL_DIV_2, SYSCTL_AUXPLL_DIV_4, SYSCTL_AUXPLL_DIV_8 SYSCTL_AUXPLL_DIV_3, SYSCTL_AUXPLL_DIV_5, SYSCTL_AUXPLL_DIV_6, SYSCTL_AUXPLL_DIV_7

    - The use of the PLL is chosen with ONLY one of the below modes: SYSCTL_AUXPLL_ENABLE - This is to Enable the PLL Clock to the System or SYSCTL_AUXPLL_BYPASS -This is to Bypass the PLLCLK from the System, this will also power up the PLL if the user desires to power up the PLL but not use it for System. or SYSCTL_AUXPLL_DISABLE-This is to Power Down the PLL and Bypass the PLLCLK to the System.

    - The integer multiplier is chosen with SYSCTL_AUXPLL_IMULT(x) where x is a value from 1 to 127.

    - The reference clock divider is chosen SYSCTL_AUXPLL_REFDIV((x) where x is a value from 1 to 32.

    - The output clock divider is chosen SYSCTL_AUXPLL_ODIV(x) where x is a value from 1 to 32.

    - The DCC module selected for checking PLL clock validity chosen with either SYSCTL_DCC_BASE_0, SYSCTL_DCC_BASE_1, or SYSCTL_DCC_BASE_2.

    - The oscillator source chosen with one of SYSCTL_AUXPLL_OSCSRC_OSC2, SYSCTL_AUXPLL_OSCSRC_XTAL, SYSCTL_AUXPLL_OSCSRC_AUXCLKIN, SYSCTL_AUXPLL_OSCSRC_XTAL_SE

    Please note the PLL can take inputs from 2Mhz to 48Mhz. PLL can be locked from 220Mhz to 800Mhz. The output of PLL cannot be more than 500Mhz (after ODIV).

    Note

      This function uses the DCC to check that the AUXPLLRAWCLK is expected rate. If you are using the DCC, you must back up its configuration before calling this function and restore it afterward. Locking PLL sequence is only done if the multipliers are updated.

    Note

      See your device errata for more details about locking the PLL.

    Return

      None.

  void `SysCtl_controlCPU2Reset`(SysCtl_CoreReset control)

    Controls the reset of CPU2 by CPU1

    The

    control parameter can be a value from the enumeration SysCtl_CoreReset
    Parameters

      - `control`: is to deactivate / activate the reset to the CPU2.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  void `SysCtl_configureType`(SysCtl_SelType type, uint16_t config, uint16_t lock)

    Configures & locks/unlocks the peripheral type

    The

    type parameter can be a value from the enumeration SysCtl_SelType The config parameter can be a value from the ones below: 0x0U : disables the feature for the type. 0x1U : enables the feature for the type.
    Parameters

      - `type`: is the peripheral type that needs to be configured.

      - `config`: is the configuration done to the peripheral which is dependent on the peripheral type.

      - `lock`: is to decide if writes for any further configuration is to be allowed or not.

    For ECAP: ECAP registers are EALLOW protected or not. For SDFM: Data Ready conditions do not generate the SDFMINT. & Each filter generates a separate data ready interrupts. For USB : Global interrupt feature is enabled or not For MEMMAP: Enables remapping SDRAM in lower 64kb of address space or not.

    The lock parameter can be a value from the ones below: 0x1U : Write for any further configuration is not allowed. 0x0U : Write for any further configuration is allowed.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      None.

  bool `SysCtl_isConfigTypeLocked`(SysCtl_SelType type)

    Check if writes for any further configuration of peripheral types is to be allowed or not.

    Note

      This API is applicable only for the CPU1 subsystem.

    Return

      true if Write for any further configuration is not allowed. false if Write for any further configuration is allowed.

    Parameters

      - `type`: is the peripheral type for which permissions are being checked

  void `SysCtl_setSemOwner`(SysCtl_CPUSel cpuInst)

    Sets the owner for clock configuration

    The

    cpuInst parameter can be a value from the enumeration SysCtl_CPUSel
    Parameters

      - `cpuInst`: is owner for the clock configuration.

    Return

      None.

  void `SysCtl_lockClkConfig`(SysCtl_ClkRegSel registerName)

    Locks the Clock configuration registers

    The

    registerName parameter can be a value from the enumeration SysCtl_ClkRegSel
    Parameters

      - `registerName`: is clock configuration register which needs to be locked.

    Return

      None.

    Note

      The register is unlocked only on a system reset.

  void `SysCtl_lockSysConfig`(SysCtl_CpuRegSel registerName)

    Locks the CPU system configuration registers

    The

    registerName parameter can be a value from the enumeration SysCtl_CpuRegSel
    Parameters

      - `registerName`: is CPU system configuration register which needs to be locked.

    Return

      None.

    Note

      The register is unlocked only on a system reset.

  void `SysCtl_emulateDevice`(SysCtl_DevicePartNumber partNumber)

    configures the MCUCNF registers

    The

    partNumber parameter can be a value from the enumeration SysCtl_DevicePartNumber
    Parameters

      - `partNumber`: is the device part number

    Return

      None.

Many of the functions provided by the SysCtl API are related to device clocking. The most important of these functions is SysCtl_setClock() which will configure which oscillator is to be used, configure the PLL, and configure the system clock divider. SysCtl_getClock() is a complementary function to this one that will, given the frequency of the oscillator source used, read back the configuration of the PLL and clock divider and calculate the system clock frequency. A similar pair of functions is provided for the low-speed peripheral clock, SysCtl_setLowSpeedClock() and SysCtl_getLowSpeedClock().

The ability to enable (turn on the module clock), disable (gate off the module clock), and perform a software reset on most of the peripherals on a device is provided by SysCtl_enablePeripheral(), SysCtl_disablePeripheral(), and SysCtl_resetPeripheral() respectively.

The device’s windowed watchdog is enabled and disabled by SysCtl_enableWatchdog() and SysCtl_disableWatchdog() respectively. The watchdog can be serviced by SysCtl_serviceWatchdog(). Several functions are also provided to configure the watchdog’s clock and windowed functionality.

This section will give further details of these functions and each of the others used for the configuration of SysCtl. These could include clock configurations, CPU selections, permissions, NMI setup, interrupts etc.

{color{red}textsc{Note: System error interrupts for PLL SLIP and Clock source control of INTOSC2 ON/OFF are not supported on this device. The required software changes are scoped for the next C2000Ware release and are not supported in this release. Users are advised to not use this feature on this device.}}

The code for this module is contained in driverlib/sysctl.c, with driverlib/sysctl.h containing the API declarations for use by applications.