/******************************************************************************
*  Filename:       hw_cpu_scs_h
*  Revised:        2017-01-31 09:37:48 +0100 (Tue, 31 Jan 2017)
*  Revision:       48345
*
* Copyright (c) 2015 - 2017, Texas Instruments Incorporated
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1) Redistributions of source code must retain the above copyright notice,
*    this list of conditions and the following disclaimer.
*
* 2) Redistributions in binary form must reproduce the above copyright notice,
*    this list of conditions and the following disclaimer in the documentation
*    and/or other materials provided with the distribution.
*
* 3) Neither the name of the ORGANIZATION nor the names of its contributors may
*    be used to endorse or promote products derived from this software without
*    specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************/

#ifndef __HW_CPU_SCS_H__
#define __HW_CPU_SCS_H__

//*****************************************************************************
//
// This section defines the register offsets of
// CPU_SCS component
//
//*****************************************************************************
// Interrupt Control Type
#define CPU_SCS_O_ICTR                                              0x00000004

// Auxiliary Control
#define CPU_SCS_O_ACTLR                                             0x00000008

// SysTick Control and Status
#define CPU_SCS_O_STCSR                                             0x00000010

// SysTick Reload Value
#define CPU_SCS_O_STRVR                                             0x00000014

// SysTick Current Value
#define CPU_SCS_O_STCVR                                             0x00000018

// SysTick Calibration Value
#define CPU_SCS_O_STCR                                              0x0000001C

// Irq 0 to 31 Set Enable
#define CPU_SCS_O_NVIC_ISER0                                        0x00000100

// Irq 32 to 63 Set Enable
#define CPU_SCS_O_NVIC_ISER1                                        0x00000104

// Irq 0 to 31 Clear Enable
#define CPU_SCS_O_NVIC_ICER0                                        0x00000180

// Irq 32 to 63 Clear Enable
#define CPU_SCS_O_NVIC_ICER1                                        0x00000184

// Irq 0 to 31 Set Pending
#define CPU_SCS_O_NVIC_ISPR0                                        0x00000200

// Irq 32 to 63 Set Pending
#define CPU_SCS_O_NVIC_ISPR1                                        0x00000204

// Irq 0 to 31 Clear Pending
#define CPU_SCS_O_NVIC_ICPR0                                        0x00000280

// Irq 32 to 63 Clear Pending
#define CPU_SCS_O_NVIC_ICPR1                                        0x00000284

// Irq 0 to 31 Active Bit
#define CPU_SCS_O_NVIC_IABR0                                        0x00000300

// Irq 32 to 63 Active Bit
#define CPU_SCS_O_NVIC_IABR1                                        0x00000304

// Irq 0 to 3 Priority
#define CPU_SCS_O_NVIC_IPR0                                         0x00000400

// Irq 4 to 7 Priority
#define CPU_SCS_O_NVIC_IPR1                                         0x00000404

// Irq 8 to 11 Priority
#define CPU_SCS_O_NVIC_IPR2                                         0x00000408

// Irq 12 to 15 Priority
#define CPU_SCS_O_NVIC_IPR3                                         0x0000040C

// Irq 16 to 19 Priority
#define CPU_SCS_O_NVIC_IPR4                                         0x00000410

// Irq 20 to 23 Priority
#define CPU_SCS_O_NVIC_IPR5                                         0x00000414

// Irq 24 to 27 Priority
#define CPU_SCS_O_NVIC_IPR6                                         0x00000418

// Irq 28 to 31 Priority
#define CPU_SCS_O_NVIC_IPR7                                         0x0000041C

// Irq 32 to 35 Priority
#define CPU_SCS_O_NVIC_IPR8                                         0x00000420

// CPUID Base
#define CPU_SCS_O_CPUID                                             0x00000D00

// Interrupt Control State
#define CPU_SCS_O_ICSR                                              0x00000D04

// Vector Table Offset
#define CPU_SCS_O_VTOR                                              0x00000D08

// Application Interrupt/Reset Control
#define CPU_SCS_O_AIRCR                                             0x00000D0C

// System Control
#define CPU_SCS_O_SCR                                               0x00000D10

// Configuration Control
#define CPU_SCS_O_CCR                                               0x00000D14

// System Handlers 4-7 Priority
#define CPU_SCS_O_SHPR1                                             0x00000D18

// System Handlers 8-11 Priority
#define CPU_SCS_O_SHPR2                                             0x00000D1C

// System Handlers 12-15 Priority
#define CPU_SCS_O_SHPR3                                             0x00000D20

// System Handler Control and State
#define CPU_SCS_O_SHCSR                                             0x00000D24

// Configurable Fault Status
#define CPU_SCS_O_CFSR                                              0x00000D28

// Hard Fault Status
#define CPU_SCS_O_HFSR                                              0x00000D2C

// Debug Fault Status
#define CPU_SCS_O_DFSR                                              0x00000D30

// Mem Manage Fault Address
#define CPU_SCS_O_MMFAR                                             0x00000D34

// Bus Fault Address
#define CPU_SCS_O_BFAR                                              0x00000D38

// Auxiliary Fault Status
#define CPU_SCS_O_AFSR                                              0x00000D3C

// Processor Feature 0
#define CPU_SCS_O_ID_PFR0                                           0x00000D40

// Processor Feature 1
#define CPU_SCS_O_ID_PFR1                                           0x00000D44

// Debug Feature 0
#define CPU_SCS_O_ID_DFR0                                           0x00000D48

// Auxiliary Feature 0
#define CPU_SCS_O_ID_AFR0                                           0x00000D4C

// Memory Model Feature 0
#define CPU_SCS_O_ID_MMFR0                                          0x00000D50

// Memory Model Feature 1
#define CPU_SCS_O_ID_MMFR1                                          0x00000D54

// Memory Model Feature 2
#define CPU_SCS_O_ID_MMFR2                                          0x00000D58

// Memory Model Feature 3
#define CPU_SCS_O_ID_MMFR3                                          0x00000D5C

// ISA Feature 0
#define CPU_SCS_O_ID_ISAR0                                          0x00000D60

// ISA Feature 1
#define CPU_SCS_O_ID_ISAR1                                          0x00000D64

// ISA Feature 2
#define CPU_SCS_O_ID_ISAR2                                          0x00000D68

// ISA Feature 3
#define CPU_SCS_O_ID_ISAR3                                          0x00000D6C

// ISA Feature 4
#define CPU_SCS_O_ID_ISAR4                                          0x00000D70

// Coprocessor Access Control
#define CPU_SCS_O_CPACR                                             0x00000D88

// Debug Halting Control and Status
#define CPU_SCS_O_DHCSR                                             0x00000DF0

// Deubg Core Register Selector
#define CPU_SCS_O_DCRSR                                             0x00000DF4

// Debug Core Register Data
#define CPU_SCS_O_DCRDR                                             0x00000DF8

// Debug Exception and Monitor Control
#define CPU_SCS_O_DEMCR                                             0x00000DFC

// Software Trigger Interrupt
#define CPU_SCS_O_STIR                                              0x00000F00

//*****************************************************************************
//
// Register: CPU_SCS_O_ICTR
//
//*****************************************************************************
// Field:   [2:0] INTLINESNUM
//
// Total number of interrupt lines in groups of 32.
//
// 0: 0...32
// 1: 33...64
// 2: 65...96
// 3: 97...128
// 4: 129...160
// 5: 161...192
// 6: 193...224
// 7: 225...256
#define CPU_SCS_ICTR_INTLINESNUM_W                                           3
#define CPU_SCS_ICTR_INTLINESNUM_M                                  0x00000007
#define CPU_SCS_ICTR_INTLINESNUM_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_ACTLR
//
//*****************************************************************************
// Field:     [2] DISFOLD
//
// Disables folding of IT instruction.
#define CPU_SCS_ACTLR_DISFOLD                                       0x00000004
#define CPU_SCS_ACTLR_DISFOLD_BITN                                           2
#define CPU_SCS_ACTLR_DISFOLD_M                                     0x00000004
#define CPU_SCS_ACTLR_DISFOLD_S                                              2

// Field:     [1] DISDEFWBUF
//
// Disables write buffer use during default memory map accesses. This causes
// all bus faults to be precise bus faults but decreases the performance of the
// processor because the stores to memory have to complete before the next
// instruction can be executed.
#define CPU_SCS_ACTLR_DISDEFWBUF                                    0x00000002
#define CPU_SCS_ACTLR_DISDEFWBUF_BITN                                        1
#define CPU_SCS_ACTLR_DISDEFWBUF_M                                  0x00000002
#define CPU_SCS_ACTLR_DISDEFWBUF_S                                           1

// Field:     [0] DISMCYCINT
//
// Disables interruption of multi-cycle instructions. This increases the
// interrupt latency of the processor becuase LDM/STM completes before
// interrupt stacking occurs.
#define CPU_SCS_ACTLR_DISMCYCINT                                    0x00000001
#define CPU_SCS_ACTLR_DISMCYCINT_BITN                                        0
#define CPU_SCS_ACTLR_DISMCYCINT_M                                  0x00000001
#define CPU_SCS_ACTLR_DISMCYCINT_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_STCSR
//
//*****************************************************************************
// Field:    [16] COUNTFLAG
//
// Returns 1 if timer counted to 0 since last time this was read. Clears on
// read by application of any part of the SysTick Control and Status Register.
// If read by the debugger using the DAP, this bit is cleared on read-only if
// the MasterType bit in the **AHB-AP** Control Register is set to 0.
// Otherwise, COUNTFLAG is not changed by the debugger read.
#define CPU_SCS_STCSR_COUNTFLAG                                     0x00010000
#define CPU_SCS_STCSR_COUNTFLAG_BITN                                        16
#define CPU_SCS_STCSR_COUNTFLAG_M                                   0x00010000
#define CPU_SCS_STCSR_COUNTFLAG_S                                           16

// Field:     [2] CLKSOURCE
//
// Clock source:
//
// 0: External reference clock.
// 1: Core clock
//
// External clock is not available in this device. Writes to this field will be
// ignored.
#define CPU_SCS_STCSR_CLKSOURCE                                     0x00000004
#define CPU_SCS_STCSR_CLKSOURCE_BITN                                         2
#define CPU_SCS_STCSR_CLKSOURCE_M                                   0x00000004
#define CPU_SCS_STCSR_CLKSOURCE_S                                            2

// Field:     [1] TICKINT
//
// 0: Counting down to zero does not pend the SysTick handler. Software can use
// COUNTFLAG to determine if the SysTick handler has ever counted to zero.
// 1: Counting down to zero pends the SysTick handler.
#define CPU_SCS_STCSR_TICKINT                                       0x00000002
#define CPU_SCS_STCSR_TICKINT_BITN                                           1
#define CPU_SCS_STCSR_TICKINT_M                                     0x00000002
#define CPU_SCS_STCSR_TICKINT_S                                              1

// Field:     [0] ENABLE
//
// Enable SysTick counter
//
// 0: Counter disabled
// 1: Counter operates in a multi-shot way. That is, counter loads with the
// Reload value STRVR.RELOAD and then begins counting down. On reaching 0, it
// sets COUNTFLAG to 1 and optionally pends the SysTick handler, based on
// TICKINT. It then loads STRVR.RELOAD again, and begins counting.
#define CPU_SCS_STCSR_ENABLE                                        0x00000001
#define CPU_SCS_STCSR_ENABLE_BITN                                            0
#define CPU_SCS_STCSR_ENABLE_M                                      0x00000001
#define CPU_SCS_STCSR_ENABLE_S                                               0

//*****************************************************************************
//
// Register: CPU_SCS_O_STRVR
//
//*****************************************************************************
// Field:  [23:0] RELOAD
//
// Value to load into the SysTick Current Value Register STCVR.CURRENT when the
// counter reaches 0.
#define CPU_SCS_STRVR_RELOAD_W                                              24
#define CPU_SCS_STRVR_RELOAD_M                                      0x00FFFFFF
#define CPU_SCS_STRVR_RELOAD_S                                               0

//*****************************************************************************
//
// Register: CPU_SCS_O_STCVR
//
//*****************************************************************************
// Field:  [23:0] CURRENT
//
// Current value at the time the register is accessed. No read-modify-write
// protection is provided, so change with care. Writing to it with any value
// clears the register to 0. Clearing this register also clears
// STCSR.COUNTFLAG.
#define CPU_SCS_STCVR_CURRENT_W                                             24
#define CPU_SCS_STCVR_CURRENT_M                                     0x00FFFFFF
#define CPU_SCS_STCVR_CURRENT_S                                              0

//*****************************************************************************
//
// Register: CPU_SCS_O_STCR
//
//*****************************************************************************
// Field:    [31] NOREF
//
// Reads as one. Indicates that no separate reference clock is provided.
#define CPU_SCS_STCR_NOREF                                          0x80000000
#define CPU_SCS_STCR_NOREF_BITN                                             31
#define CPU_SCS_STCR_NOREF_M                                        0x80000000
#define CPU_SCS_STCR_NOREF_S                                                31

// Field:    [30] SKEW
//
// Reads as one. The calibration value is not exactly 10ms because of clock
// frequency. This could affect its suitability as a software real time clock.
#define CPU_SCS_STCR_SKEW                                           0x40000000
#define CPU_SCS_STCR_SKEW_BITN                                              30
#define CPU_SCS_STCR_SKEW_M                                         0x40000000
#define CPU_SCS_STCR_SKEW_S                                                 30

// Field:  [23:0] TENMS
//
// An optional Reload value to be used for 10ms (100Hz) timing, subject to
// system clock skew errors. The value read is valid only when core clock is at
// 48MHz.
#define CPU_SCS_STCR_TENMS_W                                                24
#define CPU_SCS_STCR_TENMS_M                                        0x00FFFFFF
#define CPU_SCS_STCR_TENMS_S                                                 0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ISER0
//
//*****************************************************************************
// Field:    [31] SETENA31
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA31                                 0x80000000
#define CPU_SCS_NVIC_ISER0_SETENA31_BITN                                    31
#define CPU_SCS_NVIC_ISER0_SETENA31_M                               0x80000000
#define CPU_SCS_NVIC_ISER0_SETENA31_S                                       31

// Field:    [30] SETENA30
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA30                                 0x40000000
#define CPU_SCS_NVIC_ISER0_SETENA30_BITN                                    30
#define CPU_SCS_NVIC_ISER0_SETENA30_M                               0x40000000
#define CPU_SCS_NVIC_ISER0_SETENA30_S                                       30

// Field:    [29] SETENA29
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA29                                 0x20000000
#define CPU_SCS_NVIC_ISER0_SETENA29_BITN                                    29
#define CPU_SCS_NVIC_ISER0_SETENA29_M                               0x20000000
#define CPU_SCS_NVIC_ISER0_SETENA29_S                                       29

// Field:    [28] SETENA28
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA28                                 0x10000000
#define CPU_SCS_NVIC_ISER0_SETENA28_BITN                                    28
#define CPU_SCS_NVIC_ISER0_SETENA28_M                               0x10000000
#define CPU_SCS_NVIC_ISER0_SETENA28_S                                       28

// Field:    [27] SETENA27
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA27                                 0x08000000
#define CPU_SCS_NVIC_ISER0_SETENA27_BITN                                    27
#define CPU_SCS_NVIC_ISER0_SETENA27_M                               0x08000000
#define CPU_SCS_NVIC_ISER0_SETENA27_S                                       27

// Field:    [26] SETENA26
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA26                                 0x04000000
#define CPU_SCS_NVIC_ISER0_SETENA26_BITN                                    26
#define CPU_SCS_NVIC_ISER0_SETENA26_M                               0x04000000
#define CPU_SCS_NVIC_ISER0_SETENA26_S                                       26

// Field:    [25] SETENA25
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA25                                 0x02000000
#define CPU_SCS_NVIC_ISER0_SETENA25_BITN                                    25
#define CPU_SCS_NVIC_ISER0_SETENA25_M                               0x02000000
#define CPU_SCS_NVIC_ISER0_SETENA25_S                                       25

// Field:    [24] SETENA24
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA24                                 0x01000000
#define CPU_SCS_NVIC_ISER0_SETENA24_BITN                                    24
#define CPU_SCS_NVIC_ISER0_SETENA24_M                               0x01000000
#define CPU_SCS_NVIC_ISER0_SETENA24_S                                       24

// Field:    [23] SETENA23
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA23                                 0x00800000
#define CPU_SCS_NVIC_ISER0_SETENA23_BITN                                    23
#define CPU_SCS_NVIC_ISER0_SETENA23_M                               0x00800000
#define CPU_SCS_NVIC_ISER0_SETENA23_S                                       23

// Field:    [22] SETENA22
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA22                                 0x00400000
#define CPU_SCS_NVIC_ISER0_SETENA22_BITN                                    22
#define CPU_SCS_NVIC_ISER0_SETENA22_M                               0x00400000
#define CPU_SCS_NVIC_ISER0_SETENA22_S                                       22

// Field:    [21] SETENA21
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA21                                 0x00200000
#define CPU_SCS_NVIC_ISER0_SETENA21_BITN                                    21
#define CPU_SCS_NVIC_ISER0_SETENA21_M                               0x00200000
#define CPU_SCS_NVIC_ISER0_SETENA21_S                                       21

// Field:    [20] SETENA20
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA20                                 0x00100000
#define CPU_SCS_NVIC_ISER0_SETENA20_BITN                                    20
#define CPU_SCS_NVIC_ISER0_SETENA20_M                               0x00100000
#define CPU_SCS_NVIC_ISER0_SETENA20_S                                       20

// Field:    [19] SETENA19
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA19                                 0x00080000
#define CPU_SCS_NVIC_ISER0_SETENA19_BITN                                    19
#define CPU_SCS_NVIC_ISER0_SETENA19_M                               0x00080000
#define CPU_SCS_NVIC_ISER0_SETENA19_S                                       19

// Field:    [18] SETENA18
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA18                                 0x00040000
#define CPU_SCS_NVIC_ISER0_SETENA18_BITN                                    18
#define CPU_SCS_NVIC_ISER0_SETENA18_M                               0x00040000
#define CPU_SCS_NVIC_ISER0_SETENA18_S                                       18

// Field:    [17] SETENA17
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA17                                 0x00020000
#define CPU_SCS_NVIC_ISER0_SETENA17_BITN                                    17
#define CPU_SCS_NVIC_ISER0_SETENA17_M                               0x00020000
#define CPU_SCS_NVIC_ISER0_SETENA17_S                                       17

// Field:    [16] SETENA16
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA16                                 0x00010000
#define CPU_SCS_NVIC_ISER0_SETENA16_BITN                                    16
#define CPU_SCS_NVIC_ISER0_SETENA16_M                               0x00010000
#define CPU_SCS_NVIC_ISER0_SETENA16_S                                       16

// Field:    [15] SETENA15
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA15                                 0x00008000
#define CPU_SCS_NVIC_ISER0_SETENA15_BITN                                    15
#define CPU_SCS_NVIC_ISER0_SETENA15_M                               0x00008000
#define CPU_SCS_NVIC_ISER0_SETENA15_S                                       15

// Field:    [14] SETENA14
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA14                                 0x00004000
#define CPU_SCS_NVIC_ISER0_SETENA14_BITN                                    14
#define CPU_SCS_NVIC_ISER0_SETENA14_M                               0x00004000
#define CPU_SCS_NVIC_ISER0_SETENA14_S                                       14

// Field:    [13] SETENA13
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA13                                 0x00002000
#define CPU_SCS_NVIC_ISER0_SETENA13_BITN                                    13
#define CPU_SCS_NVIC_ISER0_SETENA13_M                               0x00002000
#define CPU_SCS_NVIC_ISER0_SETENA13_S                                       13

// Field:    [12] SETENA12
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA12                                 0x00001000
#define CPU_SCS_NVIC_ISER0_SETENA12_BITN                                    12
#define CPU_SCS_NVIC_ISER0_SETENA12_M                               0x00001000
#define CPU_SCS_NVIC_ISER0_SETENA12_S                                       12

// Field:    [11] SETENA11
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA11                                 0x00000800
#define CPU_SCS_NVIC_ISER0_SETENA11_BITN                                    11
#define CPU_SCS_NVIC_ISER0_SETENA11_M                               0x00000800
#define CPU_SCS_NVIC_ISER0_SETENA11_S                                       11

// Field:    [10] SETENA10
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA10                                 0x00000400
#define CPU_SCS_NVIC_ISER0_SETENA10_BITN                                    10
#define CPU_SCS_NVIC_ISER0_SETENA10_M                               0x00000400
#define CPU_SCS_NVIC_ISER0_SETENA10_S                                       10

// Field:     [9] SETENA9
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA9                                  0x00000200
#define CPU_SCS_NVIC_ISER0_SETENA9_BITN                                      9
#define CPU_SCS_NVIC_ISER0_SETENA9_M                                0x00000200
#define CPU_SCS_NVIC_ISER0_SETENA9_S                                         9

// Field:     [8] SETENA8
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA8                                  0x00000100
#define CPU_SCS_NVIC_ISER0_SETENA8_BITN                                      8
#define CPU_SCS_NVIC_ISER0_SETENA8_M                                0x00000100
#define CPU_SCS_NVIC_ISER0_SETENA8_S                                         8

// Field:     [7] SETENA7
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA7                                  0x00000080
#define CPU_SCS_NVIC_ISER0_SETENA7_BITN                                      7
#define CPU_SCS_NVIC_ISER0_SETENA7_M                                0x00000080
#define CPU_SCS_NVIC_ISER0_SETENA7_S                                         7

// Field:     [6] SETENA6
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA6                                  0x00000040
#define CPU_SCS_NVIC_ISER0_SETENA6_BITN                                      6
#define CPU_SCS_NVIC_ISER0_SETENA6_M                                0x00000040
#define CPU_SCS_NVIC_ISER0_SETENA6_S                                         6

// Field:     [5] SETENA5
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA5                                  0x00000020
#define CPU_SCS_NVIC_ISER0_SETENA5_BITN                                      5
#define CPU_SCS_NVIC_ISER0_SETENA5_M                                0x00000020
#define CPU_SCS_NVIC_ISER0_SETENA5_S                                         5

// Field:     [4] SETENA4
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA4                                  0x00000010
#define CPU_SCS_NVIC_ISER0_SETENA4_BITN                                      4
#define CPU_SCS_NVIC_ISER0_SETENA4_M                                0x00000010
#define CPU_SCS_NVIC_ISER0_SETENA4_S                                         4

// Field:     [3] SETENA3
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA3                                  0x00000008
#define CPU_SCS_NVIC_ISER0_SETENA3_BITN                                      3
#define CPU_SCS_NVIC_ISER0_SETENA3_M                                0x00000008
#define CPU_SCS_NVIC_ISER0_SETENA3_S                                         3

// Field:     [2] SETENA2
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA2                                  0x00000004
#define CPU_SCS_NVIC_ISER0_SETENA2_BITN                                      2
#define CPU_SCS_NVIC_ISER0_SETENA2_M                                0x00000004
#define CPU_SCS_NVIC_ISER0_SETENA2_S                                         2

// Field:     [1] SETENA1
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA1                                  0x00000002
#define CPU_SCS_NVIC_ISER0_SETENA1_BITN                                      1
#define CPU_SCS_NVIC_ISER0_SETENA1_M                                0x00000002
#define CPU_SCS_NVIC_ISER0_SETENA1_S                                         1

// Field:     [0] SETENA0
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER0_SETENA0                                  0x00000001
#define CPU_SCS_NVIC_ISER0_SETENA0_BITN                                      0
#define CPU_SCS_NVIC_ISER0_SETENA0_M                                0x00000001
#define CPU_SCS_NVIC_ISER0_SETENA0_S                                         0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ISER1
//
//*****************************************************************************
// Field:     [1] SETENA33
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER1_SETENA33                                 0x00000002
#define CPU_SCS_NVIC_ISER1_SETENA33_BITN                                     1
#define CPU_SCS_NVIC_ISER1_SETENA33_M                               0x00000002
#define CPU_SCS_NVIC_ISER1_SETENA33_S                                        1

// Field:     [0] SETENA32
//
// Writing 0 to this bit has no effect, writing 1 to this bit enables the
// interrupt number 32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ISER1_SETENA32                                 0x00000001
#define CPU_SCS_NVIC_ISER1_SETENA32_BITN                                     0
#define CPU_SCS_NVIC_ISER1_SETENA32_M                               0x00000001
#define CPU_SCS_NVIC_ISER1_SETENA32_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ICER0
//
//*****************************************************************************
// Field:    [31] CLRENA31
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA31                                 0x80000000
#define CPU_SCS_NVIC_ICER0_CLRENA31_BITN                                    31
#define CPU_SCS_NVIC_ICER0_CLRENA31_M                               0x80000000
#define CPU_SCS_NVIC_ICER0_CLRENA31_S                                       31

// Field:    [30] CLRENA30
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA30                                 0x40000000
#define CPU_SCS_NVIC_ICER0_CLRENA30_BITN                                    30
#define CPU_SCS_NVIC_ICER0_CLRENA30_M                               0x40000000
#define CPU_SCS_NVIC_ICER0_CLRENA30_S                                       30

// Field:    [29] CLRENA29
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA29                                 0x20000000
#define CPU_SCS_NVIC_ICER0_CLRENA29_BITN                                    29
#define CPU_SCS_NVIC_ICER0_CLRENA29_M                               0x20000000
#define CPU_SCS_NVIC_ICER0_CLRENA29_S                                       29

// Field:    [28] CLRENA28
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA28                                 0x10000000
#define CPU_SCS_NVIC_ICER0_CLRENA28_BITN                                    28
#define CPU_SCS_NVIC_ICER0_CLRENA28_M                               0x10000000
#define CPU_SCS_NVIC_ICER0_CLRENA28_S                                       28

// Field:    [27] CLRENA27
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA27                                 0x08000000
#define CPU_SCS_NVIC_ICER0_CLRENA27_BITN                                    27
#define CPU_SCS_NVIC_ICER0_CLRENA27_M                               0x08000000
#define CPU_SCS_NVIC_ICER0_CLRENA27_S                                       27

// Field:    [26] CLRENA26
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA26                                 0x04000000
#define CPU_SCS_NVIC_ICER0_CLRENA26_BITN                                    26
#define CPU_SCS_NVIC_ICER0_CLRENA26_M                               0x04000000
#define CPU_SCS_NVIC_ICER0_CLRENA26_S                                       26

// Field:    [25] CLRENA25
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA25                                 0x02000000
#define CPU_SCS_NVIC_ICER0_CLRENA25_BITN                                    25
#define CPU_SCS_NVIC_ICER0_CLRENA25_M                               0x02000000
#define CPU_SCS_NVIC_ICER0_CLRENA25_S                                       25

// Field:    [24] CLRENA24
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA24                                 0x01000000
#define CPU_SCS_NVIC_ICER0_CLRENA24_BITN                                    24
#define CPU_SCS_NVIC_ICER0_CLRENA24_M                               0x01000000
#define CPU_SCS_NVIC_ICER0_CLRENA24_S                                       24

// Field:    [23] CLRENA23
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA23                                 0x00800000
#define CPU_SCS_NVIC_ICER0_CLRENA23_BITN                                    23
#define CPU_SCS_NVIC_ICER0_CLRENA23_M                               0x00800000
#define CPU_SCS_NVIC_ICER0_CLRENA23_S                                       23

// Field:    [22] CLRENA22
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA22                                 0x00400000
#define CPU_SCS_NVIC_ICER0_CLRENA22_BITN                                    22
#define CPU_SCS_NVIC_ICER0_CLRENA22_M                               0x00400000
#define CPU_SCS_NVIC_ICER0_CLRENA22_S                                       22

// Field:    [21] CLRENA21
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA21                                 0x00200000
#define CPU_SCS_NVIC_ICER0_CLRENA21_BITN                                    21
#define CPU_SCS_NVIC_ICER0_CLRENA21_M                               0x00200000
#define CPU_SCS_NVIC_ICER0_CLRENA21_S                                       21

// Field:    [20] CLRENA20
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA20                                 0x00100000
#define CPU_SCS_NVIC_ICER0_CLRENA20_BITN                                    20
#define CPU_SCS_NVIC_ICER0_CLRENA20_M                               0x00100000
#define CPU_SCS_NVIC_ICER0_CLRENA20_S                                       20

// Field:    [19] CLRENA19
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA19                                 0x00080000
#define CPU_SCS_NVIC_ICER0_CLRENA19_BITN                                    19
#define CPU_SCS_NVIC_ICER0_CLRENA19_M                               0x00080000
#define CPU_SCS_NVIC_ICER0_CLRENA19_S                                       19

// Field:    [18] CLRENA18
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA18                                 0x00040000
#define CPU_SCS_NVIC_ICER0_CLRENA18_BITN                                    18
#define CPU_SCS_NVIC_ICER0_CLRENA18_M                               0x00040000
#define CPU_SCS_NVIC_ICER0_CLRENA18_S                                       18

// Field:    [17] CLRENA17
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA17                                 0x00020000
#define CPU_SCS_NVIC_ICER0_CLRENA17_BITN                                    17
#define CPU_SCS_NVIC_ICER0_CLRENA17_M                               0x00020000
#define CPU_SCS_NVIC_ICER0_CLRENA17_S                                       17

// Field:    [16] CLRENA16
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA16                                 0x00010000
#define CPU_SCS_NVIC_ICER0_CLRENA16_BITN                                    16
#define CPU_SCS_NVIC_ICER0_CLRENA16_M                               0x00010000
#define CPU_SCS_NVIC_ICER0_CLRENA16_S                                       16

// Field:    [15] CLRENA15
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA15                                 0x00008000
#define CPU_SCS_NVIC_ICER0_CLRENA15_BITN                                    15
#define CPU_SCS_NVIC_ICER0_CLRENA15_M                               0x00008000
#define CPU_SCS_NVIC_ICER0_CLRENA15_S                                       15

// Field:    [14] CLRENA14
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA14                                 0x00004000
#define CPU_SCS_NVIC_ICER0_CLRENA14_BITN                                    14
#define CPU_SCS_NVIC_ICER0_CLRENA14_M                               0x00004000
#define CPU_SCS_NVIC_ICER0_CLRENA14_S                                       14

// Field:    [13] CLRENA13
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA13                                 0x00002000
#define CPU_SCS_NVIC_ICER0_CLRENA13_BITN                                    13
#define CPU_SCS_NVIC_ICER0_CLRENA13_M                               0x00002000
#define CPU_SCS_NVIC_ICER0_CLRENA13_S                                       13

// Field:    [12] CLRENA12
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA12                                 0x00001000
#define CPU_SCS_NVIC_ICER0_CLRENA12_BITN                                    12
#define CPU_SCS_NVIC_ICER0_CLRENA12_M                               0x00001000
#define CPU_SCS_NVIC_ICER0_CLRENA12_S                                       12

// Field:    [11] CLRENA11
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA11                                 0x00000800
#define CPU_SCS_NVIC_ICER0_CLRENA11_BITN                                    11
#define CPU_SCS_NVIC_ICER0_CLRENA11_M                               0x00000800
#define CPU_SCS_NVIC_ICER0_CLRENA11_S                                       11

// Field:    [10] CLRENA10
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA10                                 0x00000400
#define CPU_SCS_NVIC_ICER0_CLRENA10_BITN                                    10
#define CPU_SCS_NVIC_ICER0_CLRENA10_M                               0x00000400
#define CPU_SCS_NVIC_ICER0_CLRENA10_S                                       10

// Field:     [9] CLRENA9
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA9                                  0x00000200
#define CPU_SCS_NVIC_ICER0_CLRENA9_BITN                                      9
#define CPU_SCS_NVIC_ICER0_CLRENA9_M                                0x00000200
#define CPU_SCS_NVIC_ICER0_CLRENA9_S                                         9

// Field:     [8] CLRENA8
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA8                                  0x00000100
#define CPU_SCS_NVIC_ICER0_CLRENA8_BITN                                      8
#define CPU_SCS_NVIC_ICER0_CLRENA8_M                                0x00000100
#define CPU_SCS_NVIC_ICER0_CLRENA8_S                                         8

// Field:     [7] CLRENA7
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA7                                  0x00000080
#define CPU_SCS_NVIC_ICER0_CLRENA7_BITN                                      7
#define CPU_SCS_NVIC_ICER0_CLRENA7_M                                0x00000080
#define CPU_SCS_NVIC_ICER0_CLRENA7_S                                         7

// Field:     [6] CLRENA6
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA6                                  0x00000040
#define CPU_SCS_NVIC_ICER0_CLRENA6_BITN                                      6
#define CPU_SCS_NVIC_ICER0_CLRENA6_M                                0x00000040
#define CPU_SCS_NVIC_ICER0_CLRENA6_S                                         6

// Field:     [5] CLRENA5
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA5                                  0x00000020
#define CPU_SCS_NVIC_ICER0_CLRENA5_BITN                                      5
#define CPU_SCS_NVIC_ICER0_CLRENA5_M                                0x00000020
#define CPU_SCS_NVIC_ICER0_CLRENA5_S                                         5

// Field:     [4] CLRENA4
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA4                                  0x00000010
#define CPU_SCS_NVIC_ICER0_CLRENA4_BITN                                      4
#define CPU_SCS_NVIC_ICER0_CLRENA4_M                                0x00000010
#define CPU_SCS_NVIC_ICER0_CLRENA4_S                                         4

// Field:     [3] CLRENA3
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA3                                  0x00000008
#define CPU_SCS_NVIC_ICER0_CLRENA3_BITN                                      3
#define CPU_SCS_NVIC_ICER0_CLRENA3_M                                0x00000008
#define CPU_SCS_NVIC_ICER0_CLRENA3_S                                         3

// Field:     [2] CLRENA2
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA2                                  0x00000004
#define CPU_SCS_NVIC_ICER0_CLRENA2_BITN                                      2
#define CPU_SCS_NVIC_ICER0_CLRENA2_M                                0x00000004
#define CPU_SCS_NVIC_ICER0_CLRENA2_S                                         2

// Field:     [1] CLRENA1
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA1                                  0x00000002
#define CPU_SCS_NVIC_ICER0_CLRENA1_BITN                                      1
#define CPU_SCS_NVIC_ICER0_CLRENA1_M                                0x00000002
#define CPU_SCS_NVIC_ICER0_CLRENA1_S                                         1

// Field:     [0] CLRENA0
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER0_CLRENA0                                  0x00000001
#define CPU_SCS_NVIC_ICER0_CLRENA0_BITN                                      0
#define CPU_SCS_NVIC_ICER0_CLRENA0_M                                0x00000001
#define CPU_SCS_NVIC_ICER0_CLRENA0_S                                         0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ICER1
//
//*****************************************************************************
// Field:     [1] CLRENA33
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER1_CLRENA33                                 0x00000002
#define CPU_SCS_NVIC_ICER1_CLRENA33_BITN                                     1
#define CPU_SCS_NVIC_ICER1_CLRENA33_M                               0x00000002
#define CPU_SCS_NVIC_ICER1_CLRENA33_S                                        1

// Field:     [0] CLRENA32
//
// Writing 0 to this bit has no effect, writing 1 to this bit disables the
// interrupt number  32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit
// returns its current enable state.
#define CPU_SCS_NVIC_ICER1_CLRENA32                                 0x00000001
#define CPU_SCS_NVIC_ICER1_CLRENA32_BITN                                     0
#define CPU_SCS_NVIC_ICER1_CLRENA32_M                               0x00000001
#define CPU_SCS_NVIC_ICER1_CLRENA32_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ISPR0
//
//*****************************************************************************
// Field:    [31] SETPEND31
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 31 (See EVENT:CPUIRQSEL31.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND31                                0x80000000
#define CPU_SCS_NVIC_ISPR0_SETPEND31_BITN                                   31
#define CPU_SCS_NVIC_ISPR0_SETPEND31_M                              0x80000000
#define CPU_SCS_NVIC_ISPR0_SETPEND31_S                                      31

// Field:    [30] SETPEND30
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 30 (See EVENT:CPUIRQSEL30.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND30                                0x40000000
#define CPU_SCS_NVIC_ISPR0_SETPEND30_BITN                                   30
#define CPU_SCS_NVIC_ISPR0_SETPEND30_M                              0x40000000
#define CPU_SCS_NVIC_ISPR0_SETPEND30_S                                      30

// Field:    [29] SETPEND29
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 29 (See EVENT:CPUIRQSEL29.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND29                                0x20000000
#define CPU_SCS_NVIC_ISPR0_SETPEND29_BITN                                   29
#define CPU_SCS_NVIC_ISPR0_SETPEND29_M                              0x20000000
#define CPU_SCS_NVIC_ISPR0_SETPEND29_S                                      29

// Field:    [28] SETPEND28
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 28 (See EVENT:CPUIRQSEL28.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND28                                0x10000000
#define CPU_SCS_NVIC_ISPR0_SETPEND28_BITN                                   28
#define CPU_SCS_NVIC_ISPR0_SETPEND28_M                              0x10000000
#define CPU_SCS_NVIC_ISPR0_SETPEND28_S                                      28

// Field:    [27] SETPEND27
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 27 (See EVENT:CPUIRQSEL27.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND27                                0x08000000
#define CPU_SCS_NVIC_ISPR0_SETPEND27_BITN                                   27
#define CPU_SCS_NVIC_ISPR0_SETPEND27_M                              0x08000000
#define CPU_SCS_NVIC_ISPR0_SETPEND27_S                                      27

// Field:    [26] SETPEND26
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 26 (See EVENT:CPUIRQSEL26.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND26                                0x04000000
#define CPU_SCS_NVIC_ISPR0_SETPEND26_BITN                                   26
#define CPU_SCS_NVIC_ISPR0_SETPEND26_M                              0x04000000
#define CPU_SCS_NVIC_ISPR0_SETPEND26_S                                      26

// Field:    [25] SETPEND25
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 25 (See EVENT:CPUIRQSEL25.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND25                                0x02000000
#define CPU_SCS_NVIC_ISPR0_SETPEND25_BITN                                   25
#define CPU_SCS_NVIC_ISPR0_SETPEND25_M                              0x02000000
#define CPU_SCS_NVIC_ISPR0_SETPEND25_S                                      25

// Field:    [24] SETPEND24
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 24 (See EVENT:CPUIRQSEL24.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND24                                0x01000000
#define CPU_SCS_NVIC_ISPR0_SETPEND24_BITN                                   24
#define CPU_SCS_NVIC_ISPR0_SETPEND24_M                              0x01000000
#define CPU_SCS_NVIC_ISPR0_SETPEND24_S                                      24

// Field:    [23] SETPEND23
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 23 (See EVENT:CPUIRQSEL23.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND23                                0x00800000
#define CPU_SCS_NVIC_ISPR0_SETPEND23_BITN                                   23
#define CPU_SCS_NVIC_ISPR0_SETPEND23_M                              0x00800000
#define CPU_SCS_NVIC_ISPR0_SETPEND23_S                                      23

// Field:    [22] SETPEND22
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 22 (See EVENT:CPUIRQSEL22.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND22                                0x00400000
#define CPU_SCS_NVIC_ISPR0_SETPEND22_BITN                                   22
#define CPU_SCS_NVIC_ISPR0_SETPEND22_M                              0x00400000
#define CPU_SCS_NVIC_ISPR0_SETPEND22_S                                      22

// Field:    [21] SETPEND21
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 21 (See EVENT:CPUIRQSEL21.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND21                                0x00200000
#define CPU_SCS_NVIC_ISPR0_SETPEND21_BITN                                   21
#define CPU_SCS_NVIC_ISPR0_SETPEND21_M                              0x00200000
#define CPU_SCS_NVIC_ISPR0_SETPEND21_S                                      21

// Field:    [20] SETPEND20
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 20 (See EVENT:CPUIRQSEL20.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND20                                0x00100000
#define CPU_SCS_NVIC_ISPR0_SETPEND20_BITN                                   20
#define CPU_SCS_NVIC_ISPR0_SETPEND20_M                              0x00100000
#define CPU_SCS_NVIC_ISPR0_SETPEND20_S                                      20

// Field:    [19] SETPEND19
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 19 (See EVENT:CPUIRQSEL19.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND19                                0x00080000
#define CPU_SCS_NVIC_ISPR0_SETPEND19_BITN                                   19
#define CPU_SCS_NVIC_ISPR0_SETPEND19_M                              0x00080000
#define CPU_SCS_NVIC_ISPR0_SETPEND19_S                                      19

// Field:    [18] SETPEND18
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 18 (See EVENT:CPUIRQSEL18.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND18                                0x00040000
#define CPU_SCS_NVIC_ISPR0_SETPEND18_BITN                                   18
#define CPU_SCS_NVIC_ISPR0_SETPEND18_M                              0x00040000
#define CPU_SCS_NVIC_ISPR0_SETPEND18_S                                      18

// Field:    [17] SETPEND17
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 17 (See EVENT:CPUIRQSEL17.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND17                                0x00020000
#define CPU_SCS_NVIC_ISPR0_SETPEND17_BITN                                   17
#define CPU_SCS_NVIC_ISPR0_SETPEND17_M                              0x00020000
#define CPU_SCS_NVIC_ISPR0_SETPEND17_S                                      17

// Field:    [16] SETPEND16
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 16 (See EVENT:CPUIRQSEL16.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND16                                0x00010000
#define CPU_SCS_NVIC_ISPR0_SETPEND16_BITN                                   16
#define CPU_SCS_NVIC_ISPR0_SETPEND16_M                              0x00010000
#define CPU_SCS_NVIC_ISPR0_SETPEND16_S                                      16

// Field:    [15] SETPEND15
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 15 (See EVENT:CPUIRQSEL15.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND15                                0x00008000
#define CPU_SCS_NVIC_ISPR0_SETPEND15_BITN                                   15
#define CPU_SCS_NVIC_ISPR0_SETPEND15_M                              0x00008000
#define CPU_SCS_NVIC_ISPR0_SETPEND15_S                                      15

// Field:    [14] SETPEND14
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 14 (See EVENT:CPUIRQSEL14.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND14                                0x00004000
#define CPU_SCS_NVIC_ISPR0_SETPEND14_BITN                                   14
#define CPU_SCS_NVIC_ISPR0_SETPEND14_M                              0x00004000
#define CPU_SCS_NVIC_ISPR0_SETPEND14_S                                      14

// Field:    [13] SETPEND13
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 13 (See EVENT:CPUIRQSEL13.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND13                                0x00002000
#define CPU_SCS_NVIC_ISPR0_SETPEND13_BITN                                   13
#define CPU_SCS_NVIC_ISPR0_SETPEND13_M                              0x00002000
#define CPU_SCS_NVIC_ISPR0_SETPEND13_S                                      13

// Field:    [12] SETPEND12
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 12 (See EVENT:CPUIRQSEL12.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND12                                0x00001000
#define CPU_SCS_NVIC_ISPR0_SETPEND12_BITN                                   12
#define CPU_SCS_NVIC_ISPR0_SETPEND12_M                              0x00001000
#define CPU_SCS_NVIC_ISPR0_SETPEND12_S                                      12

// Field:    [11] SETPEND11
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 11 (See EVENT:CPUIRQSEL11.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND11                                0x00000800
#define CPU_SCS_NVIC_ISPR0_SETPEND11_BITN                                   11
#define CPU_SCS_NVIC_ISPR0_SETPEND11_M                              0x00000800
#define CPU_SCS_NVIC_ISPR0_SETPEND11_S                                      11

// Field:    [10] SETPEND10
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 10 (See EVENT:CPUIRQSEL10.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND10                                0x00000400
#define CPU_SCS_NVIC_ISPR0_SETPEND10_BITN                                   10
#define CPU_SCS_NVIC_ISPR0_SETPEND10_M                              0x00000400
#define CPU_SCS_NVIC_ISPR0_SETPEND10_S                                      10

// Field:     [9] SETPEND9
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 9 (See EVENT:CPUIRQSEL9.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND9                                 0x00000200
#define CPU_SCS_NVIC_ISPR0_SETPEND9_BITN                                     9
#define CPU_SCS_NVIC_ISPR0_SETPEND9_M                               0x00000200
#define CPU_SCS_NVIC_ISPR0_SETPEND9_S                                        9

// Field:     [8] SETPEND8
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 8 (See EVENT:CPUIRQSEL8.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND8                                 0x00000100
#define CPU_SCS_NVIC_ISPR0_SETPEND8_BITN                                     8
#define CPU_SCS_NVIC_ISPR0_SETPEND8_M                               0x00000100
#define CPU_SCS_NVIC_ISPR0_SETPEND8_S                                        8

// Field:     [7] SETPEND7
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 7 (See EVENT:CPUIRQSEL7.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND7                                 0x00000080
#define CPU_SCS_NVIC_ISPR0_SETPEND7_BITN                                     7
#define CPU_SCS_NVIC_ISPR0_SETPEND7_M                               0x00000080
#define CPU_SCS_NVIC_ISPR0_SETPEND7_S                                        7

// Field:     [6] SETPEND6
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 6 (See EVENT:CPUIRQSEL6.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND6                                 0x00000040
#define CPU_SCS_NVIC_ISPR0_SETPEND6_BITN                                     6
#define CPU_SCS_NVIC_ISPR0_SETPEND6_M                               0x00000040
#define CPU_SCS_NVIC_ISPR0_SETPEND6_S                                        6

// Field:     [5] SETPEND5
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 5 (See EVENT:CPUIRQSEL5.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND5                                 0x00000020
#define CPU_SCS_NVIC_ISPR0_SETPEND5_BITN                                     5
#define CPU_SCS_NVIC_ISPR0_SETPEND5_M                               0x00000020
#define CPU_SCS_NVIC_ISPR0_SETPEND5_S                                        5

// Field:     [4] SETPEND4
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 4 (See EVENT:CPUIRQSEL4.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND4                                 0x00000010
#define CPU_SCS_NVIC_ISPR0_SETPEND4_BITN                                     4
#define CPU_SCS_NVIC_ISPR0_SETPEND4_M                               0x00000010
#define CPU_SCS_NVIC_ISPR0_SETPEND4_S                                        4

// Field:     [3] SETPEND3
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 3 (See EVENT:CPUIRQSEL3.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND3                                 0x00000008
#define CPU_SCS_NVIC_ISPR0_SETPEND3_BITN                                     3
#define CPU_SCS_NVIC_ISPR0_SETPEND3_M                               0x00000008
#define CPU_SCS_NVIC_ISPR0_SETPEND3_S                                        3

// Field:     [2] SETPEND2
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 2 (See EVENT:CPUIRQSEL2.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND2                                 0x00000004
#define CPU_SCS_NVIC_ISPR0_SETPEND2_BITN                                     2
#define CPU_SCS_NVIC_ISPR0_SETPEND2_M                               0x00000004
#define CPU_SCS_NVIC_ISPR0_SETPEND2_S                                        2

// Field:     [1] SETPEND1
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 1 (See EVENT:CPUIRQSEL1.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND1                                 0x00000002
#define CPU_SCS_NVIC_ISPR0_SETPEND1_BITN                                     1
#define CPU_SCS_NVIC_ISPR0_SETPEND1_M                               0x00000002
#define CPU_SCS_NVIC_ISPR0_SETPEND1_S                                        1

// Field:     [0] SETPEND0
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 0 (See EVENT:CPUIRQSEL0.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR0_SETPEND0                                 0x00000001
#define CPU_SCS_NVIC_ISPR0_SETPEND0_BITN                                     0
#define CPU_SCS_NVIC_ISPR0_SETPEND0_M                               0x00000001
#define CPU_SCS_NVIC_ISPR0_SETPEND0_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ISPR1
//
//*****************************************************************************
// Field:     [1] SETPEND33
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 33 (See EVENT:CPUIRQSEL33.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR1_SETPEND33                                0x00000002
#define CPU_SCS_NVIC_ISPR1_SETPEND33_BITN                                    1
#define CPU_SCS_NVIC_ISPR1_SETPEND33_M                              0x00000002
#define CPU_SCS_NVIC_ISPR1_SETPEND33_S                                       1

// Field:     [0] SETPEND32
//
// Writing 0 to this bit has no effect, writing 1 to this bit pends the
// interrupt number 32 (See EVENT:CPUIRQSEL32.EV for details). Reading the bit
// returns its current state.
#define CPU_SCS_NVIC_ISPR1_SETPEND32                                0x00000001
#define CPU_SCS_NVIC_ISPR1_SETPEND32_BITN                                    0
#define CPU_SCS_NVIC_ISPR1_SETPEND32_M                              0x00000001
#define CPU_SCS_NVIC_ISPR1_SETPEND32_S                                       0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ICPR0
//
//*****************************************************************************
// Field:    [31] CLRPEND31
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 31 (See EVENT:CPUIRQSEL31.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND31                                0x80000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND31_BITN                                   31
#define CPU_SCS_NVIC_ICPR0_CLRPEND31_M                              0x80000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND31_S                                      31

// Field:    [30] CLRPEND30
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 30 (See EVENT:CPUIRQSEL30.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND30                                0x40000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND30_BITN                                   30
#define CPU_SCS_NVIC_ICPR0_CLRPEND30_M                              0x40000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND30_S                                      30

// Field:    [29] CLRPEND29
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 29 (See EVENT:CPUIRQSEL29.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND29                                0x20000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND29_BITN                                   29
#define CPU_SCS_NVIC_ICPR0_CLRPEND29_M                              0x20000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND29_S                                      29

// Field:    [28] CLRPEND28
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 28 (See EVENT:CPUIRQSEL28.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND28                                0x10000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND28_BITN                                   28
#define CPU_SCS_NVIC_ICPR0_CLRPEND28_M                              0x10000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND28_S                                      28

// Field:    [27] CLRPEND27
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 27 (See EVENT:CPUIRQSEL27.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND27                                0x08000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND27_BITN                                   27
#define CPU_SCS_NVIC_ICPR0_CLRPEND27_M                              0x08000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND27_S                                      27

// Field:    [26] CLRPEND26
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 26 (See EVENT:CPUIRQSEL26.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND26                                0x04000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND26_BITN                                   26
#define CPU_SCS_NVIC_ICPR0_CLRPEND26_M                              0x04000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND26_S                                      26

// Field:    [25] CLRPEND25
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 25 (See EVENT:CPUIRQSEL25.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND25                                0x02000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND25_BITN                                   25
#define CPU_SCS_NVIC_ICPR0_CLRPEND25_M                              0x02000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND25_S                                      25

// Field:    [24] CLRPEND24
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 24 (See EVENT:CPUIRQSEL24.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND24                                0x01000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND24_BITN                                   24
#define CPU_SCS_NVIC_ICPR0_CLRPEND24_M                              0x01000000
#define CPU_SCS_NVIC_ICPR0_CLRPEND24_S                                      24

// Field:    [23] CLRPEND23
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 23 (See EVENT:CPUIRQSEL23.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND23                                0x00800000
#define CPU_SCS_NVIC_ICPR0_CLRPEND23_BITN                                   23
#define CPU_SCS_NVIC_ICPR0_CLRPEND23_M                              0x00800000
#define CPU_SCS_NVIC_ICPR0_CLRPEND23_S                                      23

// Field:    [22] CLRPEND22
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 22 (See EVENT:CPUIRQSEL22.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND22                                0x00400000
#define CPU_SCS_NVIC_ICPR0_CLRPEND22_BITN                                   22
#define CPU_SCS_NVIC_ICPR0_CLRPEND22_M                              0x00400000
#define CPU_SCS_NVIC_ICPR0_CLRPEND22_S                                      22

// Field:    [21] CLRPEND21
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 21 (See EVENT:CPUIRQSEL21.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND21                                0x00200000
#define CPU_SCS_NVIC_ICPR0_CLRPEND21_BITN                                   21
#define CPU_SCS_NVIC_ICPR0_CLRPEND21_M                              0x00200000
#define CPU_SCS_NVIC_ICPR0_CLRPEND21_S                                      21

// Field:    [20] CLRPEND20
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 20 (See EVENT:CPUIRQSEL20.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND20                                0x00100000
#define CPU_SCS_NVIC_ICPR0_CLRPEND20_BITN                                   20
#define CPU_SCS_NVIC_ICPR0_CLRPEND20_M                              0x00100000
#define CPU_SCS_NVIC_ICPR0_CLRPEND20_S                                      20

// Field:    [19] CLRPEND19
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 19 (See EVENT:CPUIRQSEL19.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND19                                0x00080000
#define CPU_SCS_NVIC_ICPR0_CLRPEND19_BITN                                   19
#define CPU_SCS_NVIC_ICPR0_CLRPEND19_M                              0x00080000
#define CPU_SCS_NVIC_ICPR0_CLRPEND19_S                                      19

// Field:    [18] CLRPEND18
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 18 (See EVENT:CPUIRQSEL18.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND18                                0x00040000
#define CPU_SCS_NVIC_ICPR0_CLRPEND18_BITN                                   18
#define CPU_SCS_NVIC_ICPR0_CLRPEND18_M                              0x00040000
#define CPU_SCS_NVIC_ICPR0_CLRPEND18_S                                      18

// Field:    [17] CLRPEND17
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 17 (See EVENT:CPUIRQSEL17.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND17                                0x00020000
#define CPU_SCS_NVIC_ICPR0_CLRPEND17_BITN                                   17
#define CPU_SCS_NVIC_ICPR0_CLRPEND17_M                              0x00020000
#define CPU_SCS_NVIC_ICPR0_CLRPEND17_S                                      17

// Field:    [16] CLRPEND16
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 16 (See EVENT:CPUIRQSEL16.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND16                                0x00010000
#define CPU_SCS_NVIC_ICPR0_CLRPEND16_BITN                                   16
#define CPU_SCS_NVIC_ICPR0_CLRPEND16_M                              0x00010000
#define CPU_SCS_NVIC_ICPR0_CLRPEND16_S                                      16

// Field:    [15] CLRPEND15
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 15 (See EVENT:CPUIRQSEL15.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND15                                0x00008000
#define CPU_SCS_NVIC_ICPR0_CLRPEND15_BITN                                   15
#define CPU_SCS_NVIC_ICPR0_CLRPEND15_M                              0x00008000
#define CPU_SCS_NVIC_ICPR0_CLRPEND15_S                                      15

// Field:    [14] CLRPEND14
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 14 (See EVENT:CPUIRQSEL14.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND14                                0x00004000
#define CPU_SCS_NVIC_ICPR0_CLRPEND14_BITN                                   14
#define CPU_SCS_NVIC_ICPR0_CLRPEND14_M                              0x00004000
#define CPU_SCS_NVIC_ICPR0_CLRPEND14_S                                      14

// Field:    [13] CLRPEND13
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 13 (See EVENT:CPUIRQSEL13.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND13                                0x00002000
#define CPU_SCS_NVIC_ICPR0_CLRPEND13_BITN                                   13
#define CPU_SCS_NVIC_ICPR0_CLRPEND13_M                              0x00002000
#define CPU_SCS_NVIC_ICPR0_CLRPEND13_S                                      13

// Field:    [12] CLRPEND12
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 12 (See EVENT:CPUIRQSEL12.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND12                                0x00001000
#define CPU_SCS_NVIC_ICPR0_CLRPEND12_BITN                                   12
#define CPU_SCS_NVIC_ICPR0_CLRPEND12_M                              0x00001000
#define CPU_SCS_NVIC_ICPR0_CLRPEND12_S                                      12

// Field:    [11] CLRPEND11
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 11 (See EVENT:CPUIRQSEL11.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND11                                0x00000800
#define CPU_SCS_NVIC_ICPR0_CLRPEND11_BITN                                   11
#define CPU_SCS_NVIC_ICPR0_CLRPEND11_M                              0x00000800
#define CPU_SCS_NVIC_ICPR0_CLRPEND11_S                                      11

// Field:    [10] CLRPEND10
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 10 (See EVENT:CPUIRQSEL10.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND10                                0x00000400
#define CPU_SCS_NVIC_ICPR0_CLRPEND10_BITN                                   10
#define CPU_SCS_NVIC_ICPR0_CLRPEND10_M                              0x00000400
#define CPU_SCS_NVIC_ICPR0_CLRPEND10_S                                      10

// Field:     [9] CLRPEND9
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 9 (See EVENT:CPUIRQSEL9.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND9                                 0x00000200
#define CPU_SCS_NVIC_ICPR0_CLRPEND9_BITN                                     9
#define CPU_SCS_NVIC_ICPR0_CLRPEND9_M                               0x00000200
#define CPU_SCS_NVIC_ICPR0_CLRPEND9_S                                        9

// Field:     [8] CLRPEND8
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 8 (See EVENT:CPUIRQSEL8.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND8                                 0x00000100
#define CPU_SCS_NVIC_ICPR0_CLRPEND8_BITN                                     8
#define CPU_SCS_NVIC_ICPR0_CLRPEND8_M                               0x00000100
#define CPU_SCS_NVIC_ICPR0_CLRPEND8_S                                        8

// Field:     [7] CLRPEND7
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 7 (See EVENT:CPUIRQSEL7.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND7                                 0x00000080
#define CPU_SCS_NVIC_ICPR0_CLRPEND7_BITN                                     7
#define CPU_SCS_NVIC_ICPR0_CLRPEND7_M                               0x00000080
#define CPU_SCS_NVIC_ICPR0_CLRPEND7_S                                        7

// Field:     [6] CLRPEND6
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 6 (See EVENT:CPUIRQSEL6.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND6                                 0x00000040
#define CPU_SCS_NVIC_ICPR0_CLRPEND6_BITN                                     6
#define CPU_SCS_NVIC_ICPR0_CLRPEND6_M                               0x00000040
#define CPU_SCS_NVIC_ICPR0_CLRPEND6_S                                        6

// Field:     [5] CLRPEND5
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 5 (See EVENT:CPUIRQSEL5.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND5                                 0x00000020
#define CPU_SCS_NVIC_ICPR0_CLRPEND5_BITN                                     5
#define CPU_SCS_NVIC_ICPR0_CLRPEND5_M                               0x00000020
#define CPU_SCS_NVIC_ICPR0_CLRPEND5_S                                        5

// Field:     [4] CLRPEND4
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 4 (See EVENT:CPUIRQSEL4.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND4                                 0x00000010
#define CPU_SCS_NVIC_ICPR0_CLRPEND4_BITN                                     4
#define CPU_SCS_NVIC_ICPR0_CLRPEND4_M                               0x00000010
#define CPU_SCS_NVIC_ICPR0_CLRPEND4_S                                        4

// Field:     [3] CLRPEND3
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 3 (See EVENT:CPUIRQSEL3.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND3                                 0x00000008
#define CPU_SCS_NVIC_ICPR0_CLRPEND3_BITN                                     3
#define CPU_SCS_NVIC_ICPR0_CLRPEND3_M                               0x00000008
#define CPU_SCS_NVIC_ICPR0_CLRPEND3_S                                        3

// Field:     [2] CLRPEND2
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 2 (See EVENT:CPUIRQSEL2.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND2                                 0x00000004
#define CPU_SCS_NVIC_ICPR0_CLRPEND2_BITN                                     2
#define CPU_SCS_NVIC_ICPR0_CLRPEND2_M                               0x00000004
#define CPU_SCS_NVIC_ICPR0_CLRPEND2_S                                        2

// Field:     [1] CLRPEND1
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 1 (See EVENT:CPUIRQSEL1.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND1                                 0x00000002
#define CPU_SCS_NVIC_ICPR0_CLRPEND1_BITN                                     1
#define CPU_SCS_NVIC_ICPR0_CLRPEND1_M                               0x00000002
#define CPU_SCS_NVIC_ICPR0_CLRPEND1_S                                        1

// Field:     [0] CLRPEND0
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 0 (See EVENT:CPUIRQSEL0.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR0_CLRPEND0                                 0x00000001
#define CPU_SCS_NVIC_ICPR0_CLRPEND0_BITN                                     0
#define CPU_SCS_NVIC_ICPR0_CLRPEND0_M                               0x00000001
#define CPU_SCS_NVIC_ICPR0_CLRPEND0_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_ICPR1
//
//*****************************************************************************
// Field:     [1] CLRPEND33
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 33 (See EVENT:CPUIRQSEL33.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR1_CLRPEND33                                0x00000002
#define CPU_SCS_NVIC_ICPR1_CLRPEND33_BITN                                    1
#define CPU_SCS_NVIC_ICPR1_CLRPEND33_M                              0x00000002
#define CPU_SCS_NVIC_ICPR1_CLRPEND33_S                                       1

// Field:     [0] CLRPEND32
//
// Writing 0 to this bit has no effect, writing 1 to this bit clears the
// corresponding pending interrupt 32 (See EVENT:CPUIRQSEL32.EV for details).
// Reading the bit returns its current state.
#define CPU_SCS_NVIC_ICPR1_CLRPEND32                                0x00000001
#define CPU_SCS_NVIC_ICPR1_CLRPEND32_BITN                                    0
#define CPU_SCS_NVIC_ICPR1_CLRPEND32_M                              0x00000001
#define CPU_SCS_NVIC_ICPR1_CLRPEND32_S                                       0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IABR0
//
//*****************************************************************************
// Field:    [31] ACTIVE31
//
// Reading 0 from this bit implies that interrupt line 31 is not active.
// Reading 1 from this bit implies that the interrupt line 31 is active (See
// EVENT:CPUIRQSEL31.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE31                                 0x80000000
#define CPU_SCS_NVIC_IABR0_ACTIVE31_BITN                                    31
#define CPU_SCS_NVIC_IABR0_ACTIVE31_M                               0x80000000
#define CPU_SCS_NVIC_IABR0_ACTIVE31_S                                       31

// Field:    [30] ACTIVE30
//
// Reading 0 from this bit implies that interrupt line 30 is not active.
// Reading 1 from this bit implies that the interrupt line 30 is active (See
// EVENT:CPUIRQSEL30.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE30                                 0x40000000
#define CPU_SCS_NVIC_IABR0_ACTIVE30_BITN                                    30
#define CPU_SCS_NVIC_IABR0_ACTIVE30_M                               0x40000000
#define CPU_SCS_NVIC_IABR0_ACTIVE30_S                                       30

// Field:    [29] ACTIVE29
//
// Reading 0 from this bit implies that interrupt line 29 is not active.
// Reading 1 from this bit implies that the interrupt line 29 is active (See
// EVENT:CPUIRQSEL29.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE29                                 0x20000000
#define CPU_SCS_NVIC_IABR0_ACTIVE29_BITN                                    29
#define CPU_SCS_NVIC_IABR0_ACTIVE29_M                               0x20000000
#define CPU_SCS_NVIC_IABR0_ACTIVE29_S                                       29

// Field:    [28] ACTIVE28
//
// Reading 0 from this bit implies that interrupt line 28 is not active.
// Reading 1 from this bit implies that the interrupt line 28 is active (See
// EVENT:CPUIRQSEL28.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE28                                 0x10000000
#define CPU_SCS_NVIC_IABR0_ACTIVE28_BITN                                    28
#define CPU_SCS_NVIC_IABR0_ACTIVE28_M                               0x10000000
#define CPU_SCS_NVIC_IABR0_ACTIVE28_S                                       28

// Field:    [27] ACTIVE27
//
// Reading 0 from this bit implies that interrupt line 27 is not active.
// Reading 1 from this bit implies that the interrupt line 27 is active (See
// EVENT:CPUIRQSEL27.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE27                                 0x08000000
#define CPU_SCS_NVIC_IABR0_ACTIVE27_BITN                                    27
#define CPU_SCS_NVIC_IABR0_ACTIVE27_M                               0x08000000
#define CPU_SCS_NVIC_IABR0_ACTIVE27_S                                       27

// Field:    [26] ACTIVE26
//
// Reading 0 from this bit implies that interrupt line 26 is not active.
// Reading 1 from this bit implies that the interrupt line 26 is active (See
// EVENT:CPUIRQSEL26.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE26                                 0x04000000
#define CPU_SCS_NVIC_IABR0_ACTIVE26_BITN                                    26
#define CPU_SCS_NVIC_IABR0_ACTIVE26_M                               0x04000000
#define CPU_SCS_NVIC_IABR0_ACTIVE26_S                                       26

// Field:    [25] ACTIVE25
//
// Reading 0 from this bit implies that interrupt line 25 is not active.
// Reading 1 from this bit implies that the interrupt line 25 is active (See
// EVENT:CPUIRQSEL25.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE25                                 0x02000000
#define CPU_SCS_NVIC_IABR0_ACTIVE25_BITN                                    25
#define CPU_SCS_NVIC_IABR0_ACTIVE25_M                               0x02000000
#define CPU_SCS_NVIC_IABR0_ACTIVE25_S                                       25

// Field:    [24] ACTIVE24
//
// Reading 0 from this bit implies that interrupt line 24 is not active.
// Reading 1 from this bit implies that the interrupt line 24 is active (See
// EVENT:CPUIRQSEL24.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE24                                 0x01000000
#define CPU_SCS_NVIC_IABR0_ACTIVE24_BITN                                    24
#define CPU_SCS_NVIC_IABR0_ACTIVE24_M                               0x01000000
#define CPU_SCS_NVIC_IABR0_ACTIVE24_S                                       24

// Field:    [23] ACTIVE23
//
// Reading 0 from this bit implies that interrupt line 23 is not active.
// Reading 1 from this bit implies that the interrupt line 23 is active (See
// EVENT:CPUIRQSEL23.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE23                                 0x00800000
#define CPU_SCS_NVIC_IABR0_ACTIVE23_BITN                                    23
#define CPU_SCS_NVIC_IABR0_ACTIVE23_M                               0x00800000
#define CPU_SCS_NVIC_IABR0_ACTIVE23_S                                       23

// Field:    [22] ACTIVE22
//
// Reading 0 from this bit implies that interrupt line 22 is not active.
// Reading 1 from this bit implies that the interrupt line 22 is active (See
// EVENT:CPUIRQSEL22.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE22                                 0x00400000
#define CPU_SCS_NVIC_IABR0_ACTIVE22_BITN                                    22
#define CPU_SCS_NVIC_IABR0_ACTIVE22_M                               0x00400000
#define CPU_SCS_NVIC_IABR0_ACTIVE22_S                                       22

// Field:    [21] ACTIVE21
//
// Reading 0 from this bit implies that interrupt line 21 is not active.
// Reading 1 from this bit implies that the interrupt line 21 is active (See
// EVENT:CPUIRQSEL21.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE21                                 0x00200000
#define CPU_SCS_NVIC_IABR0_ACTIVE21_BITN                                    21
#define CPU_SCS_NVIC_IABR0_ACTIVE21_M                               0x00200000
#define CPU_SCS_NVIC_IABR0_ACTIVE21_S                                       21

// Field:    [20] ACTIVE20
//
// Reading 0 from this bit implies that interrupt line 20 is not active.
// Reading 1 from this bit implies that the interrupt line 20 is active (See
// EVENT:CPUIRQSEL20.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE20                                 0x00100000
#define CPU_SCS_NVIC_IABR0_ACTIVE20_BITN                                    20
#define CPU_SCS_NVIC_IABR0_ACTIVE20_M                               0x00100000
#define CPU_SCS_NVIC_IABR0_ACTIVE20_S                                       20

// Field:    [19] ACTIVE19
//
// Reading 0 from this bit implies that interrupt line 19 is not active.
// Reading 1 from this bit implies that the interrupt line 19 is active (See
// EVENT:CPUIRQSEL19.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE19                                 0x00080000
#define CPU_SCS_NVIC_IABR0_ACTIVE19_BITN                                    19
#define CPU_SCS_NVIC_IABR0_ACTIVE19_M                               0x00080000
#define CPU_SCS_NVIC_IABR0_ACTIVE19_S                                       19

// Field:    [18] ACTIVE18
//
// Reading 0 from this bit implies that interrupt line 18 is not active.
// Reading 1 from this bit implies that the interrupt line 18 is active (See
// EVENT:CPUIRQSEL18.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE18                                 0x00040000
#define CPU_SCS_NVIC_IABR0_ACTIVE18_BITN                                    18
#define CPU_SCS_NVIC_IABR0_ACTIVE18_M                               0x00040000
#define CPU_SCS_NVIC_IABR0_ACTIVE18_S                                       18

// Field:    [17] ACTIVE17
//
// Reading 0 from this bit implies that interrupt line 17 is not active.
// Reading 1 from this bit implies that the interrupt line 17 is active (See
// EVENT:CPUIRQSEL17.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE17                                 0x00020000
#define CPU_SCS_NVIC_IABR0_ACTIVE17_BITN                                    17
#define CPU_SCS_NVIC_IABR0_ACTIVE17_M                               0x00020000
#define CPU_SCS_NVIC_IABR0_ACTIVE17_S                                       17

// Field:    [16] ACTIVE16
//
// Reading 0 from this bit implies that interrupt line 16 is not active.
// Reading 1 from this bit implies that the interrupt line 16 is active (See
// EVENT:CPUIRQSEL16.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE16                                 0x00010000
#define CPU_SCS_NVIC_IABR0_ACTIVE16_BITN                                    16
#define CPU_SCS_NVIC_IABR0_ACTIVE16_M                               0x00010000
#define CPU_SCS_NVIC_IABR0_ACTIVE16_S                                       16

// Field:    [15] ACTIVE15
//
// Reading 0 from this bit implies that interrupt line 15 is not active.
// Reading 1 from this bit implies that the interrupt line 15 is active (See
// EVENT:CPUIRQSEL15.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE15                                 0x00008000
#define CPU_SCS_NVIC_IABR0_ACTIVE15_BITN                                    15
#define CPU_SCS_NVIC_IABR0_ACTIVE15_M                               0x00008000
#define CPU_SCS_NVIC_IABR0_ACTIVE15_S                                       15

// Field:    [14] ACTIVE14
//
// Reading 0 from this bit implies that interrupt line 14 is not active.
// Reading 1 from this bit implies that the interrupt line 14 is active (See
// EVENT:CPUIRQSEL14.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE14                                 0x00004000
#define CPU_SCS_NVIC_IABR0_ACTIVE14_BITN                                    14
#define CPU_SCS_NVIC_IABR0_ACTIVE14_M                               0x00004000
#define CPU_SCS_NVIC_IABR0_ACTIVE14_S                                       14

// Field:    [13] ACTIVE13
//
// Reading 0 from this bit implies that interrupt line 13 is not active.
// Reading 1 from this bit implies that the interrupt line 13 is active (See
// EVENT:CPUIRQSEL13.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE13                                 0x00002000
#define CPU_SCS_NVIC_IABR0_ACTIVE13_BITN                                    13
#define CPU_SCS_NVIC_IABR0_ACTIVE13_M                               0x00002000
#define CPU_SCS_NVIC_IABR0_ACTIVE13_S                                       13

// Field:    [12] ACTIVE12
//
// Reading 0 from this bit implies that interrupt line 12 is not active.
// Reading 1 from this bit implies that the interrupt line 12 is active (See
// EVENT:CPUIRQSEL12.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE12                                 0x00001000
#define CPU_SCS_NVIC_IABR0_ACTIVE12_BITN                                    12
#define CPU_SCS_NVIC_IABR0_ACTIVE12_M                               0x00001000
#define CPU_SCS_NVIC_IABR0_ACTIVE12_S                                       12

// Field:    [11] ACTIVE11
//
// Reading 0 from this bit implies that interrupt line 11 is not active.
// Reading 1 from this bit implies that the interrupt line 11 is active (See
// EVENT:CPUIRQSEL11.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE11                                 0x00000800
#define CPU_SCS_NVIC_IABR0_ACTIVE11_BITN                                    11
#define CPU_SCS_NVIC_IABR0_ACTIVE11_M                               0x00000800
#define CPU_SCS_NVIC_IABR0_ACTIVE11_S                                       11

// Field:    [10] ACTIVE10
//
// Reading 0 from this bit implies that interrupt line 10 is not active.
// Reading 1 from this bit implies that the interrupt line 10 is active (See
// EVENT:CPUIRQSEL10.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE10                                 0x00000400
#define CPU_SCS_NVIC_IABR0_ACTIVE10_BITN                                    10
#define CPU_SCS_NVIC_IABR0_ACTIVE10_M                               0x00000400
#define CPU_SCS_NVIC_IABR0_ACTIVE10_S                                       10

// Field:     [9] ACTIVE9
//
// Reading 0 from this bit implies that interrupt line 9 is not active. Reading
// 1 from this bit implies that the interrupt line 9 is active (See
// EVENT:CPUIRQSEL9.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE9                                  0x00000200
#define CPU_SCS_NVIC_IABR0_ACTIVE9_BITN                                      9
#define CPU_SCS_NVIC_IABR0_ACTIVE9_M                                0x00000200
#define CPU_SCS_NVIC_IABR0_ACTIVE9_S                                         9

// Field:     [8] ACTIVE8
//
// Reading 0 from this bit implies that interrupt line 8 is not active. Reading
// 1 from this bit implies that the interrupt line 8 is active (See
// EVENT:CPUIRQSEL8.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE8                                  0x00000100
#define CPU_SCS_NVIC_IABR0_ACTIVE8_BITN                                      8
#define CPU_SCS_NVIC_IABR0_ACTIVE8_M                                0x00000100
#define CPU_SCS_NVIC_IABR0_ACTIVE8_S                                         8

// Field:     [7] ACTIVE7
//
// Reading 0 from this bit implies that interrupt line 7 is not active. Reading
// 1 from this bit implies that the interrupt line 7 is active (See
// EVENT:CPUIRQSEL7.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE7                                  0x00000080
#define CPU_SCS_NVIC_IABR0_ACTIVE7_BITN                                      7
#define CPU_SCS_NVIC_IABR0_ACTIVE7_M                                0x00000080
#define CPU_SCS_NVIC_IABR0_ACTIVE7_S                                         7

// Field:     [6] ACTIVE6
//
// Reading 0 from this bit implies that interrupt line 6 is not active. Reading
// 1 from this bit implies that the interrupt line 6 is active (See
// EVENT:CPUIRQSEL6.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE6                                  0x00000040
#define CPU_SCS_NVIC_IABR0_ACTIVE6_BITN                                      6
#define CPU_SCS_NVIC_IABR0_ACTIVE6_M                                0x00000040
#define CPU_SCS_NVIC_IABR0_ACTIVE6_S                                         6

// Field:     [5] ACTIVE5
//
// Reading 0 from this bit implies that interrupt line 5 is not active. Reading
// 1 from this bit implies that the interrupt line 5 is active (See
// EVENT:CPUIRQSEL5.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE5                                  0x00000020
#define CPU_SCS_NVIC_IABR0_ACTIVE5_BITN                                      5
#define CPU_SCS_NVIC_IABR0_ACTIVE5_M                                0x00000020
#define CPU_SCS_NVIC_IABR0_ACTIVE5_S                                         5

// Field:     [4] ACTIVE4
//
// Reading 0 from this bit implies that interrupt line 4 is not active. Reading
// 1 from this bit implies that the interrupt line 4 is active (See
// EVENT:CPUIRQSEL4.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE4                                  0x00000010
#define CPU_SCS_NVIC_IABR0_ACTIVE4_BITN                                      4
#define CPU_SCS_NVIC_IABR0_ACTIVE4_M                                0x00000010
#define CPU_SCS_NVIC_IABR0_ACTIVE4_S                                         4

// Field:     [3] ACTIVE3
//
// Reading 0 from this bit implies that interrupt line 3 is not active. Reading
// 1 from this bit implies that the interrupt line 3 is active (See
// EVENT:CPUIRQSEL3.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE3                                  0x00000008
#define CPU_SCS_NVIC_IABR0_ACTIVE3_BITN                                      3
#define CPU_SCS_NVIC_IABR0_ACTIVE3_M                                0x00000008
#define CPU_SCS_NVIC_IABR0_ACTIVE3_S                                         3

// Field:     [2] ACTIVE2
//
// Reading 0 from this bit implies that interrupt line 2 is not active. Reading
// 1 from this bit implies that the interrupt line 2 is active (See
// EVENT:CPUIRQSEL2.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE2                                  0x00000004
#define CPU_SCS_NVIC_IABR0_ACTIVE2_BITN                                      2
#define CPU_SCS_NVIC_IABR0_ACTIVE2_M                                0x00000004
#define CPU_SCS_NVIC_IABR0_ACTIVE2_S                                         2

// Field:     [1] ACTIVE1
//
// Reading 0 from this bit implies that interrupt line 1 is not active. Reading
// 1 from this bit implies that the interrupt line 1 is active (See
// EVENT:CPUIRQSEL1.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE1                                  0x00000002
#define CPU_SCS_NVIC_IABR0_ACTIVE1_BITN                                      1
#define CPU_SCS_NVIC_IABR0_ACTIVE1_M                                0x00000002
#define CPU_SCS_NVIC_IABR0_ACTIVE1_S                                         1

// Field:     [0] ACTIVE0
//
// Reading 0 from this bit implies that interrupt line 0 is not active. Reading
// 1 from this bit implies that the interrupt line 0 is active (See
// EVENT:CPUIRQSEL0.EV for details).
#define CPU_SCS_NVIC_IABR0_ACTIVE0                                  0x00000001
#define CPU_SCS_NVIC_IABR0_ACTIVE0_BITN                                      0
#define CPU_SCS_NVIC_IABR0_ACTIVE0_M                                0x00000001
#define CPU_SCS_NVIC_IABR0_ACTIVE0_S                                         0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IABR1
//
//*****************************************************************************
// Field:     [1] ACTIVE33
//
// Reading 0 from this bit implies that interrupt line 33 is not active.
// Reading 1 from this bit implies that the interrupt line 33 is active (See
// EVENT:CPUIRQSEL33.EV for details).
#define CPU_SCS_NVIC_IABR1_ACTIVE33                                 0x00000002
#define CPU_SCS_NVIC_IABR1_ACTIVE33_BITN                                     1
#define CPU_SCS_NVIC_IABR1_ACTIVE33_M                               0x00000002
#define CPU_SCS_NVIC_IABR1_ACTIVE33_S                                        1

// Field:     [0] ACTIVE32
//
// Reading 0 from this bit implies that interrupt line 32 is not active.
// Reading 1 from this bit implies that the interrupt line 32 is active (See
// EVENT:CPUIRQSEL32.EV for details).
#define CPU_SCS_NVIC_IABR1_ACTIVE32                                 0x00000001
#define CPU_SCS_NVIC_IABR1_ACTIVE32_BITN                                     0
#define CPU_SCS_NVIC_IABR1_ACTIVE32_M                               0x00000001
#define CPU_SCS_NVIC_IABR1_ACTIVE32_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR0
//
//*****************************************************************************
// Field: [31:24] PRI_3
//
// Priority of interrupt 3 (See EVENT:CPUIRQSEL3.EV for details).
#define CPU_SCS_NVIC_IPR0_PRI_3_W                                            8
#define CPU_SCS_NVIC_IPR0_PRI_3_M                                   0xFF000000
#define CPU_SCS_NVIC_IPR0_PRI_3_S                                           24

// Field: [23:16] PRI_2
//
// Priority of interrupt 2 (See EVENT:CPUIRQSEL2.EV for details).
#define CPU_SCS_NVIC_IPR0_PRI_2_W                                            8
#define CPU_SCS_NVIC_IPR0_PRI_2_M                                   0x00FF0000
#define CPU_SCS_NVIC_IPR0_PRI_2_S                                           16

// Field:  [15:8] PRI_1
//
// Priority of interrupt 1 (See EVENT:CPUIRQSEL1.EV for details).
#define CPU_SCS_NVIC_IPR0_PRI_1_W                                            8
#define CPU_SCS_NVIC_IPR0_PRI_1_M                                   0x0000FF00
#define CPU_SCS_NVIC_IPR0_PRI_1_S                                            8

// Field:   [7:0] PRI_0
//
// Priority of interrupt 0 (See EVENT:CPUIRQSEL0.EV for details).
#define CPU_SCS_NVIC_IPR0_PRI_0_W                                            8
#define CPU_SCS_NVIC_IPR0_PRI_0_M                                   0x000000FF
#define CPU_SCS_NVIC_IPR0_PRI_0_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR1
//
//*****************************************************************************
// Field: [31:24] PRI_7
//
// Priority of interrupt 7 (See EVENT:CPUIRQSEL7.EV for details).
#define CPU_SCS_NVIC_IPR1_PRI_7_W                                            8
#define CPU_SCS_NVIC_IPR1_PRI_7_M                                   0xFF000000
#define CPU_SCS_NVIC_IPR1_PRI_7_S                                           24

// Field: [23:16] PRI_6
//
// Priority of interrupt 6 (See EVENT:CPUIRQSEL6.EV for details).
#define CPU_SCS_NVIC_IPR1_PRI_6_W                                            8
#define CPU_SCS_NVIC_IPR1_PRI_6_M                                   0x00FF0000
#define CPU_SCS_NVIC_IPR1_PRI_6_S                                           16

// Field:  [15:8] PRI_5
//
// Priority of interrupt 5 (See EVENT:CPUIRQSEL5.EV for details).
#define CPU_SCS_NVIC_IPR1_PRI_5_W                                            8
#define CPU_SCS_NVIC_IPR1_PRI_5_M                                   0x0000FF00
#define CPU_SCS_NVIC_IPR1_PRI_5_S                                            8

// Field:   [7:0] PRI_4
//
// Priority of interrupt 4 (See EVENT:CPUIRQSEL4.EV for details).
#define CPU_SCS_NVIC_IPR1_PRI_4_W                                            8
#define CPU_SCS_NVIC_IPR1_PRI_4_M                                   0x000000FF
#define CPU_SCS_NVIC_IPR1_PRI_4_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR2
//
//*****************************************************************************
// Field: [31:24] PRI_11
//
// Priority of interrupt 11 (See EVENT:CPUIRQSEL11.EV for details).
#define CPU_SCS_NVIC_IPR2_PRI_11_W                                           8
#define CPU_SCS_NVIC_IPR2_PRI_11_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR2_PRI_11_S                                          24

// Field: [23:16] PRI_10
//
// Priority of interrupt 10 (See EVENT:CPUIRQSEL10.EV for details).
#define CPU_SCS_NVIC_IPR2_PRI_10_W                                           8
#define CPU_SCS_NVIC_IPR2_PRI_10_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR2_PRI_10_S                                          16

// Field:  [15:8] PRI_9
//
// Priority of interrupt 9 (See EVENT:CPUIRQSEL9.EV for details).
#define CPU_SCS_NVIC_IPR2_PRI_9_W                                            8
#define CPU_SCS_NVIC_IPR2_PRI_9_M                                   0x0000FF00
#define CPU_SCS_NVIC_IPR2_PRI_9_S                                            8

// Field:   [7:0] PRI_8
//
// Priority of interrupt 8 (See EVENT:CPUIRQSEL8.EV for details).
#define CPU_SCS_NVIC_IPR2_PRI_8_W                                            8
#define CPU_SCS_NVIC_IPR2_PRI_8_M                                   0x000000FF
#define CPU_SCS_NVIC_IPR2_PRI_8_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR3
//
//*****************************************************************************
// Field: [31:24] PRI_15
//
// Priority of interrupt 15 (See EVENT:CPUIRQSEL15.EV for details).
#define CPU_SCS_NVIC_IPR3_PRI_15_W                                           8
#define CPU_SCS_NVIC_IPR3_PRI_15_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR3_PRI_15_S                                          24

// Field: [23:16] PRI_14
//
// Priority of interrupt 14 (See EVENT:CPUIRQSEL14.EV for details).
#define CPU_SCS_NVIC_IPR3_PRI_14_W                                           8
#define CPU_SCS_NVIC_IPR3_PRI_14_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR3_PRI_14_S                                          16

// Field:  [15:8] PRI_13
//
// Priority of interrupt 13 (See EVENT:CPUIRQSEL13.EV for details).
#define CPU_SCS_NVIC_IPR3_PRI_13_W                                           8
#define CPU_SCS_NVIC_IPR3_PRI_13_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR3_PRI_13_S                                           8

// Field:   [7:0] PRI_12
//
// Priority of interrupt 12 (See EVENT:CPUIRQSEL12.EV for details).
#define CPU_SCS_NVIC_IPR3_PRI_12_W                                           8
#define CPU_SCS_NVIC_IPR3_PRI_12_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR3_PRI_12_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR4
//
//*****************************************************************************
// Field: [31:24] PRI_19
//
// Priority of interrupt 19 (See EVENT:CPUIRQSEL19.EV for details).
#define CPU_SCS_NVIC_IPR4_PRI_19_W                                           8
#define CPU_SCS_NVIC_IPR4_PRI_19_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR4_PRI_19_S                                          24

// Field: [23:16] PRI_18
//
// Priority of interrupt 18 (See EVENT:CPUIRQSEL18.EV for details).
#define CPU_SCS_NVIC_IPR4_PRI_18_W                                           8
#define CPU_SCS_NVIC_IPR4_PRI_18_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR4_PRI_18_S                                          16

// Field:  [15:8] PRI_17
//
// Priority of interrupt 17 (See EVENT:CPUIRQSEL17.EV for details).
#define CPU_SCS_NVIC_IPR4_PRI_17_W                                           8
#define CPU_SCS_NVIC_IPR4_PRI_17_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR4_PRI_17_S                                           8

// Field:   [7:0] PRI_16
//
// Priority of interrupt 16 (See EVENT:CPUIRQSEL16.EV for details).
#define CPU_SCS_NVIC_IPR4_PRI_16_W                                           8
#define CPU_SCS_NVIC_IPR4_PRI_16_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR4_PRI_16_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR5
//
//*****************************************************************************
// Field: [31:24] PRI_23
//
// Priority of interrupt 23 (See EVENT:CPUIRQSEL23.EV for details).
#define CPU_SCS_NVIC_IPR5_PRI_23_W                                           8
#define CPU_SCS_NVIC_IPR5_PRI_23_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR5_PRI_23_S                                          24

// Field: [23:16] PRI_22
//
// Priority of interrupt 22 (See EVENT:CPUIRQSEL22.EV for details).
#define CPU_SCS_NVIC_IPR5_PRI_22_W                                           8
#define CPU_SCS_NVIC_IPR5_PRI_22_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR5_PRI_22_S                                          16

// Field:  [15:8] PRI_21
//
// Priority of interrupt 21 (See EVENT:CPUIRQSEL21.EV for details).
#define CPU_SCS_NVIC_IPR5_PRI_21_W                                           8
#define CPU_SCS_NVIC_IPR5_PRI_21_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR5_PRI_21_S                                           8

// Field:   [7:0] PRI_20
//
// Priority of interrupt 20 (See EVENT:CPUIRQSEL20.EV for details).
#define CPU_SCS_NVIC_IPR5_PRI_20_W                                           8
#define CPU_SCS_NVIC_IPR5_PRI_20_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR5_PRI_20_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR6
//
//*****************************************************************************
// Field: [31:24] PRI_27
//
// Priority of interrupt 27 (See EVENT:CPUIRQSEL27.EV for details).
#define CPU_SCS_NVIC_IPR6_PRI_27_W                                           8
#define CPU_SCS_NVIC_IPR6_PRI_27_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR6_PRI_27_S                                          24

// Field: [23:16] PRI_26
//
// Priority of interrupt 26 (See EVENT:CPUIRQSEL26.EV for details).
#define CPU_SCS_NVIC_IPR6_PRI_26_W                                           8
#define CPU_SCS_NVIC_IPR6_PRI_26_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR6_PRI_26_S                                          16

// Field:  [15:8] PRI_25
//
// Priority of interrupt 25 (See EVENT:CPUIRQSEL25.EV for details).
#define CPU_SCS_NVIC_IPR6_PRI_25_W                                           8
#define CPU_SCS_NVIC_IPR6_PRI_25_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR6_PRI_25_S                                           8

// Field:   [7:0] PRI_24
//
// Priority of interrupt 24 (See EVENT:CPUIRQSEL24.EV for details).
#define CPU_SCS_NVIC_IPR6_PRI_24_W                                           8
#define CPU_SCS_NVIC_IPR6_PRI_24_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR6_PRI_24_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR7
//
//*****************************************************************************
// Field: [31:24] PRI_31
//
// Priority of interrupt 31 (See EVENT:CPUIRQSEL31.EV for details).
#define CPU_SCS_NVIC_IPR7_PRI_31_W                                           8
#define CPU_SCS_NVIC_IPR7_PRI_31_M                                  0xFF000000
#define CPU_SCS_NVIC_IPR7_PRI_31_S                                          24

// Field: [23:16] PRI_30
//
// Priority of interrupt 30 (See EVENT:CPUIRQSEL30.EV for details).
#define CPU_SCS_NVIC_IPR7_PRI_30_W                                           8
#define CPU_SCS_NVIC_IPR7_PRI_30_M                                  0x00FF0000
#define CPU_SCS_NVIC_IPR7_PRI_30_S                                          16

// Field:  [15:8] PRI_29
//
// Priority of interrupt 29 (See EVENT:CPUIRQSEL29.EV for details).
#define CPU_SCS_NVIC_IPR7_PRI_29_W                                           8
#define CPU_SCS_NVIC_IPR7_PRI_29_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR7_PRI_29_S                                           8

// Field:   [7:0] PRI_28
//
// Priority of interrupt 28 (See EVENT:CPUIRQSEL28.EV for details).
#define CPU_SCS_NVIC_IPR7_PRI_28_W                                           8
#define CPU_SCS_NVIC_IPR7_PRI_28_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR7_PRI_28_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_NVIC_IPR8
//
//*****************************************************************************
// Field:  [15:8] PRI_33
//
// Priority of interrupt 33 (See EVENT:CPUIRQSEL33.EV for details).
#define CPU_SCS_NVIC_IPR8_PRI_33_W                                           8
#define CPU_SCS_NVIC_IPR8_PRI_33_M                                  0x0000FF00
#define CPU_SCS_NVIC_IPR8_PRI_33_S                                           8

// Field:   [7:0] PRI_32
//
// Priority of interrupt 32 (See EVENT:CPUIRQSEL32.EV for details).
#define CPU_SCS_NVIC_IPR8_PRI_32_W                                           8
#define CPU_SCS_NVIC_IPR8_PRI_32_M                                  0x000000FF
#define CPU_SCS_NVIC_IPR8_PRI_32_S                                           0

//*****************************************************************************
//
// Register: CPU_SCS_O_CPUID
//
//*****************************************************************************
// Field: [31:24] IMPLEMENTER
//
// Implementor code.
#define CPU_SCS_CPUID_IMPLEMENTER_W                                          8
#define CPU_SCS_CPUID_IMPLEMENTER_M                                 0xFF000000
#define CPU_SCS_CPUID_IMPLEMENTER_S                                         24

// Field: [23:20] VARIANT
//
// Implementation defined variant number.
#define CPU_SCS_CPUID_VARIANT_W                                              4
#define CPU_SCS_CPUID_VARIANT_M                                     0x00F00000
#define CPU_SCS_CPUID_VARIANT_S                                             20

// Field: [19:16] CONSTANT
//
// Reads as 0xF
#define CPU_SCS_CPUID_CONSTANT_W                                             4
#define CPU_SCS_CPUID_CONSTANT_M                                    0x000F0000
#define CPU_SCS_CPUID_CONSTANT_S                                            16

// Field:  [15:4] PARTNO
//
// Number of processor within family.
#define CPU_SCS_CPUID_PARTNO_W                                              12
#define CPU_SCS_CPUID_PARTNO_M                                      0x0000FFF0
#define CPU_SCS_CPUID_PARTNO_S                                               4

// Field:   [3:0] REVISION
//
// Implementation defined revision number.
#define CPU_SCS_CPUID_REVISION_W                                             4
#define CPU_SCS_CPUID_REVISION_M                                    0x0000000F
#define CPU_SCS_CPUID_REVISION_S                                             0

//*****************************************************************************
//
// Register: CPU_SCS_O_ICSR
//
//*****************************************************************************
// Field:    [31] NMIPENDSET
//
// Set pending NMI bit. Setting this bit pends and activates an NMI. Because
// NMI is the highest-priority interrupt, it takes effect as soon as it
// registers.
//
// 0: No action
// 1: Set pending NMI
#define CPU_SCS_ICSR_NMIPENDSET                                     0x80000000
#define CPU_SCS_ICSR_NMIPENDSET_BITN                                        31
#define CPU_SCS_ICSR_NMIPENDSET_M                                   0x80000000
#define CPU_SCS_ICSR_NMIPENDSET_S                                           31

// Field:    [28] PENDSVSET
//
// Set pending pendSV bit.
//
// 0: No action
// 1: Set pending PendSV
#define CPU_SCS_ICSR_PENDSVSET                                      0x10000000
#define CPU_SCS_ICSR_PENDSVSET_BITN                                         28
#define CPU_SCS_ICSR_PENDSVSET_M                                    0x10000000
#define CPU_SCS_ICSR_PENDSVSET_S                                            28

// Field:    [27] PENDSVCLR
//
// Clear pending pendSV bit
//
// 0: No action
// 1: Clear pending pendSV
#define CPU_SCS_ICSR_PENDSVCLR                                      0x08000000
#define CPU_SCS_ICSR_PENDSVCLR_BITN                                         27
#define CPU_SCS_ICSR_PENDSVCLR_M                                    0x08000000
#define CPU_SCS_ICSR_PENDSVCLR_S                                            27

// Field:    [26] PENDSTSET
//
// Set a pending SysTick bit.
//
// 0: No action
// 1: Set pending SysTick
#define CPU_SCS_ICSR_PENDSTSET                                      0x04000000
#define CPU_SCS_ICSR_PENDSTSET_BITN                                         26
#define CPU_SCS_ICSR_PENDSTSET_M                                    0x04000000
#define CPU_SCS_ICSR_PENDSTSET_S                                            26

// Field:    [25] PENDSTCLR
//
// Clear pending SysTick bit
//
// 0: No action
// 1: Clear pending SysTick
#define CPU_SCS_ICSR_PENDSTCLR                                      0x02000000
#define CPU_SCS_ICSR_PENDSTCLR_BITN                                         25
#define CPU_SCS_ICSR_PENDSTCLR_M                                    0x02000000
#define CPU_SCS_ICSR_PENDSTCLR_S                                            25

// Field:    [23] ISRPREEMPT
//
// This field can only be used at debug time. It indicates that a pending
// interrupt is to be taken in the next running cycle. If DHCSR.C_MASKINTS= 0,
// the interrupt is serviced.
//
// 0: A pending exception is not serviced.
// 1: A pending exception is serviced on exit from the debug halt state
#define CPU_SCS_ICSR_ISRPREEMPT                                     0x00800000
#define CPU_SCS_ICSR_ISRPREEMPT_BITN                                        23
#define CPU_SCS_ICSR_ISRPREEMPT_M                                   0x00800000
#define CPU_SCS_ICSR_ISRPREEMPT_S                                           23

// Field:    [22] ISRPENDING
//
// Interrupt pending flag. Excludes NMI and faults.
//
// 0x0: Interrupt not pending
// 0x1: Interrupt pending
#define CPU_SCS_ICSR_ISRPENDING                                     0x00400000
#define CPU_SCS_ICSR_ISRPENDING_BITN                                        22
#define CPU_SCS_ICSR_ISRPENDING_M                                   0x00400000
#define CPU_SCS_ICSR_ISRPENDING_S                                           22

// Field: [17:12] VECTPENDING
//
// Pending ISR number field. This field contains the interrupt number of the
// highest priority pending ISR.
#define CPU_SCS_ICSR_VECTPENDING_W                                           6
#define CPU_SCS_ICSR_VECTPENDING_M                                  0x0003F000
#define CPU_SCS_ICSR_VECTPENDING_S                                          12

// Field:    [11] RETTOBASE
//
// Indicates whether there are preempted active exceptions:
//
// 0: There are preempted active exceptions to execute
// 1: There are no active exceptions, or the currently-executing exception is
// the only active exception.
#define CPU_SCS_ICSR_RETTOBASE                                      0x00000800
#define CPU_SCS_ICSR_RETTOBASE_BITN                                         11
#define CPU_SCS_ICSR_RETTOBASE_M                                    0x00000800
#define CPU_SCS_ICSR_RETTOBASE_S                                            11

// Field:   [8:0] VECTACTIVE
//
// Active ISR number field. Reset clears this field.
#define CPU_SCS_ICSR_VECTACTIVE_W                                            9
#define CPU_SCS_ICSR_VECTACTIVE_M                                   0x000001FF
#define CPU_SCS_ICSR_VECTACTIVE_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_VTOR
//
//*****************************************************************************
// Field:  [29:7] TBLOFF
//
// Bits 29 down to 7 of the vector table base offset.
#define CPU_SCS_VTOR_TBLOFF_W                                               23
#define CPU_SCS_VTOR_TBLOFF_M                                       0x3FFFFF80
#define CPU_SCS_VTOR_TBLOFF_S                                                7

//*****************************************************************************
//
// Register: CPU_SCS_O_AIRCR
//
//*****************************************************************************
// Field: [31:16] VECTKEY
//
// Register key. Writing to this register (AIRCR) requires 0x05FA in VECTKEY.
// Otherwise the write value is ignored. Read always returns 0xFA05.
#define CPU_SCS_AIRCR_VECTKEY_W                                             16
#define CPU_SCS_AIRCR_VECTKEY_M                                     0xFFFF0000
#define CPU_SCS_AIRCR_VECTKEY_S                                             16

// Field:    [15] ENDIANESS
//
// Data endianness bit
// ENUMs:
// BIG                      Big endian
// LITTLE                   Little endian
#define CPU_SCS_AIRCR_ENDIANESS                                     0x00008000
#define CPU_SCS_AIRCR_ENDIANESS_BITN                                        15
#define CPU_SCS_AIRCR_ENDIANESS_M                                   0x00008000
#define CPU_SCS_AIRCR_ENDIANESS_S                                           15
#define CPU_SCS_AIRCR_ENDIANESS_BIG                                 0x00008000
#define CPU_SCS_AIRCR_ENDIANESS_LITTLE                              0x00000000

// Field:  [10:8] PRIGROUP
//
// Interrupt priority grouping field. This field is a binary point position
// indicator for creating subpriorities for exceptions that share the same
// pre-emption level. It divides the PRI_n field in the Interrupt Priority
// Registers (NVIC_IPR0, NVIC_IPR1,..., and  NVIC_IPR8) into a pre-emption
// level and a subpriority level. The binary point is a left-of value. This
// means that the PRIGROUP value represents a point starting at the left of the
// Least Significant Bit (LSB). The lowest value might not be 0 depending on
// the number of bits allocated for priorities, and implementation choices.
#define CPU_SCS_AIRCR_PRIGROUP_W                                             3
#define CPU_SCS_AIRCR_PRIGROUP_M                                    0x00000700
#define CPU_SCS_AIRCR_PRIGROUP_S                                             8

// Field:     [2] SYSRESETREQ
//
// Requests a warm reset. Setting this bit does not prevent Halting Debug from
// running.
#define CPU_SCS_AIRCR_SYSRESETREQ                                   0x00000004
#define CPU_SCS_AIRCR_SYSRESETREQ_BITN                                       2
#define CPU_SCS_AIRCR_SYSRESETREQ_M                                 0x00000004
#define CPU_SCS_AIRCR_SYSRESETREQ_S                                          2

// Field:     [1] VECTCLRACTIVE
//
// Clears all active state information for active NMI, fault, and interrupts.
// It is the responsibility of the application to reinitialize the stack. This
// bit is for returning to a known state during debug. The bit self-clears.
// IPSR is not cleared by this operation. So, if used by an application, it
// must only be used at the base level of activation, or within a system
// handler whose active bit can be set.
#define CPU_SCS_AIRCR_VECTCLRACTIVE                                 0x00000002
#define CPU_SCS_AIRCR_VECTCLRACTIVE_BITN                                     1
#define CPU_SCS_AIRCR_VECTCLRACTIVE_M                               0x00000002
#define CPU_SCS_AIRCR_VECTCLRACTIVE_S                                        1

// Field:     [0] VECTRESET
//
// System Reset bit. Resets the system, with the exception of debug components.
// This bit is reserved for debug use and can be written to 1 only when the
// core is halted. The bit self-clears. Writing this bit to 1 while core is not
// halted may result in unpredictable behavior.
#define CPU_SCS_AIRCR_VECTRESET                                     0x00000001
#define CPU_SCS_AIRCR_VECTRESET_BITN                                         0
#define CPU_SCS_AIRCR_VECTRESET_M                                   0x00000001
#define CPU_SCS_AIRCR_VECTRESET_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_SCR
//
//*****************************************************************************
// Field:     [4] SEVONPEND
//
// Send Event on Pending bit:
//
// 0: Only enabled interrupts or events can wakeup the processor, disabled
// interrupts are excluded
// 1: Enabled events and all interrupts, including disabled interrupts, can
// wakeup the processor.
//
// When an event or interrupt enters pending state, the event signal wakes up
// the processor from WFE. If
// the processor is not waiting for an event, the event is registered and
// affects the next WFE.
// The processor also wakes up on execution of an SEV instruction.
#define CPU_SCS_SCR_SEVONPEND                                       0x00000010
#define CPU_SCS_SCR_SEVONPEND_BITN                                           4
#define CPU_SCS_SCR_SEVONPEND_M                                     0x00000010
#define CPU_SCS_SCR_SEVONPEND_S                                              4

// Field:     [2] SLEEPDEEP
//
// Controls whether the processor uses sleep or deep sleep as its low power
// mode
// ENUMs:
// DEEPSLEEP                Deep sleep
// SLEEP                    Sleep
#define CPU_SCS_SCR_SLEEPDEEP                                       0x00000004
#define CPU_SCS_SCR_SLEEPDEEP_BITN                                           2
#define CPU_SCS_SCR_SLEEPDEEP_M                                     0x00000004
#define CPU_SCS_SCR_SLEEPDEEP_S                                              2
#define CPU_SCS_SCR_SLEEPDEEP_DEEPSLEEP                             0x00000004
#define CPU_SCS_SCR_SLEEPDEEP_SLEEP                                 0x00000000

// Field:     [1] SLEEPONEXIT
//
// Sleep on exit when returning from Handler mode to Thread mode. Enables
// interrupt driven applications to avoid returning to empty main application.
//
// 0: Do not sleep when returning to thread mode
// 1: Sleep on ISR exit
#define CPU_SCS_SCR_SLEEPONEXIT                                     0x00000002
#define CPU_SCS_SCR_SLEEPONEXIT_BITN                                         1
#define CPU_SCS_SCR_SLEEPONEXIT_M                                   0x00000002
#define CPU_SCS_SCR_SLEEPONEXIT_S                                            1

//*****************************************************************************
//
// Register: CPU_SCS_O_CCR
//
//*****************************************************************************
// Field:     [9] STKALIGN
//
// Stack alignment bit.
//
// 0: Only 4-byte alignment is guaranteed for the SP used prior to the
// exception on exception entry.
// 1: On exception entry, the SP used prior to the exception is adjusted to be
// 8-byte aligned and the context to restore it is saved. The SP is restored on
// the associated exception return.
#define CPU_SCS_CCR_STKALIGN                                        0x00000200
#define CPU_SCS_CCR_STKALIGN_BITN                                            9
#define CPU_SCS_CCR_STKALIGN_M                                      0x00000200
#define CPU_SCS_CCR_STKALIGN_S                                               9

// Field:     [8] BFHFNMIGN
//
// Enables handlers with priority -1 or -2 to ignore data BusFaults caused by
// load and store instructions. This applies to the HardFault, NMI, and
// FAULTMASK escalated handlers:
//
// 0: Data BusFaults caused by load and store instructions cause a lock-up
// 1: Data BusFaults caused by load and store instructions are ignored.
//
// Set this bit to 1 only when the handler and its data are in absolutely safe
// memory. The normal use
// of this bit is to probe system devices and bridges to detect problems.
#define CPU_SCS_CCR_BFHFNMIGN                                       0x00000100
#define CPU_SCS_CCR_BFHFNMIGN_BITN                                           8
#define CPU_SCS_CCR_BFHFNMIGN_M                                     0x00000100
#define CPU_SCS_CCR_BFHFNMIGN_S                                              8

// Field:     [4] DIV_0_TRP
//
// Enables faulting or halting when the processor executes an SDIV or UDIV
// instruction with a divisor of 0:
//
// 0: Do not trap divide by 0. In this mode, a divide by zero returns a
// quotient of 0.
// 1: Trap divide by 0. The relevant Usage Fault Status Register bit is
// CFSR.DIVBYZERO.
#define CPU_SCS_CCR_DIV_0_TRP                                       0x00000010
#define CPU_SCS_CCR_DIV_0_TRP_BITN                                           4
#define CPU_SCS_CCR_DIV_0_TRP_M                                     0x00000010
#define CPU_SCS_CCR_DIV_0_TRP_S                                              4

// Field:     [3] UNALIGN_TRP
//
// Enables unaligned access traps:
//
// 0: Do not trap unaligned halfword and word accesses
// 1: Trap unaligned halfword and word accesses. The relevant Usage Fault
// Status Register bit is CFSR.UNALIGNED.
//
// If this bit is set to 1, an unaligned access generates a UsageFault.
// Unaligned LDM, STM, LDRD, and STRD instructions always fault regardless of
// the value in UNALIGN_TRP.
#define CPU_SCS_CCR_UNALIGN_TRP                                     0x00000008
#define CPU_SCS_CCR_UNALIGN_TRP_BITN                                         3
#define CPU_SCS_CCR_UNALIGN_TRP_M                                   0x00000008
#define CPU_SCS_CCR_UNALIGN_TRP_S                                            3

// Field:     [1] USERSETMPEND
//
// Enables unprivileged software access to STIR:
//
// 0: User code is not allowed to write to the Software Trigger Interrupt
// register (STIR).
// 1: User code can write the Software Trigger Interrupt register (STIR) to
// trigger (pend) a Main exception, which is associated with the Main stack
// pointer.
#define CPU_SCS_CCR_USERSETMPEND                                    0x00000002
#define CPU_SCS_CCR_USERSETMPEND_BITN                                        1
#define CPU_SCS_CCR_USERSETMPEND_M                                  0x00000002
#define CPU_SCS_CCR_USERSETMPEND_S                                           1

// Field:     [0] NONBASETHREDENA
//
// Indicates how the processor enters Thread mode:
//
// 0: Processor can enter Thread mode only when no exception is active.
// 1: Processor can enter Thread mode from any level using the appropriate
// return value (EXC_RETURN).
//
// Exception returns occur when one of the following instructions loads a value
// of 0xFXXXXXXX into the PC while in Handler mode:
// - POP/LDM which includes loading the PC.
// - LDR with PC as a destination.
// - BX with any register.
// The value written to the PC is intercepted and is referred to as the
// EXC_RETURN value.
#define CPU_SCS_CCR_NONBASETHREDENA                                 0x00000001
#define CPU_SCS_CCR_NONBASETHREDENA_BITN                                     0
#define CPU_SCS_CCR_NONBASETHREDENA_M                               0x00000001
#define CPU_SCS_CCR_NONBASETHREDENA_S                                        0

//*****************************************************************************
//
// Register: CPU_SCS_O_SHPR1
//
//*****************************************************************************
// Field: [23:16] PRI_6
//
// Priority of system handler 6. UsageFault
#define CPU_SCS_SHPR1_PRI_6_W                                                8
#define CPU_SCS_SHPR1_PRI_6_M                                       0x00FF0000
#define CPU_SCS_SHPR1_PRI_6_S                                               16

// Field:  [15:8] PRI_5
//
// Priority of system handler 5: BusFault
#define CPU_SCS_SHPR1_PRI_5_W                                                8
#define CPU_SCS_SHPR1_PRI_5_M                                       0x0000FF00
#define CPU_SCS_SHPR1_PRI_5_S                                                8

// Field:   [7:0] PRI_4
//
// Priority of system handler 4: MemManage
#define CPU_SCS_SHPR1_PRI_4_W                                                8
#define CPU_SCS_SHPR1_PRI_4_M                                       0x000000FF
#define CPU_SCS_SHPR1_PRI_4_S                                                0

//*****************************************************************************
//
// Register: CPU_SCS_O_SHPR2
//
//*****************************************************************************
// Field: [31:24] PRI_11
//
// Priority of system handler 11. SVCall
#define CPU_SCS_SHPR2_PRI_11_W                                               8
#define CPU_SCS_SHPR2_PRI_11_M                                      0xFF000000
#define CPU_SCS_SHPR2_PRI_11_S                                              24

//*****************************************************************************
//
// Register: CPU_SCS_O_SHPR3
//
//*****************************************************************************
// Field: [31:24] PRI_15
//
// Priority of system handler 15. SysTick exception
#define CPU_SCS_SHPR3_PRI_15_W                                               8
#define CPU_SCS_SHPR3_PRI_15_M                                      0xFF000000
#define CPU_SCS_SHPR3_PRI_15_S                                              24

// Field: [23:16] PRI_14
//
// Priority of system handler 14. Pend SV
#define CPU_SCS_SHPR3_PRI_14_W                                               8
#define CPU_SCS_SHPR3_PRI_14_M                                      0x00FF0000
#define CPU_SCS_SHPR3_PRI_14_S                                              16

// Field:   [7:0] PRI_12
//
// Priority of system handler 12. Debug Monitor
#define CPU_SCS_SHPR3_PRI_12_W                                               8
#define CPU_SCS_SHPR3_PRI_12_M                                      0x000000FF
#define CPU_SCS_SHPR3_PRI_12_S                                               0

//*****************************************************************************
//
// Register: CPU_SCS_O_SHCSR
//
//*****************************************************************************
// Field:    [18] USGFAULTENA
//
// Usage fault system handler enable
// ENUMs:
// EN                       Exception enabled
// DIS                      Exception disabled
#define CPU_SCS_SHCSR_USGFAULTENA                                   0x00040000
#define CPU_SCS_SHCSR_USGFAULTENA_BITN                                      18
#define CPU_SCS_SHCSR_USGFAULTENA_M                                 0x00040000
#define CPU_SCS_SHCSR_USGFAULTENA_S                                         18
#define CPU_SCS_SHCSR_USGFAULTENA_EN                                0x00040000
#define CPU_SCS_SHCSR_USGFAULTENA_DIS                               0x00000000

// Field:    [17] BUSFAULTENA
//
// Bus fault system handler enable
// ENUMs:
// EN                       Exception enabled
// DIS                      Exception disabled
#define CPU_SCS_SHCSR_BUSFAULTENA                                   0x00020000
#define CPU_SCS_SHCSR_BUSFAULTENA_BITN                                      17
#define CPU_SCS_SHCSR_BUSFAULTENA_M                                 0x00020000
#define CPU_SCS_SHCSR_BUSFAULTENA_S                                         17
#define CPU_SCS_SHCSR_BUSFAULTENA_EN                                0x00020000
#define CPU_SCS_SHCSR_BUSFAULTENA_DIS                               0x00000000

// Field:    [16] MEMFAULTENA
//
// MemManage fault system handler enable
// ENUMs:
// EN                       Exception enabled
// DIS                      Exception disabled
#define CPU_SCS_SHCSR_MEMFAULTENA                                   0x00010000
#define CPU_SCS_SHCSR_MEMFAULTENA_BITN                                      16
#define CPU_SCS_SHCSR_MEMFAULTENA_M                                 0x00010000
#define CPU_SCS_SHCSR_MEMFAULTENA_S                                         16
#define CPU_SCS_SHCSR_MEMFAULTENA_EN                                0x00010000
#define CPU_SCS_SHCSR_MEMFAULTENA_DIS                               0x00000000

// Field:    [15] SVCALLPENDED
//
// SVCall pending
// ENUMs:
// PENDING                  Exception is pending.
// NOTPENDING               Exception is not active
#define CPU_SCS_SHCSR_SVCALLPENDED                                  0x00008000
#define CPU_SCS_SHCSR_SVCALLPENDED_BITN                                     15
#define CPU_SCS_SHCSR_SVCALLPENDED_M                                0x00008000
#define CPU_SCS_SHCSR_SVCALLPENDED_S                                        15
#define CPU_SCS_SHCSR_SVCALLPENDED_PENDING                          0x00008000
#define CPU_SCS_SHCSR_SVCALLPENDED_NOTPENDING                       0x00000000

// Field:    [14] BUSFAULTPENDED
//
// BusFault pending
// ENUMs:
// PENDING                  Exception is pending.
// NOTPENDING               Exception is not active
#define CPU_SCS_SHCSR_BUSFAULTPENDED                                0x00004000
#define CPU_SCS_SHCSR_BUSFAULTPENDED_BITN                                   14
#define CPU_SCS_SHCSR_BUSFAULTPENDED_M                              0x00004000
#define CPU_SCS_SHCSR_BUSFAULTPENDED_S                                      14
#define CPU_SCS_SHCSR_BUSFAULTPENDED_PENDING                        0x00004000
#define CPU_SCS_SHCSR_BUSFAULTPENDED_NOTPENDING                     0x00000000

// Field:    [13] MEMFAULTPENDED
//
// MemManage exception pending
// ENUMs:
// PENDING                  Exception is pending.
// NOTPENDING               Exception is not active
#define CPU_SCS_SHCSR_MEMFAULTPENDED                                0x00002000
#define CPU_SCS_SHCSR_MEMFAULTPENDED_BITN                                   13
#define CPU_SCS_SHCSR_MEMFAULTPENDED_M                              0x00002000
#define CPU_SCS_SHCSR_MEMFAULTPENDED_S                                      13
#define CPU_SCS_SHCSR_MEMFAULTPENDED_PENDING                        0x00002000
#define CPU_SCS_SHCSR_MEMFAULTPENDED_NOTPENDING                     0x00000000

// Field:    [12] USGFAULTPENDED
//
// Usage fault pending
// ENUMs:
// PENDING                  Exception is pending.
// NOTPENDING               Exception is not active
#define CPU_SCS_SHCSR_USGFAULTPENDED                                0x00001000
#define CPU_SCS_SHCSR_USGFAULTPENDED_BITN                                   12
#define CPU_SCS_SHCSR_USGFAULTPENDED_M                              0x00001000
#define CPU_SCS_SHCSR_USGFAULTPENDED_S                                      12
#define CPU_SCS_SHCSR_USGFAULTPENDED_PENDING                        0x00001000
#define CPU_SCS_SHCSR_USGFAULTPENDED_NOTPENDING                     0x00000000

// Field:    [11] SYSTICKACT
//
// SysTick active flag.
//
// 0x0: Not active
// 0x1: Active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_SYSTICKACT                                    0x00000800
#define CPU_SCS_SHCSR_SYSTICKACT_BITN                                       11
#define CPU_SCS_SHCSR_SYSTICKACT_M                                  0x00000800
#define CPU_SCS_SHCSR_SYSTICKACT_S                                          11
#define CPU_SCS_SHCSR_SYSTICKACT_ACTIVE                             0x00000800
#define CPU_SCS_SHCSR_SYSTICKACT_NOTACTIVE                          0x00000000

// Field:    [10] PENDSVACT
//
// PendSV active
//
// 0x0: Not active
// 0x1: Active
#define CPU_SCS_SHCSR_PENDSVACT                                     0x00000400
#define CPU_SCS_SHCSR_PENDSVACT_BITN                                        10
#define CPU_SCS_SHCSR_PENDSVACT_M                                   0x00000400
#define CPU_SCS_SHCSR_PENDSVACT_S                                           10

// Field:     [8] MONITORACT
//
// Debug monitor active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_MONITORACT                                    0x00000100
#define CPU_SCS_SHCSR_MONITORACT_BITN                                        8
#define CPU_SCS_SHCSR_MONITORACT_M                                  0x00000100
#define CPU_SCS_SHCSR_MONITORACT_S                                           8
#define CPU_SCS_SHCSR_MONITORACT_ACTIVE                             0x00000100
#define CPU_SCS_SHCSR_MONITORACT_NOTACTIVE                          0x00000000

// Field:     [7] SVCALLACT
//
// SVCall active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_SVCALLACT                                     0x00000080
#define CPU_SCS_SHCSR_SVCALLACT_BITN                                         7
#define CPU_SCS_SHCSR_SVCALLACT_M                                   0x00000080
#define CPU_SCS_SHCSR_SVCALLACT_S                                            7
#define CPU_SCS_SHCSR_SVCALLACT_ACTIVE                              0x00000080
#define CPU_SCS_SHCSR_SVCALLACT_NOTACTIVE                           0x00000000

// Field:     [3] USGFAULTACT
//
// UsageFault exception active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_USGFAULTACT                                   0x00000008
#define CPU_SCS_SHCSR_USGFAULTACT_BITN                                       3
#define CPU_SCS_SHCSR_USGFAULTACT_M                                 0x00000008
#define CPU_SCS_SHCSR_USGFAULTACT_S                                          3
#define CPU_SCS_SHCSR_USGFAULTACT_ACTIVE                            0x00000008
#define CPU_SCS_SHCSR_USGFAULTACT_NOTACTIVE                         0x00000000

// Field:     [1] BUSFAULTACT
//
// BusFault exception active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_BUSFAULTACT                                   0x00000002
#define CPU_SCS_SHCSR_BUSFAULTACT_BITN                                       1
#define CPU_SCS_SHCSR_BUSFAULTACT_M                                 0x00000002
#define CPU_SCS_SHCSR_BUSFAULTACT_S                                          1
#define CPU_SCS_SHCSR_BUSFAULTACT_ACTIVE                            0x00000002
#define CPU_SCS_SHCSR_BUSFAULTACT_NOTACTIVE                         0x00000000

// Field:     [0] MEMFAULTACT
//
// MemManage exception active
// ENUMs:
// ACTIVE                   Exception is active
// NOTACTIVE                Exception is not active
#define CPU_SCS_SHCSR_MEMFAULTACT                                   0x00000001
#define CPU_SCS_SHCSR_MEMFAULTACT_BITN                                       0
#define CPU_SCS_SHCSR_MEMFAULTACT_M                                 0x00000001
#define CPU_SCS_SHCSR_MEMFAULTACT_S                                          0
#define CPU_SCS_SHCSR_MEMFAULTACT_ACTIVE                            0x00000001
#define CPU_SCS_SHCSR_MEMFAULTACT_NOTACTIVE                         0x00000000

//*****************************************************************************
//
// Register: CPU_SCS_O_CFSR
//
//*****************************************************************************
// Field:    [25] DIVBYZERO
//
// When CCR.DIV_0_TRP (see Configuration Control Register on page 8-26) is
// enabled and an SDIV or UDIV instruction is used with a divisor of 0, this
// fault occurs The instruction is executed and the return PC points to it. If
// CCR.DIV_0_TRP is not set, then the divide returns a quotient of 0.
#define CPU_SCS_CFSR_DIVBYZERO                                      0x02000000
#define CPU_SCS_CFSR_DIVBYZERO_BITN                                         25
#define CPU_SCS_CFSR_DIVBYZERO_M                                    0x02000000
#define CPU_SCS_CFSR_DIVBYZERO_S                                            25

// Field:    [24] UNALIGNED
//
// When CCR.UNALIGN_TRP is enabled, and there is an attempt to make an
// unaligned memory access, then this fault occurs. Unaligned LDM/STM/LDRD/STRD
// instructions always fault irrespective of the setting of CCR.UNALIGN_TRP.
#define CPU_SCS_CFSR_UNALIGNED                                      0x01000000
#define CPU_SCS_CFSR_UNALIGNED_BITN                                         24
#define CPU_SCS_CFSR_UNALIGNED_M                                    0x01000000
#define CPU_SCS_CFSR_UNALIGNED_S                                            24

// Field:    [19] NOCP
//
// Attempt to use a coprocessor instruction. The processor does not support
// coprocessor instructions.
#define CPU_SCS_CFSR_NOCP                                           0x00080000
#define CPU_SCS_CFSR_NOCP_BITN                                              19
#define CPU_SCS_CFSR_NOCP_M                                         0x00080000
#define CPU_SCS_CFSR_NOCP_S                                                 19

// Field:    [18] INVPC
//
// Attempt to load EXC_RETURN into PC illegally. Invalid instruction, invalid
// context, invalid value. The return PC points to the instruction that tried
// to set the PC.
#define CPU_SCS_CFSR_INVPC                                          0x00040000
#define CPU_SCS_CFSR_INVPC_BITN                                             18
#define CPU_SCS_CFSR_INVPC_M                                        0x00040000
#define CPU_SCS_CFSR_INVPC_S                                                18

// Field:    [17] INVSTATE
//
// Indicates an attempt to execute in an invalid EPSR state (e.g. after a BX
// type instruction has changed state). This includes state change after entry
// to or return from exception, as well as from inter-working instructions.
// Return PC points to faulting instruction, with the invalid state.
#define CPU_SCS_CFSR_INVSTATE                                       0x00020000
#define CPU_SCS_CFSR_INVSTATE_BITN                                          17
#define CPU_SCS_CFSR_INVSTATE_M                                     0x00020000
#define CPU_SCS_CFSR_INVSTATE_S                                             17

// Field:    [16] UNDEFINSTR
//
// This bit is set when the processor attempts to execute an undefined
// instruction. This is an instruction that the processor cannot decode. The
// return PC points to the undefined instruction.
#define CPU_SCS_CFSR_UNDEFINSTR                                     0x00010000
#define CPU_SCS_CFSR_UNDEFINSTR_BITN                                        16
#define CPU_SCS_CFSR_UNDEFINSTR_M                                   0x00010000
#define CPU_SCS_CFSR_UNDEFINSTR_S                                           16

// Field:    [15] BFARVALID
//
// This bit is set if the Bus Fault Address Register (BFAR) contains a valid
// address. This is true after a bus fault where the address is known. Other
// faults can clear this bit, such as a Mem Manage fault occurring later. If a
// Bus fault occurs that is escalated to a Hard Fault because of priority, the
// Hard Fault handler must clear this bit. This prevents problems if returning
// to a stacked active Bus fault handler whose BFAR value has been overwritten.
#define CPU_SCS_CFSR_BFARVALID                                      0x00008000
#define CPU_SCS_CFSR_BFARVALID_BITN                                         15
#define CPU_SCS_CFSR_BFARVALID_M                                    0x00008000
#define CPU_SCS_CFSR_BFARVALID_S                                            15

// Field:    [12] STKERR
//
// Stacking from exception has caused one or more bus faults. The SP is still
// adjusted and the values in the context area on the stack might be incorrect.
// BFAR is not written.
#define CPU_SCS_CFSR_STKERR                                         0x00001000
#define CPU_SCS_CFSR_STKERR_BITN                                            12
#define CPU_SCS_CFSR_STKERR_M                                       0x00001000
#define CPU_SCS_CFSR_STKERR_S                                               12

// Field:    [11] UNSTKERR
//
// Unstack from exception return has caused one or more bus faults. This is
// chained to the handler, so that the original return stack is still present.
// SP is not adjusted from failing return and new save is not performed. BFAR
// is not written.
#define CPU_SCS_CFSR_UNSTKERR                                       0x00000800
#define CPU_SCS_CFSR_UNSTKERR_BITN                                          11
#define CPU_SCS_CFSR_UNSTKERR_M                                     0x00000800
#define CPU_SCS_CFSR_UNSTKERR_S                                             11

// Field:    [10] IMPRECISERR
//
// Imprecise data bus error. It is a BusFault, but the Return PC is not related
// to the causing instruction. This is not a synchronous fault. So, if detected
// when the priority of the current activation is higher than the Bus Fault, it
// only pends. Bus fault activates when returning to a lower priority
// activation. If a precise fault occurs before returning to a lower priority
// exception, the handler detects both IMPRECISERR set and one of the precise
// fault status bits set at the same time. BFAR is not written.
#define CPU_SCS_CFSR_IMPRECISERR                                    0x00000400
#define CPU_SCS_CFSR_IMPRECISERR_BITN                                       10
#define CPU_SCS_CFSR_IMPRECISERR_M                                  0x00000400
#define CPU_SCS_CFSR_IMPRECISERR_S                                          10

// Field:     [9] PRECISERR
//
// Precise data bus error return.
#define CPU_SCS_CFSR_PRECISERR                                      0x00000200
#define CPU_SCS_CFSR_PRECISERR_BITN                                          9
#define CPU_SCS_CFSR_PRECISERR_M                                    0x00000200
#define CPU_SCS_CFSR_PRECISERR_S                                             9

// Field:     [8] IBUSERR
//
// Instruction bus error flag. This flag is set by a prefetch error. The fault
// stops on the instruction, so if the error occurs under a branch shadow, no
// fault occurs. BFAR is not written.
#define CPU_SCS_CFSR_IBUSERR                                        0x00000100
#define CPU_SCS_CFSR_IBUSERR_BITN                                            8
#define CPU_SCS_CFSR_IBUSERR_M                                      0x00000100
#define CPU_SCS_CFSR_IBUSERR_S                                               8

// Field:     [7] MMARVALID
//
// Memory Manage Address Register (MMFAR) address valid flag. A later-arriving
// fault, such as a bus fault, can clear a memory manage fault.. If a MemManage
// fault occurs that is escalated to a Hard Fault because of priority, the Hard
// Fault handler must clear this bit. This prevents problems on return to a
// stacked active MemManage handler whose MMFAR value has been overwritten.
#define CPU_SCS_CFSR_MMARVALID                                      0x00000080
#define CPU_SCS_CFSR_MMARVALID_BITN                                          7
#define CPU_SCS_CFSR_MMARVALID_M                                    0x00000080
#define CPU_SCS_CFSR_MMARVALID_S                                             7

// Field:     [4] MSTKERR
//
// Stacking from exception has caused one or more access violations. The SP is
// still adjusted and the values in the context area on the stack might be
// incorrect. MMFAR is not written.
#define CPU_SCS_CFSR_MSTKERR                                        0x00000010
#define CPU_SCS_CFSR_MSTKERR_BITN                                            4
#define CPU_SCS_CFSR_MSTKERR_M                                      0x00000010
#define CPU_SCS_CFSR_MSTKERR_S                                               4

// Field:     [3] MUNSTKERR
//
// Unstack from exception return has caused one or more access violations. This
// is chained to the handler, so that the original return stack is still
// present. SP is not adjusted from failing return and new save is not
// performed. MMFAR is not written.
#define CPU_SCS_CFSR_MUNSTKERR                                      0x00000008
#define CPU_SCS_CFSR_MUNSTKERR_BITN                                          3
#define CPU_SCS_CFSR_MUNSTKERR_M                                    0x00000008
#define CPU_SCS_CFSR_MUNSTKERR_S                                             3

// Field:     [1] DACCVIOL
//
// Data access violation flag. Attempting to load or store at a location that
// does not permit the operation sets this flag. The return PC points to the
// faulting instruction. This error loads MMFAR with the address of the
// attempted access.
#define CPU_SCS_CFSR_DACCVIOL                                       0x00000002
#define CPU_SCS_CFSR_DACCVIOL_BITN                                           1
#define CPU_SCS_CFSR_DACCVIOL_M                                     0x00000002
#define CPU_SCS_CFSR_DACCVIOL_S                                              1

// Field:     [0] IACCVIOL
//
// Instruction access violation flag. Attempting to fetch an instruction from a
// location that does not permit execution sets this flag. This occurs on any
// access to an XN region, even when the MPU is disabled or not present. The
// return PC points to the faulting instruction. MMFAR is not written.
#define CPU_SCS_CFSR_IACCVIOL                                       0x00000001
#define CPU_SCS_CFSR_IACCVIOL_BITN                                           0
#define CPU_SCS_CFSR_IACCVIOL_M                                     0x00000001
#define CPU_SCS_CFSR_IACCVIOL_S                                              0

//*****************************************************************************
//
// Register: CPU_SCS_O_HFSR
//
//*****************************************************************************
// Field:    [31] DEBUGEVT
//
// This bit is set if there is a fault related to debug. This is only possible
// when halting debug is not enabled. For monitor enabled debug, it only
// happens for BKPT when the current priority is higher than the monitor. When
// both halting and monitor debug are disabled, it only happens for debug
// events that are not ignored (minimally, BKPT). The Debug Fault Status
// Register is updated.
#define CPU_SCS_HFSR_DEBUGEVT                                       0x80000000
#define CPU_SCS_HFSR_DEBUGEVT_BITN                                          31
#define CPU_SCS_HFSR_DEBUGEVT_M                                     0x80000000
#define CPU_SCS_HFSR_DEBUGEVT_S                                             31

// Field:    [30] FORCED
//
// Hard Fault activated because a Configurable Fault was received and cannot
// activate because of priority or because the Configurable Fault is disabled.
// The Hard Fault handler then has to read the other fault status registers to
// determine cause.
#define CPU_SCS_HFSR_FORCED                                         0x40000000
#define CPU_SCS_HFSR_FORCED_BITN                                            30
#define CPU_SCS_HFSR_FORCED_M                                       0x40000000
#define CPU_SCS_HFSR_FORCED_S                                               30

// Field:     [1] VECTTBL
//
// This bit is set if there is a fault because of vector table read on
// exception processing (Bus Fault). This case is always a Hard Fault. The
// return PC points to the pre-empted instruction.
#define CPU_SCS_HFSR_VECTTBL                                        0x00000002
#define CPU_SCS_HFSR_VECTTBL_BITN                                            1
#define CPU_SCS_HFSR_VECTTBL_M                                      0x00000002
#define CPU_SCS_HFSR_VECTTBL_S                                               1

//*****************************************************************************
//
// Register: CPU_SCS_O_DFSR
//
//*****************************************************************************
// Field:     [4] EXTERNAL
//
// External debug request flag. The processor stops on next instruction
// boundary.
//
// 0x0: External debug request signal not asserted
// 0x1: External debug request signal asserted
#define CPU_SCS_DFSR_EXTERNAL                                       0x00000010
#define CPU_SCS_DFSR_EXTERNAL_BITN                                           4
#define CPU_SCS_DFSR_EXTERNAL_M                                     0x00000010
#define CPU_SCS_DFSR_EXTERNAL_S                                              4

// Field:     [3] VCATCH
//
// Vector catch flag. When this flag is set, a flag in one of the local fault
// status registers is also set to indicate the type of fault.
//
// 0x0: No vector catch occurred
// 0x1: Vector catch occurred
#define CPU_SCS_DFSR_VCATCH                                         0x00000008
#define CPU_SCS_DFSR_VCATCH_BITN                                             3
#define CPU_SCS_DFSR_VCATCH_M                                       0x00000008
#define CPU_SCS_DFSR_VCATCH_S                                                3

// Field:     [2] DWTTRAP
//
// Data Watchpoint and Trace (DWT) flag. The processor stops at the current
// instruction or at the next instruction.
//
// 0x0: No DWT match
// 0x1: DWT match
#define CPU_SCS_DFSR_DWTTRAP                                        0x00000004
#define CPU_SCS_DFSR_DWTTRAP_BITN                                            2
#define CPU_SCS_DFSR_DWTTRAP_M                                      0x00000004
#define CPU_SCS_DFSR_DWTTRAP_S                                               2

// Field:     [1] BKPT
//
// BKPT flag. The BKPT flag is set by a BKPT instruction in flash patch code,
// and also by normal code. Return PC points to breakpoint containing
// instruction.
//
// 0x0: No BKPT instruction execution
// 0x1: BKPT instruction execution
#define CPU_SCS_DFSR_BKPT                                           0x00000002
#define CPU_SCS_DFSR_BKPT_BITN                                               1
#define CPU_SCS_DFSR_BKPT_M                                         0x00000002
#define CPU_SCS_DFSR_BKPT_S                                                  1

// Field:     [0] HALTED
//
// Halt request flag. The processor is halted on the next instruction.
//
// 0x0: No halt request
// 0x1: Halt requested by NVIC, including step
#define CPU_SCS_DFSR_HALTED                                         0x00000001
#define CPU_SCS_DFSR_HALTED_BITN                                             0
#define CPU_SCS_DFSR_HALTED_M                                       0x00000001
#define CPU_SCS_DFSR_HALTED_S                                                0

//*****************************************************************************
//
// Register: CPU_SCS_O_MMFAR
//
//*****************************************************************************
// Field:  [31:0] ADDRESS
//
// Mem Manage fault address field.
// This field is the data address of a faulted load or store attempt. When an
// unaligned access faults, the address is the actual address that faulted.
// Because an access can be split into multiple parts, each aligned, this
// address can be any offset in the range of the requested size. Flags
// CFSR.IACCVIOL, CFSR.DACCVIOL ,CFSR.MUNSTKERR and CFSR.MSTKERR in combination
// with CFSR.MMARVALIDindicate the cause of the fault.
#define CPU_SCS_MMFAR_ADDRESS_W                                             32
#define CPU_SCS_MMFAR_ADDRESS_M                                     0xFFFFFFFF
#define CPU_SCS_MMFAR_ADDRESS_S                                              0

//*****************************************************************************
//
// Register: CPU_SCS_O_BFAR
//
//*****************************************************************************
// Field:  [31:0] ADDRESS
//
// Bus fault address field. This field is the data address of a faulted load or
// store attempt. When an unaligned access faults, the address is the address
// requested by the instruction, even if that is not the address that faulted.
// Flags CFSR.IBUSERR, CFSR.PRECISERR, CFSR.IMPRECISERR, CFSR.UNSTKERR and
// CFSR.STKERR in combination with CFSR.BFARVALID indicate the cause of the
// fault.
#define CPU_SCS_BFAR_ADDRESS_W                                              32
#define CPU_SCS_BFAR_ADDRESS_M                                      0xFFFFFFFF
#define CPU_SCS_BFAR_ADDRESS_S                                               0

//*****************************************************************************
//
// Register: CPU_SCS_O_AFSR
//
//*****************************************************************************
// Field:  [31:0] IMPDEF
//
// Implementation defined. The bits map directly onto the signal assignment to
// the auxiliary fault inputs. Tied to 0
#define CPU_SCS_AFSR_IMPDEF_W                                               32
#define CPU_SCS_AFSR_IMPDEF_M                                       0xFFFFFFFF
#define CPU_SCS_AFSR_IMPDEF_S                                                0

//*****************************************************************************
//
// Register: CPU_SCS_O_ID_PFR0
//
//*****************************************************************************
// Field:   [7:4] STATE1
//
// State1 (T-bit == 1)
//
// 0x0: N/A
// 0x1: N/A
// 0x2: Thumb-2 encoding with the 16-bit basic instructions plus 32-bit
// Buncond/BL but no other 32-bit basic instructions (Note non-basic 32-bit
// instructions can be added using the appropriate instruction attribute, but
// other 32-bit basic instructions cannot.)
// 0x3: Thumb-2 encoding with all Thumb-2 basic instructions
#define CPU_SCS_ID_PFR0_STATE1_W                                             4
#define CPU_SCS_ID_PFR0_STATE1_M                                    0x000000F0
#define CPU_SCS_ID_PFR0_STATE1_S                                             4

// Field:   [3:0] STATE0
//
// State0 (T-bit == 0)
//
// 0x0: No ARM encoding
// 0x1: N/A
#define CPU_SCS_ID_PFR0_STATE0_W                                             4
#define CPU_SCS_ID_PFR0_STATE0_M                                    0x0000000F
#define CPU_SCS_ID_PFR0_STATE0_S                                             0

//*****************************************************************************
//
// Register: CPU_SCS_O_ID_PFR1
//
//*****************************************************************************
// Field:  [11:8] MICROCONTROLLER_PROGRAMMERS_MODEL
//
// Microcontroller programmer's model
//
// 0x0: Not supported
// 0x2: Two-stack support
#define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_W                  4
#define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_M         0x00000F00
#define CPU_SCS_ID_PFR1_MICROCONTROLLER_PROGRAMMERS_MODEL_S                  8

//*****************************************************************************
//
// Register: CPU_SCS_O_ID_DFR0
//
//*****************************************************************************
// Field: [23:20] MICROCONTROLLER_DEBUG_MODEL
//
// Microcontroller Debug Model - memory mapped
//
// 0x0: Not supported
// 0x1: Microcontroller debug v1 (ITMv1 and DWTv1)
#define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_W                        4
#define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_M               0x00F00000
#define CPU_SCS_ID_DFR0_MICROCONTROLLER_DEBUG_MODEL_S                       20

//*****************************************************************************
//
// Register: CPU_SCS_O_ID_AFR0
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_MMFR0
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_MMFR1
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_MMFR2
//
//*****************************************************************************
// Field:    [24] WAIT_FOR_INTERRUPT_STALLING
//
// wait for interrupt stalling
//
// 0x0: Not supported
// 0x1: Wait for interrupt supported
#define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING                0x01000000
#define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_BITN                   24
#define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_M              0x01000000
#define CPU_SCS_ID_MMFR2_WAIT_FOR_INTERRUPT_STALLING_S                      24

//*****************************************************************************
//
// Register: CPU_SCS_O_ID_MMFR3
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_ISAR0
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_ISAR1
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_ISAR2
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_ISAR3
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_ID_ISAR4
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_CPACR
//
//*****************************************************************************
//*****************************************************************************
//
// Register: CPU_SCS_O_DHCSR
//
//*****************************************************************************
// Field:    [25] S_RESET_ST
//
// Indicates that the core has been reset, or is now being reset, since the
// last time this bit was read. This a sticky bit that clears on read. So,
// reading twice and getting 1 then 0 means it was reset in the past. Reading
// twice and getting 1 both times means that it is being reset now (held in
// reset still).
// When writing to this register, 0 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_RESET_ST                                    0x02000000
#define CPU_SCS_DHCSR_S_RESET_ST_BITN                                       25
#define CPU_SCS_DHCSR_S_RESET_ST_M                                  0x02000000
#define CPU_SCS_DHCSR_S_RESET_ST_S                                          25

// Field:    [24] S_RETIRE_ST
//
// Indicates that an instruction has completed since last read. This is a
// sticky bit that clears on read. This determines if the core is stalled on a
// load/store or fetch.
// When writing to this register, 0 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_RETIRE_ST                                   0x01000000
#define CPU_SCS_DHCSR_S_RETIRE_ST_BITN                                      24
#define CPU_SCS_DHCSR_S_RETIRE_ST_M                                 0x01000000
#define CPU_SCS_DHCSR_S_RETIRE_ST_S                                         24

// Field:    [19] S_LOCKUP
//
// Reads as one if the core is running (not halted) and a lockup condition is
// present.
// When writing to this register, 1 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_LOCKUP                                      0x00080000
#define CPU_SCS_DHCSR_S_LOCKUP_BITN                                         19
#define CPU_SCS_DHCSR_S_LOCKUP_M                                    0x00080000
#define CPU_SCS_DHCSR_S_LOCKUP_S                                            19

// Field:    [18] S_SLEEP
//
// Indicates that the core is sleeping (WFI, WFE, or **SLEEP-ON-EXIT**). Must
// use C_HALT to gain control or wait for interrupt to wake-up.
// When writing to this register, 1 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_SLEEP                                       0x00040000
#define CPU_SCS_DHCSR_S_SLEEP_BITN                                          18
#define CPU_SCS_DHCSR_S_SLEEP_M                                     0x00040000
#define CPU_SCS_DHCSR_S_SLEEP_S                                             18

// Field:    [17] S_HALT
//
// The core is in debug state when this bit is set.
// When writing to this register, 1 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_HALT                                        0x00020000
#define CPU_SCS_DHCSR_S_HALT_BITN                                           17
#define CPU_SCS_DHCSR_S_HALT_M                                      0x00020000
#define CPU_SCS_DHCSR_S_HALT_S                                              17

// Field:    [16] S_REGRDY
//
// Register Read/Write on the Debug Core Register Selector register is
// available. Last transfer is complete.
// When writing to this register, 1 must be written this bit-field, otherwise
// the write operation is ignored and no bits are written into the register.
#define CPU_SCS_DHCSR_S_REGRDY                                      0x00010000
#define CPU_SCS_DHCSR_S_REGRDY_BITN                                         16
#define CPU_SCS_DHCSR_S_REGRDY_M                                    0x00010000
#define CPU_SCS_DHCSR_S_REGRDY_S                                            16

// Field:     [5] C_SNAPSTALL
//
// If the core is stalled on a load/store operation the stall ceases and the
// instruction is forced to complete. This enables Halting debug to gain
// control of the core. It can only be set if: C_DEBUGEN = 1 and C_HALT = 1.
// The core reads S_RETIRE_ST as 0. This indicates that no instruction has
// advanced. This prevents misuse. The bus state is Unpredictable when this is
// used. S_RETIRE_ST can detect core stalls on load/store operations.
#define CPU_SCS_DHCSR_C_SNAPSTALL                                   0x00000020
#define CPU_SCS_DHCSR_C_SNAPSTALL_BITN                                       5
#define CPU_SCS_DHCSR_C_SNAPSTALL_M                                 0x00000020
#define CPU_SCS_DHCSR_C_SNAPSTALL_S                                          5

// Field:     [3] C_MASKINTS
//
// Mask interrupts when stepping or running in halted debug. This masking does
// not affect NMI, fault exceptions and SVC caused by execution of the
// instructions. This bit must only be modified when the processor is halted
// (S_HALT == 1).  C_MASKINTS must be set or cleared before halt is released
// (i.e., the writes to set or clear C_MASKINTS and to set or clear C_HALT must
// be separate). Modifying C_MASKINTS while the system is running with halting
// debug support enabled (C_DEBUGEN = 1, S_HALT = 0) may cause unpredictable
// behavior.
#define CPU_SCS_DHCSR_C_MASKINTS                                    0x00000008
#define CPU_SCS_DHCSR_C_MASKINTS_BITN                                        3
#define CPU_SCS_DHCSR_C_MASKINTS_M                                  0x00000008
#define CPU_SCS_DHCSR_C_MASKINTS_S                                           3

// Field:     [2] C_STEP
//
// Steps the core in halted debug. When C_DEBUGEN = 0, this bit has no effect.
// Must only be modified when the processor is halted (S_HALT == 1).
// Modifying C_STEP while the system is running with halting debug support
// enabled (C_DEBUGEN = 1, S_HALT = 0) may cause unpredictable behavior.
#define CPU_SCS_DHCSR_C_STEP                                        0x00000004
#define CPU_SCS_DHCSR_C_STEP_BITN                                            2
#define CPU_SCS_DHCSR_C_STEP_M                                      0x00000004
#define CPU_SCS_DHCSR_C_STEP_S                                               2

// Field:     [1] C_HALT
//
// Halts the core. This bit is set automatically when the core Halts. For
// example Breakpoint. This bit clears on core reset.
#define CPU_SCS_DHCSR_C_HALT                                        0x00000002
#define CPU_SCS_DHCSR_C_HALT_BITN                                            1
#define CPU_SCS_DHCSR_C_HALT_M                                      0x00000002
#define CPU_SCS_DHCSR_C_HALT_S                                               1

// Field:     [0] C_DEBUGEN
//
// Enables debug. This can only be written by AHB-AP and not by the core. It is
// ignored when written by the core, which cannot set or clear it. The core
// must write a 1 to it when writing C_HALT to halt itself.
// The values of C_HALT, C_STEP and C_MASKINTS are ignored by hardware when
// C_DEBUGEN = 0. The read values for C_HALT, C_STEP and C_MASKINTS fields will
// be unknown to software when C_DEBUGEN = 0.
#define CPU_SCS_DHCSR_C_DEBUGEN                                     0x00000001
#define CPU_SCS_DHCSR_C_DEBUGEN_BITN                                         0
#define CPU_SCS_DHCSR_C_DEBUGEN_M                                   0x00000001
#define CPU_SCS_DHCSR_C_DEBUGEN_S                                            0

//*****************************************************************************
//
// Register: CPU_SCS_O_DCRSR
//
//*****************************************************************************
// Field:    [16] REGWNR
//
// 1: Write
// 0: Read
#define CPU_SCS_DCRSR_REGWNR                                        0x00010000
#define CPU_SCS_DCRSR_REGWNR_BITN                                           16
#define CPU_SCS_DCRSR_REGWNR_M                                      0x00010000
#define CPU_SCS_DCRSR_REGWNR_S                                              16

// Field:   [4:0] REGSEL
//
// Register select
//
// 0x00: R0
// 0x01: R1
// 0x02: R2
// 0x03: R3
// 0x04: R4
// 0x05: R5
// 0x06: R6
// 0x07: R7
// 0x08: R8
// 0x09: R9
// 0x0A: R10
// 0x0B: R11
// 0x0C: R12
// 0x0D: Current SP
// 0x0E: LR
// 0x0F: DebugReturnAddress
// 0x10: XPSR/flags, execution state information, and exception number
// 0x11: MSP (Main SP)
// 0x12: PSP (Process SP)
// 0x14: CONTROL<<24 | FAULTMASK<<16 | BASEPRI<<8 | PRIMASK
#define CPU_SCS_DCRSR_REGSEL_W                                               5
#define CPU_SCS_DCRSR_REGSEL_M                                      0x0000001F
#define CPU_SCS_DCRSR_REGSEL_S                                               0

//*****************************************************************************
//
// Register: CPU_SCS_O_DCRDR
//
//*****************************************************************************
// Field:  [31:0] DCRDR
//
// This register holds data for reading and writing registers to and from the
// processor. This is the data value written to the register selected by DCRSR.
// When the processor receives a request from DCRSR, this register is read or
// written by the processor using a normal load-store unit operation. If core
// register transfers are not being performed, software-based debug monitors
// can use this register for communication in non-halting debug. This enables
// flags and bits to acknowledge state and indicate if commands have been
// accepted to, replied to, or accepted and replied to.
#define CPU_SCS_DCRDR_DCRDR_W                                               32
#define CPU_SCS_DCRDR_DCRDR_M                                       0xFFFFFFFF
#define CPU_SCS_DCRDR_DCRDR_S                                                0

//*****************************************************************************
//
// Register: CPU_SCS_O_DEMCR
//
//*****************************************************************************
// Field:    [24] TRCENA
//
// This bit must be set to 1 to enable use of the trace and debug blocks: DWT,
// ITM, ETM and TPIU. This enables control of power usage unless tracing is
// required. The application can enable this, for ITM use, or use by a
// debugger.
#define CPU_SCS_DEMCR_TRCENA                                        0x01000000
#define CPU_SCS_DEMCR_TRCENA_BITN                                           24
#define CPU_SCS_DEMCR_TRCENA_M                                      0x01000000
#define CPU_SCS_DEMCR_TRCENA_S                                              24

// Field:    [19] MON_REQ
//
// This enables the monitor to identify how it wakes up. This bit clears on a
// Core Reset.
//
// 0x0: Woken up by debug exception.
// 0x1: Woken up by MON_PEND
#define CPU_SCS_DEMCR_MON_REQ                                       0x00080000
#define CPU_SCS_DEMCR_MON_REQ_BITN                                          19
#define CPU_SCS_DEMCR_MON_REQ_M                                     0x00080000
#define CPU_SCS_DEMCR_MON_REQ_S                                             19

// Field:    [18] MON_STEP
//
// When MON_EN = 1, this steps the core. When MON_EN = 0, this bit is ignored.
// This is the equivalent to DHCSR.C_STEP. Interrupts are only stepped
// according to the priority of the monitor and settings of PRIMASK, FAULTMASK,
// or BASEPRI.
#define CPU_SCS_DEMCR_MON_STEP                                      0x00040000
#define CPU_SCS_DEMCR_MON_STEP_BITN                                         18
#define CPU_SCS_DEMCR_MON_STEP_M                                    0x00040000
#define CPU_SCS_DEMCR_MON_STEP_S                                            18

// Field:    [17] MON_PEND
//
// Pend the monitor to activate when priority permits. This can wake up the
// monitor through the AHB-AP port. It is the equivalent to DHCSR.C_HALT for
// Monitor debug. This register does not reset on a system reset. It is only
// reset by a power-on reset. Software in the reset handler or later, or by the
// DAP must enable the debug monitor.
#define CPU_SCS_DEMCR_MON_PEND                                      0x00020000
#define CPU_SCS_DEMCR_MON_PEND_BITN                                         17
#define CPU_SCS_DEMCR_MON_PEND_M                                    0x00020000
#define CPU_SCS_DEMCR_MON_PEND_S                                            17

// Field:    [16] MON_EN
//
// Enable the debug monitor.
// When enabled, the System handler priority register controls its priority
// level. If disabled, then all debug events go to Hard fault. DHCSR.C_DEBUGEN
// overrides this bit. Vector catching is semi-synchronous. When a matching
// event is seen, a Halt is requested. Because the processor can only halt on
// an instruction boundary, it must wait until the next instruction boundary.
// As a result, it stops on the first instruction of the exception handler.
// However, two special cases exist when a vector catch has triggered: 1. If a
// fault is taken during vectoring, vector read or stack push error, the halt
// occurs on the corresponding fault handler, for the vector error or stack
// push. 2. If a late arriving interrupt comes in during vectoring, it is not
// taken. That is, an implementation that supports the late arrival
// optimization must suppress it in this case.
#define CPU_SCS_DEMCR_MON_EN                                        0x00010000
#define CPU_SCS_DEMCR_MON_EN_BITN                                           16
#define CPU_SCS_DEMCR_MON_EN_M                                      0x00010000
#define CPU_SCS_DEMCR_MON_EN_S                                              16

// Field:    [10] VC_HARDERR
//
// Debug trap on Hard Fault. Ignored when DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_HARDERR                                    0x00000400
#define CPU_SCS_DEMCR_VC_HARDERR_BITN                                       10
#define CPU_SCS_DEMCR_VC_HARDERR_M                                  0x00000400
#define CPU_SCS_DEMCR_VC_HARDERR_S                                          10

// Field:     [9] VC_INTERR
//
// Debug trap on a fault occurring during an exception entry or return
// sequence. Ignored when DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_INTERR                                     0x00000200
#define CPU_SCS_DEMCR_VC_INTERR_BITN                                         9
#define CPU_SCS_DEMCR_VC_INTERR_M                                   0x00000200
#define CPU_SCS_DEMCR_VC_INTERR_S                                            9

// Field:     [8] VC_BUSERR
//
// Debug Trap on normal Bus error. Ignored when DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_BUSERR                                     0x00000100
#define CPU_SCS_DEMCR_VC_BUSERR_BITN                                         8
#define CPU_SCS_DEMCR_VC_BUSERR_M                                   0x00000100
#define CPU_SCS_DEMCR_VC_BUSERR_S                                            8

// Field:     [7] VC_STATERR
//
// Debug trap on Usage Fault state errors. Ignored when DHCSR.C_DEBUGEN is
// cleared.
#define CPU_SCS_DEMCR_VC_STATERR                                    0x00000080
#define CPU_SCS_DEMCR_VC_STATERR_BITN                                        7
#define CPU_SCS_DEMCR_VC_STATERR_M                                  0x00000080
#define CPU_SCS_DEMCR_VC_STATERR_S                                           7

// Field:     [6] VC_CHKERR
//
// Debug trap on Usage Fault enabled checking errors. Ignored when
// DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_CHKERR                                     0x00000040
#define CPU_SCS_DEMCR_VC_CHKERR_BITN                                         6
#define CPU_SCS_DEMCR_VC_CHKERR_M                                   0x00000040
#define CPU_SCS_DEMCR_VC_CHKERR_S                                            6

// Field:     [5] VC_NOCPERR
//
// Debug trap on a UsageFault access to a Coprocessor. Ignored when
// DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_NOCPERR                                    0x00000020
#define CPU_SCS_DEMCR_VC_NOCPERR_BITN                                        5
#define CPU_SCS_DEMCR_VC_NOCPERR_M                                  0x00000020
#define CPU_SCS_DEMCR_VC_NOCPERR_S                                           5

// Field:     [4] VC_MMERR
//
// Debug trap on Memory Management faults. Ignored when DHCSR.C_DEBUGEN is
// cleared.
#define CPU_SCS_DEMCR_VC_MMERR                                      0x00000010
#define CPU_SCS_DEMCR_VC_MMERR_BITN                                          4
#define CPU_SCS_DEMCR_VC_MMERR_M                                    0x00000010
#define CPU_SCS_DEMCR_VC_MMERR_S                                             4

// Field:     [0] VC_CORERESET
//
// Reset Vector Catch. Halt running system if Core reset occurs. Ignored when
// DHCSR.C_DEBUGEN is cleared.
#define CPU_SCS_DEMCR_VC_CORERESET                                  0x00000001
#define CPU_SCS_DEMCR_VC_CORERESET_BITN                                      0
#define CPU_SCS_DEMCR_VC_CORERESET_M                                0x00000001
#define CPU_SCS_DEMCR_VC_CORERESET_S                                         0

//*****************************************************************************
//
// Register: CPU_SCS_O_STIR
//
//*****************************************************************************
// Field:   [8:0] INTID
//
// Interrupt ID field. Writing a value to this bit-field is the same as
// manually pending an interrupt by setting the corresponding interrupt bit in
// an Interrupt Set Pending Register in NVIC_ISPR0 or NVIC_ISPR1.
#define CPU_SCS_STIR_INTID_W                                                 9
#define CPU_SCS_STIR_INTID_M                                        0x000001FF
#define CPU_SCS_STIR_INTID_S                                                 0


#endif // __CPU_SCS__
