]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/hal/TARGET_Freescale/TARGET_KPSDK_MCUS/TARGET_K22F/device/MK22F51212/MK22F51212.h
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / hal / TARGET_Freescale / TARGET_KPSDK_MCUS / TARGET_K22F / device / MK22F51212 / MK22F51212.h
1 /*
2 ** ###################################################################
3 **     Compilers:           Keil ARM C/C++ Compiler
4 **                          Freescale C/C++ for Embedded ARM
5 **                          GNU C Compiler
6 **                          GNU C Compiler - CodeSourcery Sourcery G++
7 **                          IAR ANSI C/C++ Compiler for ARM
8 **
9 **     Reference manual:    K22P121M120SF7RM, Rev. 1, March 24, 2014
10 **     Version:             rev. 2.5, 2014-05-06
11 **     Build:               b140604
12 **
13 **     Abstract:
14 **         CMSIS Peripheral Access Layer for MK22F51212
15 **
16 **     Copyright (c) 1997 - 2014 Freescale Semiconductor, Inc.
17 **     All rights reserved.
18 **
19 **     Redistribution and use in source and binary forms, with or without modification,
20 **     are permitted provided that the following conditions are met:
21 **
22 **     o Redistributions of source code must retain the above copyright notice, this list
23 **       of conditions and the following disclaimer.
24 **
25 **     o Redistributions in binary form must reproduce the above copyright notice, this
26 **       list of conditions and the following disclaimer in the documentation and/or
27 **       other materials provided with the distribution.
28 **
29 **     o Neither the name of Freescale Semiconductor, Inc. nor the names of its
30 **       contributors may be used to endorse or promote products derived from this
31 **       software without specific prior written permission.
32 **
33 **     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
34 **     ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
35 **     WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
36 **     DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
37 **     ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
38 **     (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
39 **     LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
40 **     ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
41 **     (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
42 **     SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
43 **
44 **     http:                 www.freescale.com
45 **     mail:                 support@freescale.com
46 **
47 **     Revisions:
48 **     - rev. 1.0 (2013-07-23)
49 **         Initial version.
50 **     - rev. 1.1 (2013-09-17)
51 **         RM rev. 0.4 update.
52 **     - rev. 2.0 (2013-10-29)
53 **         Register accessor macros added to the memory map.
54 **         Symbols for Processor Expert memory map compatibility added to the memory map.
55 **         Startup file for gcc has been updated according to CMSIS 3.2.
56 **         System initialization updated.
57 **     - rev. 2.1 (2013-10-30)
58 **         Definition of BITBAND macros updated to support peripherals with 32-bit acces disabled.
59 **     - rev. 2.2 (2013-12-20)
60 **         Update according to reference manual rev. 0.6,
61 **     - rev. 2.3 (2014-01-13)
62 **         Update according to reference manual rev. 0.61,
63 **     - rev. 2.4 (2014-02-10)
64 **         The declaration of clock configurations has been moved to separate header file system_MK22F51212.h
65 **     - rev. 2.5 (2014-05-06)
66 **         Update according to reference manual rev. 1.0,
67 **         Update of system and startup files.
68 **         Module access macro module_BASES replaced by module_BASE_PTRS.
69 **
70 ** ###################################################################
71 */
72
73 /*!
74  * @file MK22F51212.h
75  * @version 2.5
76  * @date 2014-05-06
77  * @brief CMSIS Peripheral Access Layer for MK22F51212
78  *
79  * CMSIS Peripheral Access Layer for MK22F51212
80  */
81
82
83 /* ----------------------------------------------------------------------------
84    -- MCU activation
85    ---------------------------------------------------------------------------- */
86
87 /* Prevention from multiple including the same memory map */
88 #if !defined(MK22F51212_H_)  /* Check if memory map has not been already included */
89 #define MK22F51212_H_
90 #define MCU_MK22F51212
91
92 /* Check if another memory map has not been also included */
93 #if (defined(MCU_ACTIVE))
94   #error MK22F51212 memory map: There is already included another memory map. Only one memory map can be included.
95 #endif /* (defined(MCU_ACTIVE)) */
96 #define MCU_ACTIVE
97
98 #include <stdint.h>
99
100 /** Memory map major version (memory maps with equal major version number are
101  * compatible) */
102 #define MCU_MEM_MAP_VERSION 0x0200u
103 /** Memory map minor version */
104 #define MCU_MEM_MAP_VERSION_MINOR 0x0005u
105
106 /**
107  * @brief Macro to calculate address of an aliased word in the peripheral
108  *        bitband area for a peripheral register and bit (bit band region 0x40000000 to
109  *        0x400FFFFF).
110  * @param Reg Register to access.
111  * @param Bit Bit number to access.
112  * @return  Address of the aliased word in the peripheral bitband area.
113  */
114 #define BITBAND_REGADDR(Reg,Bit) (0x42000000u + (32u*((uint32_t)&(Reg) - (uint32_t)0x40000000u)) + (4u*((uint32_t)(Bit))))
115 /**
116  * @brief Macro to access a single bit of a peripheral register (bit band region
117  *        0x40000000 to 0x400FFFFF) using the bit-band alias region access. Can
118  *        be used for peripherals with 32bit access allowed.
119  * @param Reg Register to access.
120  * @param Bit Bit number to access.
121  * @return Value of the targeted bit in the bit band region.
122  */
123 #define BITBAND_REG32(Reg,Bit) (*((uint32_t volatile*)(BITBAND_REGADDR(Reg,Bit))))
124 #define BITBAND_REG(Reg,Bit) (BITBAND_REG32(Reg,Bit))
125 /**
126  * @brief Macro to access a single bit of a peripheral register (bit band region
127  *        0x40000000 to 0x400FFFFF) using the bit-band alias region access. Can
128  *        be used for peripherals with 16bit access allowed.
129  * @param Reg Register to access.
130  * @param Bit Bit number to access.
131  * @return Value of the targeted bit in the bit band region.
132  */
133 #define BITBAND_REG16(Reg,Bit) (*((uint16_t volatile*)(BITBAND_REGADDR(Reg,Bit))))
134 /**
135  * @brief Macro to access a single bit of a peripheral register (bit band region
136  *        0x40000000 to 0x400FFFFF) using the bit-band alias region access. Can
137  *        be used for peripherals with 8bit access allowed.
138  * @param Reg Register to access.
139  * @param Bit Bit number to access.
140  * @return Value of the targeted bit in the bit band region.
141  */
142 #define BITBAND_REG8(Reg,Bit) (*((uint8_t volatile*)(BITBAND_REGADDR(Reg,Bit))))
143
144 /* ----------------------------------------------------------------------------
145    -- Interrupt vector numbers
146    ---------------------------------------------------------------------------- */
147
148 /*!
149  * @addtogroup Interrupt_vector_numbers Interrupt vector numbers
150  * @{
151  */
152
153 /** Interrupt Number Definitions */
154 #define NUMBER_OF_INT_VECTORS 102                /**< Number of interrupts in the Vector table */
155
156 typedef enum IRQn {
157   /* Core interrupts */
158   NonMaskableInt_IRQn          = -14,              /**< Non Maskable Interrupt */
159   HardFault_IRQn               = -13,              /**< Cortex-M4 SV Hard Fault Interrupt */
160   MemoryManagement_IRQn        = -12,              /**< Cortex-M4 Memory Management Interrupt */
161   BusFault_IRQn                = -11,              /**< Cortex-M4 Bus Fault Interrupt */
162   UsageFault_IRQn              = -10,              /**< Cortex-M4 Usage Fault Interrupt */
163   SVCall_IRQn                  = -5,               /**< Cortex-M4 SV Call Interrupt */
164   DebugMonitor_IRQn            = -4,               /**< Cortex-M4 Debug Monitor Interrupt */
165   PendSV_IRQn                  = -2,               /**< Cortex-M4 Pend SV Interrupt */
166   SysTick_IRQn                 = -1,               /**< Cortex-M4 System Tick Interrupt */
167
168   /* Device specific interrupts */
169   DMA0_IRQn                    = 0,                /**< DMA Channel 0 Transfer Complete */
170   DMA1_IRQn                    = 1,                /**< DMA Channel 1 Transfer Complete */
171   DMA2_IRQn                    = 2,                /**< DMA Channel 2 Transfer Complete */
172   DMA3_IRQn                    = 3,                /**< DMA Channel 3 Transfer Complete */
173   DMA4_IRQn                    = 4,                /**< DMA Channel 4 Transfer Complete */
174   DMA5_IRQn                    = 5,                /**< DMA Channel 5 Transfer Complete */
175   DMA6_IRQn                    = 6,                /**< DMA Channel 6 Transfer Complete */
176   DMA7_IRQn                    = 7,                /**< DMA Channel 7 Transfer Complete */
177   DMA8_IRQn                    = 8,                /**< DMA Channel 8 Transfer Complete */
178   DMA9_IRQn                    = 9,                /**< DMA Channel 9 Transfer Complete */
179   DMA10_IRQn                   = 10,               /**< DMA Channel 10 Transfer Complete */
180   DMA11_IRQn                   = 11,               /**< DMA Channel 11 Transfer Complete */
181   DMA12_IRQn                   = 12,               /**< DMA Channel 12 Transfer Complete */
182   DMA13_IRQn                   = 13,               /**< DMA Channel 13 Transfer Complete */
183   DMA14_IRQn                   = 14,               /**< DMA Channel 14 Transfer Complete */
184   DMA15_IRQn                   = 15,               /**< DMA Channel 15 Transfer Complete */
185   DMA_Error_IRQn               = 16,               /**< DMA Error Interrupt */
186   MCM_IRQn                     = 17,               /**< Normal Interrupt */
187   FTF_IRQn                     = 18,               /**< FTFA Command complete interrupt */
188   Read_Collision_IRQn          = 19,               /**< Read Collision Interrupt */
189   LVD_LVW_IRQn                 = 20,               /**< Low Voltage Detect, Low Voltage Warning */
190   LLW_IRQn                     = 21,               /**< Low Leakage Wakeup */
191   Watchdog_IRQn                = 22,               /**< WDOG Interrupt */
192   RNG_IRQn                     = 23,               /**< RNG Interrupt */
193   I2C0_IRQn                    = 24,               /**< I2C0 interrupt */
194   I2C1_IRQn                    = 25,               /**< I2C1 interrupt */
195   SPI0_IRQn                    = 26,               /**< SPI0 Interrupt */
196   SPI1_IRQn                    = 27,               /**< SPI1 Interrupt */
197   I2S0_Tx_IRQn                 = 28,               /**< I2S0 transmit interrupt */
198   I2S0_Rx_IRQn                 = 29,               /**< I2S0 receive interrupt */
199   LPUART0_IRQn                 = 30,               /**< LPUART0 status/error interrupt */
200   UART0_RX_TX_IRQn             = 31,               /**< UART0 Receive/Transmit interrupt */
201   UART0_ERR_IRQn               = 32,               /**< UART0 Error interrupt */
202   UART1_RX_TX_IRQn             = 33,               /**< UART1 Receive/Transmit interrupt */
203   UART1_ERR_IRQn               = 34,               /**< UART1 Error interrupt */
204   UART2_RX_TX_IRQn             = 35,               /**< UART2 Receive/Transmit interrupt */
205   UART2_ERR_IRQn               = 36,               /**< UART2 Error interrupt */
206   Reserved53_IRQn              = 37,               /**< Reserved interrupt 53 */
207   Reserved54_IRQn              = 38,               /**< Reserved interrupt 54 */
208   ADC0_IRQn                    = 39,               /**< ADC0 interrupt */
209   CMP0_IRQn                    = 40,               /**< CMP0 interrupt */
210   CMP1_IRQn                    = 41,               /**< CMP1 interrupt */
211   FTM0_IRQn                    = 42,               /**< FTM0 fault, overflow and channels interrupt */
212   FTM1_IRQn                    = 43,               /**< FTM1 fault, overflow and channels interrupt */
213   FTM2_IRQn                    = 44,               /**< FTM2 fault, overflow and channels interrupt */
214   Reserved61_IRQn              = 45,               /**< Reserved interrupt 61 */
215   RTC_IRQn                     = 46,               /**< RTC interrupt */
216   RTC_Seconds_IRQn             = 47,               /**< RTC seconds interrupt */
217   PIT0_IRQn                    = 48,               /**< PIT timer channel 0 interrupt */
218   PIT1_IRQn                    = 49,               /**< PIT timer channel 1 interrupt */
219   PIT2_IRQn                    = 50,               /**< PIT timer channel 2 interrupt */
220   PIT3_IRQn                    = 51,               /**< PIT timer channel 3 interrupt */
221   PDB0_IRQn                    = 52,               /**< PDB0 Interrupt */
222   USB0_IRQn                    = 53,               /**< USB0 interrupt */
223   Reserved70_IRQn              = 54,               /**< Reserved interrupt 70 */
224   Reserved71_IRQn              = 55,               /**< Reserved interrupt 71 */
225   DAC0_IRQn                    = 56,               /**< DAC0 interrupt */
226   MCG_IRQn                     = 57,               /**< MCG Interrupt */
227   LPTimer_IRQn                 = 58,               /**< LPTimer interrupt */
228   PORTA_IRQn                   = 59,               /**< Port A interrupt */
229   PORTB_IRQn                   = 60,               /**< Port B interrupt */
230   PORTC_IRQn                   = 61,               /**< Port C interrupt */
231   PORTD_IRQn                   = 62,               /**< Port D interrupt */
232   PORTE_IRQn                   = 63,               /**< Port E interrupt */
233   SWI_IRQn                     = 64,               /**< Software interrupt */
234   Reserved81_IRQn              = 65,               /**< Reserved interrupt 81 */
235   Reserved82_IRQn              = 66,               /**< Reserved interrupt 82 */
236   Reserved83_IRQn              = 67,               /**< Reserved interrupt 83 */
237   Reserved84_IRQn              = 68,               /**< Reserved interrupt 84 */
238   Reserved85_IRQn              = 69,               /**< Reserved interrupt 85 */
239   Reserved86_IRQn              = 70,               /**< Reserved interrupt 86 */
240   FTM3_IRQn                    = 71,               /**< FTM3 fault, overflow and channels interrupt */
241   DAC1_IRQn                    = 72,               /**< DAC1 interrupt */
242   ADC1_IRQn                    = 73,               /**< ADC1 interrupt */
243   Reserved90_IRQn              = 74,               /**< Reserved Interrupt 90 */
244   Reserved91_IRQn              = 75,               /**< Reserved Interrupt 91 */
245   Reserved92_IRQn              = 76,               /**< Reserved Interrupt 92 */
246   Reserved93_IRQn              = 77,               /**< Reserved Interrupt 93 */
247   Reserved94_IRQn              = 78,               /**< Reserved Interrupt 94 */
248   Reserved95_IRQn              = 79,               /**< Reserved Interrupt 95 */
249   Reserved96_IRQn              = 80,               /**< Reserved Interrupt 96 */
250   Reserved97_IRQn              = 81,               /**< Reserved Interrupt 97 */
251   Reserved98_IRQn              = 82,               /**< Reserved Interrupt 98 */
252   Reserved99_IRQn              = 83,               /**< Reserved Interrupt 99 */
253   Reserved100_IRQn             = 84,               /**< Reserved Interrupt 100 */
254   Reserved101_IRQn             = 85                /**< Reserved Interrupt 101 */
255 } IRQn_Type;
256
257 /*!
258  * @}
259  */ /* end of group Interrupt_vector_numbers */
260
261
262 /* ----------------------------------------------------------------------------
263    -- Cortex M4 Core Configuration
264    ---------------------------------------------------------------------------- */
265
266 /*!
267  * @addtogroup Cortex_Core_Configuration Cortex M4 Core Configuration
268  * @{
269  */
270
271 #define __MPU_PRESENT                  0         /**< Defines if an MPU is present or not */
272 #define __NVIC_PRIO_BITS               4         /**< Number of priority bits implemented in the NVIC */
273 #define __Vendor_SysTickConfig         0         /**< Vendor specific implementation of SysTickConfig is defined */
274 #define __FPU_PRESENT                  1         /**< Defines if an FPU is present or not */
275
276 #include "core_cm4.h"                  /* Core Peripheral Access Layer */
277 #include "system_MK22F51212.h"         /* Device specific configuration file */
278
279 /*!
280  * @}
281  */ /* end of group Cortex_Core_Configuration */
282
283
284 /* ----------------------------------------------------------------------------
285    -- Device Peripheral Access Layer
286    ---------------------------------------------------------------------------- */
287
288 /*!
289  * @addtogroup Peripheral_access_layer Device Peripheral Access Layer
290  * @{
291  */
292
293
294 /*
295 ** Start of section using anonymous unions
296 */
297
298 #if defined(__ARMCC_VERSION)
299   #pragma push
300   #pragma anon_unions
301 #elif defined(__CWCC__)
302   #pragma push
303   #pragma cpp_extensions on
304 #elif defined(__GNUC__)
305   /* anonymous unions are enabled by default */
306 #elif defined(__IAR_SYSTEMS_ICC__)
307   #pragma language=extended
308 #else
309   #error Not supported compiler type
310 #endif
311
312 /* ----------------------------------------------------------------------------
313    -- ADC Peripheral Access Layer
314    ---------------------------------------------------------------------------- */
315
316 /*!
317  * @addtogroup ADC_Peripheral_Access_Layer ADC Peripheral Access Layer
318  * @{
319  */
320
321 /** ADC - Register Layout Typedef */
322 typedef struct {
323   __IO uint32_t SC1[2];                            /**< ADC Status and Control Registers 1, array offset: 0x0, array step: 0x4 */
324   __IO uint32_t CFG1;                              /**< ADC Configuration Register 1, offset: 0x8 */
325   __IO uint32_t CFG2;                              /**< ADC Configuration Register 2, offset: 0xC */
326   __I  uint32_t R[2];                              /**< ADC Data Result Register, array offset: 0x10, array step: 0x4 */
327   __IO uint32_t CV1;                               /**< Compare Value Registers, offset: 0x18 */
328   __IO uint32_t CV2;                               /**< Compare Value Registers, offset: 0x1C */
329   __IO uint32_t SC2;                               /**< Status and Control Register 2, offset: 0x20 */
330   __IO uint32_t SC3;                               /**< Status and Control Register 3, offset: 0x24 */
331   __IO uint32_t OFS;                               /**< ADC Offset Correction Register, offset: 0x28 */
332   __IO uint32_t PG;                                /**< ADC Plus-Side Gain Register, offset: 0x2C */
333   __IO uint32_t MG;                                /**< ADC Minus-Side Gain Register, offset: 0x30 */
334   __IO uint32_t CLPD;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x34 */
335   __IO uint32_t CLPS;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x38 */
336   __IO uint32_t CLP4;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x3C */
337   __IO uint32_t CLP3;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x40 */
338   __IO uint32_t CLP2;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x44 */
339   __IO uint32_t CLP1;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x48 */
340   __IO uint32_t CLP0;                              /**< ADC Plus-Side General Calibration Value Register, offset: 0x4C */
341        uint8_t RESERVED_0[4];
342   __IO uint32_t CLMD;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x54 */
343   __IO uint32_t CLMS;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x58 */
344   __IO uint32_t CLM4;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x5C */
345   __IO uint32_t CLM3;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x60 */
346   __IO uint32_t CLM2;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x64 */
347   __IO uint32_t CLM1;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x68 */
348   __IO uint32_t CLM0;                              /**< ADC Minus-Side General Calibration Value Register, offset: 0x6C */
349 } ADC_Type, *ADC_MemMapPtr;
350
351 /* ----------------------------------------------------------------------------
352    -- ADC - Register accessor macros
353    ---------------------------------------------------------------------------- */
354
355 /*!
356  * @addtogroup ADC_Register_Accessor_Macros ADC - Register accessor macros
357  * @{
358  */
359
360
361 /* ADC - Register accessors */
362 #define ADC_SC1_REG(base,index)                  ((base)->SC1[index])
363 #define ADC_CFG1_REG(base)                       ((base)->CFG1)
364 #define ADC_CFG2_REG(base)                       ((base)->CFG2)
365 #define ADC_R_REG(base,index)                    ((base)->R[index])
366 #define ADC_CV1_REG(base)                        ((base)->CV1)
367 #define ADC_CV2_REG(base)                        ((base)->CV2)
368 #define ADC_SC2_REG(base)                        ((base)->SC2)
369 #define ADC_SC3_REG(base)                        ((base)->SC3)
370 #define ADC_OFS_REG(base)                        ((base)->OFS)
371 #define ADC_PG_REG(base)                         ((base)->PG)
372 #define ADC_MG_REG(base)                         ((base)->MG)
373 #define ADC_CLPD_REG(base)                       ((base)->CLPD)
374 #define ADC_CLPS_REG(base)                       ((base)->CLPS)
375 #define ADC_CLP4_REG(base)                       ((base)->CLP4)
376 #define ADC_CLP3_REG(base)                       ((base)->CLP3)
377 #define ADC_CLP2_REG(base)                       ((base)->CLP2)
378 #define ADC_CLP1_REG(base)                       ((base)->CLP1)
379 #define ADC_CLP0_REG(base)                       ((base)->CLP0)
380 #define ADC_CLMD_REG(base)                       ((base)->CLMD)
381 #define ADC_CLMS_REG(base)                       ((base)->CLMS)
382 #define ADC_CLM4_REG(base)                       ((base)->CLM4)
383 #define ADC_CLM3_REG(base)                       ((base)->CLM3)
384 #define ADC_CLM2_REG(base)                       ((base)->CLM2)
385 #define ADC_CLM1_REG(base)                       ((base)->CLM1)
386 #define ADC_CLM0_REG(base)                       ((base)->CLM0)
387
388 /*!
389  * @}
390  */ /* end of group ADC_Register_Accessor_Macros */
391
392
393 /* ----------------------------------------------------------------------------
394    -- ADC Register Masks
395    ---------------------------------------------------------------------------- */
396
397 /*!
398  * @addtogroup ADC_Register_Masks ADC Register Masks
399  * @{
400  */
401
402 /* SC1 Bit Fields */
403 #define ADC_SC1_ADCH_MASK                        0x1Fu
404 #define ADC_SC1_ADCH_SHIFT                       0
405 #define ADC_SC1_ADCH(x)                          (((uint32_t)(((uint32_t)(x))<<ADC_SC1_ADCH_SHIFT))&ADC_SC1_ADCH_MASK)
406 #define ADC_SC1_DIFF_MASK                        0x20u
407 #define ADC_SC1_DIFF_SHIFT                       5
408 #define ADC_SC1_AIEN_MASK                        0x40u
409 #define ADC_SC1_AIEN_SHIFT                       6
410 #define ADC_SC1_COCO_MASK                        0x80u
411 #define ADC_SC1_COCO_SHIFT                       7
412 /* CFG1 Bit Fields */
413 #define ADC_CFG1_ADICLK_MASK                     0x3u
414 #define ADC_CFG1_ADICLK_SHIFT                    0
415 #define ADC_CFG1_ADICLK(x)                       (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_ADICLK_SHIFT))&ADC_CFG1_ADICLK_MASK)
416 #define ADC_CFG1_MODE_MASK                       0xCu
417 #define ADC_CFG1_MODE_SHIFT                      2
418 #define ADC_CFG1_MODE(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_MODE_SHIFT))&ADC_CFG1_MODE_MASK)
419 #define ADC_CFG1_ADLSMP_MASK                     0x10u
420 #define ADC_CFG1_ADLSMP_SHIFT                    4
421 #define ADC_CFG1_ADIV_MASK                       0x60u
422 #define ADC_CFG1_ADIV_SHIFT                      5
423 #define ADC_CFG1_ADIV(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CFG1_ADIV_SHIFT))&ADC_CFG1_ADIV_MASK)
424 #define ADC_CFG1_ADLPC_MASK                      0x80u
425 #define ADC_CFG1_ADLPC_SHIFT                     7
426 /* CFG2 Bit Fields */
427 #define ADC_CFG2_ADLSTS_MASK                     0x3u
428 #define ADC_CFG2_ADLSTS_SHIFT                    0
429 #define ADC_CFG2_ADLSTS(x)                       (((uint32_t)(((uint32_t)(x))<<ADC_CFG2_ADLSTS_SHIFT))&ADC_CFG2_ADLSTS_MASK)
430 #define ADC_CFG2_ADHSC_MASK                      0x4u
431 #define ADC_CFG2_ADHSC_SHIFT                     2
432 #define ADC_CFG2_ADACKEN_MASK                    0x8u
433 #define ADC_CFG2_ADACKEN_SHIFT                   3
434 #define ADC_CFG2_MUXSEL_MASK                     0x10u
435 #define ADC_CFG2_MUXSEL_SHIFT                    4
436 /* R Bit Fields */
437 #define ADC_R_D_MASK                             0xFFFFu
438 #define ADC_R_D_SHIFT                            0
439 #define ADC_R_D(x)                               (((uint32_t)(((uint32_t)(x))<<ADC_R_D_SHIFT))&ADC_R_D_MASK)
440 /* CV1 Bit Fields */
441 #define ADC_CV1_CV_MASK                          0xFFFFu
442 #define ADC_CV1_CV_SHIFT                         0
443 #define ADC_CV1_CV(x)                            (((uint32_t)(((uint32_t)(x))<<ADC_CV1_CV_SHIFT))&ADC_CV1_CV_MASK)
444 /* CV2 Bit Fields */
445 #define ADC_CV2_CV_MASK                          0xFFFFu
446 #define ADC_CV2_CV_SHIFT                         0
447 #define ADC_CV2_CV(x)                            (((uint32_t)(((uint32_t)(x))<<ADC_CV2_CV_SHIFT))&ADC_CV2_CV_MASK)
448 /* SC2 Bit Fields */
449 #define ADC_SC2_REFSEL_MASK                      0x3u
450 #define ADC_SC2_REFSEL_SHIFT                     0
451 #define ADC_SC2_REFSEL(x)                        (((uint32_t)(((uint32_t)(x))<<ADC_SC2_REFSEL_SHIFT))&ADC_SC2_REFSEL_MASK)
452 #define ADC_SC2_DMAEN_MASK                       0x4u
453 #define ADC_SC2_DMAEN_SHIFT                      2
454 #define ADC_SC2_ACREN_MASK                       0x8u
455 #define ADC_SC2_ACREN_SHIFT                      3
456 #define ADC_SC2_ACFGT_MASK                       0x10u
457 #define ADC_SC2_ACFGT_SHIFT                      4
458 #define ADC_SC2_ACFE_MASK                        0x20u
459 #define ADC_SC2_ACFE_SHIFT                       5
460 #define ADC_SC2_ADTRG_MASK                       0x40u
461 #define ADC_SC2_ADTRG_SHIFT                      6
462 #define ADC_SC2_ADACT_MASK                       0x80u
463 #define ADC_SC2_ADACT_SHIFT                      7
464 /* SC3 Bit Fields */
465 #define ADC_SC3_AVGS_MASK                        0x3u
466 #define ADC_SC3_AVGS_SHIFT                       0
467 #define ADC_SC3_AVGS(x)                          (((uint32_t)(((uint32_t)(x))<<ADC_SC3_AVGS_SHIFT))&ADC_SC3_AVGS_MASK)
468 #define ADC_SC3_AVGE_MASK                        0x4u
469 #define ADC_SC3_AVGE_SHIFT                       2
470 #define ADC_SC3_ADCO_MASK                        0x8u
471 #define ADC_SC3_ADCO_SHIFT                       3
472 #define ADC_SC3_CALF_MASK                        0x40u
473 #define ADC_SC3_CALF_SHIFT                       6
474 #define ADC_SC3_CAL_MASK                         0x80u
475 #define ADC_SC3_CAL_SHIFT                        7
476 /* OFS Bit Fields */
477 #define ADC_OFS_OFS_MASK                         0xFFFFu
478 #define ADC_OFS_OFS_SHIFT                        0
479 #define ADC_OFS_OFS(x)                           (((uint32_t)(((uint32_t)(x))<<ADC_OFS_OFS_SHIFT))&ADC_OFS_OFS_MASK)
480 /* PG Bit Fields */
481 #define ADC_PG_PG_MASK                           0xFFFFu
482 #define ADC_PG_PG_SHIFT                          0
483 #define ADC_PG_PG(x)                             (((uint32_t)(((uint32_t)(x))<<ADC_PG_PG_SHIFT))&ADC_PG_PG_MASK)
484 /* MG Bit Fields */
485 #define ADC_MG_MG_MASK                           0xFFFFu
486 #define ADC_MG_MG_SHIFT                          0
487 #define ADC_MG_MG(x)                             (((uint32_t)(((uint32_t)(x))<<ADC_MG_MG_SHIFT))&ADC_MG_MG_MASK)
488 /* CLPD Bit Fields */
489 #define ADC_CLPD_CLPD_MASK                       0x3Fu
490 #define ADC_CLPD_CLPD_SHIFT                      0
491 #define ADC_CLPD_CLPD(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLPD_CLPD_SHIFT))&ADC_CLPD_CLPD_MASK)
492 /* CLPS Bit Fields */
493 #define ADC_CLPS_CLPS_MASK                       0x3Fu
494 #define ADC_CLPS_CLPS_SHIFT                      0
495 #define ADC_CLPS_CLPS(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLPS_CLPS_SHIFT))&ADC_CLPS_CLPS_MASK)
496 /* CLP4 Bit Fields */
497 #define ADC_CLP4_CLP4_MASK                       0x3FFu
498 #define ADC_CLP4_CLP4_SHIFT                      0
499 #define ADC_CLP4_CLP4(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLP4_CLP4_SHIFT))&ADC_CLP4_CLP4_MASK)
500 /* CLP3 Bit Fields */
501 #define ADC_CLP3_CLP3_MASK                       0x1FFu
502 #define ADC_CLP3_CLP3_SHIFT                      0
503 #define ADC_CLP3_CLP3(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLP3_CLP3_SHIFT))&ADC_CLP3_CLP3_MASK)
504 /* CLP2 Bit Fields */
505 #define ADC_CLP2_CLP2_MASK                       0xFFu
506 #define ADC_CLP2_CLP2_SHIFT                      0
507 #define ADC_CLP2_CLP2(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLP2_CLP2_SHIFT))&ADC_CLP2_CLP2_MASK)
508 /* CLP1 Bit Fields */
509 #define ADC_CLP1_CLP1_MASK                       0x7Fu
510 #define ADC_CLP1_CLP1_SHIFT                      0
511 #define ADC_CLP1_CLP1(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLP1_CLP1_SHIFT))&ADC_CLP1_CLP1_MASK)
512 /* CLP0 Bit Fields */
513 #define ADC_CLP0_CLP0_MASK                       0x3Fu
514 #define ADC_CLP0_CLP0_SHIFT                      0
515 #define ADC_CLP0_CLP0(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLP0_CLP0_SHIFT))&ADC_CLP0_CLP0_MASK)
516 /* CLMD Bit Fields */
517 #define ADC_CLMD_CLMD_MASK                       0x3Fu
518 #define ADC_CLMD_CLMD_SHIFT                      0
519 #define ADC_CLMD_CLMD(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLMD_CLMD_SHIFT))&ADC_CLMD_CLMD_MASK)
520 /* CLMS Bit Fields */
521 #define ADC_CLMS_CLMS_MASK                       0x3Fu
522 #define ADC_CLMS_CLMS_SHIFT                      0
523 #define ADC_CLMS_CLMS(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLMS_CLMS_SHIFT))&ADC_CLMS_CLMS_MASK)
524 /* CLM4 Bit Fields */
525 #define ADC_CLM4_CLM4_MASK                       0x3FFu
526 #define ADC_CLM4_CLM4_SHIFT                      0
527 #define ADC_CLM4_CLM4(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLM4_CLM4_SHIFT))&ADC_CLM4_CLM4_MASK)
528 /* CLM3 Bit Fields */
529 #define ADC_CLM3_CLM3_MASK                       0x1FFu
530 #define ADC_CLM3_CLM3_SHIFT                      0
531 #define ADC_CLM3_CLM3(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLM3_CLM3_SHIFT))&ADC_CLM3_CLM3_MASK)
532 /* CLM2 Bit Fields */
533 #define ADC_CLM2_CLM2_MASK                       0xFFu
534 #define ADC_CLM2_CLM2_SHIFT                      0
535 #define ADC_CLM2_CLM2(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLM2_CLM2_SHIFT))&ADC_CLM2_CLM2_MASK)
536 /* CLM1 Bit Fields */
537 #define ADC_CLM1_CLM1_MASK                       0x7Fu
538 #define ADC_CLM1_CLM1_SHIFT                      0
539 #define ADC_CLM1_CLM1(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLM1_CLM1_SHIFT))&ADC_CLM1_CLM1_MASK)
540 /* CLM0 Bit Fields */
541 #define ADC_CLM0_CLM0_MASK                       0x3Fu
542 #define ADC_CLM0_CLM0_SHIFT                      0
543 #define ADC_CLM0_CLM0(x)                         (((uint32_t)(((uint32_t)(x))<<ADC_CLM0_CLM0_SHIFT))&ADC_CLM0_CLM0_MASK)
544
545 /*!
546  * @}
547  */ /* end of group ADC_Register_Masks */
548
549
550 /* ADC - Peripheral instance base addresses */
551 /** Peripheral ADC0 base address */
552 #define ADC0_BASE                                (0x4003B000u)
553 /** Peripheral ADC0 base pointer */
554 #define ADC0                                     ((ADC_Type *)ADC0_BASE)
555 #define ADC0_BASE_PTR                            (ADC0)
556 /** Peripheral ADC1 base address */
557 #define ADC1_BASE                                (0x40027000u)
558 /** Peripheral ADC1 base pointer */
559 #define ADC1                                     ((ADC_Type *)ADC1_BASE)
560 #define ADC1_BASE_PTR                            (ADC1)
561 /** Array initializer of ADC peripheral base addresses */
562 #define ADC_BASE_ADDRS                           { ADC0_BASE, ADC1_BASE }
563 /** Array initializer of ADC peripheral base pointers */
564 #define ADC_BASE_PTRS                            { ADC0, ADC1 }
565 /** Interrupt vectors for the ADC peripheral type */
566 #define ADC_IRQS                                 { ADC0_IRQn, ADC1_IRQn }
567
568 /* ----------------------------------------------------------------------------
569    -- ADC - Register accessor macros
570    ---------------------------------------------------------------------------- */
571
572 /*!
573  * @addtogroup ADC_Register_Accessor_Macros ADC - Register accessor macros
574  * @{
575  */
576
577
578 /* ADC - Register instance definitions */
579 /* ADC0 */
580 #define ADC0_SC1A                                ADC_SC1_REG(ADC0,0)
581 #define ADC0_SC1B                                ADC_SC1_REG(ADC0,1)
582 #define ADC0_CFG1                                ADC_CFG1_REG(ADC0)
583 #define ADC0_CFG2                                ADC_CFG2_REG(ADC0)
584 #define ADC0_RA                                  ADC_R_REG(ADC0,0)
585 #define ADC0_RB                                  ADC_R_REG(ADC0,1)
586 #define ADC0_CV1                                 ADC_CV1_REG(ADC0)
587 #define ADC0_CV2                                 ADC_CV2_REG(ADC0)
588 #define ADC0_SC2                                 ADC_SC2_REG(ADC0)
589 #define ADC0_SC3                                 ADC_SC3_REG(ADC0)
590 #define ADC0_OFS                                 ADC_OFS_REG(ADC0)
591 #define ADC0_PG                                  ADC_PG_REG(ADC0)
592 #define ADC0_MG                                  ADC_MG_REG(ADC0)
593 #define ADC0_CLPD                                ADC_CLPD_REG(ADC0)
594 #define ADC0_CLPS                                ADC_CLPS_REG(ADC0)
595 #define ADC0_CLP4                                ADC_CLP4_REG(ADC0)
596 #define ADC0_CLP3                                ADC_CLP3_REG(ADC0)
597 #define ADC0_CLP2                                ADC_CLP2_REG(ADC0)
598 #define ADC0_CLP1                                ADC_CLP1_REG(ADC0)
599 #define ADC0_CLP0                                ADC_CLP0_REG(ADC0)
600 #define ADC0_CLMD                                ADC_CLMD_REG(ADC0)
601 #define ADC0_CLMS                                ADC_CLMS_REG(ADC0)
602 #define ADC0_CLM4                                ADC_CLM4_REG(ADC0)
603 #define ADC0_CLM3                                ADC_CLM3_REG(ADC0)
604 #define ADC0_CLM2                                ADC_CLM2_REG(ADC0)
605 #define ADC0_CLM1                                ADC_CLM1_REG(ADC0)
606 #define ADC0_CLM0                                ADC_CLM0_REG(ADC0)
607 /* ADC1 */
608 #define ADC1_SC1A                                ADC_SC1_REG(ADC1,0)
609 #define ADC1_SC1B                                ADC_SC1_REG(ADC1,1)
610 #define ADC1_CFG1                                ADC_CFG1_REG(ADC1)
611 #define ADC1_CFG2                                ADC_CFG2_REG(ADC1)
612 #define ADC1_RA                                  ADC_R_REG(ADC1,0)
613 #define ADC1_RB                                  ADC_R_REG(ADC1,1)
614 #define ADC1_CV1                                 ADC_CV1_REG(ADC1)
615 #define ADC1_CV2                                 ADC_CV2_REG(ADC1)
616 #define ADC1_SC2                                 ADC_SC2_REG(ADC1)
617 #define ADC1_SC3                                 ADC_SC3_REG(ADC1)
618 #define ADC1_OFS                                 ADC_OFS_REG(ADC1)
619 #define ADC1_PG                                  ADC_PG_REG(ADC1)
620 #define ADC1_MG                                  ADC_MG_REG(ADC1)
621 #define ADC1_CLPD                                ADC_CLPD_REG(ADC1)
622 #define ADC1_CLPS                                ADC_CLPS_REG(ADC1)
623 #define ADC1_CLP4                                ADC_CLP4_REG(ADC1)
624 #define ADC1_CLP3                                ADC_CLP3_REG(ADC1)
625 #define ADC1_CLP2                                ADC_CLP2_REG(ADC1)
626 #define ADC1_CLP1                                ADC_CLP1_REG(ADC1)
627 #define ADC1_CLP0                                ADC_CLP0_REG(ADC1)
628 #define ADC1_CLMD                                ADC_CLMD_REG(ADC1)
629 #define ADC1_CLMS                                ADC_CLMS_REG(ADC1)
630 #define ADC1_CLM4                                ADC_CLM4_REG(ADC1)
631 #define ADC1_CLM3                                ADC_CLM3_REG(ADC1)
632 #define ADC1_CLM2                                ADC_CLM2_REG(ADC1)
633 #define ADC1_CLM1                                ADC_CLM1_REG(ADC1)
634 #define ADC1_CLM0                                ADC_CLM0_REG(ADC1)
635
636 /* ADC - Register array accessors */
637 #define ADC0_SC1(index)                          ADC_SC1_REG(ADC0,index)
638 #define ADC1_SC1(index)                          ADC_SC1_REG(ADC1,index)
639 #define ADC0_R(index)                            ADC_R_REG(ADC0,index)
640 #define ADC1_R(index)                            ADC_R_REG(ADC1,index)
641
642 /*!
643  * @}
644  */ /* end of group ADC_Register_Accessor_Macros */
645
646
647 /*!
648  * @}
649  */ /* end of group ADC_Peripheral_Access_Layer */
650
651
652 /* ----------------------------------------------------------------------------
653    -- CMP Peripheral Access Layer
654    ---------------------------------------------------------------------------- */
655
656 /*!
657  * @addtogroup CMP_Peripheral_Access_Layer CMP Peripheral Access Layer
658  * @{
659  */
660
661 /** CMP - Register Layout Typedef */
662 typedef struct {
663   __IO uint8_t CR0;                                /**< CMP Control Register 0, offset: 0x0 */
664   __IO uint8_t CR1;                                /**< CMP Control Register 1, offset: 0x1 */
665   __IO uint8_t FPR;                                /**< CMP Filter Period Register, offset: 0x2 */
666   __IO uint8_t SCR;                                /**< CMP Status and Control Register, offset: 0x3 */
667   __IO uint8_t DACCR;                              /**< DAC Control Register, offset: 0x4 */
668   __IO uint8_t MUXCR;                              /**< MUX Control Register, offset: 0x5 */
669 } CMP_Type, *CMP_MemMapPtr;
670
671 /* ----------------------------------------------------------------------------
672    -- CMP - Register accessor macros
673    ---------------------------------------------------------------------------- */
674
675 /*!
676  * @addtogroup CMP_Register_Accessor_Macros CMP - Register accessor macros
677  * @{
678  */
679
680
681 /* CMP - Register accessors */
682 #define CMP_CR0_REG(base)                        ((base)->CR0)
683 #define CMP_CR1_REG(base)                        ((base)->CR1)
684 #define CMP_FPR_REG(base)                        ((base)->FPR)
685 #define CMP_SCR_REG(base)                        ((base)->SCR)
686 #define CMP_DACCR_REG(base)                      ((base)->DACCR)
687 #define CMP_MUXCR_REG(base)                      ((base)->MUXCR)
688
689 /*!
690  * @}
691  */ /* end of group CMP_Register_Accessor_Macros */
692
693
694 /* ----------------------------------------------------------------------------
695    -- CMP Register Masks
696    ---------------------------------------------------------------------------- */
697
698 /*!
699  * @addtogroup CMP_Register_Masks CMP Register Masks
700  * @{
701  */
702
703 /* CR0 Bit Fields */
704 #define CMP_CR0_HYSTCTR_MASK                     0x3u
705 #define CMP_CR0_HYSTCTR_SHIFT                    0
706 #define CMP_CR0_HYSTCTR(x)                       (((uint8_t)(((uint8_t)(x))<<CMP_CR0_HYSTCTR_SHIFT))&CMP_CR0_HYSTCTR_MASK)
707 #define CMP_CR0_FILTER_CNT_MASK                  0x70u
708 #define CMP_CR0_FILTER_CNT_SHIFT                 4
709 #define CMP_CR0_FILTER_CNT(x)                    (((uint8_t)(((uint8_t)(x))<<CMP_CR0_FILTER_CNT_SHIFT))&CMP_CR0_FILTER_CNT_MASK)
710 /* CR1 Bit Fields */
711 #define CMP_CR1_EN_MASK                          0x1u
712 #define CMP_CR1_EN_SHIFT                         0
713 #define CMP_CR1_OPE_MASK                         0x2u
714 #define CMP_CR1_OPE_SHIFT                        1
715 #define CMP_CR1_COS_MASK                         0x4u
716 #define CMP_CR1_COS_SHIFT                        2
717 #define CMP_CR1_INV_MASK                         0x8u
718 #define CMP_CR1_INV_SHIFT                        3
719 #define CMP_CR1_PMODE_MASK                       0x10u
720 #define CMP_CR1_PMODE_SHIFT                      4
721 #define CMP_CR1_TRIGM_MASK                       0x20u
722 #define CMP_CR1_TRIGM_SHIFT                      5
723 #define CMP_CR1_WE_MASK                          0x40u
724 #define CMP_CR1_WE_SHIFT                         6
725 #define CMP_CR1_SE_MASK                          0x80u
726 #define CMP_CR1_SE_SHIFT                         7
727 /* FPR Bit Fields */
728 #define CMP_FPR_FILT_PER_MASK                    0xFFu
729 #define CMP_FPR_FILT_PER_SHIFT                   0
730 #define CMP_FPR_FILT_PER(x)                      (((uint8_t)(((uint8_t)(x))<<CMP_FPR_FILT_PER_SHIFT))&CMP_FPR_FILT_PER_MASK)
731 /* SCR Bit Fields */
732 #define CMP_SCR_COUT_MASK                        0x1u
733 #define CMP_SCR_COUT_SHIFT                       0
734 #define CMP_SCR_CFF_MASK                         0x2u
735 #define CMP_SCR_CFF_SHIFT                        1
736 #define CMP_SCR_CFR_MASK                         0x4u
737 #define CMP_SCR_CFR_SHIFT                        2
738 #define CMP_SCR_IEF_MASK                         0x8u
739 #define CMP_SCR_IEF_SHIFT                        3
740 #define CMP_SCR_IER_MASK                         0x10u
741 #define CMP_SCR_IER_SHIFT                        4
742 #define CMP_SCR_DMAEN_MASK                       0x40u
743 #define CMP_SCR_DMAEN_SHIFT                      6
744 /* DACCR Bit Fields */
745 #define CMP_DACCR_VOSEL_MASK                     0x3Fu
746 #define CMP_DACCR_VOSEL_SHIFT                    0
747 #define CMP_DACCR_VOSEL(x)                       (((uint8_t)(((uint8_t)(x))<<CMP_DACCR_VOSEL_SHIFT))&CMP_DACCR_VOSEL_MASK)
748 #define CMP_DACCR_VRSEL_MASK                     0x40u
749 #define CMP_DACCR_VRSEL_SHIFT                    6
750 #define CMP_DACCR_DACEN_MASK                     0x80u
751 #define CMP_DACCR_DACEN_SHIFT                    7
752 /* MUXCR Bit Fields */
753 #define CMP_MUXCR_MSEL_MASK                      0x7u
754 #define CMP_MUXCR_MSEL_SHIFT                     0
755 #define CMP_MUXCR_MSEL(x)                        (((uint8_t)(((uint8_t)(x))<<CMP_MUXCR_MSEL_SHIFT))&CMP_MUXCR_MSEL_MASK)
756 #define CMP_MUXCR_PSEL_MASK                      0x38u
757 #define CMP_MUXCR_PSEL_SHIFT                     3
758 #define CMP_MUXCR_PSEL(x)                        (((uint8_t)(((uint8_t)(x))<<CMP_MUXCR_PSEL_SHIFT))&CMP_MUXCR_PSEL_MASK)
759
760 /*!
761  * @}
762  */ /* end of group CMP_Register_Masks */
763
764
765 /* CMP - Peripheral instance base addresses */
766 /** Peripheral CMP0 base address */
767 #define CMP0_BASE                                (0x40073000u)
768 /** Peripheral CMP0 base pointer */
769 #define CMP0                                     ((CMP_Type *)CMP0_BASE)
770 #define CMP0_BASE_PTR                            (CMP0)
771 /** Peripheral CMP1 base address */
772 #define CMP1_BASE                                (0x40073008u)
773 /** Peripheral CMP1 base pointer */
774 #define CMP1                                     ((CMP_Type *)CMP1_BASE)
775 #define CMP1_BASE_PTR                            (CMP1)
776 /** Array initializer of CMP peripheral base addresses */
777 #define CMP_BASE_ADDRS                           { CMP0_BASE, CMP1_BASE }
778 /** Array initializer of CMP peripheral base pointers */
779 #define CMP_BASE_PTRS                            { CMP0, CMP1 }
780 /** Interrupt vectors for the CMP peripheral type */
781 #define CMP_IRQS                                 { CMP0_IRQn, CMP1_IRQn }
782
783 /* ----------------------------------------------------------------------------
784    -- CMP - Register accessor macros
785    ---------------------------------------------------------------------------- */
786
787 /*!
788  * @addtogroup CMP_Register_Accessor_Macros CMP - Register accessor macros
789  * @{
790  */
791
792
793 /* CMP - Register instance definitions */
794 /* CMP0 */
795 #define CMP0_CR0                                 CMP_CR0_REG(CMP0)
796 #define CMP0_CR1                                 CMP_CR1_REG(CMP0)
797 #define CMP0_FPR                                 CMP_FPR_REG(CMP0)
798 #define CMP0_SCR                                 CMP_SCR_REG(CMP0)
799 #define CMP0_DACCR                               CMP_DACCR_REG(CMP0)
800 #define CMP0_MUXCR                               CMP_MUXCR_REG(CMP0)
801 /* CMP1 */
802 #define CMP1_CR0                                 CMP_CR0_REG(CMP1)
803 #define CMP1_CR1                                 CMP_CR1_REG(CMP1)
804 #define CMP1_FPR                                 CMP_FPR_REG(CMP1)
805 #define CMP1_SCR                                 CMP_SCR_REG(CMP1)
806 #define CMP1_DACCR                               CMP_DACCR_REG(CMP1)
807 #define CMP1_MUXCR                               CMP_MUXCR_REG(CMP1)
808
809 /*!
810  * @}
811  */ /* end of group CMP_Register_Accessor_Macros */
812
813
814 /*!
815  * @}
816  */ /* end of group CMP_Peripheral_Access_Layer */
817
818
819 /* ----------------------------------------------------------------------------
820    -- CRC Peripheral Access Layer
821    ---------------------------------------------------------------------------- */
822
823 /*!
824  * @addtogroup CRC_Peripheral_Access_Layer CRC Peripheral Access Layer
825  * @{
826  */
827
828 /** CRC - Register Layout Typedef */
829 typedef struct {
830   union {                                          /* offset: 0x0 */
831     struct {                                         /* offset: 0x0 */
832       __IO uint16_t DATAL;                             /**< CRC_DATAL register., offset: 0x0 */
833       __IO uint16_t DATAH;                             /**< CRC_DATAH register., offset: 0x2 */
834     } ACCESS16BIT;
835     __IO uint32_t DATA;                              /**< CRC Data register, offset: 0x0 */
836     struct {                                         /* offset: 0x0 */
837       __IO uint8_t DATALL;                             /**< CRC_DATALL register., offset: 0x0 */
838       __IO uint8_t DATALU;                             /**< CRC_DATALU register., offset: 0x1 */
839       __IO uint8_t DATAHL;                             /**< CRC_DATAHL register., offset: 0x2 */
840       __IO uint8_t DATAHU;                             /**< CRC_DATAHU register., offset: 0x3 */
841     } ACCESS8BIT;
842   };
843   union {                                          /* offset: 0x4 */
844     struct {                                         /* offset: 0x4 */
845       __IO uint16_t GPOLYL;                            /**< CRC_GPOLYL register., offset: 0x4 */
846       __IO uint16_t GPOLYH;                            /**< CRC_GPOLYH register., offset: 0x6 */
847     } GPOLY_ACCESS16BIT;
848     __IO uint32_t GPOLY;                             /**< CRC Polynomial register, offset: 0x4 */
849     struct {                                         /* offset: 0x4 */
850       __IO uint8_t GPOLYLL;                            /**< CRC_GPOLYLL register., offset: 0x4 */
851       __IO uint8_t GPOLYLU;                            /**< CRC_GPOLYLU register., offset: 0x5 */
852       __IO uint8_t GPOLYHL;                            /**< CRC_GPOLYHL register., offset: 0x6 */
853       __IO uint8_t GPOLYHU;                            /**< CRC_GPOLYHU register., offset: 0x7 */
854     } GPOLY_ACCESS8BIT;
855   };
856   union {                                          /* offset: 0x8 */
857     __IO uint32_t CTRL;                              /**< CRC Control register, offset: 0x8 */
858     struct {                                         /* offset: 0x8 */
859            uint8_t RESERVED_0[3];
860       __IO uint8_t CTRLHU;                             /**< CRC_CTRLHU register., offset: 0xB */
861     } CTRL_ACCESS8BIT;
862   };
863 } CRC_Type, *CRC_MemMapPtr;
864
865 /* ----------------------------------------------------------------------------
866    -- CRC - Register accessor macros
867    ---------------------------------------------------------------------------- */
868
869 /*!
870  * @addtogroup CRC_Register_Accessor_Macros CRC - Register accessor macros
871  * @{
872  */
873
874
875 /* CRC - Register accessors */
876 #define CRC_DATAL_REG(base)                      ((base)->ACCESS16BIT.DATAL)
877 #define CRC_DATAH_REG(base)                      ((base)->ACCESS16BIT.DATAH)
878 #define CRC_DATA_REG(base)                       ((base)->DATA)
879 #define CRC_DATALL_REG(base)                     ((base)->ACCESS8BIT.DATALL)
880 #define CRC_DATALU_REG(base)                     ((base)->ACCESS8BIT.DATALU)
881 #define CRC_DATAHL_REG(base)                     ((base)->ACCESS8BIT.DATAHL)
882 #define CRC_DATAHU_REG(base)                     ((base)->ACCESS8BIT.DATAHU)
883 #define CRC_GPOLYL_REG(base)                     ((base)->GPOLY_ACCESS16BIT.GPOLYL)
884 #define CRC_GPOLYH_REG(base)                     ((base)->GPOLY_ACCESS16BIT.GPOLYH)
885 #define CRC_GPOLY_REG(base)                      ((base)->GPOLY)
886 #define CRC_GPOLYLL_REG(base)                    ((base)->GPOLY_ACCESS8BIT.GPOLYLL)
887 #define CRC_GPOLYLU_REG(base)                    ((base)->GPOLY_ACCESS8BIT.GPOLYLU)
888 #define CRC_GPOLYHL_REG(base)                    ((base)->GPOLY_ACCESS8BIT.GPOLYHL)
889 #define CRC_GPOLYHU_REG(base)                    ((base)->GPOLY_ACCESS8BIT.GPOLYHU)
890 #define CRC_CTRL_REG(base)                       ((base)->CTRL)
891 #define CRC_CTRLHU_REG(base)                     ((base)->CTRL_ACCESS8BIT.CTRLHU)
892
893 /*!
894  * @}
895  */ /* end of group CRC_Register_Accessor_Macros */
896
897
898 /* ----------------------------------------------------------------------------
899    -- CRC Register Masks
900    ---------------------------------------------------------------------------- */
901
902 /*!
903  * @addtogroup CRC_Register_Masks CRC Register Masks
904  * @{
905  */
906
907 /* DATAL Bit Fields */
908 #define CRC_DATAL_DATAL_MASK                     0xFFFFu
909 #define CRC_DATAL_DATAL_SHIFT                    0
910 #define CRC_DATAL_DATAL(x)                       (((uint16_t)(((uint16_t)(x))<<CRC_DATAL_DATAL_SHIFT))&CRC_DATAL_DATAL_MASK)
911 /* DATAH Bit Fields */
912 #define CRC_DATAH_DATAH_MASK                     0xFFFFu
913 #define CRC_DATAH_DATAH_SHIFT                    0
914 #define CRC_DATAH_DATAH(x)                       (((uint16_t)(((uint16_t)(x))<<CRC_DATAH_DATAH_SHIFT))&CRC_DATAH_DATAH_MASK)
915 /* DATA Bit Fields */
916 #define CRC_DATA_LL_MASK                         0xFFu
917 #define CRC_DATA_LL_SHIFT                        0
918 #define CRC_DATA_LL(x)                           (((uint32_t)(((uint32_t)(x))<<CRC_DATA_LL_SHIFT))&CRC_DATA_LL_MASK)
919 #define CRC_DATA_LU_MASK                         0xFF00u
920 #define CRC_DATA_LU_SHIFT                        8
921 #define CRC_DATA_LU(x)                           (((uint32_t)(((uint32_t)(x))<<CRC_DATA_LU_SHIFT))&CRC_DATA_LU_MASK)
922 #define CRC_DATA_HL_MASK                         0xFF0000u
923 #define CRC_DATA_HL_SHIFT                        16
924 #define CRC_DATA_HL(x)                           (((uint32_t)(((uint32_t)(x))<<CRC_DATA_HL_SHIFT))&CRC_DATA_HL_MASK)
925 #define CRC_DATA_HU_MASK                         0xFF000000u
926 #define CRC_DATA_HU_SHIFT                        24
927 #define CRC_DATA_HU(x)                           (((uint32_t)(((uint32_t)(x))<<CRC_DATA_HU_SHIFT))&CRC_DATA_HU_MASK)
928 /* DATALL Bit Fields */
929 #define CRC_DATALL_DATALL_MASK                   0xFFu
930 #define CRC_DATALL_DATALL_SHIFT                  0
931 #define CRC_DATALL_DATALL(x)                     (((uint8_t)(((uint8_t)(x))<<CRC_DATALL_DATALL_SHIFT))&CRC_DATALL_DATALL_MASK)
932 /* DATALU Bit Fields */
933 #define CRC_DATALU_DATALU_MASK                   0xFFu
934 #define CRC_DATALU_DATALU_SHIFT                  0
935 #define CRC_DATALU_DATALU(x)                     (((uint8_t)(((uint8_t)(x))<<CRC_DATALU_DATALU_SHIFT))&CRC_DATALU_DATALU_MASK)
936 /* DATAHL Bit Fields */
937 #define CRC_DATAHL_DATAHL_MASK                   0xFFu
938 #define CRC_DATAHL_DATAHL_SHIFT                  0
939 #define CRC_DATAHL_DATAHL(x)                     (((uint8_t)(((uint8_t)(x))<<CRC_DATAHL_DATAHL_SHIFT))&CRC_DATAHL_DATAHL_MASK)
940 /* DATAHU Bit Fields */
941 #define CRC_DATAHU_DATAHU_MASK                   0xFFu
942 #define CRC_DATAHU_DATAHU_SHIFT                  0
943 #define CRC_DATAHU_DATAHU(x)                     (((uint8_t)(((uint8_t)(x))<<CRC_DATAHU_DATAHU_SHIFT))&CRC_DATAHU_DATAHU_MASK)
944 /* GPOLYL Bit Fields */
945 #define CRC_GPOLYL_GPOLYL_MASK                   0xFFFFu
946 #define CRC_GPOLYL_GPOLYL_SHIFT                  0
947 #define CRC_GPOLYL_GPOLYL(x)                     (((uint16_t)(((uint16_t)(x))<<CRC_GPOLYL_GPOLYL_SHIFT))&CRC_GPOLYL_GPOLYL_MASK)
948 /* GPOLYH Bit Fields */
949 #define CRC_GPOLYH_GPOLYH_MASK                   0xFFFFu
950 #define CRC_GPOLYH_GPOLYH_SHIFT                  0
951 #define CRC_GPOLYH_GPOLYH(x)                     (((uint16_t)(((uint16_t)(x))<<CRC_GPOLYH_GPOLYH_SHIFT))&CRC_GPOLYH_GPOLYH_MASK)
952 /* GPOLY Bit Fields */
953 #define CRC_GPOLY_LOW_MASK                       0xFFFFu
954 #define CRC_GPOLY_LOW_SHIFT                      0
955 #define CRC_GPOLY_LOW(x)                         (((uint32_t)(((uint32_t)(x))<<CRC_GPOLY_LOW_SHIFT))&CRC_GPOLY_LOW_MASK)
956 #define CRC_GPOLY_HIGH_MASK                      0xFFFF0000u
957 #define CRC_GPOLY_HIGH_SHIFT                     16
958 #define CRC_GPOLY_HIGH(x)                        (((uint32_t)(((uint32_t)(x))<<CRC_GPOLY_HIGH_SHIFT))&CRC_GPOLY_HIGH_MASK)
959 /* GPOLYLL Bit Fields */
960 #define CRC_GPOLYLL_GPOLYLL_MASK                 0xFFu
961 #define CRC_GPOLYLL_GPOLYLL_SHIFT                0
962 #define CRC_GPOLYLL_GPOLYLL(x)                   (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYLL_GPOLYLL_SHIFT))&CRC_GPOLYLL_GPOLYLL_MASK)
963 /* GPOLYLU Bit Fields */
964 #define CRC_GPOLYLU_GPOLYLU_MASK                 0xFFu
965 #define CRC_GPOLYLU_GPOLYLU_SHIFT                0
966 #define CRC_GPOLYLU_GPOLYLU(x)                   (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYLU_GPOLYLU_SHIFT))&CRC_GPOLYLU_GPOLYLU_MASK)
967 /* GPOLYHL Bit Fields */
968 #define CRC_GPOLYHL_GPOLYHL_MASK                 0xFFu
969 #define CRC_GPOLYHL_GPOLYHL_SHIFT                0
970 #define CRC_GPOLYHL_GPOLYHL(x)                   (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYHL_GPOLYHL_SHIFT))&CRC_GPOLYHL_GPOLYHL_MASK)
971 /* GPOLYHU Bit Fields */
972 #define CRC_GPOLYHU_GPOLYHU_MASK                 0xFFu
973 #define CRC_GPOLYHU_GPOLYHU_SHIFT                0
974 #define CRC_GPOLYHU_GPOLYHU(x)                   (((uint8_t)(((uint8_t)(x))<<CRC_GPOLYHU_GPOLYHU_SHIFT))&CRC_GPOLYHU_GPOLYHU_MASK)
975 /* CTRL Bit Fields */
976 #define CRC_CTRL_TCRC_MASK                       0x1000000u
977 #define CRC_CTRL_TCRC_SHIFT                      24
978 #define CRC_CTRL_WAS_MASK                        0x2000000u
979 #define CRC_CTRL_WAS_SHIFT                       25
980 #define CRC_CTRL_FXOR_MASK                       0x4000000u
981 #define CRC_CTRL_FXOR_SHIFT                      26
982 #define CRC_CTRL_TOTR_MASK                       0x30000000u
983 #define CRC_CTRL_TOTR_SHIFT                      28
984 #define CRC_CTRL_TOTR(x)                         (((uint32_t)(((uint32_t)(x))<<CRC_CTRL_TOTR_SHIFT))&CRC_CTRL_TOTR_MASK)
985 #define CRC_CTRL_TOT_MASK                        0xC0000000u
986 #define CRC_CTRL_TOT_SHIFT                       30
987 #define CRC_CTRL_TOT(x)                          (((uint32_t)(((uint32_t)(x))<<CRC_CTRL_TOT_SHIFT))&CRC_CTRL_TOT_MASK)
988 /* CTRLHU Bit Fields */
989 #define CRC_CTRLHU_TCRC_MASK                     0x1u
990 #define CRC_CTRLHU_TCRC_SHIFT                    0
991 #define CRC_CTRLHU_WAS_MASK                      0x2u
992 #define CRC_CTRLHU_WAS_SHIFT                     1
993 #define CRC_CTRLHU_FXOR_MASK                     0x4u
994 #define CRC_CTRLHU_FXOR_SHIFT                    2
995 #define CRC_CTRLHU_TOTR_MASK                     0x30u
996 #define CRC_CTRLHU_TOTR_SHIFT                    4
997 #define CRC_CTRLHU_TOTR(x)                       (((uint8_t)(((uint8_t)(x))<<CRC_CTRLHU_TOTR_SHIFT))&CRC_CTRLHU_TOTR_MASK)
998 #define CRC_CTRLHU_TOT_MASK                      0xC0u
999 #define CRC_CTRLHU_TOT_SHIFT                     6
1000 #define CRC_CTRLHU_TOT(x)                        (((uint8_t)(((uint8_t)(x))<<CRC_CTRLHU_TOT_SHIFT))&CRC_CTRLHU_TOT_MASK)
1001
1002 /*!
1003  * @}
1004  */ /* end of group CRC_Register_Masks */
1005
1006
1007 /* CRC - Peripheral instance base addresses */
1008 /** Peripheral CRC base address */
1009 #define CRC_BASE                                 (0x40032000u)
1010 /** Peripheral CRC base pointer */
1011 #define CRC0                                     ((CRC_Type *)CRC_BASE)
1012 #define CRC_BASE_PTR                             (CRC0)
1013 /** Array initializer of CRC peripheral base addresses */
1014 #define CRC_BASE_ADDRS                           { CRC_BASE }
1015 /** Array initializer of CRC peripheral base pointers */
1016 #define CRC_BASE_PTRS                            { CRC0 }
1017
1018 /* ----------------------------------------------------------------------------
1019    -- CRC - Register accessor macros
1020    ---------------------------------------------------------------------------- */
1021
1022 /*!
1023  * @addtogroup CRC_Register_Accessor_Macros CRC - Register accessor macros
1024  * @{
1025  */
1026
1027
1028 /* CRC - Register instance definitions */
1029 /* CRC */
1030 #define CRC_DATA                                 CRC_DATA_REG(CRC0)
1031 #define CRC_DATAL                                CRC_DATAL_REG(CRC0)
1032 #define CRC_DATALL                               CRC_DATALL_REG(CRC0)
1033 #define CRC_DATALU                               CRC_DATALU_REG(CRC0)
1034 #define CRC_DATAH                                CRC_DATAH_REG(CRC0)
1035 #define CRC_DATAHL                               CRC_DATAHL_REG(CRC0)
1036 #define CRC_DATAHU                               CRC_DATAHU_REG(CRC0)
1037 #define CRC_GPOLY                                CRC_GPOLY_REG(CRC0)
1038 #define CRC_GPOLYL                               CRC_GPOLYL_REG(CRC0)
1039 #define CRC_GPOLYLL                              CRC_GPOLYLL_REG(CRC0)
1040 #define CRC_GPOLYLU                              CRC_GPOLYLU_REG(CRC0)
1041 #define CRC_GPOLYH                               CRC_GPOLYH_REG(CRC0)
1042 #define CRC_GPOLYHL                              CRC_GPOLYHL_REG(CRC0)
1043 #define CRC_GPOLYHU                              CRC_GPOLYHU_REG(CRC0)
1044 #define CRC_CTRL                                 CRC_CTRL_REG(CRC0)
1045 #define CRC_CTRLHU                               CRC_CTRLHU_REG(CRC0)
1046
1047 /*!
1048  * @}
1049  */ /* end of group CRC_Register_Accessor_Macros */
1050
1051
1052 /*!
1053  * @}
1054  */ /* end of group CRC_Peripheral_Access_Layer */
1055
1056
1057 /* ----------------------------------------------------------------------------
1058    -- DAC Peripheral Access Layer
1059    ---------------------------------------------------------------------------- */
1060
1061 /*!
1062  * @addtogroup DAC_Peripheral_Access_Layer DAC Peripheral Access Layer
1063  * @{
1064  */
1065
1066 /** DAC - Register Layout Typedef */
1067 typedef struct {
1068   struct {                                         /* offset: 0x0, array step: 0x2 */
1069     __IO uint8_t DATL;                               /**< DAC Data Low Register, array offset: 0x0, array step: 0x2 */
1070     __IO uint8_t DATH;                               /**< DAC Data High Register, array offset: 0x1, array step: 0x2 */
1071   } DAT[16];
1072   __IO uint8_t SR;                                 /**< DAC Status Register, offset: 0x20 */
1073   __IO uint8_t C0;                                 /**< DAC Control Register, offset: 0x21 */
1074   __IO uint8_t C1;                                 /**< DAC Control Register 1, offset: 0x22 */
1075   __IO uint8_t C2;                                 /**< DAC Control Register 2, offset: 0x23 */
1076 } DAC_Type, *DAC_MemMapPtr;
1077
1078 /* ----------------------------------------------------------------------------
1079    -- DAC - Register accessor macros
1080    ---------------------------------------------------------------------------- */
1081
1082 /*!
1083  * @addtogroup DAC_Register_Accessor_Macros DAC - Register accessor macros
1084  * @{
1085  */
1086
1087
1088 /* DAC - Register accessors */
1089 #define DAC_DATL_REG(base,index)                 ((base)->DAT[index].DATL)
1090 #define DAC_DATH_REG(base,index)                 ((base)->DAT[index].DATH)
1091 #define DAC_SR_REG(base)                         ((base)->SR)
1092 #define DAC_C0_REG(base)                         ((base)->C0)
1093 #define DAC_C1_REG(base)                         ((base)->C1)
1094 #define DAC_C2_REG(base)                         ((base)->C2)
1095
1096 /*!
1097  * @}
1098  */ /* end of group DAC_Register_Accessor_Macros */
1099
1100
1101 /* ----------------------------------------------------------------------------
1102    -- DAC Register Masks
1103    ---------------------------------------------------------------------------- */
1104
1105 /*!
1106  * @addtogroup DAC_Register_Masks DAC Register Masks
1107  * @{
1108  */
1109
1110 /* DATL Bit Fields */
1111 #define DAC_DATL_DATA0_MASK                      0xFFu
1112 #define DAC_DATL_DATA0_SHIFT                     0
1113 #define DAC_DATL_DATA0(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_DATL_DATA0_SHIFT))&DAC_DATL_DATA0_MASK)
1114 /* DATH Bit Fields */
1115 #define DAC_DATH_DATA1_MASK                      0xFu
1116 #define DAC_DATH_DATA1_SHIFT                     0
1117 #define DAC_DATH_DATA1(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_DATH_DATA1_SHIFT))&DAC_DATH_DATA1_MASK)
1118 /* SR Bit Fields */
1119 #define DAC_SR_DACBFRPBF_MASK                    0x1u
1120 #define DAC_SR_DACBFRPBF_SHIFT                   0
1121 #define DAC_SR_DACBFRPTF_MASK                    0x2u
1122 #define DAC_SR_DACBFRPTF_SHIFT                   1
1123 #define DAC_SR_DACBFWMF_MASK                     0x4u
1124 #define DAC_SR_DACBFWMF_SHIFT                    2
1125 /* C0 Bit Fields */
1126 #define DAC_C0_DACBBIEN_MASK                     0x1u
1127 #define DAC_C0_DACBBIEN_SHIFT                    0
1128 #define DAC_C0_DACBTIEN_MASK                     0x2u
1129 #define DAC_C0_DACBTIEN_SHIFT                    1
1130 #define DAC_C0_DACBWIEN_MASK                     0x4u
1131 #define DAC_C0_DACBWIEN_SHIFT                    2
1132 #define DAC_C0_LPEN_MASK                         0x8u
1133 #define DAC_C0_LPEN_SHIFT                        3
1134 #define DAC_C0_DACSWTRG_MASK                     0x10u
1135 #define DAC_C0_DACSWTRG_SHIFT                    4
1136 #define DAC_C0_DACTRGSEL_MASK                    0x20u
1137 #define DAC_C0_DACTRGSEL_SHIFT                   5
1138 #define DAC_C0_DACRFS_MASK                       0x40u
1139 #define DAC_C0_DACRFS_SHIFT                      6
1140 #define DAC_C0_DACEN_MASK                        0x80u
1141 #define DAC_C0_DACEN_SHIFT                       7
1142 /* C1 Bit Fields */
1143 #define DAC_C1_DACBFEN_MASK                      0x1u
1144 #define DAC_C1_DACBFEN_SHIFT                     0
1145 #define DAC_C1_DACBFMD_MASK                      0x6u
1146 #define DAC_C1_DACBFMD_SHIFT                     1
1147 #define DAC_C1_DACBFMD(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_C1_DACBFMD_SHIFT))&DAC_C1_DACBFMD_MASK)
1148 #define DAC_C1_DACBFWM_MASK                      0x18u
1149 #define DAC_C1_DACBFWM_SHIFT                     3
1150 #define DAC_C1_DACBFWM(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_C1_DACBFWM_SHIFT))&DAC_C1_DACBFWM_MASK)
1151 #define DAC_C1_DMAEN_MASK                        0x80u
1152 #define DAC_C1_DMAEN_SHIFT                       7
1153 /* C2 Bit Fields */
1154 #define DAC_C2_DACBFUP_MASK                      0xFu
1155 #define DAC_C2_DACBFUP_SHIFT                     0
1156 #define DAC_C2_DACBFUP(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_C2_DACBFUP_SHIFT))&DAC_C2_DACBFUP_MASK)
1157 #define DAC_C2_DACBFRP_MASK                      0xF0u
1158 #define DAC_C2_DACBFRP_SHIFT                     4
1159 #define DAC_C2_DACBFRP(x)                        (((uint8_t)(((uint8_t)(x))<<DAC_C2_DACBFRP_SHIFT))&DAC_C2_DACBFRP_MASK)
1160
1161 /*!
1162  * @}
1163  */ /* end of group DAC_Register_Masks */
1164
1165
1166 /* DAC - Peripheral instance base addresses */
1167 /** Peripheral DAC0 base address */
1168 #define DAC0_BASE                                (0x4003F000u)
1169 /** Peripheral DAC0 base pointer */
1170 #define DAC0                                     ((DAC_Type *)DAC0_BASE)
1171 #define DAC0_BASE_PTR                            (DAC0)
1172 /** Peripheral DAC1 base address */
1173 #define DAC1_BASE                                (0x40028000u)
1174 /** Peripheral DAC1 base pointer */
1175 #define DAC1                                     ((DAC_Type *)DAC1_BASE)
1176 #define DAC1_BASE_PTR                            (DAC1)
1177 /** Array initializer of DAC peripheral base addresses */
1178 #define DAC_BASE_ADDRS                           { DAC0_BASE, DAC1_BASE }
1179 /** Array initializer of DAC peripheral base pointers */
1180 #define DAC_BASE_PTRS                            { DAC0, DAC1 }
1181 /** Interrupt vectors for the DAC peripheral type */
1182 #define DAC_IRQS                                 { DAC0_IRQn, DAC1_IRQn }
1183
1184 /* ----------------------------------------------------------------------------
1185    -- DAC - Register accessor macros
1186    ---------------------------------------------------------------------------- */
1187
1188 /*!
1189  * @addtogroup DAC_Register_Accessor_Macros DAC - Register accessor macros
1190  * @{
1191  */
1192
1193
1194 /* DAC - Register instance definitions */
1195 /* DAC0 */
1196 #define DAC0_DAT0L                               DAC_DATL_REG(DAC0,0)
1197 #define DAC0_DAT0H                               DAC_DATH_REG(DAC0,0)
1198 #define DAC0_DAT1L                               DAC_DATL_REG(DAC0,1)
1199 #define DAC0_DAT1H                               DAC_DATH_REG(DAC0,1)
1200 #define DAC0_DAT2L                               DAC_DATL_REG(DAC0,2)
1201 #define DAC0_DAT2H                               DAC_DATH_REG(DAC0,2)
1202 #define DAC0_DAT3L                               DAC_DATL_REG(DAC0,3)
1203 #define DAC0_DAT3H                               DAC_DATH_REG(DAC0,3)
1204 #define DAC0_DAT4L                               DAC_DATL_REG(DAC0,4)
1205 #define DAC0_DAT4H                               DAC_DATH_REG(DAC0,4)
1206 #define DAC0_DAT5L                               DAC_DATL_REG(DAC0,5)
1207 #define DAC0_DAT5H                               DAC_DATH_REG(DAC0,5)
1208 #define DAC0_DAT6L                               DAC_DATL_REG(DAC0,6)
1209 #define DAC0_DAT6H                               DAC_DATH_REG(DAC0,6)
1210 #define DAC0_DAT7L                               DAC_DATL_REG(DAC0,7)
1211 #define DAC0_DAT7H                               DAC_DATH_REG(DAC0,7)
1212 #define DAC0_DAT8L                               DAC_DATL_REG(DAC0,8)
1213 #define DAC0_DAT8H                               DAC_DATH_REG(DAC0,8)
1214 #define DAC0_DAT9L                               DAC_DATL_REG(DAC0,9)
1215 #define DAC0_DAT9H                               DAC_DATH_REG(DAC0,9)
1216 #define DAC0_DAT10L                              DAC_DATL_REG(DAC0,10)
1217 #define DAC0_DAT10H                              DAC_DATH_REG(DAC0,10)
1218 #define DAC0_DAT11L                              DAC_DATL_REG(DAC0,11)
1219 #define DAC0_DAT11H                              DAC_DATH_REG(DAC0,11)
1220 #define DAC0_DAT12L                              DAC_DATL_REG(DAC0,12)
1221 #define DAC0_DAT12H                              DAC_DATH_REG(DAC0,12)
1222 #define DAC0_DAT13L                              DAC_DATL_REG(DAC0,13)
1223 #define DAC0_DAT13H                              DAC_DATH_REG(DAC0,13)
1224 #define DAC0_DAT14L                              DAC_DATL_REG(DAC0,14)
1225 #define DAC0_DAT14H                              DAC_DATH_REG(DAC0,14)
1226 #define DAC0_DAT15L                              DAC_DATL_REG(DAC0,15)
1227 #define DAC0_DAT15H                              DAC_DATH_REG(DAC0,15)
1228 #define DAC0_SR                                  DAC_SR_REG(DAC0)
1229 #define DAC0_C0                                  DAC_C0_REG(DAC0)
1230 #define DAC0_C1                                  DAC_C1_REG(DAC0)
1231 #define DAC0_C2                                  DAC_C2_REG(DAC0)
1232 /* DAC1 */
1233 #define DAC1_DAT0L                               DAC_DATL_REG(DAC1,0)
1234 #define DAC1_DAT0H                               DAC_DATH_REG(DAC1,0)
1235 #define DAC1_DAT1L                               DAC_DATL_REG(DAC1,1)
1236 #define DAC1_DAT1H                               DAC_DATH_REG(DAC1,1)
1237 #define DAC1_DAT2L                               DAC_DATL_REG(DAC1,2)
1238 #define DAC1_DAT2H                               DAC_DATH_REG(DAC1,2)
1239 #define DAC1_DAT3L                               DAC_DATL_REG(DAC1,3)
1240 #define DAC1_DAT3H                               DAC_DATH_REG(DAC1,3)
1241 #define DAC1_DAT4L                               DAC_DATL_REG(DAC1,4)
1242 #define DAC1_DAT4H                               DAC_DATH_REG(DAC1,4)
1243 #define DAC1_DAT5L                               DAC_DATL_REG(DAC1,5)
1244 #define DAC1_DAT5H                               DAC_DATH_REG(DAC1,5)
1245 #define DAC1_DAT6L                               DAC_DATL_REG(DAC1,6)
1246 #define DAC1_DAT6H                               DAC_DATH_REG(DAC1,6)
1247 #define DAC1_DAT7L                               DAC_DATL_REG(DAC1,7)
1248 #define DAC1_DAT7H                               DAC_DATH_REG(DAC1,7)
1249 #define DAC1_DAT8L                               DAC_DATL_REG(DAC1,8)
1250 #define DAC1_DAT8H                               DAC_DATH_REG(DAC1,8)
1251 #define DAC1_DAT9L                               DAC_DATL_REG(DAC1,9)
1252 #define DAC1_DAT9H                               DAC_DATH_REG(DAC1,9)
1253 #define DAC1_DAT10L                              DAC_DATL_REG(DAC1,10)
1254 #define DAC1_DAT10H                              DAC_DATH_REG(DAC1,10)
1255 #define DAC1_DAT11L                              DAC_DATL_REG(DAC1,11)
1256 #define DAC1_DAT11H                              DAC_DATH_REG(DAC1,11)
1257 #define DAC1_DAT12L                              DAC_DATL_REG(DAC1,12)
1258 #define DAC1_DAT12H                              DAC_DATH_REG(DAC1,12)
1259 #define DAC1_DAT13L                              DAC_DATL_REG(DAC1,13)
1260 #define DAC1_DAT13H                              DAC_DATH_REG(DAC1,13)
1261 #define DAC1_DAT14L                              DAC_DATL_REG(DAC1,14)
1262 #define DAC1_DAT14H                              DAC_DATH_REG(DAC1,14)
1263 #define DAC1_DAT15L                              DAC_DATL_REG(DAC1,15)
1264 #define DAC1_DAT15H                              DAC_DATH_REG(DAC1,15)
1265 #define DAC1_SR                                  DAC_SR_REG(DAC1)
1266 #define DAC1_C0                                  DAC_C0_REG(DAC1)
1267 #define DAC1_C1                                  DAC_C1_REG(DAC1)
1268 #define DAC1_C2                                  DAC_C2_REG(DAC1)
1269
1270 /* DAC - Register array accessors */
1271 #define DAC0_DATL(index)                         DAC_DATL_REG(DAC0,index)
1272 #define DAC1_DATL(index)                         DAC_DATL_REG(DAC1,index)
1273 #define DAC0_DATH(index)                         DAC_DATH_REG(DAC0,index)
1274 #define DAC1_DATH(index)                         DAC_DATH_REG(DAC1,index)
1275
1276 /*!
1277  * @}
1278  */ /* end of group DAC_Register_Accessor_Macros */
1279
1280
1281 /*!
1282  * @}
1283  */ /* end of group DAC_Peripheral_Access_Layer */
1284
1285
1286 /* ----------------------------------------------------------------------------
1287    -- DMA Peripheral Access Layer
1288    ---------------------------------------------------------------------------- */
1289
1290 /*!
1291  * @addtogroup DMA_Peripheral_Access_Layer DMA Peripheral Access Layer
1292  * @{
1293  */
1294
1295 /** DMA - Register Layout Typedef */
1296 typedef struct {
1297   __IO uint32_t CR;                                /**< Control Register, offset: 0x0 */
1298   __I  uint32_t ES;                                /**< Error Status Register, offset: 0x4 */
1299        uint8_t RESERVED_0[4];
1300   __IO uint32_t ERQ;                               /**< Enable Request Register, offset: 0xC */
1301        uint8_t RESERVED_1[4];
1302   __IO uint32_t EEI;                               /**< Enable Error Interrupt Register, offset: 0x14 */
1303   __O  uint8_t CEEI;                               /**< Clear Enable Error Interrupt Register, offset: 0x18 */
1304   __O  uint8_t SEEI;                               /**< Set Enable Error Interrupt Register, offset: 0x19 */
1305   __O  uint8_t CERQ;                               /**< Clear Enable Request Register, offset: 0x1A */
1306   __O  uint8_t SERQ;                               /**< Set Enable Request Register, offset: 0x1B */
1307   __O  uint8_t CDNE;                               /**< Clear DONE Status Bit Register, offset: 0x1C */
1308   __O  uint8_t SSRT;                               /**< Set START Bit Register, offset: 0x1D */
1309   __O  uint8_t CERR;                               /**< Clear Error Register, offset: 0x1E */
1310   __O  uint8_t CINT;                               /**< Clear Interrupt Request Register, offset: 0x1F */
1311        uint8_t RESERVED_2[4];
1312   __IO uint32_t INT;                               /**< Interrupt Request Register, offset: 0x24 */
1313        uint8_t RESERVED_3[4];
1314   __IO uint32_t ERR;                               /**< Error Register, offset: 0x2C */
1315        uint8_t RESERVED_4[4];
1316   __I  uint32_t HRS;                               /**< Hardware Request Status Register, offset: 0x34 */
1317        uint8_t RESERVED_5[12];
1318   __IO uint32_t EARS;                              /**< Enable Asynchronous Request in Stop Register, offset: 0x44 */
1319        uint8_t RESERVED_6[184];
1320   __IO uint8_t DCHPRI3;                            /**< Channel n Priority Register, offset: 0x100 */
1321   __IO uint8_t DCHPRI2;                            /**< Channel n Priority Register, offset: 0x101 */
1322   __IO uint8_t DCHPRI1;                            /**< Channel n Priority Register, offset: 0x102 */
1323   __IO uint8_t DCHPRI0;                            /**< Channel n Priority Register, offset: 0x103 */
1324   __IO uint8_t DCHPRI7;                            /**< Channel n Priority Register, offset: 0x104 */
1325   __IO uint8_t DCHPRI6;                            /**< Channel n Priority Register, offset: 0x105 */
1326   __IO uint8_t DCHPRI5;                            /**< Channel n Priority Register, offset: 0x106 */
1327   __IO uint8_t DCHPRI4;                            /**< Channel n Priority Register, offset: 0x107 */
1328   __IO uint8_t DCHPRI11;                           /**< Channel n Priority Register, offset: 0x108 */
1329   __IO uint8_t DCHPRI10;                           /**< Channel n Priority Register, offset: 0x109 */
1330   __IO uint8_t DCHPRI9;                            /**< Channel n Priority Register, offset: 0x10A */
1331   __IO uint8_t DCHPRI8;                            /**< Channel n Priority Register, offset: 0x10B */
1332   __IO uint8_t DCHPRI15;                           /**< Channel n Priority Register, offset: 0x10C */
1333   __IO uint8_t DCHPRI14;                           /**< Channel n Priority Register, offset: 0x10D */
1334   __IO uint8_t DCHPRI13;                           /**< Channel n Priority Register, offset: 0x10E */
1335   __IO uint8_t DCHPRI12;                           /**< Channel n Priority Register, offset: 0x10F */
1336        uint8_t RESERVED_7[3824];
1337   struct {                                         /* offset: 0x1000, array step: 0x20 */
1338     __IO uint32_t SADDR;                             /**< TCD Source Address, array offset: 0x1000, array step: 0x20 */
1339     __IO uint16_t SOFF;                              /**< TCD Signed Source Address Offset, array offset: 0x1004, array step: 0x20 */
1340     __IO uint16_t ATTR;                              /**< TCD Transfer Attributes, array offset: 0x1006, array step: 0x20 */
1341     union {                                          /* offset: 0x1008, array step: 0x20 */
1342       __IO uint32_t NBYTES_MLNO;                       /**< TCD Minor Byte Count (Minor Loop Disabled), array offset: 0x1008, array step: 0x20 */
1343       __IO uint32_t NBYTES_MLOFFNO;                    /**< TCD Signed Minor Loop Offset (Minor Loop Enabled and Offset Disabled), array offset: 0x1008, array step: 0x20 */
1344       __IO uint32_t NBYTES_MLOFFYES;                   /**< TCD Signed Minor Loop Offset (Minor Loop and Offset Enabled), array offset: 0x1008, array step: 0x20 */
1345     };
1346     __IO uint32_t SLAST;                             /**< TCD Last Source Address Adjustment, array offset: 0x100C, array step: 0x20 */
1347     __IO uint32_t DADDR;                             /**< TCD Destination Address, array offset: 0x1010, array step: 0x20 */
1348     __IO uint16_t DOFF;                              /**< TCD Signed Destination Address Offset, array offset: 0x1014, array step: 0x20 */
1349     union {                                          /* offset: 0x1016, array step: 0x20 */
1350       __IO uint16_t CITER_ELINKNO;                     /**< TCD Current Minor Loop Link, Major Loop Count (Channel Linking Disabled), array offset: 0x1016, array step: 0x20 */
1351       __IO uint16_t CITER_ELINKYES;                    /**< TCD Current Minor Loop Link, Major Loop Count (Channel Linking Enabled), array offset: 0x1016, array step: 0x20 */
1352     };
1353     __IO uint32_t DLAST_SGA;                         /**< TCD Last Destination Address Adjustment/Scatter Gather Address, array offset: 0x1018, array step: 0x20 */
1354     __IO uint16_t CSR;                               /**< TCD Control and Status, array offset: 0x101C, array step: 0x20 */
1355     union {                                          /* offset: 0x101E, array step: 0x20 */
1356       __IO uint16_t BITER_ELINKNO;                     /**< TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Disabled), array offset: 0x101E, array step: 0x20 */
1357       __IO uint16_t BITER_ELINKYES;                    /**< TCD Beginning Minor Loop Link, Major Loop Count (Channel Linking Enabled), array offset: 0x101E, array step: 0x20 */
1358     };
1359   } TCD[16];
1360 } DMA_Type, *DMA_MemMapPtr;
1361
1362 /* ----------------------------------------------------------------------------
1363    -- DMA - Register accessor macros
1364    ---------------------------------------------------------------------------- */
1365
1366 /*!
1367  * @addtogroup DMA_Register_Accessor_Macros DMA - Register accessor macros
1368  * @{
1369  */
1370
1371
1372 /* DMA - Register accessors */
1373 #define DMA_CR_REG(base)                         ((base)->CR)
1374 #define DMA_ES_REG(base)                         ((base)->ES)
1375 #define DMA_ERQ_REG(base)                        ((base)->ERQ)
1376 #define DMA_EEI_REG(base)                        ((base)->EEI)
1377 #define DMA_CEEI_REG(base)                       ((base)->CEEI)
1378 #define DMA_SEEI_REG(base)                       ((base)->SEEI)
1379 #define DMA_CERQ_REG(base)                       ((base)->CERQ)
1380 #define DMA_SERQ_REG(base)                       ((base)->SERQ)
1381 #define DMA_CDNE_REG(base)                       ((base)->CDNE)
1382 #define DMA_SSRT_REG(base)                       ((base)->SSRT)
1383 #define DMA_CERR_REG(base)                       ((base)->CERR)
1384 #define DMA_CINT_REG(base)                       ((base)->CINT)
1385 #define DMA_INT_REG(base)                        ((base)->INT)
1386 #define DMA_ERR_REG(base)                        ((base)->ERR)
1387 #define DMA_HRS_REG(base)                        ((base)->HRS)
1388 #define DMA_EARS_REG(base)                       ((base)->EARS)
1389 #define DMA_DCHPRI3_REG(base)                    ((base)->DCHPRI3)
1390 #define DMA_DCHPRI2_REG(base)                    ((base)->DCHPRI2)
1391 #define DMA_DCHPRI1_REG(base)                    ((base)->DCHPRI1)
1392 #define DMA_DCHPRI0_REG(base)                    ((base)->DCHPRI0)
1393 #define DMA_DCHPRI7_REG(base)                    ((base)->DCHPRI7)
1394 #define DMA_DCHPRI6_REG(base)                    ((base)->DCHPRI6)
1395 #define DMA_DCHPRI5_REG(base)                    ((base)->DCHPRI5)
1396 #define DMA_DCHPRI4_REG(base)                    ((base)->DCHPRI4)
1397 #define DMA_DCHPRI11_REG(base)                   ((base)->DCHPRI11)
1398 #define DMA_DCHPRI10_REG(base)                   ((base)->DCHPRI10)
1399 #define DMA_DCHPRI9_REG(base)                    ((base)->DCHPRI9)
1400 #define DMA_DCHPRI8_REG(base)                    ((base)->DCHPRI8)
1401 #define DMA_DCHPRI15_REG(base)                   ((base)->DCHPRI15)
1402 #define DMA_DCHPRI14_REG(base)                   ((base)->DCHPRI14)
1403 #define DMA_DCHPRI13_REG(base)                   ((base)->DCHPRI13)
1404 #define DMA_DCHPRI12_REG(base)                   ((base)->DCHPRI12)
1405 #define DMA_SADDR_REG(base,index)                ((base)->TCD[index].SADDR)
1406 #define DMA_SOFF_REG(base,index)                 ((base)->TCD[index].SOFF)
1407 #define DMA_ATTR_REG(base,index)                 ((base)->TCD[index].ATTR)
1408 #define DMA_NBYTES_MLNO_REG(base,index)          ((base)->TCD[index].NBYTES_MLNO)
1409 #define DMA_NBYTES_MLOFFNO_REG(base,index)       ((base)->TCD[index].NBYTES_MLOFFNO)
1410 #define DMA_NBYTES_MLOFFYES_REG(base,index)      ((base)->TCD[index].NBYTES_MLOFFYES)
1411 #define DMA_SLAST_REG(base,index)                ((base)->TCD[index].SLAST)
1412 #define DMA_DADDR_REG(base,index)                ((base)->TCD[index].DADDR)
1413 #define DMA_DOFF_REG(base,index)                 ((base)->TCD[index].DOFF)
1414 #define DMA_CITER_ELINKNO_REG(base,index)        ((base)->TCD[index].CITER_ELINKNO)
1415 #define DMA_CITER_ELINKYES_REG(base,index)       ((base)->TCD[index].CITER_ELINKYES)
1416 #define DMA_DLAST_SGA_REG(base,index)            ((base)->TCD[index].DLAST_SGA)
1417 #define DMA_CSR_REG(base,index)                  ((base)->TCD[index].CSR)
1418 #define DMA_BITER_ELINKNO_REG(base,index)        ((base)->TCD[index].BITER_ELINKNO)
1419 #define DMA_BITER_ELINKYES_REG(base,index)       ((base)->TCD[index].BITER_ELINKYES)
1420
1421 /*!
1422  * @}
1423  */ /* end of group DMA_Register_Accessor_Macros */
1424
1425
1426 /* ----------------------------------------------------------------------------
1427    -- DMA Register Masks
1428    ---------------------------------------------------------------------------- */
1429
1430 /*!
1431  * @addtogroup DMA_Register_Masks DMA Register Masks
1432  * @{
1433  */
1434
1435 /* CR Bit Fields */
1436 #define DMA_CR_EDBG_MASK                         0x2u
1437 #define DMA_CR_EDBG_SHIFT                        1
1438 #define DMA_CR_ERCA_MASK                         0x4u
1439 #define DMA_CR_ERCA_SHIFT                        2
1440 #define DMA_CR_HOE_MASK                          0x10u
1441 #define DMA_CR_HOE_SHIFT                         4
1442 #define DMA_CR_HALT_MASK                         0x20u
1443 #define DMA_CR_HALT_SHIFT                        5
1444 #define DMA_CR_CLM_MASK                          0x40u
1445 #define DMA_CR_CLM_SHIFT                         6
1446 #define DMA_CR_EMLM_MASK                         0x80u
1447 #define DMA_CR_EMLM_SHIFT                        7
1448 #define DMA_CR_ECX_MASK                          0x10000u
1449 #define DMA_CR_ECX_SHIFT                         16
1450 #define DMA_CR_CX_MASK                           0x20000u
1451 #define DMA_CR_CX_SHIFT                          17
1452 /* ES Bit Fields */
1453 #define DMA_ES_DBE_MASK                          0x1u
1454 #define DMA_ES_DBE_SHIFT                         0
1455 #define DMA_ES_SBE_MASK                          0x2u
1456 #define DMA_ES_SBE_SHIFT                         1
1457 #define DMA_ES_SGE_MASK                          0x4u
1458 #define DMA_ES_SGE_SHIFT                         2
1459 #define DMA_ES_NCE_MASK                          0x8u
1460 #define DMA_ES_NCE_SHIFT                         3
1461 #define DMA_ES_DOE_MASK                          0x10u
1462 #define DMA_ES_DOE_SHIFT                         4
1463 #define DMA_ES_DAE_MASK                          0x20u
1464 #define DMA_ES_DAE_SHIFT                         5
1465 #define DMA_ES_SOE_MASK                          0x40u
1466 #define DMA_ES_SOE_SHIFT                         6
1467 #define DMA_ES_SAE_MASK                          0x80u
1468 #define DMA_ES_SAE_SHIFT                         7
1469 #define DMA_ES_ERRCHN_MASK                       0xF00u
1470 #define DMA_ES_ERRCHN_SHIFT                      8
1471 #define DMA_ES_ERRCHN(x)                         (((uint32_t)(((uint32_t)(x))<<DMA_ES_ERRCHN_SHIFT))&DMA_ES_ERRCHN_MASK)
1472 #define DMA_ES_CPE_MASK                          0x4000u
1473 #define DMA_ES_CPE_SHIFT                         14
1474 #define DMA_ES_ECX_MASK                          0x10000u
1475 #define DMA_ES_ECX_SHIFT                         16
1476 #define DMA_ES_VLD_MASK                          0x80000000u
1477 #define DMA_ES_VLD_SHIFT                         31
1478 /* ERQ Bit Fields */
1479 #define DMA_ERQ_ERQ0_MASK                        0x1u
1480 #define DMA_ERQ_ERQ0_SHIFT                       0
1481 #define DMA_ERQ_ERQ1_MASK                        0x2u
1482 #define DMA_ERQ_ERQ1_SHIFT                       1
1483 #define DMA_ERQ_ERQ2_MASK                        0x4u
1484 #define DMA_ERQ_ERQ2_SHIFT                       2
1485 #define DMA_ERQ_ERQ3_MASK                        0x8u
1486 #define DMA_ERQ_ERQ3_SHIFT                       3
1487 #define DMA_ERQ_ERQ4_MASK                        0x10u
1488 #define DMA_ERQ_ERQ4_SHIFT                       4
1489 #define DMA_ERQ_ERQ5_MASK                        0x20u
1490 #define DMA_ERQ_ERQ5_SHIFT                       5
1491 #define DMA_ERQ_ERQ6_MASK                        0x40u
1492 #define DMA_ERQ_ERQ6_SHIFT                       6
1493 #define DMA_ERQ_ERQ7_MASK                        0x80u
1494 #define DMA_ERQ_ERQ7_SHIFT                       7
1495 #define DMA_ERQ_ERQ8_MASK                        0x100u
1496 #define DMA_ERQ_ERQ8_SHIFT                       8
1497 #define DMA_ERQ_ERQ9_MASK                        0x200u
1498 #define DMA_ERQ_ERQ9_SHIFT                       9
1499 #define DMA_ERQ_ERQ10_MASK                       0x400u
1500 #define DMA_ERQ_ERQ10_SHIFT                      10
1501 #define DMA_ERQ_ERQ11_MASK                       0x800u
1502 #define DMA_ERQ_ERQ11_SHIFT                      11
1503 #define DMA_ERQ_ERQ12_MASK                       0x1000u
1504 #define DMA_ERQ_ERQ12_SHIFT                      12
1505 #define DMA_ERQ_ERQ13_MASK                       0x2000u
1506 #define DMA_ERQ_ERQ13_SHIFT                      13
1507 #define DMA_ERQ_ERQ14_MASK                       0x4000u
1508 #define DMA_ERQ_ERQ14_SHIFT                      14
1509 #define DMA_ERQ_ERQ15_MASK                       0x8000u
1510 #define DMA_ERQ_ERQ15_SHIFT                      15
1511 /* EEI Bit Fields */
1512 #define DMA_EEI_EEI0_MASK                        0x1u
1513 #define DMA_EEI_EEI0_SHIFT                       0
1514 #define DMA_EEI_EEI1_MASK                        0x2u
1515 #define DMA_EEI_EEI1_SHIFT                       1
1516 #define DMA_EEI_EEI2_MASK                        0x4u
1517 #define DMA_EEI_EEI2_SHIFT                       2
1518 #define DMA_EEI_EEI3_MASK                        0x8u
1519 #define DMA_EEI_EEI3_SHIFT                       3
1520 #define DMA_EEI_EEI4_MASK                        0x10u
1521 #define DMA_EEI_EEI4_SHIFT                       4
1522 #define DMA_EEI_EEI5_MASK                        0x20u
1523 #define DMA_EEI_EEI5_SHIFT                       5
1524 #define DMA_EEI_EEI6_MASK                        0x40u
1525 #define DMA_EEI_EEI6_SHIFT                       6
1526 #define DMA_EEI_EEI7_MASK                        0x80u
1527 #define DMA_EEI_EEI7_SHIFT                       7
1528 #define DMA_EEI_EEI8_MASK                        0x100u
1529 #define DMA_EEI_EEI8_SHIFT                       8
1530 #define DMA_EEI_EEI9_MASK                        0x200u
1531 #define DMA_EEI_EEI9_SHIFT                       9
1532 #define DMA_EEI_EEI10_MASK                       0x400u
1533 #define DMA_EEI_EEI10_SHIFT                      10
1534 #define DMA_EEI_EEI11_MASK                       0x800u
1535 #define DMA_EEI_EEI11_SHIFT                      11
1536 #define DMA_EEI_EEI12_MASK                       0x1000u
1537 #define DMA_EEI_EEI12_SHIFT                      12
1538 #define DMA_EEI_EEI13_MASK                       0x2000u
1539 #define DMA_EEI_EEI13_SHIFT                      13
1540 #define DMA_EEI_EEI14_MASK                       0x4000u
1541 #define DMA_EEI_EEI14_SHIFT                      14
1542 #define DMA_EEI_EEI15_MASK                       0x8000u
1543 #define DMA_EEI_EEI15_SHIFT                      15
1544 /* CEEI Bit Fields */
1545 #define DMA_CEEI_CEEI_MASK                       0xFu
1546 #define DMA_CEEI_CEEI_SHIFT                      0
1547 #define DMA_CEEI_CEEI(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_CEEI_CEEI_SHIFT))&DMA_CEEI_CEEI_MASK)
1548 #define DMA_CEEI_CAEE_MASK                       0x40u
1549 #define DMA_CEEI_CAEE_SHIFT                      6
1550 #define DMA_CEEI_NOP_MASK                        0x80u
1551 #define DMA_CEEI_NOP_SHIFT                       7
1552 /* SEEI Bit Fields */
1553 #define DMA_SEEI_SEEI_MASK                       0xFu
1554 #define DMA_SEEI_SEEI_SHIFT                      0
1555 #define DMA_SEEI_SEEI(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_SEEI_SEEI_SHIFT))&DMA_SEEI_SEEI_MASK)
1556 #define DMA_SEEI_SAEE_MASK                       0x40u
1557 #define DMA_SEEI_SAEE_SHIFT                      6
1558 #define DMA_SEEI_NOP_MASK                        0x80u
1559 #define DMA_SEEI_NOP_SHIFT                       7
1560 /* CERQ Bit Fields */
1561 #define DMA_CERQ_CERQ_MASK                       0xFu
1562 #define DMA_CERQ_CERQ_SHIFT                      0
1563 #define DMA_CERQ_CERQ(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_CERQ_CERQ_SHIFT))&DMA_CERQ_CERQ_MASK)
1564 #define DMA_CERQ_CAER_MASK                       0x40u
1565 #define DMA_CERQ_CAER_SHIFT                      6
1566 #define DMA_CERQ_NOP_MASK                        0x80u
1567 #define DMA_CERQ_NOP_SHIFT                       7
1568 /* SERQ Bit Fields */
1569 #define DMA_SERQ_SERQ_MASK                       0xFu
1570 #define DMA_SERQ_SERQ_SHIFT                      0
1571 #define DMA_SERQ_SERQ(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_SERQ_SERQ_SHIFT))&DMA_SERQ_SERQ_MASK)
1572 #define DMA_SERQ_SAER_MASK                       0x40u
1573 #define DMA_SERQ_SAER_SHIFT                      6
1574 #define DMA_SERQ_NOP_MASK                        0x80u
1575 #define DMA_SERQ_NOP_SHIFT                       7
1576 /* CDNE Bit Fields */
1577 #define DMA_CDNE_CDNE_MASK                       0xFu
1578 #define DMA_CDNE_CDNE_SHIFT                      0
1579 #define DMA_CDNE_CDNE(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_CDNE_CDNE_SHIFT))&DMA_CDNE_CDNE_MASK)
1580 #define DMA_CDNE_CADN_MASK                       0x40u
1581 #define DMA_CDNE_CADN_SHIFT                      6
1582 #define DMA_CDNE_NOP_MASK                        0x80u
1583 #define DMA_CDNE_NOP_SHIFT                       7
1584 /* SSRT Bit Fields */
1585 #define DMA_SSRT_SSRT_MASK                       0xFu
1586 #define DMA_SSRT_SSRT_SHIFT                      0
1587 #define DMA_SSRT_SSRT(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_SSRT_SSRT_SHIFT))&DMA_SSRT_SSRT_MASK)
1588 #define DMA_SSRT_SAST_MASK                       0x40u
1589 #define DMA_SSRT_SAST_SHIFT                      6
1590 #define DMA_SSRT_NOP_MASK                        0x80u
1591 #define DMA_SSRT_NOP_SHIFT                       7
1592 /* CERR Bit Fields */
1593 #define DMA_CERR_CERR_MASK                       0xFu
1594 #define DMA_CERR_CERR_SHIFT                      0
1595 #define DMA_CERR_CERR(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_CERR_CERR_SHIFT))&DMA_CERR_CERR_MASK)
1596 #define DMA_CERR_CAEI_MASK                       0x40u
1597 #define DMA_CERR_CAEI_SHIFT                      6
1598 #define DMA_CERR_NOP_MASK                        0x80u
1599 #define DMA_CERR_NOP_SHIFT                       7
1600 /* CINT Bit Fields */
1601 #define DMA_CINT_CINT_MASK                       0xFu
1602 #define DMA_CINT_CINT_SHIFT                      0
1603 #define DMA_CINT_CINT(x)                         (((uint8_t)(((uint8_t)(x))<<DMA_CINT_CINT_SHIFT))&DMA_CINT_CINT_MASK)
1604 #define DMA_CINT_CAIR_MASK                       0x40u
1605 #define DMA_CINT_CAIR_SHIFT                      6
1606 #define DMA_CINT_NOP_MASK                        0x80u
1607 #define DMA_CINT_NOP_SHIFT                       7
1608 /* INT Bit Fields */
1609 #define DMA_INT_INT0_MASK                        0x1u
1610 #define DMA_INT_INT0_SHIFT                       0
1611 #define DMA_INT_INT1_MASK                        0x2u
1612 #define DMA_INT_INT1_SHIFT                       1
1613 #define DMA_INT_INT2_MASK                        0x4u
1614 #define DMA_INT_INT2_SHIFT                       2
1615 #define DMA_INT_INT3_MASK                        0x8u
1616 #define DMA_INT_INT3_SHIFT                       3
1617 #define DMA_INT_INT4_MASK                        0x10u
1618 #define DMA_INT_INT4_SHIFT                       4
1619 #define DMA_INT_INT5_MASK                        0x20u
1620 #define DMA_INT_INT5_SHIFT                       5
1621 #define DMA_INT_INT6_MASK                        0x40u
1622 #define DMA_INT_INT6_SHIFT                       6
1623 #define DMA_INT_INT7_MASK                        0x80u
1624 #define DMA_INT_INT7_SHIFT                       7
1625 #define DMA_INT_INT8_MASK                        0x100u
1626 #define DMA_INT_INT8_SHIFT                       8
1627 #define DMA_INT_INT9_MASK                        0x200u
1628 #define DMA_INT_INT9_SHIFT                       9
1629 #define DMA_INT_INT10_MASK                       0x400u
1630 #define DMA_INT_INT10_SHIFT                      10
1631 #define DMA_INT_INT11_MASK                       0x800u
1632 #define DMA_INT_INT11_SHIFT                      11
1633 #define DMA_INT_INT12_MASK                       0x1000u
1634 #define DMA_INT_INT12_SHIFT                      12
1635 #define DMA_INT_INT13_MASK                       0x2000u
1636 #define DMA_INT_INT13_SHIFT                      13
1637 #define DMA_INT_INT14_MASK                       0x4000u
1638 #define DMA_INT_INT14_SHIFT                      14
1639 #define DMA_INT_INT15_MASK                       0x8000u
1640 #define DMA_INT_INT15_SHIFT                      15
1641 /* ERR Bit Fields */
1642 #define DMA_ERR_ERR0_MASK                        0x1u
1643 #define DMA_ERR_ERR0_SHIFT                       0
1644 #define DMA_ERR_ERR1_MASK                        0x2u
1645 #define DMA_ERR_ERR1_SHIFT                       1
1646 #define DMA_ERR_ERR2_MASK                        0x4u
1647 #define DMA_ERR_ERR2_SHIFT                       2
1648 #define DMA_ERR_ERR3_MASK                        0x8u
1649 #define DMA_ERR_ERR3_SHIFT                       3
1650 #define DMA_ERR_ERR4_MASK                        0x10u
1651 #define DMA_ERR_ERR4_SHIFT                       4
1652 #define DMA_ERR_ERR5_MASK                        0x20u
1653 #define DMA_ERR_ERR5_SHIFT                       5
1654 #define DMA_ERR_ERR6_MASK                        0x40u
1655 #define DMA_ERR_ERR6_SHIFT                       6
1656 #define DMA_ERR_ERR7_MASK                        0x80u
1657 #define DMA_ERR_ERR7_SHIFT                       7
1658 #define DMA_ERR_ERR8_MASK                        0x100u
1659 #define DMA_ERR_ERR8_SHIFT                       8
1660 #define DMA_ERR_ERR9_MASK                        0x200u
1661 #define DMA_ERR_ERR9_SHIFT                       9
1662 #define DMA_ERR_ERR10_MASK                       0x400u
1663 #define DMA_ERR_ERR10_SHIFT                      10
1664 #define DMA_ERR_ERR11_MASK                       0x800u
1665 #define DMA_ERR_ERR11_SHIFT                      11
1666 #define DMA_ERR_ERR12_MASK                       0x1000u
1667 #define DMA_ERR_ERR12_SHIFT                      12
1668 #define DMA_ERR_ERR13_MASK                       0x2000u
1669 #define DMA_ERR_ERR13_SHIFT                      13
1670 #define DMA_ERR_ERR14_MASK                       0x4000u
1671 #define DMA_ERR_ERR14_SHIFT                      14
1672 #define DMA_ERR_ERR15_MASK                       0x8000u
1673 #define DMA_ERR_ERR15_SHIFT                      15
1674 /* HRS Bit Fields */
1675 #define DMA_HRS_HRS0_MASK                        0x1u
1676 #define DMA_HRS_HRS0_SHIFT                       0
1677 #define DMA_HRS_HRS1_MASK                        0x2u
1678 #define DMA_HRS_HRS1_SHIFT                       1
1679 #define DMA_HRS_HRS2_MASK                        0x4u
1680 #define DMA_HRS_HRS2_SHIFT                       2
1681 #define DMA_HRS_HRS3_MASK                        0x8u
1682 #define DMA_HRS_HRS3_SHIFT                       3
1683 #define DMA_HRS_HRS4_MASK                        0x10u
1684 #define DMA_HRS_HRS4_SHIFT                       4
1685 #define DMA_HRS_HRS5_MASK                        0x20u
1686 #define DMA_HRS_HRS5_SHIFT                       5
1687 #define DMA_HRS_HRS6_MASK                        0x40u
1688 #define DMA_HRS_HRS6_SHIFT                       6
1689 #define DMA_HRS_HRS7_MASK                        0x80u
1690 #define DMA_HRS_HRS7_SHIFT                       7
1691 #define DMA_HRS_HRS8_MASK                        0x100u
1692 #define DMA_HRS_HRS8_SHIFT                       8
1693 #define DMA_HRS_HRS9_MASK                        0x200u
1694 #define DMA_HRS_HRS9_SHIFT                       9
1695 #define DMA_HRS_HRS10_MASK                       0x400u
1696 #define DMA_HRS_HRS10_SHIFT                      10
1697 #define DMA_HRS_HRS11_MASK                       0x800u
1698 #define DMA_HRS_HRS11_SHIFT                      11
1699 #define DMA_HRS_HRS12_MASK                       0x1000u
1700 #define DMA_HRS_HRS12_SHIFT                      12
1701 #define DMA_HRS_HRS13_MASK                       0x2000u
1702 #define DMA_HRS_HRS13_SHIFT                      13
1703 #define DMA_HRS_HRS14_MASK                       0x4000u
1704 #define DMA_HRS_HRS14_SHIFT                      14
1705 #define DMA_HRS_HRS15_MASK                       0x8000u
1706 #define DMA_HRS_HRS15_SHIFT                      15
1707 /* EARS Bit Fields */
1708 #define DMA_EARS_EDREQ_0_MASK                    0x1u
1709 #define DMA_EARS_EDREQ_0_SHIFT                   0
1710 #define DMA_EARS_EDREQ_1_MASK                    0x2u
1711 #define DMA_EARS_EDREQ_1_SHIFT                   1
1712 #define DMA_EARS_EDREQ_2_MASK                    0x4u
1713 #define DMA_EARS_EDREQ_2_SHIFT                   2
1714 #define DMA_EARS_EDREQ_3_MASK                    0x8u
1715 #define DMA_EARS_EDREQ_3_SHIFT                   3
1716 #define DMA_EARS_EDREQ_4_MASK                    0x10u
1717 #define DMA_EARS_EDREQ_4_SHIFT                   4
1718 #define DMA_EARS_EDREQ_5_MASK                    0x20u
1719 #define DMA_EARS_EDREQ_5_SHIFT                   5
1720 #define DMA_EARS_EDREQ_6_MASK                    0x40u
1721 #define DMA_EARS_EDREQ_6_SHIFT                   6
1722 #define DMA_EARS_EDREQ_7_MASK                    0x80u
1723 #define DMA_EARS_EDREQ_7_SHIFT                   7
1724 #define DMA_EARS_EDREQ_8_MASK                    0x100u
1725 #define DMA_EARS_EDREQ_8_SHIFT                   8
1726 #define DMA_EARS_EDREQ_9_MASK                    0x200u
1727 #define DMA_EARS_EDREQ_9_SHIFT                   9
1728 #define DMA_EARS_EDREQ_10_MASK                   0x400u
1729 #define DMA_EARS_EDREQ_10_SHIFT                  10
1730 #define DMA_EARS_EDREQ_11_MASK                   0x800u
1731 #define DMA_EARS_EDREQ_11_SHIFT                  11
1732 #define DMA_EARS_EDREQ_12_MASK                   0x1000u
1733 #define DMA_EARS_EDREQ_12_SHIFT                  12
1734 #define DMA_EARS_EDREQ_13_MASK                   0x2000u
1735 #define DMA_EARS_EDREQ_13_SHIFT                  13
1736 #define DMA_EARS_EDREQ_14_MASK                   0x4000u
1737 #define DMA_EARS_EDREQ_14_SHIFT                  14
1738 #define DMA_EARS_EDREQ_15_MASK                   0x8000u
1739 #define DMA_EARS_EDREQ_15_SHIFT                  15
1740 /* DCHPRI3 Bit Fields */
1741 #define DMA_DCHPRI3_CHPRI_MASK                   0xFu
1742 #define DMA_DCHPRI3_CHPRI_SHIFT                  0
1743 #define DMA_DCHPRI3_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI3_CHPRI_SHIFT))&DMA_DCHPRI3_CHPRI_MASK)
1744 #define DMA_DCHPRI3_DPA_MASK                     0x40u
1745 #define DMA_DCHPRI3_DPA_SHIFT                    6
1746 #define DMA_DCHPRI3_ECP_MASK                     0x80u
1747 #define DMA_DCHPRI3_ECP_SHIFT                    7
1748 /* DCHPRI2 Bit Fields */
1749 #define DMA_DCHPRI2_CHPRI_MASK                   0xFu
1750 #define DMA_DCHPRI2_CHPRI_SHIFT                  0
1751 #define DMA_DCHPRI2_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI2_CHPRI_SHIFT))&DMA_DCHPRI2_CHPRI_MASK)
1752 #define DMA_DCHPRI2_DPA_MASK                     0x40u
1753 #define DMA_DCHPRI2_DPA_SHIFT                    6
1754 #define DMA_DCHPRI2_ECP_MASK                     0x80u
1755 #define DMA_DCHPRI2_ECP_SHIFT                    7
1756 /* DCHPRI1 Bit Fields */
1757 #define DMA_DCHPRI1_CHPRI_MASK                   0xFu
1758 #define DMA_DCHPRI1_CHPRI_SHIFT                  0
1759 #define DMA_DCHPRI1_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI1_CHPRI_SHIFT))&DMA_DCHPRI1_CHPRI_MASK)
1760 #define DMA_DCHPRI1_DPA_MASK                     0x40u
1761 #define DMA_DCHPRI1_DPA_SHIFT                    6
1762 #define DMA_DCHPRI1_ECP_MASK                     0x80u
1763 #define DMA_DCHPRI1_ECP_SHIFT                    7
1764 /* DCHPRI0 Bit Fields */
1765 #define DMA_DCHPRI0_CHPRI_MASK                   0xFu
1766 #define DMA_DCHPRI0_CHPRI_SHIFT                  0
1767 #define DMA_DCHPRI0_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI0_CHPRI_SHIFT))&DMA_DCHPRI0_CHPRI_MASK)
1768 #define DMA_DCHPRI0_DPA_MASK                     0x40u
1769 #define DMA_DCHPRI0_DPA_SHIFT                    6
1770 #define DMA_DCHPRI0_ECP_MASK                     0x80u
1771 #define DMA_DCHPRI0_ECP_SHIFT                    7
1772 /* DCHPRI7 Bit Fields */
1773 #define DMA_DCHPRI7_CHPRI_MASK                   0xFu
1774 #define DMA_DCHPRI7_CHPRI_SHIFT                  0
1775 #define DMA_DCHPRI7_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI7_CHPRI_SHIFT))&DMA_DCHPRI7_CHPRI_MASK)
1776 #define DMA_DCHPRI7_DPA_MASK                     0x40u
1777 #define DMA_DCHPRI7_DPA_SHIFT                    6
1778 #define DMA_DCHPRI7_ECP_MASK                     0x80u
1779 #define DMA_DCHPRI7_ECP_SHIFT                    7
1780 /* DCHPRI6 Bit Fields */
1781 #define DMA_DCHPRI6_CHPRI_MASK                   0xFu
1782 #define DMA_DCHPRI6_CHPRI_SHIFT                  0
1783 #define DMA_DCHPRI6_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI6_CHPRI_SHIFT))&DMA_DCHPRI6_CHPRI_MASK)
1784 #define DMA_DCHPRI6_DPA_MASK                     0x40u
1785 #define DMA_DCHPRI6_DPA_SHIFT                    6
1786 #define DMA_DCHPRI6_ECP_MASK                     0x80u
1787 #define DMA_DCHPRI6_ECP_SHIFT                    7
1788 /* DCHPRI5 Bit Fields */
1789 #define DMA_DCHPRI5_CHPRI_MASK                   0xFu
1790 #define DMA_DCHPRI5_CHPRI_SHIFT                  0
1791 #define DMA_DCHPRI5_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI5_CHPRI_SHIFT))&DMA_DCHPRI5_CHPRI_MASK)
1792 #define DMA_DCHPRI5_DPA_MASK                     0x40u
1793 #define DMA_DCHPRI5_DPA_SHIFT                    6
1794 #define DMA_DCHPRI5_ECP_MASK                     0x80u
1795 #define DMA_DCHPRI5_ECP_SHIFT                    7
1796 /* DCHPRI4 Bit Fields */
1797 #define DMA_DCHPRI4_CHPRI_MASK                   0xFu
1798 #define DMA_DCHPRI4_CHPRI_SHIFT                  0
1799 #define DMA_DCHPRI4_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI4_CHPRI_SHIFT))&DMA_DCHPRI4_CHPRI_MASK)
1800 #define DMA_DCHPRI4_DPA_MASK                     0x40u
1801 #define DMA_DCHPRI4_DPA_SHIFT                    6
1802 #define DMA_DCHPRI4_ECP_MASK                     0x80u
1803 #define DMA_DCHPRI4_ECP_SHIFT                    7
1804 /* DCHPRI11 Bit Fields */
1805 #define DMA_DCHPRI11_CHPRI_MASK                  0xFu
1806 #define DMA_DCHPRI11_CHPRI_SHIFT                 0
1807 #define DMA_DCHPRI11_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI11_CHPRI_SHIFT))&DMA_DCHPRI11_CHPRI_MASK)
1808 #define DMA_DCHPRI11_DPA_MASK                    0x40u
1809 #define DMA_DCHPRI11_DPA_SHIFT                   6
1810 #define DMA_DCHPRI11_ECP_MASK                    0x80u
1811 #define DMA_DCHPRI11_ECP_SHIFT                   7
1812 /* DCHPRI10 Bit Fields */
1813 #define DMA_DCHPRI10_CHPRI_MASK                  0xFu
1814 #define DMA_DCHPRI10_CHPRI_SHIFT                 0
1815 #define DMA_DCHPRI10_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI10_CHPRI_SHIFT))&DMA_DCHPRI10_CHPRI_MASK)
1816 #define DMA_DCHPRI10_DPA_MASK                    0x40u
1817 #define DMA_DCHPRI10_DPA_SHIFT                   6
1818 #define DMA_DCHPRI10_ECP_MASK                    0x80u
1819 #define DMA_DCHPRI10_ECP_SHIFT                   7
1820 /* DCHPRI9 Bit Fields */
1821 #define DMA_DCHPRI9_CHPRI_MASK                   0xFu
1822 #define DMA_DCHPRI9_CHPRI_SHIFT                  0
1823 #define DMA_DCHPRI9_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI9_CHPRI_SHIFT))&DMA_DCHPRI9_CHPRI_MASK)
1824 #define DMA_DCHPRI9_DPA_MASK                     0x40u
1825 #define DMA_DCHPRI9_DPA_SHIFT                    6
1826 #define DMA_DCHPRI9_ECP_MASK                     0x80u
1827 #define DMA_DCHPRI9_ECP_SHIFT                    7
1828 /* DCHPRI8 Bit Fields */
1829 #define DMA_DCHPRI8_CHPRI_MASK                   0xFu
1830 #define DMA_DCHPRI8_CHPRI_SHIFT                  0
1831 #define DMA_DCHPRI8_CHPRI(x)                     (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI8_CHPRI_SHIFT))&DMA_DCHPRI8_CHPRI_MASK)
1832 #define DMA_DCHPRI8_DPA_MASK                     0x40u
1833 #define DMA_DCHPRI8_DPA_SHIFT                    6
1834 #define DMA_DCHPRI8_ECP_MASK                     0x80u
1835 #define DMA_DCHPRI8_ECP_SHIFT                    7
1836 /* DCHPRI15 Bit Fields */
1837 #define DMA_DCHPRI15_CHPRI_MASK                  0xFu
1838 #define DMA_DCHPRI15_CHPRI_SHIFT                 0
1839 #define DMA_DCHPRI15_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI15_CHPRI_SHIFT))&DMA_DCHPRI15_CHPRI_MASK)
1840 #define DMA_DCHPRI15_DPA_MASK                    0x40u
1841 #define DMA_DCHPRI15_DPA_SHIFT                   6
1842 #define DMA_DCHPRI15_ECP_MASK                    0x80u
1843 #define DMA_DCHPRI15_ECP_SHIFT                   7
1844 /* DCHPRI14 Bit Fields */
1845 #define DMA_DCHPRI14_CHPRI_MASK                  0xFu
1846 #define DMA_DCHPRI14_CHPRI_SHIFT                 0
1847 #define DMA_DCHPRI14_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI14_CHPRI_SHIFT))&DMA_DCHPRI14_CHPRI_MASK)
1848 #define DMA_DCHPRI14_DPA_MASK                    0x40u
1849 #define DMA_DCHPRI14_DPA_SHIFT                   6
1850 #define DMA_DCHPRI14_ECP_MASK                    0x80u
1851 #define DMA_DCHPRI14_ECP_SHIFT                   7
1852 /* DCHPRI13 Bit Fields */
1853 #define DMA_DCHPRI13_CHPRI_MASK                  0xFu
1854 #define DMA_DCHPRI13_CHPRI_SHIFT                 0
1855 #define DMA_DCHPRI13_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI13_CHPRI_SHIFT))&DMA_DCHPRI13_CHPRI_MASK)
1856 #define DMA_DCHPRI13_DPA_MASK                    0x40u
1857 #define DMA_DCHPRI13_DPA_SHIFT                   6
1858 #define DMA_DCHPRI13_ECP_MASK                    0x80u
1859 #define DMA_DCHPRI13_ECP_SHIFT                   7
1860 /* DCHPRI12 Bit Fields */
1861 #define DMA_DCHPRI12_CHPRI_MASK                  0xFu
1862 #define DMA_DCHPRI12_CHPRI_SHIFT                 0
1863 #define DMA_DCHPRI12_CHPRI(x)                    (((uint8_t)(((uint8_t)(x))<<DMA_DCHPRI12_CHPRI_SHIFT))&DMA_DCHPRI12_CHPRI_MASK)
1864 #define DMA_DCHPRI12_DPA_MASK                    0x40u
1865 #define DMA_DCHPRI12_DPA_SHIFT                   6
1866 #define DMA_DCHPRI12_ECP_MASK                    0x80u
1867 #define DMA_DCHPRI12_ECP_SHIFT                   7
1868 /* SADDR Bit Fields */
1869 #define DMA_SADDR_SADDR_MASK                     0xFFFFFFFFu
1870 #define DMA_SADDR_SADDR_SHIFT                    0
1871 #define DMA_SADDR_SADDR(x)                       (((uint32_t)(((uint32_t)(x))<<DMA_SADDR_SADDR_SHIFT))&DMA_SADDR_SADDR_MASK)
1872 /* SOFF Bit Fields */
1873 #define DMA_SOFF_SOFF_MASK                       0xFFFFu
1874 #define DMA_SOFF_SOFF_SHIFT                      0
1875 #define DMA_SOFF_SOFF(x)                         (((uint16_t)(((uint16_t)(x))<<DMA_SOFF_SOFF_SHIFT))&DMA_SOFF_SOFF_MASK)
1876 /* ATTR Bit Fields */
1877 #define DMA_ATTR_DSIZE_MASK                      0x7u
1878 #define DMA_ATTR_DSIZE_SHIFT                     0
1879 #define DMA_ATTR_DSIZE(x)                        (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_DSIZE_SHIFT))&DMA_ATTR_DSIZE_MASK)
1880 #define DMA_ATTR_DMOD_MASK                       0xF8u
1881 #define DMA_ATTR_DMOD_SHIFT                      3
1882 #define DMA_ATTR_DMOD(x)                         (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_DMOD_SHIFT))&DMA_ATTR_DMOD_MASK)
1883 #define DMA_ATTR_SSIZE_MASK                      0x700u
1884 #define DMA_ATTR_SSIZE_SHIFT                     8
1885 #define DMA_ATTR_SSIZE(x)                        (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_SSIZE_SHIFT))&DMA_ATTR_SSIZE_MASK)
1886 #define DMA_ATTR_SMOD_MASK                       0xF800u
1887 #define DMA_ATTR_SMOD_SHIFT                      11
1888 #define DMA_ATTR_SMOD(x)                         (((uint16_t)(((uint16_t)(x))<<DMA_ATTR_SMOD_SHIFT))&DMA_ATTR_SMOD_MASK)
1889 /* NBYTES_MLNO Bit Fields */
1890 #define DMA_NBYTES_MLNO_NBYTES_MASK              0xFFFFFFFFu
1891 #define DMA_NBYTES_MLNO_NBYTES_SHIFT             0
1892 #define DMA_NBYTES_MLNO_NBYTES(x)                (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLNO_NBYTES_SHIFT))&DMA_NBYTES_MLNO_NBYTES_MASK)
1893 /* NBYTES_MLOFFNO Bit Fields */
1894 #define DMA_NBYTES_MLOFFNO_NBYTES_MASK           0x3FFFFFFFu
1895 #define DMA_NBYTES_MLOFFNO_NBYTES_SHIFT          0
1896 #define DMA_NBYTES_MLOFFNO_NBYTES(x)             (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFNO_NBYTES_SHIFT))&DMA_NBYTES_MLOFFNO_NBYTES_MASK)
1897 #define DMA_NBYTES_MLOFFNO_DMLOE_MASK            0x40000000u
1898 #define DMA_NBYTES_MLOFFNO_DMLOE_SHIFT           30
1899 #define DMA_NBYTES_MLOFFNO_SMLOE_MASK            0x80000000u
1900 #define DMA_NBYTES_MLOFFNO_SMLOE_SHIFT           31
1901 /* NBYTES_MLOFFYES Bit Fields */
1902 #define DMA_NBYTES_MLOFFYES_NBYTES_MASK          0x3FFu
1903 #define DMA_NBYTES_MLOFFYES_NBYTES_SHIFT         0
1904 #define DMA_NBYTES_MLOFFYES_NBYTES(x)            (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFYES_NBYTES_SHIFT))&DMA_NBYTES_MLOFFYES_NBYTES_MASK)
1905 #define DMA_NBYTES_MLOFFYES_MLOFF_MASK           0x3FFFFC00u
1906 #define DMA_NBYTES_MLOFFYES_MLOFF_SHIFT          10
1907 #define DMA_NBYTES_MLOFFYES_MLOFF(x)             (((uint32_t)(((uint32_t)(x))<<DMA_NBYTES_MLOFFYES_MLOFF_SHIFT))&DMA_NBYTES_MLOFFYES_MLOFF_MASK)
1908 #define DMA_NBYTES_MLOFFYES_DMLOE_MASK           0x40000000u
1909 #define DMA_NBYTES_MLOFFYES_DMLOE_SHIFT          30
1910 #define DMA_NBYTES_MLOFFYES_SMLOE_MASK           0x80000000u
1911 #define DMA_NBYTES_MLOFFYES_SMLOE_SHIFT          31
1912 /* SLAST Bit Fields */
1913 #define DMA_SLAST_SLAST_MASK                     0xFFFFFFFFu
1914 #define DMA_SLAST_SLAST_SHIFT                    0
1915 #define DMA_SLAST_SLAST(x)                       (((uint32_t)(((uint32_t)(x))<<DMA_SLAST_SLAST_SHIFT))&DMA_SLAST_SLAST_MASK)
1916 /* DADDR Bit Fields */
1917 #define DMA_DADDR_DADDR_MASK                     0xFFFFFFFFu
1918 #define DMA_DADDR_DADDR_SHIFT                    0
1919 #define DMA_DADDR_DADDR(x)                       (((uint32_t)(((uint32_t)(x))<<DMA_DADDR_DADDR_SHIFT))&DMA_DADDR_DADDR_MASK)
1920 /* DOFF Bit Fields */
1921 #define DMA_DOFF_DOFF_MASK                       0xFFFFu
1922 #define DMA_DOFF_DOFF_SHIFT                      0
1923 #define DMA_DOFF_DOFF(x)                         (((uint16_t)(((uint16_t)(x))<<DMA_DOFF_DOFF_SHIFT))&DMA_DOFF_DOFF_MASK)
1924 /* CITER_ELINKNO Bit Fields */
1925 #define DMA_CITER_ELINKNO_CITER_MASK             0x7FFFu
1926 #define DMA_CITER_ELINKNO_CITER_SHIFT            0
1927 #define DMA_CITER_ELINKNO_CITER(x)               (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKNO_CITER_SHIFT))&DMA_CITER_ELINKNO_CITER_MASK)
1928 #define DMA_CITER_ELINKNO_ELINK_MASK             0x8000u
1929 #define DMA_CITER_ELINKNO_ELINK_SHIFT            15
1930 /* CITER_ELINKYES Bit Fields */
1931 #define DMA_CITER_ELINKYES_CITER_MASK            0x1FFu
1932 #define DMA_CITER_ELINKYES_CITER_SHIFT           0
1933 #define DMA_CITER_ELINKYES_CITER(x)              (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKYES_CITER_SHIFT))&DMA_CITER_ELINKYES_CITER_MASK)
1934 #define DMA_CITER_ELINKYES_LINKCH_MASK           0x1E00u
1935 #define DMA_CITER_ELINKYES_LINKCH_SHIFT          9
1936 #define DMA_CITER_ELINKYES_LINKCH(x)             (((uint16_t)(((uint16_t)(x))<<DMA_CITER_ELINKYES_LINKCH_SHIFT))&DMA_CITER_ELINKYES_LINKCH_MASK)
1937 #define DMA_CITER_ELINKYES_ELINK_MASK            0x8000u
1938 #define DMA_CITER_ELINKYES_ELINK_SHIFT           15
1939 /* DLAST_SGA Bit Fields */
1940 #define DMA_DLAST_SGA_DLASTSGA_MASK              0xFFFFFFFFu
1941 #define DMA_DLAST_SGA_DLASTSGA_SHIFT             0
1942 #define DMA_DLAST_SGA_DLASTSGA(x)                (((uint32_t)(((uint32_t)(x))<<DMA_DLAST_SGA_DLASTSGA_SHIFT))&DMA_DLAST_SGA_DLASTSGA_MASK)
1943 /* CSR Bit Fields */
1944 #define DMA_CSR_START_MASK                       0x1u
1945 #define DMA_CSR_START_SHIFT                      0
1946 #define DMA_CSR_INTMAJOR_MASK                    0x2u
1947 #define DMA_CSR_INTMAJOR_SHIFT                   1
1948 #define DMA_CSR_INTHALF_MASK                     0x4u
1949 #define DMA_CSR_INTHALF_SHIFT                    2
1950 #define DMA_CSR_DREQ_MASK                        0x8u
1951 #define DMA_CSR_DREQ_SHIFT                       3
1952 #define DMA_CSR_ESG_MASK                         0x10u
1953 #define DMA_CSR_ESG_SHIFT                        4
1954 #define DMA_CSR_MAJORELINK_MASK                  0x20u
1955 #define DMA_CSR_MAJORELINK_SHIFT                 5
1956 #define DMA_CSR_ACTIVE_MASK                      0x40u
1957 #define DMA_CSR_ACTIVE_SHIFT                     6
1958 #define DMA_CSR_DONE_MASK                        0x80u
1959 #define DMA_CSR_DONE_SHIFT                       7
1960 #define DMA_CSR_MAJORLINKCH_MASK                 0xF00u
1961 #define DMA_CSR_MAJORLINKCH_SHIFT                8
1962 #define DMA_CSR_MAJORLINKCH(x)                   (((uint16_t)(((uint16_t)(x))<<DMA_CSR_MAJORLINKCH_SHIFT))&DMA_CSR_MAJORLINKCH_MASK)
1963 #define DMA_CSR_BWC_MASK                         0xC000u
1964 #define DMA_CSR_BWC_SHIFT                        14
1965 #define DMA_CSR_BWC(x)                           (((uint16_t)(((uint16_t)(x))<<DMA_CSR_BWC_SHIFT))&DMA_CSR_BWC_MASK)
1966 /* BITER_ELINKNO Bit Fields */
1967 #define DMA_BITER_ELINKNO_BITER_MASK             0x7FFFu
1968 #define DMA_BITER_ELINKNO_BITER_SHIFT            0
1969 #define DMA_BITER_ELINKNO_BITER(x)               (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKNO_BITER_SHIFT))&DMA_BITER_ELINKNO_BITER_MASK)
1970 #define DMA_BITER_ELINKNO_ELINK_MASK             0x8000u
1971 #define DMA_BITER_ELINKNO_ELINK_SHIFT            15
1972 /* BITER_ELINKYES Bit Fields */
1973 #define DMA_BITER_ELINKYES_BITER_MASK            0x1FFu
1974 #define DMA_BITER_ELINKYES_BITER_SHIFT           0
1975 #define DMA_BITER_ELINKYES_BITER(x)              (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKYES_BITER_SHIFT))&DMA_BITER_ELINKYES_BITER_MASK)
1976 #define DMA_BITER_ELINKYES_LINKCH_MASK           0x1E00u
1977 #define DMA_BITER_ELINKYES_LINKCH_SHIFT          9
1978 #define DMA_BITER_ELINKYES_LINKCH(x)             (((uint16_t)(((uint16_t)(x))<<DMA_BITER_ELINKYES_LINKCH_SHIFT))&DMA_BITER_ELINKYES_LINKCH_MASK)
1979 #define DMA_BITER_ELINKYES_ELINK_MASK            0x8000u
1980 #define DMA_BITER_ELINKYES_ELINK_SHIFT           15
1981
1982 /*!
1983  * @}
1984  */ /* end of group DMA_Register_Masks */
1985
1986
1987 /* DMA - Peripheral instance base addresses */
1988 /** Peripheral DMA base address */
1989 #define DMA_BASE                                 (0x40008000u)
1990 /** Peripheral DMA base pointer */
1991 #define DMA0                                     ((DMA_Type *)DMA_BASE)
1992 #define DMA_BASE_PTR                             (DMA0)
1993 /** Array initializer of DMA peripheral base addresses */
1994 #define DMA_BASE_ADDRS                           { DMA_BASE }
1995 /** Array initializer of DMA peripheral base pointers */
1996 #define DMA_BASE_PTRS                            { DMA0 }
1997 /** Interrupt vectors for the DMA peripheral type */
1998 #define DMA_CHN_IRQS                             { DMA0_IRQn, DMA1_IRQn, DMA2_IRQn, DMA3_IRQn, DMA4_IRQn, DMA5_IRQn, DMA6_IRQn, DMA7_IRQn, DMA8_IRQn, DMA9_IRQn, DMA10_IRQn, DMA11_IRQn, DMA12_IRQn, DMA13_IRQn, DMA14_IRQn, DMA15_IRQn }
1999 #define DMA_ERROR_IRQS                           { DMA_Error_IRQn }
2000
2001 /* ----------------------------------------------------------------------------
2002    -- DMA - Register accessor macros
2003    ---------------------------------------------------------------------------- */
2004
2005 /*!
2006  * @addtogroup DMA_Register_Accessor_Macros DMA - Register accessor macros
2007  * @{
2008  */
2009
2010
2011 /* DMA - Register instance definitions */
2012 /* DMA */
2013 #define DMA_CR                                   DMA_CR_REG(DMA0)
2014 #define DMA_ES                                   DMA_ES_REG(DMA0)
2015 #define DMA_ERQ                                  DMA_ERQ_REG(DMA0)
2016 #define DMA_EEI                                  DMA_EEI_REG(DMA0)
2017 #define DMA_CEEI                                 DMA_CEEI_REG(DMA0)
2018 #define DMA_SEEI                                 DMA_SEEI_REG(DMA0)
2019 #define DMA_CERQ                                 DMA_CERQ_REG(DMA0)
2020 #define DMA_SERQ                                 DMA_SERQ_REG(DMA0)
2021 #define DMA_CDNE                                 DMA_CDNE_REG(DMA0)
2022 #define DMA_SSRT                                 DMA_SSRT_REG(DMA0)
2023 #define DMA_CERR                                 DMA_CERR_REG(DMA0)
2024 #define DMA_CINT                                 DMA_CINT_REG(DMA0)
2025 #define DMA_INT                                  DMA_INT_REG(DMA0)
2026 #define DMA_ERR                                  DMA_ERR_REG(DMA0)
2027 #define DMA_HRS                                  DMA_HRS_REG(DMA0)
2028 #define DMA_EARS                                 DMA_EARS_REG(DMA0)
2029 #define DMA_DCHPRI3                              DMA_DCHPRI3_REG(DMA0)
2030 #define DMA_DCHPRI2                              DMA_DCHPRI2_REG(DMA0)
2031 #define DMA_DCHPRI1                              DMA_DCHPRI1_REG(DMA0)
2032 #define DMA_DCHPRI0                              DMA_DCHPRI0_REG(DMA0)
2033 #define DMA_DCHPRI7                              DMA_DCHPRI7_REG(DMA0)
2034 #define DMA_DCHPRI6                              DMA_DCHPRI6_REG(DMA0)
2035 #define DMA_DCHPRI5                              DMA_DCHPRI5_REG(DMA0)
2036 #define DMA_DCHPRI4                              DMA_DCHPRI4_REG(DMA0)
2037 #define DMA_DCHPRI11                             DMA_DCHPRI11_REG(DMA0)
2038 #define DMA_DCHPRI10                             DMA_DCHPRI10_REG(DMA0)
2039 #define DMA_DCHPRI9                              DMA_DCHPRI9_REG(DMA0)
2040 #define DMA_DCHPRI8                              DMA_DCHPRI8_REG(DMA0)
2041 #define DMA_DCHPRI15                             DMA_DCHPRI15_REG(DMA0)
2042 #define DMA_DCHPRI14                             DMA_DCHPRI14_REG(DMA0)
2043 #define DMA_DCHPRI13                             DMA_DCHPRI13_REG(DMA0)
2044 #define DMA_DCHPRI12                             DMA_DCHPRI12_REG(DMA0)
2045 #define DMA_TCD0_SADDR                           DMA_SADDR_REG(DMA0,0)
2046 #define DMA_TCD0_SOFF                            DMA_SOFF_REG(DMA0,0)
2047 #define DMA_TCD0_ATTR                            DMA_ATTR_REG(DMA0,0)
2048 #define DMA_TCD0_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,0)
2049 #define DMA_TCD0_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,0)
2050 #define DMA_TCD0_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,0)
2051 #define DMA_TCD0_SLAST                           DMA_SLAST_REG(DMA0,0)
2052 #define DMA_TCD0_DADDR                           DMA_DADDR_REG(DMA0,0)
2053 #define DMA_TCD0_DOFF                            DMA_DOFF_REG(DMA0,0)
2054 #define DMA_TCD0_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,0)
2055 #define DMA_TCD0_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,0)
2056 #define DMA_TCD0_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,0)
2057 #define DMA_TCD0_CSR                             DMA_CSR_REG(DMA0,0)
2058 #define DMA_TCD0_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,0)
2059 #define DMA_TCD0_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,0)
2060 #define DMA_TCD1_SADDR                           DMA_SADDR_REG(DMA0,1)
2061 #define DMA_TCD1_SOFF                            DMA_SOFF_REG(DMA0,1)
2062 #define DMA_TCD1_ATTR                            DMA_ATTR_REG(DMA0,1)
2063 #define DMA_TCD1_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,1)
2064 #define DMA_TCD1_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,1)
2065 #define DMA_TCD1_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,1)
2066 #define DMA_TCD1_SLAST                           DMA_SLAST_REG(DMA0,1)
2067 #define DMA_TCD1_DADDR                           DMA_DADDR_REG(DMA0,1)
2068 #define DMA_TCD1_DOFF                            DMA_DOFF_REG(DMA0,1)
2069 #define DMA_TCD1_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,1)
2070 #define DMA_TCD1_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,1)
2071 #define DMA_TCD1_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,1)
2072 #define DMA_TCD1_CSR                             DMA_CSR_REG(DMA0,1)
2073 #define DMA_TCD1_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,1)
2074 #define DMA_TCD1_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,1)
2075 #define DMA_TCD2_SADDR                           DMA_SADDR_REG(DMA0,2)
2076 #define DMA_TCD2_SOFF                            DMA_SOFF_REG(DMA0,2)
2077 #define DMA_TCD2_ATTR                            DMA_ATTR_REG(DMA0,2)
2078 #define DMA_TCD2_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,2)
2079 #define DMA_TCD2_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,2)
2080 #define DMA_TCD2_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,2)
2081 #define DMA_TCD2_SLAST                           DMA_SLAST_REG(DMA0,2)
2082 #define DMA_TCD2_DADDR                           DMA_DADDR_REG(DMA0,2)
2083 #define DMA_TCD2_DOFF                            DMA_DOFF_REG(DMA0,2)
2084 #define DMA_TCD2_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,2)
2085 #define DMA_TCD2_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,2)
2086 #define DMA_TCD2_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,2)
2087 #define DMA_TCD2_CSR                             DMA_CSR_REG(DMA0,2)
2088 #define DMA_TCD2_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,2)
2089 #define DMA_TCD2_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,2)
2090 #define DMA_TCD3_SADDR                           DMA_SADDR_REG(DMA0,3)
2091 #define DMA_TCD3_SOFF                            DMA_SOFF_REG(DMA0,3)
2092 #define DMA_TCD3_ATTR                            DMA_ATTR_REG(DMA0,3)
2093 #define DMA_TCD3_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,3)
2094 #define DMA_TCD3_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,3)
2095 #define DMA_TCD3_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,3)
2096 #define DMA_TCD3_SLAST                           DMA_SLAST_REG(DMA0,3)
2097 #define DMA_TCD3_DADDR                           DMA_DADDR_REG(DMA0,3)
2098 #define DMA_TCD3_DOFF                            DMA_DOFF_REG(DMA0,3)
2099 #define DMA_TCD3_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,3)
2100 #define DMA_TCD3_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,3)
2101 #define DMA_TCD3_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,3)
2102 #define DMA_TCD3_CSR                             DMA_CSR_REG(DMA0,3)
2103 #define DMA_TCD3_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,3)
2104 #define DMA_TCD3_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,3)
2105 #define DMA_TCD4_SADDR                           DMA_SADDR_REG(DMA0,4)
2106 #define DMA_TCD4_SOFF                            DMA_SOFF_REG(DMA0,4)
2107 #define DMA_TCD4_ATTR                            DMA_ATTR_REG(DMA0,4)
2108 #define DMA_TCD4_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,4)
2109 #define DMA_TCD4_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,4)
2110 #define DMA_TCD4_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,4)
2111 #define DMA_TCD4_SLAST                           DMA_SLAST_REG(DMA0,4)
2112 #define DMA_TCD4_DADDR                           DMA_DADDR_REG(DMA0,4)
2113 #define DMA_TCD4_DOFF                            DMA_DOFF_REG(DMA0,4)
2114 #define DMA_TCD4_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,4)
2115 #define DMA_TCD4_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,4)
2116 #define DMA_TCD4_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,4)
2117 #define DMA_TCD4_CSR                             DMA_CSR_REG(DMA0,4)
2118 #define DMA_TCD4_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,4)
2119 #define DMA_TCD4_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,4)
2120 #define DMA_TCD5_SADDR                           DMA_SADDR_REG(DMA0,5)
2121 #define DMA_TCD5_SOFF                            DMA_SOFF_REG(DMA0,5)
2122 #define DMA_TCD5_ATTR                            DMA_ATTR_REG(DMA0,5)
2123 #define DMA_TCD5_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,5)
2124 #define DMA_TCD5_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,5)
2125 #define DMA_TCD5_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,5)
2126 #define DMA_TCD5_SLAST                           DMA_SLAST_REG(DMA0,5)
2127 #define DMA_TCD5_DADDR                           DMA_DADDR_REG(DMA0,5)
2128 #define DMA_TCD5_DOFF                            DMA_DOFF_REG(DMA0,5)
2129 #define DMA_TCD5_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,5)
2130 #define DMA_TCD5_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,5)
2131 #define DMA_TCD5_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,5)
2132 #define DMA_TCD5_CSR                             DMA_CSR_REG(DMA0,5)
2133 #define DMA_TCD5_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,5)
2134 #define DMA_TCD5_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,5)
2135 #define DMA_TCD6_SADDR                           DMA_SADDR_REG(DMA0,6)
2136 #define DMA_TCD6_SOFF                            DMA_SOFF_REG(DMA0,6)
2137 #define DMA_TCD6_ATTR                            DMA_ATTR_REG(DMA0,6)
2138 #define DMA_TCD6_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,6)
2139 #define DMA_TCD6_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,6)
2140 #define DMA_TCD6_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,6)
2141 #define DMA_TCD6_SLAST                           DMA_SLAST_REG(DMA0,6)
2142 #define DMA_TCD6_DADDR                           DMA_DADDR_REG(DMA0,6)
2143 #define DMA_TCD6_DOFF                            DMA_DOFF_REG(DMA0,6)
2144 #define DMA_TCD6_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,6)
2145 #define DMA_TCD6_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,6)
2146 #define DMA_TCD6_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,6)
2147 #define DMA_TCD6_CSR                             DMA_CSR_REG(DMA0,6)
2148 #define DMA_TCD6_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,6)
2149 #define DMA_TCD6_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,6)
2150 #define DMA_TCD7_SADDR                           DMA_SADDR_REG(DMA0,7)
2151 #define DMA_TCD7_SOFF                            DMA_SOFF_REG(DMA0,7)
2152 #define DMA_TCD7_ATTR                            DMA_ATTR_REG(DMA0,7)
2153 #define DMA_TCD7_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,7)
2154 #define DMA_TCD7_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,7)
2155 #define DMA_TCD7_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,7)
2156 #define DMA_TCD7_SLAST                           DMA_SLAST_REG(DMA0,7)
2157 #define DMA_TCD7_DADDR                           DMA_DADDR_REG(DMA0,7)
2158 #define DMA_TCD7_DOFF                            DMA_DOFF_REG(DMA0,7)
2159 #define DMA_TCD7_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,7)
2160 #define DMA_TCD7_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,7)
2161 #define DMA_TCD7_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,7)
2162 #define DMA_TCD7_CSR                             DMA_CSR_REG(DMA0,7)
2163 #define DMA_TCD7_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,7)
2164 #define DMA_TCD7_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,7)
2165 #define DMA_TCD8_SADDR                           DMA_SADDR_REG(DMA0,8)
2166 #define DMA_TCD8_SOFF                            DMA_SOFF_REG(DMA0,8)
2167 #define DMA_TCD8_ATTR                            DMA_ATTR_REG(DMA0,8)
2168 #define DMA_TCD8_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,8)
2169 #define DMA_TCD8_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,8)
2170 #define DMA_TCD8_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,8)
2171 #define DMA_TCD8_SLAST                           DMA_SLAST_REG(DMA0,8)
2172 #define DMA_TCD8_DADDR                           DMA_DADDR_REG(DMA0,8)
2173 #define DMA_TCD8_DOFF                            DMA_DOFF_REG(DMA0,8)
2174 #define DMA_TCD8_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,8)
2175 #define DMA_TCD8_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,8)
2176 #define DMA_TCD8_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,8)
2177 #define DMA_TCD8_CSR                             DMA_CSR_REG(DMA0,8)
2178 #define DMA_TCD8_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,8)
2179 #define DMA_TCD8_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,8)
2180 #define DMA_TCD9_SADDR                           DMA_SADDR_REG(DMA0,9)
2181 #define DMA_TCD9_SOFF                            DMA_SOFF_REG(DMA0,9)
2182 #define DMA_TCD9_ATTR                            DMA_ATTR_REG(DMA0,9)
2183 #define DMA_TCD9_NBYTES_MLNO                     DMA_NBYTES_MLNO_REG(DMA0,9)
2184 #define DMA_TCD9_NBYTES_MLOFFNO                  DMA_NBYTES_MLOFFNO_REG(DMA0,9)
2185 #define DMA_TCD9_NBYTES_MLOFFYES                 DMA_NBYTES_MLOFFYES_REG(DMA0,9)
2186 #define DMA_TCD9_SLAST                           DMA_SLAST_REG(DMA0,9)
2187 #define DMA_TCD9_DADDR                           DMA_DADDR_REG(DMA0,9)
2188 #define DMA_TCD9_DOFF                            DMA_DOFF_REG(DMA0,9)
2189 #define DMA_TCD9_CITER_ELINKNO                   DMA_CITER_ELINKNO_REG(DMA0,9)
2190 #define DMA_TCD9_CITER_ELINKYES                  DMA_CITER_ELINKYES_REG(DMA0,9)
2191 #define DMA_TCD9_DLASTSGA                        DMA_DLAST_SGA_REG(DMA0,9)
2192 #define DMA_TCD9_CSR                             DMA_CSR_REG(DMA0,9)
2193 #define DMA_TCD9_BITER_ELINKNO                   DMA_BITER_ELINKNO_REG(DMA0,9)
2194 #define DMA_TCD9_BITER_ELINKYES                  DMA_BITER_ELINKYES_REG(DMA0,9)
2195 #define DMA_TCD10_SADDR                          DMA_SADDR_REG(DMA0,10)
2196 #define DMA_TCD10_SOFF                           DMA_SOFF_REG(DMA0,10)
2197 #define DMA_TCD10_ATTR                           DMA_ATTR_REG(DMA0,10)
2198 #define DMA_TCD10_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,10)
2199 #define DMA_TCD10_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,10)
2200 #define DMA_TCD10_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,10)
2201 #define DMA_TCD10_SLAST                          DMA_SLAST_REG(DMA0,10)
2202 #define DMA_TCD10_DADDR                          DMA_DADDR_REG(DMA0,10)
2203 #define DMA_TCD10_DOFF                           DMA_DOFF_REG(DMA0,10)
2204 #define DMA_TCD10_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,10)
2205 #define DMA_TCD10_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,10)
2206 #define DMA_TCD10_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,10)
2207 #define DMA_TCD10_CSR                            DMA_CSR_REG(DMA0,10)
2208 #define DMA_TCD10_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,10)
2209 #define DMA_TCD10_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,10)
2210 #define DMA_TCD11_SADDR                          DMA_SADDR_REG(DMA0,11)
2211 #define DMA_TCD11_SOFF                           DMA_SOFF_REG(DMA0,11)
2212 #define DMA_TCD11_ATTR                           DMA_ATTR_REG(DMA0,11)
2213 #define DMA_TCD11_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,11)
2214 #define DMA_TCD11_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,11)
2215 #define DMA_TCD11_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,11)
2216 #define DMA_TCD11_SLAST                          DMA_SLAST_REG(DMA0,11)
2217 #define DMA_TCD11_DADDR                          DMA_DADDR_REG(DMA0,11)
2218 #define DMA_TCD11_DOFF                           DMA_DOFF_REG(DMA0,11)
2219 #define DMA_TCD11_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,11)
2220 #define DMA_TCD11_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,11)
2221 #define DMA_TCD11_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,11)
2222 #define DMA_TCD11_CSR                            DMA_CSR_REG(DMA0,11)
2223 #define DMA_TCD11_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,11)
2224 #define DMA_TCD11_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,11)
2225 #define DMA_TCD12_SADDR                          DMA_SADDR_REG(DMA0,12)
2226 #define DMA_TCD12_SOFF                           DMA_SOFF_REG(DMA0,12)
2227 #define DMA_TCD12_ATTR                           DMA_ATTR_REG(DMA0,12)
2228 #define DMA_TCD12_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,12)
2229 #define DMA_TCD12_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,12)
2230 #define DMA_TCD12_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,12)
2231 #define DMA_TCD12_SLAST                          DMA_SLAST_REG(DMA0,12)
2232 #define DMA_TCD12_DADDR                          DMA_DADDR_REG(DMA0,12)
2233 #define DMA_TCD12_DOFF                           DMA_DOFF_REG(DMA0,12)
2234 #define DMA_TCD12_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,12)
2235 #define DMA_TCD12_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,12)
2236 #define DMA_TCD12_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,12)
2237 #define DMA_TCD12_CSR                            DMA_CSR_REG(DMA0,12)
2238 #define DMA_TCD12_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,12)
2239 #define DMA_TCD12_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,12)
2240 #define DMA_TCD13_SADDR                          DMA_SADDR_REG(DMA0,13)
2241 #define DMA_TCD13_SOFF                           DMA_SOFF_REG(DMA0,13)
2242 #define DMA_TCD13_ATTR                           DMA_ATTR_REG(DMA0,13)
2243 #define DMA_TCD13_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,13)
2244 #define DMA_TCD13_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,13)
2245 #define DMA_TCD13_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,13)
2246 #define DMA_TCD13_SLAST                          DMA_SLAST_REG(DMA0,13)
2247 #define DMA_TCD13_DADDR                          DMA_DADDR_REG(DMA0,13)
2248 #define DMA_TCD13_DOFF                           DMA_DOFF_REG(DMA0,13)
2249 #define DMA_TCD13_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,13)
2250 #define DMA_TCD13_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,13)
2251 #define DMA_TCD13_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,13)
2252 #define DMA_TCD13_CSR                            DMA_CSR_REG(DMA0,13)
2253 #define DMA_TCD13_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,13)
2254 #define DMA_TCD13_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,13)
2255 #define DMA_TCD14_SADDR                          DMA_SADDR_REG(DMA0,14)
2256 #define DMA_TCD14_SOFF                           DMA_SOFF_REG(DMA0,14)
2257 #define DMA_TCD14_ATTR                           DMA_ATTR_REG(DMA0,14)
2258 #define DMA_TCD14_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,14)
2259 #define DMA_TCD14_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,14)
2260 #define DMA_TCD14_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,14)
2261 #define DMA_TCD14_SLAST                          DMA_SLAST_REG(DMA0,14)
2262 #define DMA_TCD14_DADDR                          DMA_DADDR_REG(DMA0,14)
2263 #define DMA_TCD14_DOFF                           DMA_DOFF_REG(DMA0,14)
2264 #define DMA_TCD14_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,14)
2265 #define DMA_TCD14_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,14)
2266 #define DMA_TCD14_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,14)
2267 #define DMA_TCD14_CSR                            DMA_CSR_REG(DMA0,14)
2268 #define DMA_TCD14_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,14)
2269 #define DMA_TCD14_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,14)
2270 #define DMA_TCD15_SADDR                          DMA_SADDR_REG(DMA0,15)
2271 #define DMA_TCD15_SOFF                           DMA_SOFF_REG(DMA0,15)
2272 #define DMA_TCD15_ATTR                           DMA_ATTR_REG(DMA0,15)
2273 #define DMA_TCD15_NBYTES_MLNO                    DMA_NBYTES_MLNO_REG(DMA0,15)
2274 #define DMA_TCD15_NBYTES_MLOFFNO                 DMA_NBYTES_MLOFFNO_REG(DMA0,15)
2275 #define DMA_TCD15_NBYTES_MLOFFYES                DMA_NBYTES_MLOFFYES_REG(DMA0,15)
2276 #define DMA_TCD15_SLAST                          DMA_SLAST_REG(DMA0,15)
2277 #define DMA_TCD15_DADDR                          DMA_DADDR_REG(DMA0,15)
2278 #define DMA_TCD15_DOFF                           DMA_DOFF_REG(DMA0,15)
2279 #define DMA_TCD15_CITER_ELINKNO                  DMA_CITER_ELINKNO_REG(DMA0,15)
2280 #define DMA_TCD15_CITER_ELINKYES                 DMA_CITER_ELINKYES_REG(DMA0,15)
2281 #define DMA_TCD15_DLASTSGA                       DMA_DLAST_SGA_REG(DMA0,15)
2282 #define DMA_TCD15_CSR                            DMA_CSR_REG(DMA0,15)
2283 #define DMA_TCD15_BITER_ELINKNO                  DMA_BITER_ELINKNO_REG(DMA0,15)
2284 #define DMA_TCD15_BITER_ELINKYES                 DMA_BITER_ELINKYES_REG(DMA0,15)
2285
2286 /* DMA - Register array accessors */
2287 #define DMA_SADDR(index)                         DMA_SADDR_REG(DMA0,index)
2288 #define DMA_SOFF(index)                          DMA_SOFF_REG(DMA0,index)
2289 #define DMA_ATTR(index)                          DMA_ATTR_REG(DMA0,index)
2290 #define DMA_NBYTES_MLNO(index)                   DMA_NBYTES_MLNO_REG(DMA0,index)
2291 #define DMA_NBYTES_MLOFFNO(index)                DMA_NBYTES_MLOFFNO_REG(DMA0,index)
2292 #define DMA_NBYTES_MLOFFYES(index)               DMA_NBYTES_MLOFFYES_REG(DMA0,index)
2293 #define DMA_SLAST(index)                         DMA_SLAST_REG(DMA0,index)
2294 #define DMA_DADDR(index)                         DMA_DADDR_REG(DMA0,index)
2295 #define DMA_DOFF(index)                          DMA_DOFF_REG(DMA0,index)
2296 #define DMA_CITER_ELINKNO(index)                 DMA_CITER_ELINKNO_REG(DMA0,index)
2297 #define DMA_CITER_ELINKYES(index)                DMA_CITER_ELINKYES_REG(DMA0,index)
2298 #define DMA_DLAST_SGA(index)                     DMA_DLAST_SGA_REG(DMA0,index)
2299 #define DMA_CSR(index)                           DMA_CSR_REG(DMA0,index)
2300 #define DMA_BITER_ELINKNO(index)                 DMA_BITER_ELINKNO_REG(DMA0,index)
2301 #define DMA_BITER_ELINKYES(index)                DMA_BITER_ELINKYES_REG(DMA0,index)
2302
2303 /*!
2304  * @}
2305  */ /* end of group DMA_Register_Accessor_Macros */
2306
2307
2308 /*!
2309  * @}
2310  */ /* end of group DMA_Peripheral_Access_Layer */
2311
2312
2313 /* ----------------------------------------------------------------------------
2314    -- DMAMUX Peripheral Access Layer
2315    ---------------------------------------------------------------------------- */
2316
2317 /*!
2318  * @addtogroup DMAMUX_Peripheral_Access_Layer DMAMUX Peripheral Access Layer
2319  * @{
2320  */
2321
2322 /** DMAMUX - Register Layout Typedef */
2323 typedef struct {
2324   __IO uint8_t CHCFG[16];                          /**< Channel Configuration register, array offset: 0x0, array step: 0x1 */
2325 } DMAMUX_Type, *DMAMUX_MemMapPtr;
2326
2327 /* ----------------------------------------------------------------------------
2328    -- DMAMUX - Register accessor macros
2329    ---------------------------------------------------------------------------- */
2330
2331 /*!
2332  * @addtogroup DMAMUX_Register_Accessor_Macros DMAMUX - Register accessor macros
2333  * @{
2334  */
2335
2336
2337 /* DMAMUX - Register accessors */
2338 #define DMAMUX_CHCFG_REG(base,index)             ((base)->CHCFG[index])
2339
2340 /*!
2341  * @}
2342  */ /* end of group DMAMUX_Register_Accessor_Macros */
2343
2344
2345 /* ----------------------------------------------------------------------------
2346    -- DMAMUX Register Masks
2347    ---------------------------------------------------------------------------- */
2348
2349 /*!
2350  * @addtogroup DMAMUX_Register_Masks DMAMUX Register Masks
2351  * @{
2352  */
2353
2354 /* CHCFG Bit Fields */
2355 #define DMAMUX_CHCFG_SOURCE_MASK                 0x3Fu
2356 #define DMAMUX_CHCFG_SOURCE_SHIFT                0
2357 #define DMAMUX_CHCFG_SOURCE(x)                   (((uint8_t)(((uint8_t)(x))<<DMAMUX_CHCFG_SOURCE_SHIFT))&DMAMUX_CHCFG_SOURCE_MASK)
2358 #define DMAMUX_CHCFG_TRIG_MASK                   0x40u
2359 #define DMAMUX_CHCFG_TRIG_SHIFT                  6
2360 #define DMAMUX_CHCFG_ENBL_MASK                   0x80u
2361 #define DMAMUX_CHCFG_ENBL_SHIFT                  7
2362
2363 /*!
2364  * @}
2365  */ /* end of group DMAMUX_Register_Masks */
2366
2367
2368 /* DMAMUX - Peripheral instance base addresses */
2369 /** Peripheral DMAMUX base address */
2370 #define DMAMUX_BASE                              (0x40021000u)
2371 /** Peripheral DMAMUX base pointer */
2372 #define DMAMUX                                   ((DMAMUX_Type *)DMAMUX_BASE)
2373 #define DMAMUX_BASE_PTR                          (DMAMUX)
2374 /** Array initializer of DMAMUX peripheral base addresses */
2375 #define DMAMUX_BASE_ADDRS                        { DMAMUX_BASE }
2376 /** Array initializer of DMAMUX peripheral base pointers */
2377 #define DMAMUX_BASE_PTRS                         { DMAMUX }
2378
2379 /* ----------------------------------------------------------------------------
2380    -- DMAMUX - Register accessor macros
2381    ---------------------------------------------------------------------------- */
2382
2383 /*!
2384  * @addtogroup DMAMUX_Register_Accessor_Macros DMAMUX - Register accessor macros
2385  * @{
2386  */
2387
2388
2389 /* DMAMUX - Register instance definitions */
2390 /* DMAMUX */
2391 #define DMAMUX_CHCFG0                            DMAMUX_CHCFG_REG(DMAMUX,0)
2392 #define DMAMUX_CHCFG1                            DMAMUX_CHCFG_REG(DMAMUX,1)
2393 #define DMAMUX_CHCFG2                            DMAMUX_CHCFG_REG(DMAMUX,2)
2394 #define DMAMUX_CHCFG3                            DMAMUX_CHCFG_REG(DMAMUX,3)
2395 #define DMAMUX_CHCFG4                            DMAMUX_CHCFG_REG(DMAMUX,4)
2396 #define DMAMUX_CHCFG5                            DMAMUX_CHCFG_REG(DMAMUX,5)
2397 #define DMAMUX_CHCFG6                            DMAMUX_CHCFG_REG(DMAMUX,6)
2398 #define DMAMUX_CHCFG7                            DMAMUX_CHCFG_REG(DMAMUX,7)
2399 #define DMAMUX_CHCFG8                            DMAMUX_CHCFG_REG(DMAMUX,8)
2400 #define DMAMUX_CHCFG9                            DMAMUX_CHCFG_REG(DMAMUX,9)
2401 #define DMAMUX_CHCFG10                           DMAMUX_CHCFG_REG(DMAMUX,10)
2402 #define DMAMUX_CHCFG11                           DMAMUX_CHCFG_REG(DMAMUX,11)
2403 #define DMAMUX_CHCFG12                           DMAMUX_CHCFG_REG(DMAMUX,12)
2404 #define DMAMUX_CHCFG13                           DMAMUX_CHCFG_REG(DMAMUX,13)
2405 #define DMAMUX_CHCFG14                           DMAMUX_CHCFG_REG(DMAMUX,14)
2406 #define DMAMUX_CHCFG15                           DMAMUX_CHCFG_REG(DMAMUX,15)
2407
2408 /* DMAMUX - Register array accessors */
2409 #define DMAMUX_CHCFG(index)                      DMAMUX_CHCFG_REG(DMAMUX,index)
2410
2411 /*!
2412  * @}
2413  */ /* end of group DMAMUX_Register_Accessor_Macros */
2414
2415
2416 /*!
2417  * @}
2418  */ /* end of group DMAMUX_Peripheral_Access_Layer */
2419
2420
2421 /* ----------------------------------------------------------------------------
2422    -- EWM Peripheral Access Layer
2423    ---------------------------------------------------------------------------- */
2424
2425 /*!
2426  * @addtogroup EWM_Peripheral_Access_Layer EWM Peripheral Access Layer
2427  * @{
2428  */
2429
2430 /** EWM - Register Layout Typedef */
2431 typedef struct {
2432   __IO uint8_t CTRL;                               /**< Control Register, offset: 0x0 */
2433   __O  uint8_t SERV;                               /**< Service Register, offset: 0x1 */
2434   __IO uint8_t CMPL;                               /**< Compare Low Register, offset: 0x2 */
2435   __IO uint8_t CMPH;                               /**< Compare High Register, offset: 0x3 */
2436        uint8_t RESERVED_0[1];
2437   __IO uint8_t CLKPRESCALER;                       /**< Clock Prescaler Register, offset: 0x5 */
2438 } EWM_Type, *EWM_MemMapPtr;
2439
2440 /* ----------------------------------------------------------------------------
2441    -- EWM - Register accessor macros
2442    ---------------------------------------------------------------------------- */
2443
2444 /*!
2445  * @addtogroup EWM_Register_Accessor_Macros EWM - Register accessor macros
2446  * @{
2447  */
2448
2449
2450 /* EWM - Register accessors */
2451 #define EWM_CTRL_REG(base)                       ((base)->CTRL)
2452 #define EWM_SERV_REG(base)                       ((base)->SERV)
2453 #define EWM_CMPL_REG(base)                       ((base)->CMPL)
2454 #define EWM_CMPH_REG(base)                       ((base)->CMPH)
2455 #define EWM_CLKPRESCALER_REG(base)               ((base)->CLKPRESCALER)
2456
2457 /*!
2458  * @}
2459  */ /* end of group EWM_Register_Accessor_Macros */
2460
2461
2462 /* ----------------------------------------------------------------------------
2463    -- EWM Register Masks
2464    ---------------------------------------------------------------------------- */
2465
2466 /*!
2467  * @addtogroup EWM_Register_Masks EWM Register Masks
2468  * @{
2469  */
2470
2471 /* CTRL Bit Fields */
2472 #define EWM_CTRL_EWMEN_MASK                      0x1u
2473 #define EWM_CTRL_EWMEN_SHIFT                     0
2474 #define EWM_CTRL_ASSIN_MASK                      0x2u
2475 #define EWM_CTRL_ASSIN_SHIFT                     1
2476 #define EWM_CTRL_INEN_MASK                       0x4u
2477 #define EWM_CTRL_INEN_SHIFT                      2
2478 #define EWM_CTRL_INTEN_MASK                      0x8u
2479 #define EWM_CTRL_INTEN_SHIFT                     3
2480 /* SERV Bit Fields */
2481 #define EWM_SERV_SERVICE_MASK                    0xFFu
2482 #define EWM_SERV_SERVICE_SHIFT                   0
2483 #define EWM_SERV_SERVICE(x)                      (((uint8_t)(((uint8_t)(x))<<EWM_SERV_SERVICE_SHIFT))&EWM_SERV_SERVICE_MASK)
2484 /* CMPL Bit Fields */
2485 #define EWM_CMPL_COMPAREL_MASK                   0xFFu
2486 #define EWM_CMPL_COMPAREL_SHIFT                  0
2487 #define EWM_CMPL_COMPAREL(x)                     (((uint8_t)(((uint8_t)(x))<<EWM_CMPL_COMPAREL_SHIFT))&EWM_CMPL_COMPAREL_MASK)
2488 /* CMPH Bit Fields */
2489 #define EWM_CMPH_COMPAREH_MASK                   0xFFu
2490 #define EWM_CMPH_COMPAREH_SHIFT                  0
2491 #define EWM_CMPH_COMPAREH(x)                     (((uint8_t)(((uint8_t)(x))<<EWM_CMPH_COMPAREH_SHIFT))&EWM_CMPH_COMPAREH_MASK)
2492 /* CLKPRESCALER Bit Fields */
2493 #define EWM_CLKPRESCALER_CLK_DIV_MASK            0xFFu
2494 #define EWM_CLKPRESCALER_CLK_DIV_SHIFT           0
2495 #define EWM_CLKPRESCALER_CLK_DIV(x)              (((uint8_t)(((uint8_t)(x))<<EWM_CLKPRESCALER_CLK_DIV_SHIFT))&EWM_CLKPRESCALER_CLK_DIV_MASK)
2496
2497 /*!
2498  * @}
2499  */ /* end of group EWM_Register_Masks */
2500
2501
2502 /* EWM - Peripheral instance base addresses */
2503 /** Peripheral EWM base address */
2504 #define EWM_BASE                                 (0x40061000u)
2505 /** Peripheral EWM base pointer */
2506 #define EWM                                      ((EWM_Type *)EWM_BASE)
2507 #define EWM_BASE_PTR                             (EWM)
2508 /** Array initializer of EWM peripheral base addresses */
2509 #define EWM_BASE_ADDRS                           { EWM_BASE }
2510 /** Array initializer of EWM peripheral base pointers */
2511 #define EWM_BASE_PTRS                            { EWM }
2512 /** Interrupt vectors for the EWM peripheral type */
2513 #define EWM_IRQS                                 { Watchdog_IRQn }
2514
2515 /* ----------------------------------------------------------------------------
2516    -- EWM - Register accessor macros
2517    ---------------------------------------------------------------------------- */
2518
2519 /*!
2520  * @addtogroup EWM_Register_Accessor_Macros EWM - Register accessor macros
2521  * @{
2522  */
2523
2524
2525 /* EWM - Register instance definitions */
2526 /* EWM */
2527 #define EWM_CTRL                                 EWM_CTRL_REG(EWM)
2528 #define EWM_SERV                                 EWM_SERV_REG(EWM)
2529 #define EWM_CMPL                                 EWM_CMPL_REG(EWM)
2530 #define EWM_CMPH                                 EWM_CMPH_REG(EWM)
2531 #define EWM_CLKPRESCALER                         EWM_CLKPRESCALER_REG(EWM)
2532
2533 /*!
2534  * @}
2535  */ /* end of group EWM_Register_Accessor_Macros */
2536
2537
2538 /*!
2539  * @}
2540  */ /* end of group EWM_Peripheral_Access_Layer */
2541
2542
2543 /* ----------------------------------------------------------------------------
2544    -- FB Peripheral Access Layer
2545    ---------------------------------------------------------------------------- */
2546
2547 /*!
2548  * @addtogroup FB_Peripheral_Access_Layer FB Peripheral Access Layer
2549  * @{
2550  */
2551
2552 /** FB - Register Layout Typedef */
2553 typedef struct {
2554   struct {                                         /* offset: 0x0, array step: 0xC */
2555     __IO uint32_t CSAR;                              /**< Chip Select Address Register, array offset: 0x0, array step: 0xC */
2556     __IO uint32_t CSMR;                              /**< Chip Select Mask Register, array offset: 0x4, array step: 0xC */
2557     __IO uint32_t CSCR;                              /**< Chip Select Control Register, array offset: 0x8, array step: 0xC */
2558   } CS[6];
2559        uint8_t RESERVED_0[24];
2560   __IO uint32_t CSPMCR;                            /**< Chip Select port Multiplexing Control Register, offset: 0x60 */
2561 } FB_Type, *FB_MemMapPtr;
2562
2563 /* ----------------------------------------------------------------------------
2564    -- FB - Register accessor macros
2565    ---------------------------------------------------------------------------- */
2566
2567 /*!
2568  * @addtogroup FB_Register_Accessor_Macros FB - Register accessor macros
2569  * @{
2570  */
2571
2572
2573 /* FB - Register accessors */
2574 #define FB_CSAR_REG(base,index)                  ((base)->CS[index].CSAR)
2575 #define FB_CSMR_REG(base,index)                  ((base)->CS[index].CSMR)
2576 #define FB_CSCR_REG(base,index)                  ((base)->CS[index].CSCR)
2577 #define FB_CSPMCR_REG(base)                      ((base)->CSPMCR)
2578
2579 /*!
2580  * @}
2581  */ /* end of group FB_Register_Accessor_Macros */
2582
2583
2584 /* ----------------------------------------------------------------------------
2585    -- FB Register Masks
2586    ---------------------------------------------------------------------------- */
2587
2588 /*!
2589  * @addtogroup FB_Register_Masks FB Register Masks
2590  * @{
2591  */
2592
2593 /* CSAR Bit Fields */
2594 #define FB_CSAR_BA_MASK                          0xFFFF0000u
2595 #define FB_CSAR_BA_SHIFT                         16
2596 #define FB_CSAR_BA(x)                            (((uint32_t)(((uint32_t)(x))<<FB_CSAR_BA_SHIFT))&FB_CSAR_BA_MASK)
2597 /* CSMR Bit Fields */
2598 #define FB_CSMR_V_MASK                           0x1u
2599 #define FB_CSMR_V_SHIFT                          0
2600 #define FB_CSMR_WP_MASK                          0x100u
2601 #define FB_CSMR_WP_SHIFT                         8
2602 #define FB_CSMR_BAM_MASK                         0xFFFF0000u
2603 #define FB_CSMR_BAM_SHIFT                        16
2604 #define FB_CSMR_BAM(x)                           (((uint32_t)(((uint32_t)(x))<<FB_CSMR_BAM_SHIFT))&FB_CSMR_BAM_MASK)
2605 /* CSCR Bit Fields */
2606 #define FB_CSCR_BSTW_MASK                        0x8u
2607 #define FB_CSCR_BSTW_SHIFT                       3
2608 #define FB_CSCR_BSTR_MASK                        0x10u
2609 #define FB_CSCR_BSTR_SHIFT                       4
2610 #define FB_CSCR_BEM_MASK                         0x20u
2611 #define FB_CSCR_BEM_SHIFT                        5
2612 #define FB_CSCR_PS_MASK                          0xC0u
2613 #define FB_CSCR_PS_SHIFT                         6
2614 #define FB_CSCR_PS(x)                            (((uint32_t)(((uint32_t)(x))<<FB_CSCR_PS_SHIFT))&FB_CSCR_PS_MASK)
2615 #define FB_CSCR_AA_MASK                          0x100u
2616 #define FB_CSCR_AA_SHIFT                         8
2617 #define FB_CSCR_BLS_MASK                         0x200u
2618 #define FB_CSCR_BLS_SHIFT                        9
2619 #define FB_CSCR_WS_MASK                          0xFC00u
2620 #define FB_CSCR_WS_SHIFT                         10
2621 #define FB_CSCR_WS(x)                            (((uint32_t)(((uint32_t)(x))<<FB_CSCR_WS_SHIFT))&FB_CSCR_WS_MASK)
2622 #define FB_CSCR_WRAH_MASK                        0x30000u
2623 #define FB_CSCR_WRAH_SHIFT                       16
2624 #define FB_CSCR_WRAH(x)                          (((uint32_t)(((uint32_t)(x))<<FB_CSCR_WRAH_SHIFT))&FB_CSCR_WRAH_MASK)
2625 #define FB_CSCR_RDAH_MASK                        0xC0000u
2626 #define FB_CSCR_RDAH_SHIFT                       18
2627 #define FB_CSCR_RDAH(x)                          (((uint32_t)(((uint32_t)(x))<<FB_CSCR_RDAH_SHIFT))&FB_CSCR_RDAH_MASK)
2628 #define FB_CSCR_ASET_MASK                        0x300000u
2629 #define FB_CSCR_ASET_SHIFT                       20
2630 #define FB_CSCR_ASET(x)                          (((uint32_t)(((uint32_t)(x))<<FB_CSCR_ASET_SHIFT))&FB_CSCR_ASET_MASK)
2631 #define FB_CSCR_EXTS_MASK                        0x400000u
2632 #define FB_CSCR_EXTS_SHIFT                       22
2633 #define FB_CSCR_SWSEN_MASK                       0x800000u
2634 #define FB_CSCR_SWSEN_SHIFT                      23
2635 #define FB_CSCR_SWS_MASK                         0xFC000000u
2636 #define FB_CSCR_SWS_SHIFT                        26
2637 #define FB_CSCR_SWS(x)                           (((uint32_t)(((uint32_t)(x))<<FB_CSCR_SWS_SHIFT))&FB_CSCR_SWS_MASK)
2638 /* CSPMCR Bit Fields */
2639 #define FB_CSPMCR_GROUP5_MASK                    0xF000u
2640 #define FB_CSPMCR_GROUP5_SHIFT                   12
2641 #define FB_CSPMCR_GROUP5(x)                      (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP5_SHIFT))&FB_CSPMCR_GROUP5_MASK)
2642 #define FB_CSPMCR_GROUP4_MASK                    0xF0000u
2643 #define FB_CSPMCR_GROUP4_SHIFT                   16
2644 #define FB_CSPMCR_GROUP4(x)                      (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP4_SHIFT))&FB_CSPMCR_GROUP4_MASK)
2645 #define FB_CSPMCR_GROUP3_MASK                    0xF00000u
2646 #define FB_CSPMCR_GROUP3_SHIFT                   20
2647 #define FB_CSPMCR_GROUP3(x)                      (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP3_SHIFT))&FB_CSPMCR_GROUP3_MASK)
2648 #define FB_CSPMCR_GROUP2_MASK                    0xF000000u
2649 #define FB_CSPMCR_GROUP2_SHIFT                   24
2650 #define FB_CSPMCR_GROUP2(x)                      (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP2_SHIFT))&FB_CSPMCR_GROUP2_MASK)
2651 #define FB_CSPMCR_GROUP1_MASK                    0xF0000000u
2652 #define FB_CSPMCR_GROUP1_SHIFT                   28
2653 #define FB_CSPMCR_GROUP1(x)                      (((uint32_t)(((uint32_t)(x))<<FB_CSPMCR_GROUP1_SHIFT))&FB_CSPMCR_GROUP1_MASK)
2654
2655 /*!
2656  * @}
2657  */ /* end of group FB_Register_Masks */
2658
2659
2660 /* FB - Peripheral instance base addresses */
2661 /** Peripheral FB base address */
2662 #define FB_BASE                                  (0x4000C000u)
2663 /** Peripheral FB base pointer */
2664 #define FB                                       ((FB_Type *)FB_BASE)
2665 #define FB_BASE_PTR                              (FB)
2666 /** Array initializer of FB peripheral base addresses */
2667 #define FB_BASE_ADDRS                            { FB_BASE }
2668 /** Array initializer of FB peripheral base pointers */
2669 #define FB_BASE_PTRS                             { FB }
2670
2671 /* ----------------------------------------------------------------------------
2672    -- FB - Register accessor macros
2673    ---------------------------------------------------------------------------- */
2674
2675 /*!
2676  * @addtogroup FB_Register_Accessor_Macros FB - Register accessor macros
2677  * @{
2678  */
2679
2680
2681 /* FB - Register instance definitions */
2682 /* FB */
2683 #define FB_CSAR0                                 FB_CSAR_REG(FB,0)
2684 #define FB_CSMR0                                 FB_CSMR_REG(FB,0)
2685 #define FB_CSCR0                                 FB_CSCR_REG(FB,0)
2686 #define FB_CSAR1                                 FB_CSAR_REG(FB,1)
2687 #define FB_CSMR1                                 FB_CSMR_REG(FB,1)
2688 #define FB_CSCR1                                 FB_CSCR_REG(FB,1)
2689 #define FB_CSAR2                                 FB_CSAR_REG(FB,2)
2690 #define FB_CSMR2                                 FB_CSMR_REG(FB,2)
2691 #define FB_CSCR2                                 FB_CSCR_REG(FB,2)
2692 #define FB_CSAR3                                 FB_CSAR_REG(FB,3)
2693 #define FB_CSMR3                                 FB_CSMR_REG(FB,3)
2694 #define FB_CSCR3                                 FB_CSCR_REG(FB,3)
2695 #define FB_CSAR4                                 FB_CSAR_REG(FB,4)
2696 #define FB_CSMR4                                 FB_CSMR_REG(FB,4)
2697 #define FB_CSCR4                                 FB_CSCR_REG(FB,4)
2698 #define FB_CSAR5                                 FB_CSAR_REG(FB,5)
2699 #define FB_CSMR5                                 FB_CSMR_REG(FB,5)
2700 #define FB_CSCR5                                 FB_CSCR_REG(FB,5)
2701 #define FB_CSPMCR                                FB_CSPMCR_REG(FB)
2702
2703 /* FB - Register array accessors */
2704 #define FB_CSAR(index)                           FB_CSAR_REG(FB,index)
2705 #define FB_CSMR(index)                           FB_CSMR_REG(FB,index)
2706 #define FB_CSCR(index)                           FB_CSCR_REG(FB,index)
2707
2708 /*!
2709  * @}
2710  */ /* end of group FB_Register_Accessor_Macros */
2711
2712
2713 /*!
2714  * @}
2715  */ /* end of group FB_Peripheral_Access_Layer */
2716
2717
2718 /* ----------------------------------------------------------------------------
2719    -- FMC Peripheral Access Layer
2720    ---------------------------------------------------------------------------- */
2721
2722 /*!
2723  * @addtogroup FMC_Peripheral_Access_Layer FMC Peripheral Access Layer
2724  * @{
2725  */
2726
2727 /** FMC - Register Layout Typedef */
2728 typedef struct {
2729   __IO uint32_t PFAPR;                             /**< Flash Access Protection Register, offset: 0x0 */
2730   __IO uint32_t PFB0CR;                            /**< Flash Bank 0 Control Register, offset: 0x4 */
2731   __IO uint32_t PFB1CR;                            /**< Flash Bank 1 Control Register, offset: 0x8 */
2732        uint8_t RESERVED_0[244];
2733   __IO uint32_t TAGVDW0S[8];                       /**< Cache Tag Storage, array offset: 0x100, array step: 0x4 */
2734   __IO uint32_t TAGVDW1S[8];                       /**< Cache Tag Storage, array offset: 0x120, array step: 0x4 */
2735   __IO uint32_t TAGVDW2S[8];                       /**< Cache Tag Storage, array offset: 0x140, array step: 0x4 */
2736   __IO uint32_t TAGVDW3S[8];                       /**< Cache Tag Storage, array offset: 0x160, array step: 0x4 */
2737        uint8_t RESERVED_1[128];
2738   struct {                                         /* offset: 0x200, array step: index*0x40, index2*0x8 */
2739     __IO uint32_t DATA_U;                            /**< Cache Data Storage (upper word), array offset: 0x200, array step: index*0x40, index2*0x8 */
2740     __IO uint32_t DATA_L;                            /**< Cache Data Storage (lower word), array offset: 0x204, array step: index*0x40, index2*0x8 */
2741   } SET[4][8];
2742 } FMC_Type, *FMC_MemMapPtr;
2743
2744 /* ----------------------------------------------------------------------------
2745    -- FMC - Register accessor macros
2746    ---------------------------------------------------------------------------- */
2747
2748 /*!
2749  * @addtogroup FMC_Register_Accessor_Macros FMC - Register accessor macros
2750  * @{
2751  */
2752
2753
2754 /* FMC - Register accessors */
2755 #define FMC_PFAPR_REG(base)                      ((base)->PFAPR)
2756 #define FMC_PFB0CR_REG(base)                     ((base)->PFB0CR)
2757 #define FMC_PFB1CR_REG(base)                     ((base)->PFB1CR)
2758 #define FMC_TAGVDW0S_REG(base,index)             ((base)->TAGVDW0S[index])
2759 #define FMC_TAGVDW1S_REG(base,index)             ((base)->TAGVDW1S[index])
2760 #define FMC_TAGVDW2S_REG(base,index)             ((base)->TAGVDW2S[index])
2761 #define FMC_TAGVDW3S_REG(base,index)             ((base)->TAGVDW3S[index])
2762 #define FMC_DATA_U_REG(base,index,index2)        ((base)->SET[index][index2].DATA_U)
2763 #define FMC_DATA_L_REG(base,index,index2)        ((base)->SET[index][index2].DATA_L)
2764
2765 /*!
2766  * @}
2767  */ /* end of group FMC_Register_Accessor_Macros */
2768
2769
2770 /* ----------------------------------------------------------------------------
2771    -- FMC Register Masks
2772    ---------------------------------------------------------------------------- */
2773
2774 /*!
2775  * @addtogroup FMC_Register_Masks FMC Register Masks
2776  * @{
2777  */
2778
2779 /* PFAPR Bit Fields */
2780 #define FMC_PFAPR_M0AP_MASK                      0x3u
2781 #define FMC_PFAPR_M0AP_SHIFT                     0
2782 #define FMC_PFAPR_M0AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M0AP_SHIFT))&FMC_PFAPR_M0AP_MASK)
2783 #define FMC_PFAPR_M1AP_MASK                      0xCu
2784 #define FMC_PFAPR_M1AP_SHIFT                     2
2785 #define FMC_PFAPR_M1AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M1AP_SHIFT))&FMC_PFAPR_M1AP_MASK)
2786 #define FMC_PFAPR_M2AP_MASK                      0x30u
2787 #define FMC_PFAPR_M2AP_SHIFT                     4
2788 #define FMC_PFAPR_M2AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M2AP_SHIFT))&FMC_PFAPR_M2AP_MASK)
2789 #define FMC_PFAPR_M3AP_MASK                      0xC0u
2790 #define FMC_PFAPR_M3AP_SHIFT                     6
2791 #define FMC_PFAPR_M3AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M3AP_SHIFT))&FMC_PFAPR_M3AP_MASK)
2792 #define FMC_PFAPR_M4AP_MASK                      0x300u
2793 #define FMC_PFAPR_M4AP_SHIFT                     8
2794 #define FMC_PFAPR_M4AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M4AP_SHIFT))&FMC_PFAPR_M4AP_MASK)
2795 #define FMC_PFAPR_M5AP_MASK                      0xC00u
2796 #define FMC_PFAPR_M5AP_SHIFT                     10
2797 #define FMC_PFAPR_M5AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M5AP_SHIFT))&FMC_PFAPR_M5AP_MASK)
2798 #define FMC_PFAPR_M6AP_MASK                      0x3000u
2799 #define FMC_PFAPR_M6AP_SHIFT                     12
2800 #define FMC_PFAPR_M6AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M6AP_SHIFT))&FMC_PFAPR_M6AP_MASK)
2801 #define FMC_PFAPR_M7AP_MASK                      0xC000u
2802 #define FMC_PFAPR_M7AP_SHIFT                     14
2803 #define FMC_PFAPR_M7AP(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFAPR_M7AP_SHIFT))&FMC_PFAPR_M7AP_MASK)
2804 #define FMC_PFAPR_M0PFD_MASK                     0x10000u
2805 #define FMC_PFAPR_M0PFD_SHIFT                    16
2806 #define FMC_PFAPR_M1PFD_MASK                     0x20000u
2807 #define FMC_PFAPR_M1PFD_SHIFT                    17
2808 #define FMC_PFAPR_M2PFD_MASK                     0x40000u
2809 #define FMC_PFAPR_M2PFD_SHIFT                    18
2810 #define FMC_PFAPR_M3PFD_MASK                     0x80000u
2811 #define FMC_PFAPR_M3PFD_SHIFT                    19
2812 #define FMC_PFAPR_M4PFD_MASK                     0x100000u
2813 #define FMC_PFAPR_M4PFD_SHIFT                    20
2814 #define FMC_PFAPR_M5PFD_MASK                     0x200000u
2815 #define FMC_PFAPR_M5PFD_SHIFT                    21
2816 #define FMC_PFAPR_M6PFD_MASK                     0x400000u
2817 #define FMC_PFAPR_M6PFD_SHIFT                    22
2818 #define FMC_PFAPR_M7PFD_MASK                     0x800000u
2819 #define FMC_PFAPR_M7PFD_SHIFT                    23
2820 /* PFB0CR Bit Fields */
2821 #define FMC_PFB0CR_B0SEBE_MASK                   0x1u
2822 #define FMC_PFB0CR_B0SEBE_SHIFT                  0
2823 #define FMC_PFB0CR_B0IPE_MASK                    0x2u
2824 #define FMC_PFB0CR_B0IPE_SHIFT                   1
2825 #define FMC_PFB0CR_B0DPE_MASK                    0x4u
2826 #define FMC_PFB0CR_B0DPE_SHIFT                   2
2827 #define FMC_PFB0CR_B0ICE_MASK                    0x8u
2828 #define FMC_PFB0CR_B0ICE_SHIFT                   3
2829 #define FMC_PFB0CR_B0DCE_MASK                    0x10u
2830 #define FMC_PFB0CR_B0DCE_SHIFT                   4
2831 #define FMC_PFB0CR_CRC_MASK                      0xE0u
2832 #define FMC_PFB0CR_CRC_SHIFT                     5
2833 #define FMC_PFB0CR_CRC(x)                        (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CRC_SHIFT))&FMC_PFB0CR_CRC_MASK)
2834 #define FMC_PFB0CR_B0MW_MASK                     0x60000u
2835 #define FMC_PFB0CR_B0MW_SHIFT                    17
2836 #define FMC_PFB0CR_B0MW(x)                       (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_B0MW_SHIFT))&FMC_PFB0CR_B0MW_MASK)
2837 #define FMC_PFB0CR_S_B_INV_MASK                  0x80000u
2838 #define FMC_PFB0CR_S_B_INV_SHIFT                 19
2839 #define FMC_PFB0CR_CINV_WAY_MASK                 0xF00000u
2840 #define FMC_PFB0CR_CINV_WAY_SHIFT                20
2841 #define FMC_PFB0CR_CINV_WAY(x)                   (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CINV_WAY_SHIFT))&FMC_PFB0CR_CINV_WAY_MASK)
2842 #define FMC_PFB0CR_CLCK_WAY_MASK                 0xF000000u
2843 #define FMC_PFB0CR_CLCK_WAY_SHIFT                24
2844 #define FMC_PFB0CR_CLCK_WAY(x)                   (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_CLCK_WAY_SHIFT))&FMC_PFB0CR_CLCK_WAY_MASK)
2845 #define FMC_PFB0CR_B0RWSC_MASK                   0xF0000000u
2846 #define FMC_PFB0CR_B0RWSC_SHIFT                  28
2847 #define FMC_PFB0CR_B0RWSC(x)                     (((uint32_t)(((uint32_t)(x))<<FMC_PFB0CR_B0RWSC_SHIFT))&FMC_PFB0CR_B0RWSC_MASK)
2848 /* PFB1CR Bit Fields */
2849 #define FMC_PFB1CR_B1SEBE_MASK                   0x1u
2850 #define FMC_PFB1CR_B1SEBE_SHIFT                  0
2851 #define FMC_PFB1CR_B1IPE_MASK                    0x2u
2852 #define FMC_PFB1CR_B1IPE_SHIFT                   1
2853 #define FMC_PFB1CR_B1DPE_MASK                    0x4u
2854 #define FMC_PFB1CR_B1DPE_SHIFT                   2
2855 #define FMC_PFB1CR_B1ICE_MASK                    0x8u
2856 #define FMC_PFB1CR_B1ICE_SHIFT                   3
2857 #define FMC_PFB1CR_B1DCE_MASK                    0x10u
2858 #define FMC_PFB1CR_B1DCE_SHIFT                   4
2859 #define FMC_PFB1CR_B1MW_MASK                     0x60000u
2860 #define FMC_PFB1CR_B1MW_SHIFT                    17
2861 #define FMC_PFB1CR_B1MW(x)                       (((uint32_t)(((uint32_t)(x))<<FMC_PFB1CR_B1MW_SHIFT))&FMC_PFB1CR_B1MW_MASK)
2862 #define FMC_PFB1CR_B1RWSC_MASK                   0xF0000000u
2863 #define FMC_PFB1CR_B1RWSC_SHIFT                  28
2864 #define FMC_PFB1CR_B1RWSC(x)                     (((uint32_t)(((uint32_t)(x))<<FMC_PFB1CR_B1RWSC_SHIFT))&FMC_PFB1CR_B1RWSC_MASK)
2865 /* TAGVDW0S Bit Fields */
2866 #define FMC_TAGVDW0S_valid_MASK                  0x1u
2867 #define FMC_TAGVDW0S_valid_SHIFT                 0
2868 #define FMC_TAGVDW0S_tag_MASK                    0x7FFE0u
2869 #define FMC_TAGVDW0S_tag_SHIFT                   5
2870 #define FMC_TAGVDW0S_tag(x)                      (((uint32_t)(((uint32_t)(x))<<FMC_TAGVDW0S_tag_SHIFT))&FMC_TAGVDW0S_tag_MASK)
2871 /* TAGVDW1S Bit Fields */
2872 #define FMC_TAGVDW1S_valid_MASK                  0x1u
2873 #define FMC_TAGVDW1S_valid_SHIFT                 0
2874 #define FMC_TAGVDW1S_tag_MASK                    0x7FFE0u
2875 #define FMC_TAGVDW1S_tag_SHIFT                   5
2876 #define FMC_TAGVDW1S_tag(x)                      (((uint32_t)(((uint32_t)(x))<<FMC_TAGVDW1S_tag_SHIFT))&FMC_TAGVDW1S_tag_MASK)
2877 /* TAGVDW2S Bit Fields */
2878 #define FMC_TAGVDW2S_valid_MASK                  0x1u
2879 #define FMC_TAGVDW2S_valid_SHIFT                 0
2880 #define FMC_TAGVDW2S_tag_MASK                    0x7FFE0u
2881 #define FMC_TAGVDW2S_tag_SHIFT                   5
2882 #define FMC_TAGVDW2S_tag(x)                      (((uint32_t)(((uint32_t)(x))<<FMC_TAGVDW2S_tag_SHIFT))&FMC_TAGVDW2S_tag_MASK)
2883 /* TAGVDW3S Bit Fields */
2884 #define FMC_TAGVDW3S_valid_MASK                  0x1u
2885 #define FMC_TAGVDW3S_valid_SHIFT                 0
2886 #define FMC_TAGVDW3S_tag_MASK                    0x7FFE0u
2887 #define FMC_TAGVDW3S_tag_SHIFT                   5
2888 #define FMC_TAGVDW3S_tag(x)                      (((uint32_t)(((uint32_t)(x))<<FMC_TAGVDW3S_tag_SHIFT))&FMC_TAGVDW3S_tag_MASK)
2889 /* DATA_U Bit Fields */
2890 #define FMC_DATA_U_data_MASK                     0xFFFFFFFFu
2891 #define FMC_DATA_U_data_SHIFT                    0
2892 #define FMC_DATA_U_data(x)                       (((uint32_t)(((uint32_t)(x))<<FMC_DATA_U_data_SHIFT))&FMC_DATA_U_data_MASK)
2893 /* DATA_L Bit Fields */
2894 #define FMC_DATA_L_data_MASK                     0xFFFFFFFFu
2895 #define FMC_DATA_L_data_SHIFT                    0
2896 #define FMC_DATA_L_data(x)                       (((uint32_t)(((uint32_t)(x))<<FMC_DATA_L_data_SHIFT))&FMC_DATA_L_data_MASK)
2897
2898 /*!
2899  * @}
2900  */ /* end of group FMC_Register_Masks */
2901
2902
2903 /* FMC - Peripheral instance base addresses */
2904 /** Peripheral FMC base address */
2905 #define FMC_BASE                                 (0x4001F000u)
2906 /** Peripheral FMC base pointer */
2907 #define FMC                                      ((FMC_Type *)FMC_BASE)
2908 #define FMC_BASE_PTR                             (FMC)
2909 /** Array initializer of FMC peripheral base addresses */
2910 #define FMC_BASE_ADDRS                           { FMC_BASE }
2911 /** Array initializer of FMC peripheral base pointers */
2912 #define FMC_BASE_PTRS                            { FMC }
2913
2914 /* ----------------------------------------------------------------------------
2915    -- FMC - Register accessor macros
2916    ---------------------------------------------------------------------------- */
2917
2918 /*!
2919  * @addtogroup FMC_Register_Accessor_Macros FMC - Register accessor macros
2920  * @{
2921  */
2922
2923
2924 /* FMC - Register instance definitions */
2925 /* FMC */
2926 #define FMC_PFAPR                                FMC_PFAPR_REG(FMC)
2927 #define FMC_PFB0CR                               FMC_PFB0CR_REG(FMC)
2928 #define FMC_PFB1CR                               FMC_PFB1CR_REG(FMC)
2929 #define FMC_TAGVDW0S0                            FMC_TAGVDW0S_REG(FMC,0)
2930 #define FMC_TAGVDW0S1                            FMC_TAGVDW0S_REG(FMC,1)
2931 #define FMC_TAGVDW0S2                            FMC_TAGVDW0S_REG(FMC,2)
2932 #define FMC_TAGVDW0S3                            FMC_TAGVDW0S_REG(FMC,3)
2933 #define FMC_TAGVDW0S4                            FMC_TAGVDW0S_REG(FMC,4)
2934 #define FMC_TAGVDW0S5                            FMC_TAGVDW0S_REG(FMC,5)
2935 #define FMC_TAGVDW0S6                            FMC_TAGVDW0S_REG(FMC,6)
2936 #define FMC_TAGVDW0S7                            FMC_TAGVDW0S_REG(FMC,7)
2937 #define FMC_TAGVDW1S0                            FMC_TAGVDW1S_REG(FMC,0)
2938 #define FMC_TAGVDW1S1                            FMC_TAGVDW1S_REG(FMC,1)
2939 #define FMC_TAGVDW1S2                            FMC_TAGVDW1S_REG(FMC,2)
2940 #define FMC_TAGVDW1S3                            FMC_TAGVDW1S_REG(FMC,3)
2941 #define FMC_TAGVDW1S4                            FMC_TAGVDW1S_REG(FMC,4)
2942 #define FMC_TAGVDW1S5                            FMC_TAGVDW1S_REG(FMC,5)
2943 #define FMC_TAGVDW1S6                            FMC_TAGVDW1S_REG(FMC,6)
2944 #define FMC_TAGVDW1S7                            FMC_TAGVDW1S_REG(FMC,7)
2945 #define FMC_TAGVDW2S0                            FMC_TAGVDW2S_REG(FMC,0)
2946 #define FMC_TAGVDW2S1                            FMC_TAGVDW2S_REG(FMC,1)
2947 #define FMC_TAGVDW2S2                            FMC_TAGVDW2S_REG(FMC,2)
2948 #define FMC_TAGVDW2S3                            FMC_TAGVDW2S_REG(FMC,3)
2949 #define FMC_TAGVDW2S4                            FMC_TAGVDW2S_REG(FMC,4)
2950 #define FMC_TAGVDW2S5                            FMC_TAGVDW2S_REG(FMC,5)
2951 #define FMC_TAGVDW2S6                            FMC_TAGVDW2S_REG(FMC,6)
2952 #define FMC_TAGVDW2S7                            FMC_TAGVDW2S_REG(FMC,7)
2953 #define FMC_TAGVDW3S0                            FMC_TAGVDW3S_REG(FMC,0)
2954 #define FMC_TAGVDW3S1                            FMC_TAGVDW3S_REG(FMC,1)
2955 #define FMC_TAGVDW3S2                            FMC_TAGVDW3S_REG(FMC,2)
2956 #define FMC_TAGVDW3S3                            FMC_TAGVDW3S_REG(FMC,3)
2957 #define FMC_TAGVDW3S4                            FMC_TAGVDW3S_REG(FMC,4)
2958 #define FMC_TAGVDW3S5                            FMC_TAGVDW3S_REG(FMC,5)
2959 #define FMC_TAGVDW3S6                            FMC_TAGVDW3S_REG(FMC,6)
2960 #define FMC_TAGVDW3S7                            FMC_TAGVDW3S_REG(FMC,7)
2961 #define FMC_DATAW0S0U                            FMC_DATA_U_REG(FMC,0,0)
2962 #define FMC_DATAW0S0L                            FMC_DATA_L_REG(FMC,0,0)
2963 #define FMC_DATAW0S1U                            FMC_DATA_U_REG(FMC,0,1)
2964 #define FMC_DATAW0S1L                            FMC_DATA_L_REG(FMC,0,1)
2965 #define FMC_DATAW0S2U                            FMC_DATA_U_REG(FMC,0,2)
2966 #define FMC_DATAW0S2L                            FMC_DATA_L_REG(FMC,0,2)
2967 #define FMC_DATAW0S3U                            FMC_DATA_U_REG(FMC,0,3)
2968 #define FMC_DATAW0S3L                            FMC_DATA_L_REG(FMC,0,3)
2969 #define FMC_DATAW0S4U                            FMC_DATA_U_REG(FMC,0,4)
2970 #define FMC_DATAW0S4L                            FMC_DATA_L_REG(FMC,0,4)
2971 #define FMC_DATAW0S5U                            FMC_DATA_U_REG(FMC,0,5)
2972 #define FMC_DATAW0S5L                            FMC_DATA_L_REG(FMC,0,5)
2973 #define FMC_DATAW0S6U                            FMC_DATA_U_REG(FMC,0,6)
2974 #define FMC_DATAW0S6L                            FMC_DATA_L_REG(FMC,0,6)
2975 #define FMC_DATAW0S7U                            FMC_DATA_U_REG(FMC,0,7)
2976 #define FMC_DATAW0S7L                            FMC_DATA_L_REG(FMC,0,7)
2977 #define FMC_DATAW1S0U                            FMC_DATA_U_REG(FMC,1,0)
2978 #define FMC_DATAW1S0L                            FMC_DATA_L_REG(FMC,1,0)
2979 #define FMC_DATAW1S1U                            FMC_DATA_U_REG(FMC,1,1)
2980 #define FMC_DATAW1S1L                            FMC_DATA_L_REG(FMC,1,1)
2981 #define FMC_DATAW1S2U                            FMC_DATA_U_REG(FMC,1,2)
2982 #define FMC_DATAW1S2L                            FMC_DATA_L_REG(FMC,1,2)
2983 #define FMC_DATAW1S3U                            FMC_DATA_U_REG(FMC,1,3)
2984 #define FMC_DATAW1S3L                            FMC_DATA_L_REG(FMC,1,3)
2985 #define FMC_DATAW1S4U                            FMC_DATA_U_REG(FMC,1,4)
2986 #define FMC_DATAW1S4L                            FMC_DATA_L_REG(FMC,1,4)
2987 #define FMC_DATAW1S5U                            FMC_DATA_U_REG(FMC,1,5)
2988 #define FMC_DATAW1S5L                            FMC_DATA_L_REG(FMC,1,5)
2989 #define FMC_DATAW1S6U                            FMC_DATA_U_REG(FMC,1,6)
2990 #define FMC_DATAW1S6L                            FMC_DATA_L_REG(FMC,1,6)
2991 #define FMC_DATAW1S7U                            FMC_DATA_U_REG(FMC,1,7)
2992 #define FMC_DATAW1S7L                            FMC_DATA_L_REG(FMC,1,7)
2993 #define FMC_DATAW2S0U                            FMC_DATA_U_REG(FMC,2,0)
2994 #define FMC_DATAW2S0L                            FMC_DATA_L_REG(FMC,2,0)
2995 #define FMC_DATAW2S1U                            FMC_DATA_U_REG(FMC,2,1)
2996 #define FMC_DATAW2S1L                            FMC_DATA_L_REG(FMC,2,1)
2997 #define FMC_DATAW2S2U                            FMC_DATA_U_REG(FMC,2,2)
2998 #define FMC_DATAW2S2L                            FMC_DATA_L_REG(FMC,2,2)
2999 #define FMC_DATAW2S3U                            FMC_DATA_U_REG(FMC,2,3)
3000 #define FMC_DATAW2S3L                            FMC_DATA_L_REG(FMC,2,3)
3001 #define FMC_DATAW2S4U                            FMC_DATA_U_REG(FMC,2,4)
3002 #define FMC_DATAW2S4L                            FMC_DATA_L_REG(FMC,2,4)
3003 #define FMC_DATAW2S5U                            FMC_DATA_U_REG(FMC,2,5)
3004 #define FMC_DATAW2S5L                            FMC_DATA_L_REG(FMC,2,5)
3005 #define FMC_DATAW2S6U                            FMC_DATA_U_REG(FMC,2,6)
3006 #define FMC_DATAW2S6L                            FMC_DATA_L_REG(FMC,2,6)
3007 #define FMC_DATAW2S7U                            FMC_DATA_U_REG(FMC,2,7)
3008 #define FMC_DATAW2S7L                            FMC_DATA_L_REG(FMC,2,7)
3009 #define FMC_DATAW3S0U                            FMC_DATA_U_REG(FMC,3,0)
3010 #define FMC_DATAW3S0L                            FMC_DATA_L_REG(FMC,3,0)
3011 #define FMC_DATAW3S1U                            FMC_DATA_U_REG(FMC,3,1)
3012 #define FMC_DATAW3S1L                            FMC_DATA_L_REG(FMC,3,1)
3013 #define FMC_DATAW3S2U                            FMC_DATA_U_REG(FMC,3,2)
3014 #define FMC_DATAW3S2L                            FMC_DATA_L_REG(FMC,3,2)
3015 #define FMC_DATAW3S3U                            FMC_DATA_U_REG(FMC,3,3)
3016 #define FMC_DATAW3S3L                            FMC_DATA_L_REG(FMC,3,3)
3017 #define FMC_DATAW3S4U                            FMC_DATA_U_REG(FMC,3,4)
3018 #define FMC_DATAW3S4L                            FMC_DATA_L_REG(FMC,3,4)
3019 #define FMC_DATAW3S5U                            FMC_DATA_U_REG(FMC,3,5)
3020 #define FMC_DATAW3S5L                            FMC_DATA_L_REG(FMC,3,5)
3021 #define FMC_DATAW3S6U                            FMC_DATA_U_REG(FMC,3,6)
3022 #define FMC_DATAW3S6L                            FMC_DATA_L_REG(FMC,3,6)
3023 #define FMC_DATAW3S7U                            FMC_DATA_U_REG(FMC,3,7)
3024 #define FMC_DATAW3S7L                            FMC_DATA_L_REG(FMC,3,7)
3025
3026 /* FMC - Register array accessors */
3027 #define FMC_TAGVDW0S(index)                      FMC_TAGVDW0S_REG(FMC,index)
3028 #define FMC_TAGVDW1S(index)                      FMC_TAGVDW1S_REG(FMC,index)
3029 #define FMC_TAGVDW2S(index)                      FMC_TAGVDW2S_REG(FMC,index)
3030 #define FMC_TAGVDW3S(index)                      FMC_TAGVDW3S_REG(FMC,index)
3031 #define FMC_DATA_U(index,index2)                 FMC_DATA_U_REG(FMC,index,index2)
3032 #define FMC_DATA_L(index,index2)                 FMC_DATA_L_REG(FMC,index,index2)
3033
3034 /*!
3035  * @}
3036  */ /* end of group FMC_Register_Accessor_Macros */
3037
3038
3039 /*!
3040  * @}
3041  */ /* end of group FMC_Peripheral_Access_Layer */
3042
3043
3044 /* ----------------------------------------------------------------------------
3045    -- FTFA Peripheral Access Layer
3046    ---------------------------------------------------------------------------- */
3047
3048 /*!
3049  * @addtogroup FTFA_Peripheral_Access_Layer FTFA Peripheral Access Layer
3050  * @{
3051  */
3052
3053 /** FTFA - Register Layout Typedef */
3054 typedef struct {
3055   __IO uint8_t FSTAT;                              /**< Flash Status Register, offset: 0x0 */
3056   __IO uint8_t FCNFG;                              /**< Flash Configuration Register, offset: 0x1 */
3057   __I  uint8_t FSEC;                               /**< Flash Security Register, offset: 0x2 */
3058   __I  uint8_t FOPT;                               /**< Flash Option Register, offset: 0x3 */
3059   __IO uint8_t FCCOB3;                             /**< Flash Common Command Object Registers, offset: 0x4 */
3060   __IO uint8_t FCCOB2;                             /**< Flash Common Command Object Registers, offset: 0x5 */
3061   __IO uint8_t FCCOB1;                             /**< Flash Common Command Object Registers, offset: 0x6 */
3062   __IO uint8_t FCCOB0;                             /**< Flash Common Command Object Registers, offset: 0x7 */
3063   __IO uint8_t FCCOB7;                             /**< Flash Common Command Object Registers, offset: 0x8 */
3064   __IO uint8_t FCCOB6;                             /**< Flash Common Command Object Registers, offset: 0x9 */
3065   __IO uint8_t FCCOB5;                             /**< Flash Common Command Object Registers, offset: 0xA */
3066   __IO uint8_t FCCOB4;                             /**< Flash Common Command Object Registers, offset: 0xB */
3067   __IO uint8_t FCCOBB;                             /**< Flash Common Command Object Registers, offset: 0xC */
3068   __IO uint8_t FCCOBA;                             /**< Flash Common Command Object Registers, offset: 0xD */
3069   __IO uint8_t FCCOB9;                             /**< Flash Common Command Object Registers, offset: 0xE */
3070   __IO uint8_t FCCOB8;                             /**< Flash Common Command Object Registers, offset: 0xF */
3071   __IO uint8_t FPROT3;                             /**< Program Flash Protection Registers, offset: 0x10 */
3072   __IO uint8_t FPROT2;                             /**< Program Flash Protection Registers, offset: 0x11 */
3073   __IO uint8_t FPROT1;                             /**< Program Flash Protection Registers, offset: 0x12 */
3074   __IO uint8_t FPROT0;                             /**< Program Flash Protection Registers, offset: 0x13 */
3075        uint8_t RESERVED_0[4];
3076   __I  uint8_t XACCH3;                             /**< Execute-only Access Registers, offset: 0x18 */
3077   __I  uint8_t XACCH2;                             /**< Execute-only Access Registers, offset: 0x19 */
3078   __I  uint8_t XACCH1;                             /**< Execute-only Access Registers, offset: 0x1A */
3079   __I  uint8_t XACCH0;                             /**< Execute-only Access Registers, offset: 0x1B */
3080   __I  uint8_t XACCL3;                             /**< Execute-only Access Registers, offset: 0x1C */
3081   __I  uint8_t XACCL2;                             /**< Execute-only Access Registers, offset: 0x1D */
3082   __I  uint8_t XACCL1;                             /**< Execute-only Access Registers, offset: 0x1E */
3083   __I  uint8_t XACCL0;                             /**< Execute-only Access Registers, offset: 0x1F */
3084   __I  uint8_t SACCH3;                             /**< Supervisor-only Access Registers, offset: 0x20 */
3085   __I  uint8_t SACCH2;                             /**< Supervisor-only Access Registers, offset: 0x21 */
3086   __I  uint8_t SACCH1;                             /**< Supervisor-only Access Registers, offset: 0x22 */
3087   __I  uint8_t SACCH0;                             /**< Supervisor-only Access Registers, offset: 0x23 */
3088   __I  uint8_t SACCL3;                             /**< Supervisor-only Access Registers, offset: 0x24 */
3089   __I  uint8_t SACCL2;                             /**< Supervisor-only Access Registers, offset: 0x25 */
3090   __I  uint8_t SACCL1;                             /**< Supervisor-only Access Registers, offset: 0x26 */
3091   __I  uint8_t SACCL0;                             /**< Supervisor-only Access Registers, offset: 0x27 */
3092   __I  uint8_t FACSS;                              /**< Flash Access Segment Size Register, offset: 0x28 */
3093        uint8_t RESERVED_1[2];
3094   __I  uint8_t FACSN;                              /**< Flash Access Segment Number Register, offset: 0x2B */
3095 } FTFA_Type, *FTFA_MemMapPtr;
3096
3097 /* ----------------------------------------------------------------------------
3098    -- FTFA - Register accessor macros
3099    ---------------------------------------------------------------------------- */
3100
3101 /*!
3102  * @addtogroup FTFA_Register_Accessor_Macros FTFA - Register accessor macros
3103  * @{
3104  */
3105
3106
3107 /* FTFA - Register accessors */
3108 #define FTFA_FSTAT_REG(base)                     ((base)->FSTAT)
3109 #define FTFA_FCNFG_REG(base)                     ((base)->FCNFG)
3110 #define FTFA_FSEC_REG(base)                      ((base)->FSEC)
3111 #define FTFA_FOPT_REG(base)                      ((base)->FOPT)
3112 #define FTFA_FCCOB3_REG(base)                    ((base)->FCCOB3)
3113 #define FTFA_FCCOB2_REG(base)                    ((base)->FCCOB2)
3114 #define FTFA_FCCOB1_REG(base)                    ((base)->FCCOB1)
3115 #define FTFA_FCCOB0_REG(base)                    ((base)->FCCOB0)
3116 #define FTFA_FCCOB7_REG(base)                    ((base)->FCCOB7)
3117 #define FTFA_FCCOB6_REG(base)                    ((base)->FCCOB6)
3118 #define FTFA_FCCOB5_REG(base)                    ((base)->FCCOB5)
3119 #define FTFA_FCCOB4_REG(base)                    ((base)->FCCOB4)
3120 #define FTFA_FCCOBB_REG(base)                    ((base)->FCCOBB)
3121 #define FTFA_FCCOBA_REG(base)                    ((base)->FCCOBA)
3122 #define FTFA_FCCOB9_REG(base)                    ((base)->FCCOB9)
3123 #define FTFA_FCCOB8_REG(base)                    ((base)->FCCOB8)
3124 #define FTFA_FPROT3_REG(base)                    ((base)->FPROT3)
3125 #define FTFA_FPROT2_REG(base)                    ((base)->FPROT2)
3126 #define FTFA_FPROT1_REG(base)                    ((base)->FPROT1)
3127 #define FTFA_FPROT0_REG(base)                    ((base)->FPROT0)
3128 #define FTFA_XACCH3_REG(base)                    ((base)->XACCH3)
3129 #define FTFA_XACCH2_REG(base)                    ((base)->XACCH2)
3130 #define FTFA_XACCH1_REG(base)                    ((base)->XACCH1)
3131 #define FTFA_XACCH0_REG(base)                    ((base)->XACCH0)
3132 #define FTFA_XACCL3_REG(base)                    ((base)->XACCL3)
3133 #define FTFA_XACCL2_REG(base)                    ((base)->XACCL2)
3134 #define FTFA_XACCL1_REG(base)                    ((base)->XACCL1)
3135 #define FTFA_XACCL0_REG(base)                    ((base)->XACCL0)
3136 #define FTFA_SACCH3_REG(base)                    ((base)->SACCH3)
3137 #define FTFA_SACCH2_REG(base)                    ((base)->SACCH2)
3138 #define FTFA_SACCH1_REG(base)                    ((base)->SACCH1)
3139 #define FTFA_SACCH0_REG(base)                    ((base)->SACCH0)
3140 #define FTFA_SACCL3_REG(base)                    ((base)->SACCL3)
3141 #define FTFA_SACCL2_REG(base)                    ((base)->SACCL2)
3142 #define FTFA_SACCL1_REG(base)                    ((base)->SACCL1)
3143 #define FTFA_SACCL0_REG(base)                    ((base)->SACCL0)
3144 #define FTFA_FACSS_REG(base)                     ((base)->FACSS)
3145 #define FTFA_FACSN_REG(base)                     ((base)->FACSN)
3146
3147 /*!
3148  * @}
3149  */ /* end of group FTFA_Register_Accessor_Macros */
3150
3151
3152 /* ----------------------------------------------------------------------------
3153    -- FTFA Register Masks
3154    ---------------------------------------------------------------------------- */
3155
3156 /*!
3157  * @addtogroup FTFA_Register_Masks FTFA Register Masks
3158  * @{
3159  */
3160
3161 /* FSTAT Bit Fields */
3162 #define FTFA_FSTAT_MGSTAT0_MASK                  0x1u
3163 #define FTFA_FSTAT_MGSTAT0_SHIFT                 0
3164 #define FTFA_FSTAT_FPVIOL_MASK                   0x10u
3165 #define FTFA_FSTAT_FPVIOL_SHIFT                  4
3166 #define FTFA_FSTAT_ACCERR_MASK                   0x20u
3167 #define FTFA_FSTAT_ACCERR_SHIFT                  5
3168 #define FTFA_FSTAT_RDCOLERR_MASK                 0x40u
3169 #define FTFA_FSTAT_RDCOLERR_SHIFT                6
3170 #define FTFA_FSTAT_CCIF_MASK                     0x80u
3171 #define FTFA_FSTAT_CCIF_SHIFT                    7
3172 /* FCNFG Bit Fields */
3173 #define FTFA_FCNFG_ERSSUSP_MASK                  0x10u
3174 #define FTFA_FCNFG_ERSSUSP_SHIFT                 4
3175 #define FTFA_FCNFG_ERSAREQ_MASK                  0x20u
3176 #define FTFA_FCNFG_ERSAREQ_SHIFT                 5
3177 #define FTFA_FCNFG_RDCOLLIE_MASK                 0x40u
3178 #define FTFA_FCNFG_RDCOLLIE_SHIFT                6
3179 #define FTFA_FCNFG_CCIE_MASK                     0x80u
3180 #define FTFA_FCNFG_CCIE_SHIFT                    7
3181 /* FSEC Bit Fields */
3182 #define FTFA_FSEC_SEC_MASK                       0x3u
3183 #define FTFA_FSEC_SEC_SHIFT                      0
3184 #define FTFA_FSEC_SEC(x)                         (((uint8_t)(((uint8_t)(x))<<FTFA_FSEC_SEC_SHIFT))&FTFA_FSEC_SEC_MASK)
3185 #define FTFA_FSEC_FSLACC_MASK                    0xCu
3186 #define FTFA_FSEC_FSLACC_SHIFT                   2
3187 #define FTFA_FSEC_FSLACC(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FSEC_FSLACC_SHIFT))&FTFA_FSEC_FSLACC_MASK)
3188 #define FTFA_FSEC_MEEN_MASK                      0x30u
3189 #define FTFA_FSEC_MEEN_SHIFT                     4
3190 #define FTFA_FSEC_MEEN(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_FSEC_MEEN_SHIFT))&FTFA_FSEC_MEEN_MASK)
3191 #define FTFA_FSEC_KEYEN_MASK                     0xC0u
3192 #define FTFA_FSEC_KEYEN_SHIFT                    6
3193 #define FTFA_FSEC_KEYEN(x)                       (((uint8_t)(((uint8_t)(x))<<FTFA_FSEC_KEYEN_SHIFT))&FTFA_FSEC_KEYEN_MASK)
3194 /* FOPT Bit Fields */
3195 #define FTFA_FOPT_OPT_MASK                       0xFFu
3196 #define FTFA_FOPT_OPT_SHIFT                      0
3197 #define FTFA_FOPT_OPT(x)                         (((uint8_t)(((uint8_t)(x))<<FTFA_FOPT_OPT_SHIFT))&FTFA_FOPT_OPT_MASK)
3198 /* FCCOB3 Bit Fields */
3199 #define FTFA_FCCOB3_CCOBn_MASK                   0xFFu
3200 #define FTFA_FCCOB3_CCOBn_SHIFT                  0
3201 #define FTFA_FCCOB3_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB3_CCOBn_SHIFT))&FTFA_FCCOB3_CCOBn_MASK)
3202 /* FCCOB2 Bit Fields */
3203 #define FTFA_FCCOB2_CCOBn_MASK                   0xFFu
3204 #define FTFA_FCCOB2_CCOBn_SHIFT                  0
3205 #define FTFA_FCCOB2_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB2_CCOBn_SHIFT))&FTFA_FCCOB2_CCOBn_MASK)
3206 /* FCCOB1 Bit Fields */
3207 #define FTFA_FCCOB1_CCOBn_MASK                   0xFFu
3208 #define FTFA_FCCOB1_CCOBn_SHIFT                  0
3209 #define FTFA_FCCOB1_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB1_CCOBn_SHIFT))&FTFA_FCCOB1_CCOBn_MASK)
3210 /* FCCOB0 Bit Fields */
3211 #define FTFA_FCCOB0_CCOBn_MASK                   0xFFu
3212 #define FTFA_FCCOB0_CCOBn_SHIFT                  0
3213 #define FTFA_FCCOB0_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB0_CCOBn_SHIFT))&FTFA_FCCOB0_CCOBn_MASK)
3214 /* FCCOB7 Bit Fields */
3215 #define FTFA_FCCOB7_CCOBn_MASK                   0xFFu
3216 #define FTFA_FCCOB7_CCOBn_SHIFT                  0
3217 #define FTFA_FCCOB7_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB7_CCOBn_SHIFT))&FTFA_FCCOB7_CCOBn_MASK)
3218 /* FCCOB6 Bit Fields */
3219 #define FTFA_FCCOB6_CCOBn_MASK                   0xFFu
3220 #define FTFA_FCCOB6_CCOBn_SHIFT                  0
3221 #define FTFA_FCCOB6_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB6_CCOBn_SHIFT))&FTFA_FCCOB6_CCOBn_MASK)
3222 /* FCCOB5 Bit Fields */
3223 #define FTFA_FCCOB5_CCOBn_MASK                   0xFFu
3224 #define FTFA_FCCOB5_CCOBn_SHIFT                  0
3225 #define FTFA_FCCOB5_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB5_CCOBn_SHIFT))&FTFA_FCCOB5_CCOBn_MASK)
3226 /* FCCOB4 Bit Fields */
3227 #define FTFA_FCCOB4_CCOBn_MASK                   0xFFu
3228 #define FTFA_FCCOB4_CCOBn_SHIFT                  0
3229 #define FTFA_FCCOB4_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB4_CCOBn_SHIFT))&FTFA_FCCOB4_CCOBn_MASK)
3230 /* FCCOBB Bit Fields */
3231 #define FTFA_FCCOBB_CCOBn_MASK                   0xFFu
3232 #define FTFA_FCCOBB_CCOBn_SHIFT                  0
3233 #define FTFA_FCCOBB_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOBB_CCOBn_SHIFT))&FTFA_FCCOBB_CCOBn_MASK)
3234 /* FCCOBA Bit Fields */
3235 #define FTFA_FCCOBA_CCOBn_MASK                   0xFFu
3236 #define FTFA_FCCOBA_CCOBn_SHIFT                  0
3237 #define FTFA_FCCOBA_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOBA_CCOBn_SHIFT))&FTFA_FCCOBA_CCOBn_MASK)
3238 /* FCCOB9 Bit Fields */
3239 #define FTFA_FCCOB9_CCOBn_MASK                   0xFFu
3240 #define FTFA_FCCOB9_CCOBn_SHIFT                  0
3241 #define FTFA_FCCOB9_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB9_CCOBn_SHIFT))&FTFA_FCCOB9_CCOBn_MASK)
3242 /* FCCOB8 Bit Fields */
3243 #define FTFA_FCCOB8_CCOBn_MASK                   0xFFu
3244 #define FTFA_FCCOB8_CCOBn_SHIFT                  0
3245 #define FTFA_FCCOB8_CCOBn(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FCCOB8_CCOBn_SHIFT))&FTFA_FCCOB8_CCOBn_MASK)
3246 /* FPROT3 Bit Fields */
3247 #define FTFA_FPROT3_PROT_MASK                    0xFFu
3248 #define FTFA_FPROT3_PROT_SHIFT                   0
3249 #define FTFA_FPROT3_PROT(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FPROT3_PROT_SHIFT))&FTFA_FPROT3_PROT_MASK)
3250 /* FPROT2 Bit Fields */
3251 #define FTFA_FPROT2_PROT_MASK                    0xFFu
3252 #define FTFA_FPROT2_PROT_SHIFT                   0
3253 #define FTFA_FPROT2_PROT(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FPROT2_PROT_SHIFT))&FTFA_FPROT2_PROT_MASK)
3254 /* FPROT1 Bit Fields */
3255 #define FTFA_FPROT1_PROT_MASK                    0xFFu
3256 #define FTFA_FPROT1_PROT_SHIFT                   0
3257 #define FTFA_FPROT1_PROT(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FPROT1_PROT_SHIFT))&FTFA_FPROT1_PROT_MASK)
3258 /* FPROT0 Bit Fields */
3259 #define FTFA_FPROT0_PROT_MASK                    0xFFu
3260 #define FTFA_FPROT0_PROT_SHIFT                   0
3261 #define FTFA_FPROT0_PROT(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FPROT0_PROT_SHIFT))&FTFA_FPROT0_PROT_MASK)
3262 /* XACCH3 Bit Fields */
3263 #define FTFA_XACCH3_XA_MASK                      0xFFu
3264 #define FTFA_XACCH3_XA_SHIFT                     0
3265 #define FTFA_XACCH3_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCH3_XA_SHIFT))&FTFA_XACCH3_XA_MASK)
3266 /* XACCH2 Bit Fields */
3267 #define FTFA_XACCH2_XA_MASK                      0xFFu
3268 #define FTFA_XACCH2_XA_SHIFT                     0
3269 #define FTFA_XACCH2_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCH2_XA_SHIFT))&FTFA_XACCH2_XA_MASK)
3270 /* XACCH1 Bit Fields */
3271 #define FTFA_XACCH1_XA_MASK                      0xFFu
3272 #define FTFA_XACCH1_XA_SHIFT                     0
3273 #define FTFA_XACCH1_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCH1_XA_SHIFT))&FTFA_XACCH1_XA_MASK)
3274 /* XACCH0 Bit Fields */
3275 #define FTFA_XACCH0_XA_MASK                      0xFFu
3276 #define FTFA_XACCH0_XA_SHIFT                     0
3277 #define FTFA_XACCH0_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCH0_XA_SHIFT))&FTFA_XACCH0_XA_MASK)
3278 /* XACCL3 Bit Fields */
3279 #define FTFA_XACCL3_XA_MASK                      0xFFu
3280 #define FTFA_XACCL3_XA_SHIFT                     0
3281 #define FTFA_XACCL3_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCL3_XA_SHIFT))&FTFA_XACCL3_XA_MASK)
3282 /* XACCL2 Bit Fields */
3283 #define FTFA_XACCL2_XA_MASK                      0xFFu
3284 #define FTFA_XACCL2_XA_SHIFT                     0
3285 #define FTFA_XACCL2_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCL2_XA_SHIFT))&FTFA_XACCL2_XA_MASK)
3286 /* XACCL1 Bit Fields */
3287 #define FTFA_XACCL1_XA_MASK                      0xFFu
3288 #define FTFA_XACCL1_XA_SHIFT                     0
3289 #define FTFA_XACCL1_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCL1_XA_SHIFT))&FTFA_XACCL1_XA_MASK)
3290 /* XACCL0 Bit Fields */
3291 #define FTFA_XACCL0_XA_MASK                      0xFFu
3292 #define FTFA_XACCL0_XA_SHIFT                     0
3293 #define FTFA_XACCL0_XA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_XACCL0_XA_SHIFT))&FTFA_XACCL0_XA_MASK)
3294 /* SACCH3 Bit Fields */
3295 #define FTFA_SACCH3_SA_MASK                      0xFFu
3296 #define FTFA_SACCH3_SA_SHIFT                     0
3297 #define FTFA_SACCH3_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCH3_SA_SHIFT))&FTFA_SACCH3_SA_MASK)
3298 /* SACCH2 Bit Fields */
3299 #define FTFA_SACCH2_SA_MASK                      0xFFu
3300 #define FTFA_SACCH2_SA_SHIFT                     0
3301 #define FTFA_SACCH2_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCH2_SA_SHIFT))&FTFA_SACCH2_SA_MASK)
3302 /* SACCH1 Bit Fields */
3303 #define FTFA_SACCH1_SA_MASK                      0xFFu
3304 #define FTFA_SACCH1_SA_SHIFT                     0
3305 #define FTFA_SACCH1_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCH1_SA_SHIFT))&FTFA_SACCH1_SA_MASK)
3306 /* SACCH0 Bit Fields */
3307 #define FTFA_SACCH0_SA_MASK                      0xFFu
3308 #define FTFA_SACCH0_SA_SHIFT                     0
3309 #define FTFA_SACCH0_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCH0_SA_SHIFT))&FTFA_SACCH0_SA_MASK)
3310 /* SACCL3 Bit Fields */
3311 #define FTFA_SACCL3_SA_MASK                      0xFFu
3312 #define FTFA_SACCL3_SA_SHIFT                     0
3313 #define FTFA_SACCL3_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCL3_SA_SHIFT))&FTFA_SACCL3_SA_MASK)
3314 /* SACCL2 Bit Fields */
3315 #define FTFA_SACCL2_SA_MASK                      0xFFu
3316 #define FTFA_SACCL2_SA_SHIFT                     0
3317 #define FTFA_SACCL2_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCL2_SA_SHIFT))&FTFA_SACCL2_SA_MASK)
3318 /* SACCL1 Bit Fields */
3319 #define FTFA_SACCL1_SA_MASK                      0xFFu
3320 #define FTFA_SACCL1_SA_SHIFT                     0
3321 #define FTFA_SACCL1_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCL1_SA_SHIFT))&FTFA_SACCL1_SA_MASK)
3322 /* SACCL0 Bit Fields */
3323 #define FTFA_SACCL0_SA_MASK                      0xFFu
3324 #define FTFA_SACCL0_SA_SHIFT                     0
3325 #define FTFA_SACCL0_SA(x)                        (((uint8_t)(((uint8_t)(x))<<FTFA_SACCL0_SA_SHIFT))&FTFA_SACCL0_SA_MASK)
3326 /* FACSS Bit Fields */
3327 #define FTFA_FACSS_SGSIZE_MASK                   0xFFu
3328 #define FTFA_FACSS_SGSIZE_SHIFT                  0
3329 #define FTFA_FACSS_SGSIZE(x)                     (((uint8_t)(((uint8_t)(x))<<FTFA_FACSS_SGSIZE_SHIFT))&FTFA_FACSS_SGSIZE_MASK)
3330 /* FACSN Bit Fields */
3331 #define FTFA_FACSN_NUMSG_MASK                    0xFFu
3332 #define FTFA_FACSN_NUMSG_SHIFT                   0
3333 #define FTFA_FACSN_NUMSG(x)                      (((uint8_t)(((uint8_t)(x))<<FTFA_FACSN_NUMSG_SHIFT))&FTFA_FACSN_NUMSG_MASK)
3334
3335 /*!
3336  * @}
3337  */ /* end of group FTFA_Register_Masks */
3338
3339
3340 /* FTFA - Peripheral instance base addresses */
3341 /** Peripheral FTFA base address */
3342 #define FTFA_BASE                                (0x40020000u)
3343 /** Peripheral FTFA base pointer */
3344 #define FTFA                                     ((FTFA_Type *)FTFA_BASE)
3345 #define FTFA_BASE_PTR                            (FTFA)
3346 /** Array initializer of FTFA peripheral base addresses */
3347 #define FTFA_BASE_ADDRS                          { FTFA_BASE }
3348 /** Array initializer of FTFA peripheral base pointers */
3349 #define FTFA_BASE_PTRS                           { FTFA }
3350 /** Interrupt vectors for the FTFA peripheral type */
3351 #define FTFA_COMMAND_COMPLETE_IRQS               { FTF_IRQn }
3352 #define FTFA_READ_COLLISION_IRQS                 { Read_Collision_IRQn }
3353
3354 /* ----------------------------------------------------------------------------
3355    -- FTFA - Register accessor macros
3356    ---------------------------------------------------------------------------- */
3357
3358 /*!
3359  * @addtogroup FTFA_Register_Accessor_Macros FTFA - Register accessor macros
3360  * @{
3361  */
3362
3363
3364 /* FTFA - Register instance definitions */
3365 /* FTFA */
3366 #define FTFA_FSTAT                               FTFA_FSTAT_REG(FTFA)
3367 #define FTFA_FCNFG                               FTFA_FCNFG_REG(FTFA)
3368 #define FTFA_FSEC                                FTFA_FSEC_REG(FTFA)
3369 #define FTFA_FOPT                                FTFA_FOPT_REG(FTFA)
3370 #define FTFA_FCCOB3                              FTFA_FCCOB3_REG(FTFA)
3371 #define FTFA_FCCOB2                              FTFA_FCCOB2_REG(FTFA)
3372 #define FTFA_FCCOB1                              FTFA_FCCOB1_REG(FTFA)
3373 #define FTFA_FCCOB0                              FTFA_FCCOB0_REG(FTFA)
3374 #define FTFA_FCCOB7                              FTFA_FCCOB7_REG(FTFA)
3375 #define FTFA_FCCOB6                              FTFA_FCCOB6_REG(FTFA)
3376 #define FTFA_FCCOB5                              FTFA_FCCOB5_REG(FTFA)
3377 #define FTFA_FCCOB4                              FTFA_FCCOB4_REG(FTFA)
3378 #define FTFA_FCCOBB                              FTFA_FCCOBB_REG(FTFA)
3379 #define FTFA_FCCOBA                              FTFA_FCCOBA_REG(FTFA)
3380 #define FTFA_FCCOB9                              FTFA_FCCOB9_REG(FTFA)
3381 #define FTFA_FCCOB8                              FTFA_FCCOB8_REG(FTFA)
3382 #define FTFA_FPROT3                              FTFA_FPROT3_REG(FTFA)
3383 #define FTFA_FPROT2                              FTFA_FPROT2_REG(FTFA)
3384 #define FTFA_FPROT1                              FTFA_FPROT1_REG(FTFA)
3385 #define FTFA_FPROT0                              FTFA_FPROT0_REG(FTFA)
3386 #define FTFA_XACCH3                              FTFA_XACCH3_REG(FTFA)
3387 #define FTFA_XACCH2                              FTFA_XACCH2_REG(FTFA)
3388 #define FTFA_XACCH1                              FTFA_XACCH1_REG(FTFA)
3389 #define FTFA_XACCH0                              FTFA_XACCH0_REG(FTFA)
3390 #define FTFA_XACCL3                              FTFA_XACCL3_REG(FTFA)
3391 #define FTFA_XACCL2                              FTFA_XACCL2_REG(FTFA)
3392 #define FTFA_XACCL1                              FTFA_XACCL1_REG(FTFA)
3393 #define FTFA_XACCL0                              FTFA_XACCL0_REG(FTFA)
3394 #define FTFA_SACCH3                              FTFA_SACCH3_REG(FTFA)
3395 #define FTFA_SACCH2                              FTFA_SACCH2_REG(FTFA)
3396 #define FTFA_SACCH1                              FTFA_SACCH1_REG(FTFA)
3397 #define FTFA_SACCH0                              FTFA_SACCH0_REG(FTFA)
3398 #define FTFA_SACCL3                              FTFA_SACCL3_REG(FTFA)
3399 #define FTFA_SACCL2                              FTFA_SACCL2_REG(FTFA)
3400 #define FTFA_SACCL1                              FTFA_SACCL1_REG(FTFA)
3401 #define FTFA_SACCL0                              FTFA_SACCL0_REG(FTFA)
3402 #define FTFA_FACSS                               FTFA_FACSS_REG(FTFA)
3403 #define FTFA_FACSN                               FTFA_FACSN_REG(FTFA)
3404
3405 /*!
3406  * @}
3407  */ /* end of group FTFA_Register_Accessor_Macros */
3408
3409
3410 /*!
3411  * @}
3412  */ /* end of group FTFA_Peripheral_Access_Layer */
3413
3414
3415 /* ----------------------------------------------------------------------------
3416    -- FTM Peripheral Access Layer
3417    ---------------------------------------------------------------------------- */
3418
3419 /*!
3420  * @addtogroup FTM_Peripheral_Access_Layer FTM Peripheral Access Layer
3421  * @{
3422  */
3423
3424 /** FTM - Register Layout Typedef */
3425 typedef struct {
3426   __IO uint32_t SC;                                /**< Status And Control, offset: 0x0 */
3427   __IO uint32_t CNT;                               /**< Counter, offset: 0x4 */
3428   __IO uint32_t MOD;                               /**< Modulo, offset: 0x8 */
3429   struct {                                         /* offset: 0xC, array step: 0x8 */
3430     __IO uint32_t CnSC;                              /**< Channel (n) Status And Control, array offset: 0xC, array step: 0x8 */
3431     __IO uint32_t CnV;                               /**< Channel (n) Value, array offset: 0x10, array step: 0x8 */
3432   } CONTROLS[8];
3433   __IO uint32_t CNTIN;                             /**< Counter Initial Value, offset: 0x4C */
3434   __IO uint32_t STATUS;                            /**< Capture And Compare Status, offset: 0x50 */
3435   __IO uint32_t MODE;                              /**< Features Mode Selection, offset: 0x54 */
3436   __IO uint32_t SYNC;                              /**< Synchronization, offset: 0x58 */
3437   __IO uint32_t OUTINIT;                           /**< Initial State For Channels Output, offset: 0x5C */
3438   __IO uint32_t OUTMASK;                           /**< Output Mask, offset: 0x60 */
3439   __IO uint32_t COMBINE;                           /**< Function For Linked Channels, offset: 0x64 */
3440   __IO uint32_t DEADTIME;                          /**< Deadtime Insertion Control, offset: 0x68 */
3441   __IO uint32_t EXTTRIG;                           /**< FTM External Trigger, offset: 0x6C */
3442   __IO uint32_t POL;                               /**< Channels Polarity, offset: 0x70 */
3443   __IO uint32_t FMS;                               /**< Fault Mode Status, offset: 0x74 */
3444   __IO uint32_t FILTER;                            /**< Input Capture Filter Control, offset: 0x78 */
3445   __IO uint32_t FLTCTRL;                           /**< Fault Control, offset: 0x7C */
3446   __IO uint32_t QDCTRL;                            /**< Quadrature Decoder Control And Status, offset: 0x80 */
3447   __IO uint32_t CONF;                              /**< Configuration, offset: 0x84 */
3448   __IO uint32_t FLTPOL;                            /**< FTM Fault Input Polarity, offset: 0x88 */
3449   __IO uint32_t SYNCONF;                           /**< Synchronization Configuration, offset: 0x8C */
3450   __IO uint32_t INVCTRL;                           /**< FTM Inverting Control, offset: 0x90 */
3451   __IO uint32_t SWOCTRL;                           /**< FTM Software Output Control, offset: 0x94 */
3452   __IO uint32_t PWMLOAD;                           /**< FTM PWM Load, offset: 0x98 */
3453 } FTM_Type, *FTM_MemMapPtr;
3454
3455 /* ----------------------------------------------------------------------------
3456    -- FTM - Register accessor macros
3457    ---------------------------------------------------------------------------- */
3458
3459 /*!
3460  * @addtogroup FTM_Register_Accessor_Macros FTM - Register accessor macros
3461  * @{
3462  */
3463
3464
3465 /* FTM - Register accessors */
3466 #define FTM_SC_REG(base)                         ((base)->SC)
3467 #define FTM_CNT_REG(base)                        ((base)->CNT)
3468 #define FTM_MOD_REG(base)                        ((base)->MOD)
3469 #define FTM_CnSC_REG(base,index)                 ((base)->CONTROLS[index].CnSC)
3470 #define FTM_CnV_REG(base,index)                  ((base)->CONTROLS[index].CnV)
3471 #define FTM_CNTIN_REG(base)                      ((base)->CNTIN)
3472 #define FTM_STATUS_REG(base)                     ((base)->STATUS)
3473 #define FTM_MODE_REG(base)                       ((base)->MODE)
3474 #define FTM_SYNC_REG(base)                       ((base)->SYNC)
3475 #define FTM_OUTINIT_REG(base)                    ((base)->OUTINIT)
3476 #define FTM_OUTMASK_REG(base)                    ((base)->OUTMASK)
3477 #define FTM_COMBINE_REG(base)                    ((base)->COMBINE)
3478 #define FTM_DEADTIME_REG(base)                   ((base)->DEADTIME)
3479 #define FTM_EXTTRIG_REG(base)                    ((base)->EXTTRIG)
3480 #define FTM_POL_REG(base)                        ((base)->POL)
3481 #define FTM_FMS_REG(base)                        ((base)->FMS)
3482 #define FTM_FILTER_REG(base)                     ((base)->FILTER)
3483 #define FTM_FLTCTRL_REG(base)                    ((base)->FLTCTRL)
3484 #define FTM_QDCTRL_REG(base)                     ((base)->QDCTRL)
3485 #define FTM_CONF_REG(base)                       ((base)->CONF)
3486 #define FTM_FLTPOL_REG(base)                     ((base)->FLTPOL)
3487 #define FTM_SYNCONF_REG(base)                    ((base)->SYNCONF)
3488 #define FTM_INVCTRL_REG(base)                    ((base)->INVCTRL)
3489 #define FTM_SWOCTRL_REG(base)                    ((base)->SWOCTRL)
3490 #define FTM_PWMLOAD_REG(base)                    ((base)->PWMLOAD)
3491
3492 /*!
3493  * @}
3494  */ /* end of group FTM_Register_Accessor_Macros */
3495
3496
3497 /* ----------------------------------------------------------------------------
3498    -- FTM Register Masks
3499    ---------------------------------------------------------------------------- */
3500
3501 /*!
3502  * @addtogroup FTM_Register_Masks FTM Register Masks
3503  * @{
3504  */
3505
3506 /* SC Bit Fields */
3507 #define FTM_SC_PS_MASK                           0x7u
3508 #define FTM_SC_PS_SHIFT                          0
3509 #define FTM_SC_PS(x)                             (((uint32_t)(((uint32_t)(x))<<FTM_SC_PS_SHIFT))&FTM_SC_PS_MASK)
3510 #define FTM_SC_CLKS_MASK                         0x18u
3511 #define FTM_SC_CLKS_SHIFT                        3
3512 #define FTM_SC_CLKS(x)                           (((uint32_t)(((uint32_t)(x))<<FTM_SC_CLKS_SHIFT))&FTM_SC_CLKS_MASK)
3513 #define FTM_SC_CPWMS_MASK                        0x20u
3514 #define FTM_SC_CPWMS_SHIFT                       5
3515 #define FTM_SC_TOIE_MASK                         0x40u
3516 #define FTM_SC_TOIE_SHIFT                        6
3517 #define FTM_SC_TOF_MASK                          0x80u
3518 #define FTM_SC_TOF_SHIFT                         7
3519 /* CNT Bit Fields */
3520 #define FTM_CNT_COUNT_MASK                       0xFFFFu
3521 #define FTM_CNT_COUNT_SHIFT                      0
3522 #define FTM_CNT_COUNT(x)                         (((uint32_t)(((uint32_t)(x))<<FTM_CNT_COUNT_SHIFT))&FTM_CNT_COUNT_MASK)
3523 /* MOD Bit Fields */
3524 #define FTM_MOD_MOD_MASK                         0xFFFFu
3525 #define FTM_MOD_MOD_SHIFT                        0
3526 #define FTM_MOD_MOD(x)                           (((uint32_t)(((uint32_t)(x))<<FTM_MOD_MOD_SHIFT))&FTM_MOD_MOD_MASK)
3527 /* CnSC Bit Fields */
3528 #define FTM_CnSC_DMA_MASK                        0x1u
3529 #define FTM_CnSC_DMA_SHIFT                       0
3530 #define FTM_CnSC_ICRST_MASK                      0x2u
3531 #define FTM_CnSC_ICRST_SHIFT                     1
3532 #define FTM_CnSC_ELSA_MASK                       0x4u
3533 #define FTM_CnSC_ELSA_SHIFT                      2
3534 #define FTM_CnSC_ELSB_MASK                       0x8u
3535 #define FTM_CnSC_ELSB_SHIFT                      3
3536 #define FTM_CnSC_MSA_MASK                        0x10u
3537 #define FTM_CnSC_MSA_SHIFT                       4
3538 #define FTM_CnSC_MSB_MASK                        0x20u
3539 #define FTM_CnSC_MSB_SHIFT                       5
3540 #define FTM_CnSC_CHIE_MASK                       0x40u
3541 #define FTM_CnSC_CHIE_SHIFT                      6
3542 #define FTM_CnSC_CHF_MASK                        0x80u
3543 #define FTM_CnSC_CHF_SHIFT                       7
3544 /* CnV Bit Fields */
3545 #define FTM_CnV_VAL_MASK                         0xFFFFu
3546 #define FTM_CnV_VAL_SHIFT                        0
3547 #define FTM_CnV_VAL(x)                           (((uint32_t)(((uint32_t)(x))<<FTM_CnV_VAL_SHIFT))&FTM_CnV_VAL_MASK)
3548 /* CNTIN Bit Fields */
3549 #define FTM_CNTIN_INIT_MASK                      0xFFFFu
3550 #define FTM_CNTIN_INIT_SHIFT                     0
3551 #define FTM_CNTIN_INIT(x)                        (((uint32_t)(((uint32_t)(x))<<FTM_CNTIN_INIT_SHIFT))&FTM_CNTIN_INIT_MASK)
3552 /* STATUS Bit Fields */
3553 #define FTM_STATUS_CH0F_MASK                     0x1u
3554 #define FTM_STATUS_CH0F_SHIFT                    0
3555 #define FTM_STATUS_CH1F_MASK                     0x2u
3556 #define FTM_STATUS_CH1F_SHIFT                    1
3557 #define FTM_STATUS_CH2F_MASK                     0x4u
3558 #define FTM_STATUS_CH2F_SHIFT                    2
3559 #define FTM_STATUS_CH3F_MASK                     0x8u
3560 #define FTM_STATUS_CH3F_SHIFT                    3
3561 #define FTM_STATUS_CH4F_MASK                     0x10u
3562 #define FTM_STATUS_CH4F_SHIFT                    4
3563 #define FTM_STATUS_CH5F_MASK                     0x20u
3564 #define FTM_STATUS_CH5F_SHIFT                    5
3565 #define FTM_STATUS_CH6F_MASK                     0x40u
3566 #define FTM_STATUS_CH6F_SHIFT                    6
3567 #define FTM_STATUS_CH7F_MASK                     0x80u
3568 #define FTM_STATUS_CH7F_SHIFT                    7
3569 /* MODE Bit Fields */
3570 #define FTM_MODE_FTMEN_MASK                      0x1u
3571 #define FTM_MODE_FTMEN_SHIFT                     0
3572 #define FTM_MODE_INIT_MASK                       0x2u
3573 #define FTM_MODE_INIT_SHIFT                      1
3574 #define FTM_MODE_WPDIS_MASK                      0x4u
3575 #define FTM_MODE_WPDIS_SHIFT                     2
3576 #define FTM_MODE_PWMSYNC_MASK                    0x8u
3577 #define FTM_MODE_PWMSYNC_SHIFT                   3
3578 #define FTM_MODE_CAPTEST_MASK                    0x10u
3579 #define FTM_MODE_CAPTEST_SHIFT                   4
3580 #define FTM_MODE_FAULTM_MASK                     0x60u
3581 #define FTM_MODE_FAULTM_SHIFT                    5
3582 #define FTM_MODE_FAULTM(x)                       (((uint32_t)(((uint32_t)(x))<<FTM_MODE_FAULTM_SHIFT))&FTM_MODE_FAULTM_MASK)
3583 #define FTM_MODE_FAULTIE_MASK                    0x80u
3584 #define FTM_MODE_FAULTIE_SHIFT                   7
3585 /* SYNC Bit Fields */
3586 #define FTM_SYNC_CNTMIN_MASK                     0x1u
3587 #define FTM_SYNC_CNTMIN_SHIFT                    0
3588 #define FTM_SYNC_CNTMAX_MASK                     0x2u
3589 #define FTM_SYNC_CNTMAX_SHIFT                    1
3590 #define FTM_SYNC_REINIT_MASK                     0x4u
3591 #define FTM_SYNC_REINIT_SHIFT                    2
3592 #define FTM_SYNC_SYNCHOM_MASK                    0x8u
3593 #define FTM_SYNC_SYNCHOM_SHIFT                   3
3594 #define FTM_SYNC_TRIG0_MASK                      0x10u
3595 #define FTM_SYNC_TRIG0_SHIFT                     4
3596 #define FTM_SYNC_TRIG1_MASK                      0x20u
3597 #define FTM_SYNC_TRIG1_SHIFT                     5
3598 #define FTM_SYNC_TRIG2_MASK                      0x40u
3599 #define FTM_SYNC_TRIG2_SHIFT                     6
3600 #define FTM_SYNC_SWSYNC_MASK                     0x80u
3601 #define FTM_SYNC_SWSYNC_SHIFT                    7
3602 /* OUTINIT Bit Fields */
3603 #define FTM_OUTINIT_CH0OI_MASK                   0x1u
3604 #define FTM_OUTINIT_CH0OI_SHIFT                  0
3605 #define FTM_OUTINIT_CH1OI_MASK                   0x2u
3606 #define FTM_OUTINIT_CH1OI_SHIFT                  1
3607 #define FTM_OUTINIT_CH2OI_MASK                   0x4u
3608 #define FTM_OUTINIT_CH2OI_SHIFT                  2
3609 #define FTM_OUTINIT_CH3OI_MASK                   0x8u
3610 #define FTM_OUTINIT_CH3OI_SHIFT                  3
3611 #define FTM_OUTINIT_CH4OI_MASK                   0x10u
3612 #define FTM_OUTINIT_CH4OI_SHIFT                  4
3613 #define FTM_OUTINIT_CH5OI_MASK                   0x20u
3614 #define FTM_OUTINIT_CH5OI_SHIFT                  5
3615 #define FTM_OUTINIT_CH6OI_MASK                   0x40u
3616 #define FTM_OUTINIT_CH6OI_SHIFT                  6
3617 #define FTM_OUTINIT_CH7OI_MASK                   0x80u
3618 #define FTM_OUTINIT_CH7OI_SHIFT                  7
3619 /* OUTMASK Bit Fields */
3620 #define FTM_OUTMASK_CH0OM_MASK                   0x1u
3621 #define FTM_OUTMASK_CH0OM_SHIFT                  0
3622 #define FTM_OUTMASK_CH1OM_MASK                   0x2u
3623 #define FTM_OUTMASK_CH1OM_SHIFT                  1
3624 #define FTM_OUTMASK_CH2OM_MASK                   0x4u
3625 #define FTM_OUTMASK_CH2OM_SHIFT                  2
3626 #define FTM_OUTMASK_CH3OM_MASK                   0x8u
3627 #define FTM_OUTMASK_CH3OM_SHIFT                  3
3628 #define FTM_OUTMASK_CH4OM_MASK                   0x10u
3629 #define FTM_OUTMASK_CH4OM_SHIFT                  4
3630 #define FTM_OUTMASK_CH5OM_MASK                   0x20u
3631 #define FTM_OUTMASK_CH5OM_SHIFT                  5
3632 #define FTM_OUTMASK_CH6OM_MASK                   0x40u
3633 #define FTM_OUTMASK_CH6OM_SHIFT                  6
3634 #define FTM_OUTMASK_CH7OM_MASK                   0x80u
3635 #define FTM_OUTMASK_CH7OM_SHIFT                  7
3636 /* COMBINE Bit Fields */
3637 #define FTM_COMBINE_COMBINE0_MASK                0x1u
3638 #define FTM_COMBINE_COMBINE0_SHIFT               0
3639 #define FTM_COMBINE_COMP0_MASK                   0x2u
3640 #define FTM_COMBINE_COMP0_SHIFT                  1
3641 #define FTM_COMBINE_DECAPEN0_MASK                0x4u
3642 #define FTM_COMBINE_DECAPEN0_SHIFT               2
3643 #define FTM_COMBINE_DECAP0_MASK                  0x8u
3644 #define FTM_COMBINE_DECAP0_SHIFT                 3
3645 #define FTM_COMBINE_DTEN0_MASK                   0x10u
3646 #define FTM_COMBINE_DTEN0_SHIFT                  4
3647 #define FTM_COMBINE_SYNCEN0_MASK                 0x20u
3648 #define FTM_COMBINE_SYNCEN0_SHIFT                5
3649 #define FTM_COMBINE_FAULTEN0_MASK                0x40u
3650 #define FTM_COMBINE_FAULTEN0_SHIFT               6
3651 #define FTM_COMBINE_COMBINE1_MASK                0x100u
3652 #define FTM_COMBINE_COMBINE1_SHIFT               8
3653 #define FTM_COMBINE_COMP1_MASK                   0x200u
3654 #define FTM_COMBINE_COMP1_SHIFT                  9
3655 #define FTM_COMBINE_DECAPEN1_MASK                0x400u
3656 #define FTM_COMBINE_DECAPEN1_SHIFT               10
3657 #define FTM_COMBINE_DECAP1_MASK                  0x800u
3658 #define FTM_COMBINE_DECAP1_SHIFT                 11
3659 #define FTM_COMBINE_DTEN1_MASK                   0x1000u
3660 #define FTM_COMBINE_DTEN1_SHIFT                  12
3661 #define FTM_COMBINE_SYNCEN1_MASK                 0x2000u
3662 #define FTM_COMBINE_SYNCEN1_SHIFT                13
3663 #define FTM_COMBINE_FAULTEN1_MASK                0x4000u
3664 #define FTM_COMBINE_FAULTEN1_SHIFT               14
3665 #define FTM_COMBINE_COMBINE2_MASK                0x10000u
3666 #define FTM_COMBINE_COMBINE2_SHIFT               16
3667 #define FTM_COMBINE_COMP2_MASK                   0x20000u
3668 #define FTM_COMBINE_COMP2_SHIFT                  17
3669 #define FTM_COMBINE_DECAPEN2_MASK                0x40000u
3670 #define FTM_COMBINE_DECAPEN2_SHIFT               18
3671 #define FTM_COMBINE_DECAP2_MASK                  0x80000u
3672 #define FTM_COMBINE_DECAP2_SHIFT                 19
3673 #define FTM_COMBINE_DTEN2_MASK                   0x100000u
3674 #define FTM_COMBINE_DTEN2_SHIFT                  20
3675 #define FTM_COMBINE_SYNCEN2_MASK                 0x200000u
3676 #define FTM_COMBINE_SYNCEN2_SHIFT                21
3677 #define FTM_COMBINE_FAULTEN2_MASK                0x400000u
3678 #define FTM_COMBINE_FAULTEN2_SHIFT               22
3679 #define FTM_COMBINE_COMBINE3_MASK                0x1000000u
3680 #define FTM_COMBINE_COMBINE3_SHIFT               24
3681 #define FTM_COMBINE_COMP3_MASK                   0x2000000u
3682 #define FTM_COMBINE_COMP3_SHIFT                  25
3683 #define FTM_COMBINE_DECAPEN3_MASK                0x4000000u
3684 #define FTM_COMBINE_DECAPEN3_SHIFT               26
3685 #define FTM_COMBINE_DECAP3_MASK                  0x8000000u
3686 #define FTM_COMBINE_DECAP3_SHIFT                 27
3687 #define FTM_COMBINE_DTEN3_MASK                   0x10000000u
3688 #define FTM_COMBINE_DTEN3_SHIFT                  28
3689 #define FTM_COMBINE_SYNCEN3_MASK                 0x20000000u
3690 #define FTM_COMBINE_SYNCEN3_SHIFT                29
3691 #define FTM_COMBINE_FAULTEN3_MASK                0x40000000u
3692 #define FTM_COMBINE_FAULTEN3_SHIFT               30
3693 /* DEADTIME Bit Fields */
3694 #define FTM_DEADTIME_DTVAL_MASK                  0x3Fu
3695 #define FTM_DEADTIME_DTVAL_SHIFT                 0
3696 #define FTM_DEADTIME_DTVAL(x)                    (((uint32_t)(((uint32_t)(x))<<FTM_DEADTIME_DTVAL_SHIFT))&FTM_DEADTIME_DTVAL_MASK)
3697 #define FTM_DEADTIME_DTPS_MASK                   0xC0u
3698 #define FTM_DEADTIME_DTPS_SHIFT                  6
3699 #define FTM_DEADTIME_DTPS(x)                     (((uint32_t)(((uint32_t)(x))<<FTM_DEADTIME_DTPS_SHIFT))&FTM_DEADTIME_DTPS_MASK)
3700 /* EXTTRIG Bit Fields */
3701 #define FTM_EXTTRIG_CH2TRIG_MASK                 0x1u
3702 #define FTM_EXTTRIG_CH2TRIG_SHIFT                0
3703 #define FTM_EXTTRIG_CH3TRIG_MASK                 0x2u
3704 #define FTM_EXTTRIG_CH3TRIG_SHIFT                1
3705 #define FTM_EXTTRIG_CH4TRIG_MASK                 0x4u
3706 #define FTM_EXTTRIG_CH4TRIG_SHIFT                2
3707 #define FTM_EXTTRIG_CH5TRIG_MASK                 0x8u
3708 #define FTM_EXTTRIG_CH5TRIG_SHIFT                3
3709 #define FTM_EXTTRIG_CH0TRIG_MASK                 0x10u
3710 #define FTM_EXTTRIG_CH0TRIG_SHIFT                4
3711 #define FTM_EXTTRIG_CH1TRIG_MASK                 0x20u
3712 #define FTM_EXTTRIG_CH1TRIG_SHIFT                5
3713 #define FTM_EXTTRIG_INITTRIGEN_MASK              0x40u
3714 #define FTM_EXTTRIG_INITTRIGEN_SHIFT             6
3715 #define FTM_EXTTRIG_TRIGF_MASK                   0x80u
3716 #define FTM_EXTTRIG_TRIGF_SHIFT                  7
3717 /* POL Bit Fields */
3718 #define FTM_POL_POL0_MASK                        0x1u
3719 #define FTM_POL_POL0_SHIFT                       0
3720 #define FTM_POL_POL1_MASK                        0x2u
3721 #define FTM_POL_POL1_SHIFT                       1
3722 #define FTM_POL_POL2_MASK                        0x4u
3723 #define FTM_POL_POL2_SHIFT                       2
3724 #define FTM_POL_POL3_MASK                        0x8u
3725 #define FTM_POL_POL3_SHIFT                       3
3726 #define FTM_POL_POL4_MASK                        0x10u
3727 #define FTM_POL_POL4_SHIFT                       4
3728 #define FTM_POL_POL5_MASK                        0x20u
3729 #define FTM_POL_POL5_SHIFT                       5
3730 #define FTM_POL_POL6_MASK                        0x40u
3731 #define FTM_POL_POL6_SHIFT                       6
3732 #define FTM_POL_POL7_MASK                        0x80u
3733 #define FTM_POL_POL7_SHIFT                       7
3734 /* FMS Bit Fields */
3735 #define FTM_FMS_FAULTF0_MASK                     0x1u
3736 #define FTM_FMS_FAULTF0_SHIFT                    0
3737 #define FTM_FMS_FAULTF1_MASK                     0x2u
3738 #define FTM_FMS_FAULTF1_SHIFT                    1
3739 #define FTM_FMS_FAULTF2_MASK                     0x4u
3740 #define FTM_FMS_FAULTF2_SHIFT                    2
3741 #define FTM_FMS_FAULTF3_MASK                     0x8u
3742 #define FTM_FMS_FAULTF3_SHIFT                    3
3743 #define FTM_FMS_FAULTIN_MASK                     0x20u
3744 #define FTM_FMS_FAULTIN_SHIFT                    5
3745 #define FTM_FMS_WPEN_MASK                        0x40u
3746 #define FTM_FMS_WPEN_SHIFT                       6
3747 #define FTM_FMS_FAULTF_MASK                      0x80u
3748 #define FTM_FMS_FAULTF_SHIFT                     7
3749 /* FILTER Bit Fields */
3750 #define FTM_FILTER_CH0FVAL_MASK                  0xFu
3751 #define FTM_FILTER_CH0FVAL_SHIFT                 0
3752 #define FTM_FILTER_CH0FVAL(x)                    (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH0FVAL_SHIFT))&FTM_FILTER_CH0FVAL_MASK)
3753 #define FTM_FILTER_CH1FVAL_MASK                  0xF0u
3754 #define FTM_FILTER_CH1FVAL_SHIFT                 4
3755 #define FTM_FILTER_CH1FVAL(x)                    (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH1FVAL_SHIFT))&FTM_FILTER_CH1FVAL_MASK)
3756 #define FTM_FILTER_CH2FVAL_MASK                  0xF00u
3757 #define FTM_FILTER_CH2FVAL_SHIFT                 8
3758 #define FTM_FILTER_CH2FVAL(x)                    (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH2FVAL_SHIFT))&FTM_FILTER_CH2FVAL_MASK)
3759 #define FTM_FILTER_CH3FVAL_MASK                  0xF000u
3760 #define FTM_FILTER_CH3FVAL_SHIFT                 12
3761 #define FTM_FILTER_CH3FVAL(x)                    (((uint32_t)(((uint32_t)(x))<<FTM_FILTER_CH3FVAL_SHIFT))&FTM_FILTER_CH3FVAL_MASK)
3762 /* FLTCTRL Bit Fields */
3763 #define FTM_FLTCTRL_FAULT0EN_MASK                0x1u
3764 #define FTM_FLTCTRL_FAULT0EN_SHIFT               0
3765 #define FTM_FLTCTRL_FAULT1EN_MASK                0x2u
3766 #define FTM_FLTCTRL_FAULT1EN_SHIFT               1
3767 #define FTM_FLTCTRL_FAULT2EN_MASK                0x4u
3768 #define FTM_FLTCTRL_FAULT2EN_SHIFT               2
3769 #define FTM_FLTCTRL_FAULT3EN_MASK                0x8u
3770 #define FTM_FLTCTRL_FAULT3EN_SHIFT               3
3771 #define FTM_FLTCTRL_FFLTR0EN_MASK                0x10u
3772 #define FTM_FLTCTRL_FFLTR0EN_SHIFT               4
3773 #define FTM_FLTCTRL_FFLTR1EN_MASK                0x20u
3774 #define FTM_FLTCTRL_FFLTR1EN_SHIFT               5
3775 #define FTM_FLTCTRL_FFLTR2EN_MASK                0x40u
3776 #define FTM_FLTCTRL_FFLTR2EN_SHIFT               6
3777 #define FTM_FLTCTRL_FFLTR3EN_MASK                0x80u
3778 #define FTM_FLTCTRL_FFLTR3EN_SHIFT               7
3779 #define FTM_FLTCTRL_FFVAL_MASK                   0xF00u
3780 #define FTM_FLTCTRL_FFVAL_SHIFT                  8
3781 #define FTM_FLTCTRL_FFVAL(x)                     (((uint32_t)(((uint32_t)(x))<<FTM_FLTCTRL_FFVAL_SHIFT))&FTM_FLTCTRL_FFVAL_MASK)
3782 /* QDCTRL Bit Fields */
3783 #define FTM_QDCTRL_QUADEN_MASK                   0x1u
3784 #define FTM_QDCTRL_QUADEN_SHIFT                  0
3785 #define FTM_QDCTRL_TOFDIR_MASK                   0x2u
3786 #define FTM_QDCTRL_TOFDIR_SHIFT                  1
3787 #define FTM_QDCTRL_QUADIR_MASK                   0x4u
3788 #define FTM_QDCTRL_QUADIR_SHIFT                  2
3789 #define FTM_QDCTRL_QUADMODE_MASK                 0x8u
3790 #define FTM_QDCTRL_QUADMODE_SHIFT                3
3791 #define FTM_QDCTRL_PHBPOL_MASK                   0x10u
3792 #define FTM_QDCTRL_PHBPOL_SHIFT                  4
3793 #define FTM_QDCTRL_PHAPOL_MASK                   0x20u
3794 #define FTM_QDCTRL_PHAPOL_SHIFT                  5
3795 #define FTM_QDCTRL_PHBFLTREN_MASK                0x40u
3796 #define FTM_QDCTRL_PHBFLTREN_SHIFT               6
3797 #define FTM_QDCTRL_PHAFLTREN_MASK                0x80u
3798 #define FTM_QDCTRL_PHAFLTREN_SHIFT               7
3799 /* CONF Bit Fields */
3800 #define FTM_CONF_NUMTOF_MASK                     0x1Fu
3801 #define FTM_CONF_NUMTOF_SHIFT                    0
3802 #define FTM_CONF_NUMTOF(x)                       (((uint32_t)(((uint32_t)(x))<<FTM_CONF_NUMTOF_SHIFT))&FTM_CONF_NUMTOF_MASK)
3803 #define FTM_CONF_BDMMODE_MASK                    0xC0u
3804 #define FTM_CONF_BDMMODE_SHIFT                   6
3805 #define FTM_CONF_BDMMODE(x)                      (((uint32_t)(((uint32_t)(x))<<FTM_CONF_BDMMODE_SHIFT))&FTM_CONF_BDMMODE_MASK)
3806 #define FTM_CONF_GTBEEN_MASK                     0x200u
3807 #define FTM_CONF_GTBEEN_SHIFT                    9
3808 #define FTM_CONF_GTBEOUT_MASK                    0x400u
3809 #define FTM_CONF_GTBEOUT_SHIFT                   10
3810 /* FLTPOL Bit Fields */
3811 #define FTM_FLTPOL_FLT0POL_MASK                  0x1u
3812 #define FTM_FLTPOL_FLT0POL_SHIFT                 0
3813 #define FTM_FLTPOL_FLT1POL_MASK                  0x2u
3814 #define FTM_FLTPOL_FLT1POL_SHIFT                 1
3815 #define FTM_FLTPOL_FLT2POL_MASK                  0x4u
3816 #define FTM_FLTPOL_FLT2POL_SHIFT                 2
3817 #define FTM_FLTPOL_FLT3POL_MASK                  0x8u
3818 #define FTM_FLTPOL_FLT3POL_SHIFT                 3
3819 /* SYNCONF Bit Fields */
3820 #define FTM_SYNCONF_HWTRIGMODE_MASK              0x1u
3821 #define FTM_SYNCONF_HWTRIGMODE_SHIFT             0
3822 #define FTM_SYNCONF_CNTINC_MASK                  0x4u
3823 #define FTM_SYNCONF_CNTINC_SHIFT                 2
3824 #define FTM_SYNCONF_INVC_MASK                    0x10u
3825 #define FTM_SYNCONF_INVC_SHIFT                   4
3826 #define FTM_SYNCONF_SWOC_MASK                    0x20u
3827 #define FTM_SYNCONF_SWOC_SHIFT                   5
3828 #define FTM_SYNCONF_SYNCMODE_MASK                0x80u
3829 #define FTM_SYNCONF_SYNCMODE_SHIFT               7
3830 #define FTM_SYNCONF_SWRSTCNT_MASK                0x100u
3831 #define FTM_SYNCONF_SWRSTCNT_SHIFT               8
3832 #define FTM_SYNCONF_SWWRBUF_MASK                 0x200u
3833 #define FTM_SYNCONF_SWWRBUF_SHIFT                9
3834 #define FTM_SYNCONF_SWOM_MASK                    0x400u
3835 #define FTM_SYNCONF_SWOM_SHIFT                   10
3836 #define FTM_SYNCONF_SWINVC_MASK                  0x800u
3837 #define FTM_SYNCONF_SWINVC_SHIFT                 11
3838 #define FTM_SYNCONF_SWSOC_MASK                   0x1000u
3839 #define FTM_SYNCONF_SWSOC_SHIFT                  12
3840 #define FTM_SYNCONF_HWRSTCNT_MASK                0x10000u
3841 #define FTM_SYNCONF_HWRSTCNT_SHIFT               16
3842 #define FTM_SYNCONF_HWWRBUF_MASK                 0x20000u
3843 #define FTM_SYNCONF_HWWRBUF_SHIFT                17
3844 #define FTM_SYNCONF_HWOM_MASK                    0x40000u
3845 #define FTM_SYNCONF_HWOM_SHIFT                   18
3846 #define FTM_SYNCONF_HWINVC_MASK                  0x80000u
3847 #define FTM_SYNCONF_HWINVC_SHIFT                 19
3848 #define FTM_SYNCONF_HWSOC_MASK                   0x100000u
3849 #define FTM_SYNCONF_HWSOC_SHIFT                  20
3850 /* INVCTRL Bit Fields */
3851 #define FTM_INVCTRL_INV0EN_MASK                  0x1u
3852 #define FTM_INVCTRL_INV0EN_SHIFT                 0
3853 #define FTM_INVCTRL_INV1EN_MASK                  0x2u
3854 #define FTM_INVCTRL_INV1EN_SHIFT                 1
3855 #define FTM_INVCTRL_INV2EN_MASK                  0x4u
3856 #define FTM_INVCTRL_INV2EN_SHIFT                 2
3857 #define FTM_INVCTRL_INV3EN_MASK                  0x8u
3858 #define FTM_INVCTRL_INV3EN_SHIFT                 3
3859 /* SWOCTRL Bit Fields */
3860 #define FTM_SWOCTRL_CH0OC_MASK                   0x1u
3861 #define FTM_SWOCTRL_CH0OC_SHIFT                  0
3862 #define FTM_SWOCTRL_CH1OC_MASK                   0x2u
3863 #define FTM_SWOCTRL_CH1OC_SHIFT                  1
3864 #define FTM_SWOCTRL_CH2OC_MASK                   0x4u
3865 #define FTM_SWOCTRL_CH2OC_SHIFT                  2
3866 #define FTM_SWOCTRL_CH3OC_MASK                   0x8u
3867 #define FTM_SWOCTRL_CH3OC_SHIFT                  3
3868 #define FTM_SWOCTRL_CH4OC_MASK                   0x10u
3869 #define FTM_SWOCTRL_CH4OC_SHIFT                  4
3870 #define FTM_SWOCTRL_CH5OC_MASK                   0x20u
3871 #define FTM_SWOCTRL_CH5OC_SHIFT                  5
3872 #define FTM_SWOCTRL_CH6OC_MASK                   0x40u
3873 #define FTM_SWOCTRL_CH6OC_SHIFT                  6
3874 #define FTM_SWOCTRL_CH7OC_MASK                   0x80u
3875 #define FTM_SWOCTRL_CH7OC_SHIFT                  7
3876 #define FTM_SWOCTRL_CH0OCV_MASK                  0x100u
3877 #define FTM_SWOCTRL_CH0OCV_SHIFT                 8
3878 #define FTM_SWOCTRL_CH1OCV_MASK                  0x200u
3879 #define FTM_SWOCTRL_CH1OCV_SHIFT                 9
3880 #define FTM_SWOCTRL_CH2OCV_MASK                  0x400u
3881 #define FTM_SWOCTRL_CH2OCV_SHIFT                 10
3882 #define FTM_SWOCTRL_CH3OCV_MASK                  0x800u
3883 #define FTM_SWOCTRL_CH3OCV_SHIFT                 11
3884 #define FTM_SWOCTRL_CH4OCV_MASK                  0x1000u
3885 #define FTM_SWOCTRL_CH4OCV_SHIFT                 12
3886 #define FTM_SWOCTRL_CH5OCV_MASK                  0x2000u
3887 #define FTM_SWOCTRL_CH5OCV_SHIFT                 13
3888 #define FTM_SWOCTRL_CH6OCV_MASK                  0x4000u
3889 #define FTM_SWOCTRL_CH6OCV_SHIFT                 14
3890 #define FTM_SWOCTRL_CH7OCV_MASK                  0x8000u
3891 #define FTM_SWOCTRL_CH7OCV_SHIFT                 15
3892 /* PWMLOAD Bit Fields */
3893 #define FTM_PWMLOAD_CH0SEL_MASK                  0x1u
3894 #define FTM_PWMLOAD_CH0SEL_SHIFT                 0
3895 #define FTM_PWMLOAD_CH1SEL_MASK                  0x2u
3896 #define FTM_PWMLOAD_CH1SEL_SHIFT                 1
3897 #define FTM_PWMLOAD_CH2SEL_MASK                  0x4u
3898 #define FTM_PWMLOAD_CH2SEL_SHIFT                 2
3899 #define FTM_PWMLOAD_CH3SEL_MASK                  0x8u
3900 #define FTM_PWMLOAD_CH3SEL_SHIFT                 3
3901 #define FTM_PWMLOAD_CH4SEL_MASK                  0x10u
3902 #define FTM_PWMLOAD_CH4SEL_SHIFT                 4
3903 #define FTM_PWMLOAD_CH5SEL_MASK                  0x20u
3904 #define FTM_PWMLOAD_CH5SEL_SHIFT                 5
3905 #define FTM_PWMLOAD_CH6SEL_MASK                  0x40u
3906 #define FTM_PWMLOAD_CH6SEL_SHIFT                 6
3907 #define FTM_PWMLOAD_CH7SEL_MASK                  0x80u
3908 #define FTM_PWMLOAD_CH7SEL_SHIFT                 7
3909 #define FTM_PWMLOAD_LDOK_MASK                    0x200u
3910 #define FTM_PWMLOAD_LDOK_SHIFT                   9
3911
3912 /*!
3913  * @}
3914  */ /* end of group FTM_Register_Masks */
3915
3916
3917 /* FTM - Peripheral instance base addresses */
3918 /** Peripheral FTM0 base address */
3919 #define FTM0_BASE                                (0x40038000u)
3920 /** Peripheral FTM0 base pointer */
3921 #define FTM0                                     ((FTM_Type *)FTM0_BASE)
3922 #define FTM0_BASE_PTR                            (FTM0)
3923 /** Peripheral FTM1 base address */
3924 #define FTM1_BASE                                (0x40039000u)
3925 /** Peripheral FTM1 base pointer */
3926 #define FTM1                                     ((FTM_Type *)FTM1_BASE)
3927 #define FTM1_BASE_PTR                            (FTM1)
3928 /** Peripheral FTM2 base address */
3929 #define FTM2_BASE                                (0x4003A000u)
3930 /** Peripheral FTM2 base pointer */
3931 #define FTM2                                     ((FTM_Type *)FTM2_BASE)
3932 #define FTM2_BASE_PTR                            (FTM2)
3933 /** Peripheral FTM3 base address */
3934 #define FTM3_BASE                                (0x40026000u)
3935 /** Peripheral FTM3 base pointer */
3936 #define FTM3                                     ((FTM_Type *)FTM3_BASE)
3937 #define FTM3_BASE_PTR                            (FTM3)
3938 /** Array initializer of FTM peripheral base addresses */
3939 #define FTM_BASE_ADDRS                           { FTM0_BASE, FTM1_BASE, FTM2_BASE, FTM3_BASE }
3940 /** Array initializer of FTM peripheral base pointers */
3941 #define FTM_BASE_PTRS                            { FTM0, FTM1, FTM2, FTM3 }
3942 /** Interrupt vectors for the FTM peripheral type */
3943 #define FTM_IRQS                                 { FTM0_IRQn, FTM1_IRQn, FTM2_IRQn, FTM3_IRQn }
3944
3945 /* ----------------------------------------------------------------------------
3946    -- FTM - Register accessor macros
3947    ---------------------------------------------------------------------------- */
3948
3949 /*!
3950  * @addtogroup FTM_Register_Accessor_Macros FTM - Register accessor macros
3951  * @{
3952  */
3953
3954
3955 /* FTM - Register instance definitions */
3956 /* FTM0 */
3957 #define FTM0_SC                                  FTM_SC_REG(FTM0)
3958 #define FTM0_CNT                                 FTM_CNT_REG(FTM0)
3959 #define FTM0_MOD                                 FTM_MOD_REG(FTM0)
3960 #define FTM0_C0SC                                FTM_CnSC_REG(FTM0,0)
3961 #define FTM0_C0V                                 FTM_CnV_REG(FTM0,0)
3962 #define FTM0_C1SC                                FTM_CnSC_REG(FTM0,1)
3963 #define FTM0_C1V                                 FTM_CnV_REG(FTM0,1)
3964 #define FTM0_C2SC                                FTM_CnSC_REG(FTM0,2)
3965 #define FTM0_C2V                                 FTM_CnV_REG(FTM0,2)
3966 #define FTM0_C3SC                                FTM_CnSC_REG(FTM0,3)
3967 #define FTM0_C3V                                 FTM_CnV_REG(FTM0,3)
3968 #define FTM0_C4SC                                FTM_CnSC_REG(FTM0,4)
3969 #define FTM0_C4V                                 FTM_CnV_REG(FTM0,4)
3970 #define FTM0_C5SC                                FTM_CnSC_REG(FTM0,5)
3971 #define FTM0_C5V                                 FTM_CnV_REG(FTM0,5)
3972 #define FTM0_C6SC                                FTM_CnSC_REG(FTM0,6)
3973 #define FTM0_C6V                                 FTM_CnV_REG(FTM0,6)
3974 #define FTM0_C7SC                                FTM_CnSC_REG(FTM0,7)
3975 #define FTM0_C7V                                 FTM_CnV_REG(FTM0,7)
3976 #define FTM0_CNTIN                               FTM_CNTIN_REG(FTM0)
3977 #define FTM0_STATUS                              FTM_STATUS_REG(FTM0)
3978 #define FTM0_MODE                                FTM_MODE_REG(FTM0)
3979 #define FTM0_SYNC                                FTM_SYNC_REG(FTM0)
3980 #define FTM0_OUTINIT                             FTM_OUTINIT_REG(FTM0)
3981 #define FTM0_OUTMASK                             FTM_OUTMASK_REG(FTM0)
3982 #define FTM0_COMBINE                             FTM_COMBINE_REG(FTM0)
3983 #define FTM0_DEADTIME                            FTM_DEADTIME_REG(FTM0)
3984 #define FTM0_EXTTRIG                             FTM_EXTTRIG_REG(FTM0)
3985 #define FTM0_POL                                 FTM_POL_REG(FTM0)
3986 #define FTM0_FMS                                 FTM_FMS_REG(FTM0)
3987 #define FTM0_FILTER                              FTM_FILTER_REG(FTM0)
3988 #define FTM0_FLTCTRL                             FTM_FLTCTRL_REG(FTM0)
3989 #define FTM0_QDCTRL                              FTM_QDCTRL_REG(FTM0)
3990 #define FTM0_CONF                                FTM_CONF_REG(FTM0)
3991 #define FTM0_FLTPOL                              FTM_FLTPOL_REG(FTM0)
3992 #define FTM0_SYNCONF                             FTM_SYNCONF_REG(FTM0)
3993 #define FTM0_INVCTRL                             FTM_INVCTRL_REG(FTM0)
3994 #define FTM0_SWOCTRL                             FTM_SWOCTRL_REG(FTM0)
3995 #define FTM0_PWMLOAD                             FTM_PWMLOAD_REG(FTM0)
3996 /* FTM1 */
3997 #define FTM1_SC                                  FTM_SC_REG(FTM1)
3998 #define FTM1_CNT                                 FTM_CNT_REG(FTM1)
3999 #define FTM1_MOD                                 FTM_MOD_REG(FTM1)
4000 #define FTM1_C0SC                                FTM_CnSC_REG(FTM1,0)
4001 #define FTM1_C0V                                 FTM_CnV_REG(FTM1,0)
4002 #define FTM1_C1SC                                FTM_CnSC_REG(FTM1,1)
4003 #define FTM1_C1V                                 FTM_CnV_REG(FTM1,1)
4004 #define FTM1_CNTIN                               FTM_CNTIN_REG(FTM1)
4005 #define FTM1_STATUS                              FTM_STATUS_REG(FTM1)
4006 #define FTM1_MODE                                FTM_MODE_REG(FTM1)
4007 #define FTM1_SYNC                                FTM_SYNC_REG(FTM1)
4008 #define FTM1_OUTINIT                             FTM_OUTINIT_REG(FTM1)
4009 #define FTM1_OUTMASK                             FTM_OUTMASK_REG(FTM1)
4010 #define FTM1_COMBINE                             FTM_COMBINE_REG(FTM1)
4011 #define FTM1_DEADTIME                            FTM_DEADTIME_REG(FTM1)
4012 #define FTM1_EXTTRIG                             FTM_EXTTRIG_REG(FTM1)
4013 #define FTM1_POL                                 FTM_POL_REG(FTM1)
4014 #define FTM1_FMS                                 FTM_FMS_REG(FTM1)
4015 #define FTM1_FILTER                              FTM_FILTER_REG(FTM1)
4016 #define FTM1_FLTCTRL                             FTM_FLTCTRL_REG(FTM1)
4017 #define FTM1_QDCTRL                              FTM_QDCTRL_REG(FTM1)
4018 #define FTM1_CONF                                FTM_CONF_REG(FTM1)
4019 #define FTM1_FLTPOL                              FTM_FLTPOL_REG(FTM1)
4020 #define FTM1_SYNCONF                             FTM_SYNCONF_REG(FTM1)
4021 #define FTM1_INVCTRL                             FTM_INVCTRL_REG(FTM1)
4022 #define FTM1_SWOCTRL                             FTM_SWOCTRL_REG(FTM1)
4023 #define FTM1_PWMLOAD                             FTM_PWMLOAD_REG(FTM1)
4024 /* FTM2 */
4025 #define FTM2_SC                                  FTM_SC_REG(FTM2)
4026 #define FTM2_CNT                                 FTM_CNT_REG(FTM2)
4027 #define FTM2_MOD                                 FTM_MOD_REG(FTM2)
4028 #define FTM2_C0SC                                FTM_CnSC_REG(FTM2,0)
4029 #define FTM2_C0V                                 FTM_CnV_REG(FTM2,0)
4030 #define FTM2_C1SC                                FTM_CnSC_REG(FTM2,1)
4031 #define FTM2_C1V                                 FTM_CnV_REG(FTM2,1)
4032 #define FTM2_CNTIN                               FTM_CNTIN_REG(FTM2)
4033 #define FTM2_STATUS                              FTM_STATUS_REG(FTM2)
4034 #define FTM2_MODE                                FTM_MODE_REG(FTM2)
4035 #define FTM2_SYNC                                FTM_SYNC_REG(FTM2)
4036 #define FTM2_OUTINIT                             FTM_OUTINIT_REG(FTM2)
4037 #define FTM2_OUTMASK                             FTM_OUTMASK_REG(FTM2)
4038 #define FTM2_COMBINE                             FTM_COMBINE_REG(FTM2)
4039 #define FTM2_DEADTIME                            FTM_DEADTIME_REG(FTM2)
4040 #define FTM2_EXTTRIG                             FTM_EXTTRIG_REG(FTM2)
4041 #define FTM2_POL                                 FTM_POL_REG(FTM2)
4042 #define FTM2_FMS                                 FTM_FMS_REG(FTM2)
4043 #define FTM2_FILTER                              FTM_FILTER_REG(FTM2)
4044 #define FTM2_FLTCTRL                             FTM_FLTCTRL_REG(FTM2)
4045 #define FTM2_QDCTRL                              FTM_QDCTRL_REG(FTM2)
4046 #define FTM2_CONF                                FTM_CONF_REG(FTM2)
4047 #define FTM2_FLTPOL                              FTM_FLTPOL_REG(FTM2)
4048 #define FTM2_SYNCONF                             FTM_SYNCONF_REG(FTM2)
4049 #define FTM2_INVCTRL                             FTM_INVCTRL_REG(FTM2)
4050 #define FTM2_SWOCTRL                             FTM_SWOCTRL_REG(FTM2)
4051 #define FTM2_PWMLOAD                             FTM_PWMLOAD_REG(FTM2)
4052 /* FTM3 */
4053 #define FTM3_SC                                  FTM_SC_REG(FTM3)
4054 #define FTM3_CNT                                 FTM_CNT_REG(FTM3)
4055 #define FTM3_MOD                                 FTM_MOD_REG(FTM3)
4056 #define FTM3_C0SC                                FTM_CnSC_REG(FTM3,0)
4057 #define FTM3_C0V                                 FTM_CnV_REG(FTM3,0)
4058 #define FTM3_C1SC                                FTM_CnSC_REG(FTM3,1)
4059 #define FTM3_C1V                                 FTM_CnV_REG(FTM3,1)
4060 #define FTM3_C2SC                                FTM_CnSC_REG(FTM3,2)
4061 #define FTM3_C2V                                 FTM_CnV_REG(FTM3,2)
4062 #define FTM3_C3SC                                FTM_CnSC_REG(FTM3,3)
4063 #define FTM3_C3V                                 FTM_CnV_REG(FTM3,3)
4064 #define FTM3_C4SC                                FTM_CnSC_REG(FTM3,4)
4065 #define FTM3_C4V                                 FTM_CnV_REG(FTM3,4)
4066 #define FTM3_C5SC                                FTM_CnSC_REG(FTM3,5)
4067 #define FTM3_C5V                                 FTM_CnV_REG(FTM3,5)
4068 #define FTM3_C6SC                                FTM_CnSC_REG(FTM3,6)
4069 #define FTM3_C6V                                 FTM_CnV_REG(FTM3,6)
4070 #define FTM3_C7SC                                FTM_CnSC_REG(FTM3,7)
4071 #define FTM3_C7V                                 FTM_CnV_REG(FTM3,7)
4072 #define FTM3_CNTIN                               FTM_CNTIN_REG(FTM3)
4073 #define FTM3_STATUS                              FTM_STATUS_REG(FTM3)
4074 #define FTM3_MODE                                FTM_MODE_REG(FTM3)
4075 #define FTM3_SYNC                                FTM_SYNC_REG(FTM3)
4076 #define FTM3_OUTINIT                             FTM_OUTINIT_REG(FTM3)
4077 #define FTM3_OUTMASK                             FTM_OUTMASK_REG(FTM3)
4078 #define FTM3_COMBINE                             FTM_COMBINE_REG(FTM3)
4079 #define FTM3_DEADTIME                            FTM_DEADTIME_REG(FTM3)
4080 #define FTM3_EXTTRIG                             FTM_EXTTRIG_REG(FTM3)
4081 #define FTM3_POL                                 FTM_POL_REG(FTM3)
4082 #define FTM3_FMS                                 FTM_FMS_REG(FTM3)
4083 #define FTM3_FILTER                              FTM_FILTER_REG(FTM3)
4084 #define FTM3_FLTCTRL                             FTM_FLTCTRL_REG(FTM3)
4085 #define FTM3_QDCTRL                              FTM_QDCTRL_REG(FTM3)
4086 #define FTM3_CONF                                FTM_CONF_REG(FTM3)
4087 #define FTM3_FLTPOL                              FTM_FLTPOL_REG(FTM3)
4088 #define FTM3_SYNCONF                             FTM_SYNCONF_REG(FTM3)
4089 #define FTM3_INVCTRL                             FTM_INVCTRL_REG(FTM3)
4090 #define FTM3_SWOCTRL                             FTM_SWOCTRL_REG(FTM3)
4091 #define FTM3_PWMLOAD                             FTM_PWMLOAD_REG(FTM3)
4092
4093 /* FTM - Register array accessors */
4094 #define FTM0_CnSC(index)                         FTM_CnSC_REG(FTM0,index)
4095 #define FTM1_CnSC(index)                         FTM_CnSC_REG(FTM1,index)
4096 #define FTM2_CnSC(index)                         FTM_CnSC_REG(FTM2,index)
4097 #define FTM3_CnSC(index)                         FTM_CnSC_REG(FTM3,index)
4098 #define FTM0_CnV(index)                          FTM_CnV_REG(FTM0,index)
4099 #define FTM1_CnV(index)                          FTM_CnV_REG(FTM1,index)
4100 #define FTM2_CnV(index)                          FTM_CnV_REG(FTM2,index)
4101 #define FTM3_CnV(index)                          FTM_CnV_REG(FTM3,index)
4102
4103 /*!
4104  * @}
4105  */ /* end of group FTM_Register_Accessor_Macros */
4106
4107
4108 /*!
4109  * @}
4110  */ /* end of group FTM_Peripheral_Access_Layer */
4111
4112
4113 /* ----------------------------------------------------------------------------
4114    -- GPIO Peripheral Access Layer
4115    ---------------------------------------------------------------------------- */
4116
4117 /*!
4118  * @addtogroup GPIO_Peripheral_Access_Layer GPIO Peripheral Access Layer
4119  * @{
4120  */
4121
4122 /** GPIO - Register Layout Typedef */
4123 typedef struct {
4124   __IO uint32_t PDOR;                              /**< Port Data Output Register, offset: 0x0 */
4125   __O  uint32_t PSOR;                              /**< Port Set Output Register, offset: 0x4 */
4126   __O  uint32_t PCOR;                              /**< Port Clear Output Register, offset: 0x8 */
4127   __O  uint32_t PTOR;                              /**< Port Toggle Output Register, offset: 0xC */
4128   __I  uint32_t PDIR;                              /**< Port Data Input Register, offset: 0x10 */
4129   __IO uint32_t PDDR;                              /**< Port Data Direction Register, offset: 0x14 */
4130 } GPIO_Type, *GPIO_MemMapPtr;
4131
4132 /* ----------------------------------------------------------------------------
4133    -- GPIO - Register accessor macros
4134    ---------------------------------------------------------------------------- */
4135
4136 /*!
4137  * @addtogroup GPIO_Register_Accessor_Macros GPIO - Register accessor macros
4138  * @{
4139  */
4140
4141
4142 /* GPIO - Register accessors */
4143 #define GPIO_PDOR_REG(base)                      ((base)->PDOR)
4144 #define GPIO_PSOR_REG(base)                      ((base)->PSOR)
4145 #define GPIO_PCOR_REG(base)                      ((base)->PCOR)
4146 #define GPIO_PTOR_REG(base)                      ((base)->PTOR)
4147 #define GPIO_PDIR_REG(base)                      ((base)->PDIR)
4148 #define GPIO_PDDR_REG(base)                      ((base)->PDDR)
4149
4150 /*!
4151  * @}
4152  */ /* end of group GPIO_Register_Accessor_Macros */
4153
4154
4155 /* ----------------------------------------------------------------------------
4156    -- GPIO Register Masks
4157    ---------------------------------------------------------------------------- */
4158
4159 /*!
4160  * @addtogroup GPIO_Register_Masks GPIO Register Masks
4161  * @{
4162  */
4163
4164 /* PDOR Bit Fields */
4165 #define GPIO_PDOR_PDO_MASK                       0xFFFFFFFFu
4166 #define GPIO_PDOR_PDO_SHIFT                      0
4167 #define GPIO_PDOR_PDO(x)                         (((uint32_t)(((uint32_t)(x))<<GPIO_PDOR_PDO_SHIFT))&GPIO_PDOR_PDO_MASK)
4168 /* PSOR Bit Fields */
4169 #define GPIO_PSOR_PTSO_MASK                      0xFFFFFFFFu
4170 #define GPIO_PSOR_PTSO_SHIFT                     0
4171 #define GPIO_PSOR_PTSO(x)                        (((uint32_t)(((uint32_t)(x))<<GPIO_PSOR_PTSO_SHIFT))&GPIO_PSOR_PTSO_MASK)
4172 /* PCOR Bit Fields */
4173 #define GPIO_PCOR_PTCO_MASK                      0xFFFFFFFFu
4174 #define GPIO_PCOR_PTCO_SHIFT                     0
4175 #define GPIO_PCOR_PTCO(x)                        (((uint32_t)(((uint32_t)(x))<<GPIO_PCOR_PTCO_SHIFT))&GPIO_PCOR_PTCO_MASK)
4176 /* PTOR Bit Fields */
4177 #define GPIO_PTOR_PTTO_MASK                      0xFFFFFFFFu
4178 #define GPIO_PTOR_PTTO_SHIFT                     0
4179 #define GPIO_PTOR_PTTO(x)                        (((uint32_t)(((uint32_t)(x))<<GPIO_PTOR_PTTO_SHIFT))&GPIO_PTOR_PTTO_MASK)
4180 /* PDIR Bit Fields */
4181 #define GPIO_PDIR_PDI_MASK                       0xFFFFFFFFu
4182 #define GPIO_PDIR_PDI_SHIFT                      0
4183 #define GPIO_PDIR_PDI(x)                         (((uint32_t)(((uint32_t)(x))<<GPIO_PDIR_PDI_SHIFT))&GPIO_PDIR_PDI_MASK)
4184 /* PDDR Bit Fields */
4185 #define GPIO_PDDR_PDD_MASK                       0xFFFFFFFFu
4186 #define GPIO_PDDR_PDD_SHIFT                      0
4187 #define GPIO_PDDR_PDD(x)                         (((uint32_t)(((uint32_t)(x))<<GPIO_PDDR_PDD_SHIFT))&GPIO_PDDR_PDD_MASK)
4188
4189 /*!
4190  * @}
4191  */ /* end of group GPIO_Register_Masks */
4192
4193
4194 /* GPIO - Peripheral instance base addresses */
4195 /** Peripheral PTA base address */
4196 #define PTA_BASE                                 (0x400FF000u)
4197 /** Peripheral PTA base pointer */
4198 #define PTA                                      ((GPIO_Type *)PTA_BASE)
4199 #define PTA_BASE_PTR                             (PTA)
4200 /** Peripheral PTB base address */
4201 #define PTB_BASE                                 (0x400FF040u)
4202 /** Peripheral PTB base pointer */
4203 #define PTB                                      ((GPIO_Type *)PTB_BASE)
4204 #define PTB_BASE_PTR                             (PTB)
4205 /** Peripheral PTC base address */
4206 #define PTC_BASE                                 (0x400FF080u)
4207 /** Peripheral PTC base pointer */
4208 #define PTC                                      ((GPIO_Type *)PTC_BASE)
4209 #define PTC_BASE_PTR                             (PTC)
4210 /** Peripheral PTD base address */
4211 #define PTD_BASE                                 (0x400FF0C0u)
4212 /** Peripheral PTD base pointer */
4213 #define PTD                                      ((GPIO_Type *)PTD_BASE)
4214 #define PTD_BASE_PTR                             (PTD)
4215 /** Peripheral PTE base address */
4216 #define PTE_BASE                                 (0x400FF100u)
4217 /** Peripheral PTE base pointer */
4218 #define PTE                                      ((GPIO_Type *)PTE_BASE)
4219 #define PTE_BASE_PTR                             (PTE)
4220 /** Array initializer of GPIO peripheral base addresses */
4221 #define GPIO_BASE_ADDRS                          { PTA_BASE, PTB_BASE, PTC_BASE, PTD_BASE, PTE_BASE }
4222 /** Array initializer of GPIO peripheral base pointers */
4223 #define GPIO_BASE_PTRS                           { PTA, PTB, PTC, PTD, PTE }
4224
4225 /* ----------------------------------------------------------------------------
4226    -- GPIO - Register accessor macros
4227    ---------------------------------------------------------------------------- */
4228
4229 /*!
4230  * @addtogroup GPIO_Register_Accessor_Macros GPIO - Register accessor macros
4231  * @{
4232  */
4233
4234
4235 /* GPIO - Register instance definitions */
4236 /* PTA */
4237 #define GPIOA_PDOR                               GPIO_PDOR_REG(PTA)
4238 #define GPIOA_PSOR                               GPIO_PSOR_REG(PTA)
4239 #define GPIOA_PCOR                               GPIO_PCOR_REG(PTA)
4240 #define GPIOA_PTOR                               GPIO_PTOR_REG(PTA)
4241 #define GPIOA_PDIR                               GPIO_PDIR_REG(PTA)
4242 #define GPIOA_PDDR                               GPIO_PDDR_REG(PTA)
4243 /* PTB */
4244 #define GPIOB_PDOR                               GPIO_PDOR_REG(PTB)
4245 #define GPIOB_PSOR                               GPIO_PSOR_REG(PTB)
4246 #define GPIOB_PCOR                               GPIO_PCOR_REG(PTB)
4247 #define GPIOB_PTOR                               GPIO_PTOR_REG(PTB)
4248 #define GPIOB_PDIR                               GPIO_PDIR_REG(PTB)
4249 #define GPIOB_PDDR                               GPIO_PDDR_REG(PTB)
4250 /* PTC */
4251 #define GPIOC_PDOR                               GPIO_PDOR_REG(PTC)
4252 #define GPIOC_PSOR                               GPIO_PSOR_REG(PTC)
4253 #define GPIOC_PCOR                               GPIO_PCOR_REG(PTC)
4254 #define GPIOC_PTOR                               GPIO_PTOR_REG(PTC)
4255 #define GPIOC_PDIR                               GPIO_PDIR_REG(PTC)
4256 #define GPIOC_PDDR                               GPIO_PDDR_REG(PTC)
4257 /* PTD */
4258 #define GPIOD_PDOR                               GPIO_PDOR_REG(PTD)
4259 #define GPIOD_PSOR                               GPIO_PSOR_REG(PTD)
4260 #define GPIOD_PCOR                               GPIO_PCOR_REG(PTD)
4261 #define GPIOD_PTOR                               GPIO_PTOR_REG(PTD)
4262 #define GPIOD_PDIR                               GPIO_PDIR_REG(PTD)
4263 #define GPIOD_PDDR                               GPIO_PDDR_REG(PTD)
4264 /* PTE */
4265 #define GPIOE_PDOR                               GPIO_PDOR_REG(PTE)
4266 #define GPIOE_PSOR                               GPIO_PSOR_REG(PTE)
4267 #define GPIOE_PCOR                               GPIO_PCOR_REG(PTE)
4268 #define GPIOE_PTOR                               GPIO_PTOR_REG(PTE)
4269 #define GPIOE_PDIR                               GPIO_PDIR_REG(PTE)
4270 #define GPIOE_PDDR                               GPIO_PDDR_REG(PTE)
4271
4272 /*!
4273  * @}
4274  */ /* end of group GPIO_Register_Accessor_Macros */
4275
4276
4277 /*!
4278  * @}
4279  */ /* end of group GPIO_Peripheral_Access_Layer */
4280
4281
4282 /* ----------------------------------------------------------------------------
4283    -- I2C Peripheral Access Layer
4284    ---------------------------------------------------------------------------- */
4285
4286 /*!
4287  * @addtogroup I2C_Peripheral_Access_Layer I2C Peripheral Access Layer
4288  * @{
4289  */
4290
4291 /** I2C - Register Layout Typedef */
4292 typedef struct {
4293   __IO uint8_t A1;                                 /**< I2C Address Register 1, offset: 0x0 */
4294   __IO uint8_t F;                                  /**< I2C Frequency Divider register, offset: 0x1 */
4295   __IO uint8_t C1;                                 /**< I2C Control Register 1, offset: 0x2 */
4296   __IO uint8_t S;                                  /**< I2C Status register, offset: 0x3 */
4297   __IO uint8_t D;                                  /**< I2C Data I/O register, offset: 0x4 */
4298   __IO uint8_t C2;                                 /**< I2C Control Register 2, offset: 0x5 */
4299   __IO uint8_t FLT;                                /**< I2C Programmable Input Glitch Filter register, offset: 0x6 */
4300   __IO uint8_t RA;                                 /**< I2C Range Address register, offset: 0x7 */
4301   __IO uint8_t SMB;                                /**< I2C SMBus Control and Status register, offset: 0x8 */
4302   __IO uint8_t A2;                                 /**< I2C Address Register 2, offset: 0x9 */
4303   __IO uint8_t SLTH;                               /**< I2C SCL Low Timeout Register High, offset: 0xA */
4304   __IO uint8_t SLTL;                               /**< I2C SCL Low Timeout Register Low, offset: 0xB */
4305 } I2C_Type, *I2C_MemMapPtr;
4306
4307 /* ----------------------------------------------------------------------------
4308    -- I2C - Register accessor macros
4309    ---------------------------------------------------------------------------- */
4310
4311 /*!
4312  * @addtogroup I2C_Register_Accessor_Macros I2C - Register accessor macros
4313  * @{
4314  */
4315
4316
4317 /* I2C - Register accessors */
4318 #define I2C_A1_REG(base)                         ((base)->A1)
4319 #define I2C_F_REG(base)                          ((base)->F)
4320 #define I2C_C1_REG(base)                         ((base)->C1)
4321 #define I2C_S_REG(base)                          ((base)->S)
4322 #define I2C_D_REG(base)                          ((base)->D)
4323 #define I2C_C2_REG(base)                         ((base)->C2)
4324 #define I2C_FLT_REG(base)                        ((base)->FLT)
4325 #define I2C_RA_REG(base)                         ((base)->RA)
4326 #define I2C_SMB_REG(base)                        ((base)->SMB)
4327 #define I2C_A2_REG(base)                         ((base)->A2)
4328 #define I2C_SLTH_REG(base)                       ((base)->SLTH)
4329 #define I2C_SLTL_REG(base)                       ((base)->SLTL)
4330
4331 /*!
4332  * @}
4333  */ /* end of group I2C_Register_Accessor_Macros */
4334
4335
4336 /* ----------------------------------------------------------------------------
4337    -- I2C Register Masks
4338    ---------------------------------------------------------------------------- */
4339
4340 /*!
4341  * @addtogroup I2C_Register_Masks I2C Register Masks
4342  * @{
4343  */
4344
4345 /* A1 Bit Fields */
4346 #define I2C_A1_AD_MASK                           0xFEu
4347 #define I2C_A1_AD_SHIFT                          1
4348 #define I2C_A1_AD(x)                             (((uint8_t)(((uint8_t)(x))<<I2C_A1_AD_SHIFT))&I2C_A1_AD_MASK)
4349 /* F Bit Fields */
4350 #define I2C_F_ICR_MASK                           0x3Fu
4351 #define I2C_F_ICR_SHIFT                          0
4352 #define I2C_F_ICR(x)                             (((uint8_t)(((uint8_t)(x))<<I2C_F_ICR_SHIFT))&I2C_F_ICR_MASK)
4353 #define I2C_F_MULT_MASK                          0xC0u
4354 #define I2C_F_MULT_SHIFT                         6
4355 #define I2C_F_MULT(x)                            (((uint8_t)(((uint8_t)(x))<<I2C_F_MULT_SHIFT))&I2C_F_MULT_MASK)
4356 /* C1 Bit Fields */
4357 #define I2C_C1_DMAEN_MASK                        0x1u
4358 #define I2C_C1_DMAEN_SHIFT                       0
4359 #define I2C_C1_WUEN_MASK                         0x2u
4360 #define I2C_C1_WUEN_SHIFT                        1
4361 #define I2C_C1_RSTA_MASK                         0x4u
4362 #define I2C_C1_RSTA_SHIFT                        2
4363 #define I2C_C1_TXAK_MASK                         0x8u
4364 #define I2C_C1_TXAK_SHIFT                        3
4365 #define I2C_C1_TX_MASK                           0x10u
4366 #define I2C_C1_TX_SHIFT                          4
4367 #define I2C_C1_MST_MASK                          0x20u
4368 #define I2C_C1_MST_SHIFT                         5
4369 #define I2C_C1_IICIE_MASK                        0x40u
4370 #define I2C_C1_IICIE_SHIFT                       6
4371 #define I2C_C1_IICEN_MASK                        0x80u
4372 #define I2C_C1_IICEN_SHIFT                       7
4373 /* S Bit Fields */
4374 #define I2C_S_RXAK_MASK                          0x1u
4375 #define I2C_S_RXAK_SHIFT                         0
4376 #define I2C_S_IICIF_MASK                         0x2u
4377 #define I2C_S_IICIF_SHIFT                        1
4378 #define I2C_S_SRW_MASK                           0x4u
4379 #define I2C_S_SRW_SHIFT                          2
4380 #define I2C_S_RAM_MASK                           0x8u
4381 #define I2C_S_RAM_SHIFT                          3
4382 #define I2C_S_ARBL_MASK                          0x10u
4383 #define I2C_S_ARBL_SHIFT                         4
4384 #define I2C_S_BUSY_MASK                          0x20u
4385 #define I2C_S_BUSY_SHIFT                         5
4386 #define I2C_S_IAAS_MASK                          0x40u
4387 #define I2C_S_IAAS_SHIFT                         6
4388 #define I2C_S_TCF_MASK                           0x80u
4389 #define I2C_S_TCF_SHIFT                          7
4390 /* D Bit Fields */
4391 #define I2C_D_DATA_MASK                          0xFFu
4392 #define I2C_D_DATA_SHIFT                         0
4393 #define I2C_D_DATA(x)                            (((uint8_t)(((uint8_t)(x))<<I2C_D_DATA_SHIFT))&I2C_D_DATA_MASK)
4394 /* C2 Bit Fields */
4395 #define I2C_C2_AD_MASK                           0x7u
4396 #define I2C_C2_AD_SHIFT                          0
4397 #define I2C_C2_AD(x)                             (((uint8_t)(((uint8_t)(x))<<I2C_C2_AD_SHIFT))&I2C_C2_AD_MASK)
4398 #define I2C_C2_RMEN_MASK                         0x8u
4399 #define I2C_C2_RMEN_SHIFT                        3
4400 #define I2C_C2_SBRC_MASK                         0x10u
4401 #define I2C_C2_SBRC_SHIFT                        4
4402 #define I2C_C2_HDRS_MASK                         0x20u
4403 #define I2C_C2_HDRS_SHIFT                        5
4404 #define I2C_C2_ADEXT_MASK                        0x40u
4405 #define I2C_C2_ADEXT_SHIFT                       6
4406 #define I2C_C2_GCAEN_MASK                        0x80u
4407 #define I2C_C2_GCAEN_SHIFT                       7
4408 /* FLT Bit Fields */
4409 #define I2C_FLT_FLT_MASK                         0xFu
4410 #define I2C_FLT_FLT_SHIFT                        0
4411 #define I2C_FLT_FLT(x)                           (((uint8_t)(((uint8_t)(x))<<I2C_FLT_FLT_SHIFT))&I2C_FLT_FLT_MASK)
4412 #define I2C_FLT_STARTF_MASK                      0x10u
4413 #define I2C_FLT_STARTF_SHIFT                     4
4414 #define I2C_FLT_SSIE_MASK                        0x20u
4415 #define I2C_FLT_SSIE_SHIFT                       5
4416 #define I2C_FLT_STOPF_MASK                       0x40u
4417 #define I2C_FLT_STOPF_SHIFT                      6
4418 #define I2C_FLT_SHEN_MASK                        0x80u
4419 #define I2C_FLT_SHEN_SHIFT                       7
4420 /* RA Bit Fields */
4421 #define I2C_RA_RAD_MASK                          0xFEu
4422 #define I2C_RA_RAD_SHIFT                         1
4423 #define I2C_RA_RAD(x)                            (((uint8_t)(((uint8_t)(x))<<I2C_RA_RAD_SHIFT))&I2C_RA_RAD_MASK)
4424 /* SMB Bit Fields */
4425 #define I2C_SMB_SHTF2IE_MASK                     0x1u
4426 #define I2C_SMB_SHTF2IE_SHIFT                    0
4427 #define I2C_SMB_SHTF2_MASK                       0x2u
4428 #define I2C_SMB_SHTF2_SHIFT                      1
4429 #define I2C_SMB_SHTF1_MASK                       0x4u
4430 #define I2C_SMB_SHTF1_SHIFT                      2
4431 #define I2C_SMB_SLTF_MASK                        0x8u
4432 #define I2C_SMB_SLTF_SHIFT                       3
4433 #define I2C_SMB_TCKSEL_MASK                      0x10u
4434 #define I2C_SMB_TCKSEL_SHIFT                     4
4435 #define I2C_SMB_SIICAEN_MASK                     0x20u
4436 #define I2C_SMB_SIICAEN_SHIFT                    5
4437 #define I2C_SMB_ALERTEN_MASK                     0x40u
4438 #define I2C_SMB_ALERTEN_SHIFT                    6
4439 #define I2C_SMB_FACK_MASK                        0x80u
4440 #define I2C_SMB_FACK_SHIFT                       7
4441 /* A2 Bit Fields */
4442 #define I2C_A2_SAD_MASK                          0xFEu
4443 #define I2C_A2_SAD_SHIFT                         1
4444 #define I2C_A2_SAD(x)                            (((uint8_t)(((uint8_t)(x))<<I2C_A2_SAD_SHIFT))&I2C_A2_SAD_MASK)
4445 /* SLTH Bit Fields */
4446 #define I2C_SLTH_SSLT_MASK                       0xFFu
4447 #define I2C_SLTH_SSLT_SHIFT                      0
4448 #define I2C_SLTH_SSLT(x)                         (((uint8_t)(((uint8_t)(x))<<I2C_SLTH_SSLT_SHIFT))&I2C_SLTH_SSLT_MASK)
4449 /* SLTL Bit Fields */
4450 #define I2C_SLTL_SSLT_MASK                       0xFFu
4451 #define I2C_SLTL_SSLT_SHIFT                      0
4452 #define I2C_SLTL_SSLT(x)                         (((uint8_t)(((uint8_t)(x))<<I2C_SLTL_SSLT_SHIFT))&I2C_SLTL_SSLT_MASK)
4453
4454 /*!
4455  * @}
4456  */ /* end of group I2C_Register_Masks */
4457
4458
4459 /* I2C - Peripheral instance base addresses */
4460 /** Peripheral I2C0 base address */
4461 #define I2C0_BASE                                (0x40066000u)
4462 /** Peripheral I2C0 base pointer */
4463 #define I2C0                                     ((I2C_Type *)I2C0_BASE)
4464 #define I2C0_BASE_PTR                            (I2C0)
4465 /** Peripheral I2C1 base address */
4466 #define I2C1_BASE                                (0x40067000u)
4467 /** Peripheral I2C1 base pointer */
4468 #define I2C1                                     ((I2C_Type *)I2C1_BASE)
4469 #define I2C1_BASE_PTR                            (I2C1)
4470 /** Array initializer of I2C peripheral base addresses */
4471 #define I2C_BASE_ADDRS                           { I2C0_BASE, I2C1_BASE }
4472 /** Array initializer of I2C peripheral base pointers */
4473 #define I2C_BASE_PTRS                            { I2C0, I2C1 }
4474 /** Interrupt vectors for the I2C peripheral type */
4475 #define I2C_IRQS                                 { I2C0_IRQn, I2C1_IRQn }
4476
4477 /* ----------------------------------------------------------------------------
4478    -- I2C - Register accessor macros
4479    ---------------------------------------------------------------------------- */
4480
4481 /*!
4482  * @addtogroup I2C_Register_Accessor_Macros I2C - Register accessor macros
4483  * @{
4484  */
4485
4486
4487 /* I2C - Register instance definitions */
4488 /* I2C0 */
4489 #define I2C0_A1                                  I2C_A1_REG(I2C0)
4490 #define I2C0_F                                   I2C_F_REG(I2C0)
4491 #define I2C0_C1                                  I2C_C1_REG(I2C0)
4492 #define I2C0_S                                   I2C_S_REG(I2C0)
4493 #define I2C0_D                                   I2C_D_REG(I2C0)
4494 #define I2C0_C2                                  I2C_C2_REG(I2C0)
4495 #define I2C0_FLT                                 I2C_FLT_REG(I2C0)
4496 #define I2C0_RA                                  I2C_RA_REG(I2C0)
4497 #define I2C0_SMB                                 I2C_SMB_REG(I2C0)
4498 #define I2C0_A2                                  I2C_A2_REG(I2C0)
4499 #define I2C0_SLTH                                I2C_SLTH_REG(I2C0)
4500 #define I2C0_SLTL                                I2C_SLTL_REG(I2C0)
4501 /* I2C1 */
4502 #define I2C1_A1                                  I2C_A1_REG(I2C1)
4503 #define I2C1_F                                   I2C_F_REG(I2C1)
4504 #define I2C1_C1                                  I2C_C1_REG(I2C1)
4505 #define I2C1_S                                   I2C_S_REG(I2C1)
4506 #define I2C1_D                                   I2C_D_REG(I2C1)
4507 #define I2C1_C2                                  I2C_C2_REG(I2C1)
4508 #define I2C1_FLT                                 I2C_FLT_REG(I2C1)
4509 #define I2C1_RA                                  I2C_RA_REG(I2C1)
4510 #define I2C1_SMB                                 I2C_SMB_REG(I2C1)
4511 #define I2C1_A2                                  I2C_A2_REG(I2C1)
4512 #define I2C1_SLTH                                I2C_SLTH_REG(I2C1)
4513 #define I2C1_SLTL                                I2C_SLTL_REG(I2C1)
4514
4515 /*!
4516  * @}
4517  */ /* end of group I2C_Register_Accessor_Macros */
4518
4519
4520 /*!
4521  * @}
4522  */ /* end of group I2C_Peripheral_Access_Layer */
4523
4524
4525 /* ----------------------------------------------------------------------------
4526    -- I2S Peripheral Access Layer
4527    ---------------------------------------------------------------------------- */
4528
4529 /*!
4530  * @addtogroup I2S_Peripheral_Access_Layer I2S Peripheral Access Layer
4531  * @{
4532  */
4533
4534 /** I2S - Register Layout Typedef */
4535 typedef struct {
4536   __IO uint32_t TCSR;                              /**< SAI Transmit Control Register, offset: 0x0 */
4537   __IO uint32_t TCR1;                              /**< SAI Transmit Configuration 1 Register, offset: 0x4 */
4538   __IO uint32_t TCR2;                              /**< SAI Transmit Configuration 2 Register, offset: 0x8 */
4539   __IO uint32_t TCR3;                              /**< SAI Transmit Configuration 3 Register, offset: 0xC */
4540   __IO uint32_t TCR4;                              /**< SAI Transmit Configuration 4 Register, offset: 0x10 */
4541   __IO uint32_t TCR5;                              /**< SAI Transmit Configuration 5 Register, offset: 0x14 */
4542        uint8_t RESERVED_0[8];
4543   __O  uint32_t TDR[1];                            /**< SAI Transmit Data Register, array offset: 0x20, array step: 0x4 */
4544        uint8_t RESERVED_1[28];
4545   __I  uint32_t TFR[1];                            /**< SAI Transmit FIFO Register, array offset: 0x40, array step: 0x4 */
4546        uint8_t RESERVED_2[28];
4547   __IO uint32_t TMR;                               /**< SAI Transmit Mask Register, offset: 0x60 */
4548        uint8_t RESERVED_3[28];
4549   __IO uint32_t RCSR;                              /**< SAI Receive Control Register, offset: 0x80 */
4550   __IO uint32_t RCR1;                              /**< SAI Receive Configuration 1 Register, offset: 0x84 */
4551   __IO uint32_t RCR2;                              /**< SAI Receive Configuration 2 Register, offset: 0x88 */
4552   __IO uint32_t RCR3;                              /**< SAI Receive Configuration 3 Register, offset: 0x8C */
4553   __IO uint32_t RCR4;                              /**< SAI Receive Configuration 4 Register, offset: 0x90 */
4554   __IO uint32_t RCR5;                              /**< SAI Receive Configuration 5 Register, offset: 0x94 */
4555        uint8_t RESERVED_4[8];
4556   __I  uint32_t RDR[1];                            /**< SAI Receive Data Register, array offset: 0xA0, array step: 0x4 */
4557        uint8_t RESERVED_5[28];
4558   __I  uint32_t RFR[1];                            /**< SAI Receive FIFO Register, array offset: 0xC0, array step: 0x4 */
4559        uint8_t RESERVED_6[28];
4560   __IO uint32_t RMR;                               /**< SAI Receive Mask Register, offset: 0xE0 */
4561        uint8_t RESERVED_7[28];
4562   __IO uint32_t MCR;                               /**< SAI MCLK Control Register, offset: 0x100 */
4563   __IO uint32_t MDR;                               /**< SAI MCLK Divide Register, offset: 0x104 */
4564 } I2S_Type, *I2S_MemMapPtr;
4565
4566 /* ----------------------------------------------------------------------------
4567    -- I2S - Register accessor macros
4568    ---------------------------------------------------------------------------- */
4569
4570 /*!
4571  * @addtogroup I2S_Register_Accessor_Macros I2S - Register accessor macros
4572  * @{
4573  */
4574
4575
4576 /* I2S - Register accessors */
4577 #define I2S_TCSR_REG(base)                       ((base)->TCSR)
4578 #define I2S_TCR1_REG(base)                       ((base)->TCR1)
4579 #define I2S_TCR2_REG(base)                       ((base)->TCR2)
4580 #define I2S_TCR3_REG(base)                       ((base)->TCR3)
4581 #define I2S_TCR4_REG(base)                       ((base)->TCR4)
4582 #define I2S_TCR5_REG(base)                       ((base)->TCR5)
4583 #define I2S_TDR_REG(base,index)                  ((base)->TDR[index])
4584 #define I2S_TFR_REG(base,index)                  ((base)->TFR[index])
4585 #define I2S_TMR_REG(base)                        ((base)->TMR)
4586 #define I2S_RCSR_REG(base)                       ((base)->RCSR)
4587 #define I2S_RCR1_REG(base)                       ((base)->RCR1)
4588 #define I2S_RCR2_REG(base)                       ((base)->RCR2)
4589 #define I2S_RCR3_REG(base)                       ((base)->RCR3)
4590 #define I2S_RCR4_REG(base)                       ((base)->RCR4)
4591 #define I2S_RCR5_REG(base)                       ((base)->RCR5)
4592 #define I2S_RDR_REG(base,index)                  ((base)->RDR[index])
4593 #define I2S_RFR_REG(base,index)                  ((base)->RFR[index])
4594 #define I2S_RMR_REG(base)                        ((base)->RMR)
4595 #define I2S_MCR_REG(base)                        ((base)->MCR)
4596 #define I2S_MDR_REG(base)                        ((base)->MDR)
4597
4598 /*!
4599  * @}
4600  */ /* end of group I2S_Register_Accessor_Macros */
4601
4602
4603 /* ----------------------------------------------------------------------------
4604    -- I2S Register Masks
4605    ---------------------------------------------------------------------------- */
4606
4607 /*!
4608  * @addtogroup I2S_Register_Masks I2S Register Masks
4609  * @{
4610  */
4611
4612 /* TCSR Bit Fields */
4613 #define I2S_TCSR_FRDE_MASK                       0x1u
4614 #define I2S_TCSR_FRDE_SHIFT                      0
4615 #define I2S_TCSR_FWDE_MASK                       0x2u
4616 #define I2S_TCSR_FWDE_SHIFT                      1
4617 #define I2S_TCSR_FRIE_MASK                       0x100u
4618 #define I2S_TCSR_FRIE_SHIFT                      8
4619 #define I2S_TCSR_FWIE_MASK                       0x200u
4620 #define I2S_TCSR_FWIE_SHIFT                      9
4621 #define I2S_TCSR_FEIE_MASK                       0x400u
4622 #define I2S_TCSR_FEIE_SHIFT                      10
4623 #define I2S_TCSR_SEIE_MASK                       0x800u
4624 #define I2S_TCSR_SEIE_SHIFT                      11
4625 #define I2S_TCSR_WSIE_MASK                       0x1000u
4626 #define I2S_TCSR_WSIE_SHIFT                      12
4627 #define I2S_TCSR_FRF_MASK                        0x10000u
4628 #define I2S_TCSR_FRF_SHIFT                       16
4629 #define I2S_TCSR_FWF_MASK                        0x20000u
4630 #define I2S_TCSR_FWF_SHIFT                       17
4631 #define I2S_TCSR_FEF_MASK                        0x40000u
4632 #define I2S_TCSR_FEF_SHIFT                       18
4633 #define I2S_TCSR_SEF_MASK                        0x80000u
4634 #define I2S_TCSR_SEF_SHIFT                       19
4635 #define I2S_TCSR_WSF_MASK                        0x100000u
4636 #define I2S_TCSR_WSF_SHIFT                       20
4637 #define I2S_TCSR_SR_MASK                         0x1000000u
4638 #define I2S_TCSR_SR_SHIFT                        24
4639 #define I2S_TCSR_FR_MASK                         0x2000000u
4640 #define I2S_TCSR_FR_SHIFT                        25
4641 #define I2S_TCSR_BCE_MASK                        0x10000000u
4642 #define I2S_TCSR_BCE_SHIFT                       28
4643 #define I2S_TCSR_DBGE_MASK                       0x20000000u
4644 #define I2S_TCSR_DBGE_SHIFT                      29
4645 #define I2S_TCSR_STOPE_MASK                      0x40000000u
4646 #define I2S_TCSR_STOPE_SHIFT                     30
4647 #define I2S_TCSR_TE_MASK                         0x80000000u
4648 #define I2S_TCSR_TE_SHIFT                        31
4649 /* TCR1 Bit Fields */
4650 #define I2S_TCR1_TFW_MASK                        0x7u
4651 #define I2S_TCR1_TFW_SHIFT                       0
4652 #define I2S_TCR1_TFW(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_TCR1_TFW_SHIFT))&I2S_TCR1_TFW_MASK)
4653 /* TCR2 Bit Fields */
4654 #define I2S_TCR2_DIV_MASK                        0xFFu
4655 #define I2S_TCR2_DIV_SHIFT                       0
4656 #define I2S_TCR2_DIV(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_TCR2_DIV_SHIFT))&I2S_TCR2_DIV_MASK)
4657 #define I2S_TCR2_BCD_MASK                        0x1000000u
4658 #define I2S_TCR2_BCD_SHIFT                       24
4659 #define I2S_TCR2_BCP_MASK                        0x2000000u
4660 #define I2S_TCR2_BCP_SHIFT                       25
4661 #define I2S_TCR2_MSEL_MASK                       0xC000000u
4662 #define I2S_TCR2_MSEL_SHIFT                      26
4663 #define I2S_TCR2_MSEL(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_TCR2_MSEL_SHIFT))&I2S_TCR2_MSEL_MASK)
4664 #define I2S_TCR2_BCI_MASK                        0x10000000u
4665 #define I2S_TCR2_BCI_SHIFT                       28
4666 #define I2S_TCR2_BCS_MASK                        0x20000000u
4667 #define I2S_TCR2_BCS_SHIFT                       29
4668 #define I2S_TCR2_SYNC_MASK                       0xC0000000u
4669 #define I2S_TCR2_SYNC_SHIFT                      30
4670 #define I2S_TCR2_SYNC(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_TCR2_SYNC_SHIFT))&I2S_TCR2_SYNC_MASK)
4671 /* TCR3 Bit Fields */
4672 #define I2S_TCR3_WDFL_MASK                       0xFu
4673 #define I2S_TCR3_WDFL_SHIFT                      0
4674 #define I2S_TCR3_WDFL(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_TCR3_WDFL_SHIFT))&I2S_TCR3_WDFL_MASK)
4675 #define I2S_TCR3_TCE_MASK                        0x10000u
4676 #define I2S_TCR3_TCE_SHIFT                       16
4677 /* TCR4 Bit Fields */
4678 #define I2S_TCR4_FSD_MASK                        0x1u
4679 #define I2S_TCR4_FSD_SHIFT                       0
4680 #define I2S_TCR4_FSP_MASK                        0x2u
4681 #define I2S_TCR4_FSP_SHIFT                       1
4682 #define I2S_TCR4_ONDEM_MASK                      0x4u
4683 #define I2S_TCR4_ONDEM_SHIFT                     2
4684 #define I2S_TCR4_FSE_MASK                        0x8u
4685 #define I2S_TCR4_FSE_SHIFT                       3
4686 #define I2S_TCR4_MF_MASK                         0x10u
4687 #define I2S_TCR4_MF_SHIFT                        4
4688 #define I2S_TCR4_SYWD_MASK                       0x1F00u
4689 #define I2S_TCR4_SYWD_SHIFT                      8
4690 #define I2S_TCR4_SYWD(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_TCR4_SYWD_SHIFT))&I2S_TCR4_SYWD_MASK)
4691 #define I2S_TCR4_FRSZ_MASK                       0xF0000u
4692 #define I2S_TCR4_FRSZ_SHIFT                      16
4693 #define I2S_TCR4_FRSZ(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_TCR4_FRSZ_SHIFT))&I2S_TCR4_FRSZ_MASK)
4694 #define I2S_TCR4_FPACK_MASK                      0x3000000u
4695 #define I2S_TCR4_FPACK_SHIFT                     24
4696 #define I2S_TCR4_FPACK(x)                        (((uint32_t)(((uint32_t)(x))<<I2S_TCR4_FPACK_SHIFT))&I2S_TCR4_FPACK_MASK)
4697 #define I2S_TCR4_FCONT_MASK                      0x10000000u
4698 #define I2S_TCR4_FCONT_SHIFT                     28
4699 /* TCR5 Bit Fields */
4700 #define I2S_TCR5_FBT_MASK                        0x1F00u
4701 #define I2S_TCR5_FBT_SHIFT                       8
4702 #define I2S_TCR5_FBT(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_TCR5_FBT_SHIFT))&I2S_TCR5_FBT_MASK)
4703 #define I2S_TCR5_W0W_MASK                        0x1F0000u
4704 #define I2S_TCR5_W0W_SHIFT                       16
4705 #define I2S_TCR5_W0W(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_TCR5_W0W_SHIFT))&I2S_TCR5_W0W_MASK)
4706 #define I2S_TCR5_WNW_MASK                        0x1F000000u
4707 #define I2S_TCR5_WNW_SHIFT                       24
4708 #define I2S_TCR5_WNW(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_TCR5_WNW_SHIFT))&I2S_TCR5_WNW_MASK)
4709 /* TDR Bit Fields */
4710 #define I2S_TDR_TDR_MASK                         0xFFFFFFFFu
4711 #define I2S_TDR_TDR_SHIFT                        0
4712 #define I2S_TDR_TDR(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_TDR_TDR_SHIFT))&I2S_TDR_TDR_MASK)
4713 /* TFR Bit Fields */
4714 #define I2S_TFR_RFP_MASK                         0xFu
4715 #define I2S_TFR_RFP_SHIFT                        0
4716 #define I2S_TFR_RFP(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_TFR_RFP_SHIFT))&I2S_TFR_RFP_MASK)
4717 #define I2S_TFR_WFP_MASK                         0xF0000u
4718 #define I2S_TFR_WFP_SHIFT                        16
4719 #define I2S_TFR_WFP(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_TFR_WFP_SHIFT))&I2S_TFR_WFP_MASK)
4720 /* TMR Bit Fields */
4721 #define I2S_TMR_TWM_MASK                         0xFFFFu
4722 #define I2S_TMR_TWM_SHIFT                        0
4723 #define I2S_TMR_TWM(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_TMR_TWM_SHIFT))&I2S_TMR_TWM_MASK)
4724 /* RCSR Bit Fields */
4725 #define I2S_RCSR_FRDE_MASK                       0x1u
4726 #define I2S_RCSR_FRDE_SHIFT                      0
4727 #define I2S_RCSR_FWDE_MASK                       0x2u
4728 #define I2S_RCSR_FWDE_SHIFT                      1
4729 #define I2S_RCSR_FRIE_MASK                       0x100u
4730 #define I2S_RCSR_FRIE_SHIFT                      8
4731 #define I2S_RCSR_FWIE_MASK                       0x200u
4732 #define I2S_RCSR_FWIE_SHIFT                      9
4733 #define I2S_RCSR_FEIE_MASK                       0x400u
4734 #define I2S_RCSR_FEIE_SHIFT                      10
4735 #define I2S_RCSR_SEIE_MASK                       0x800u
4736 #define I2S_RCSR_SEIE_SHIFT                      11
4737 #define I2S_RCSR_WSIE_MASK                       0x1000u
4738 #define I2S_RCSR_WSIE_SHIFT                      12
4739 #define I2S_RCSR_FRF_MASK                        0x10000u
4740 #define I2S_RCSR_FRF_SHIFT                       16
4741 #define I2S_RCSR_FWF_MASK                        0x20000u
4742 #define I2S_RCSR_FWF_SHIFT                       17
4743 #define I2S_RCSR_FEF_MASK                        0x40000u
4744 #define I2S_RCSR_FEF_SHIFT                       18
4745 #define I2S_RCSR_SEF_MASK                        0x80000u
4746 #define I2S_RCSR_SEF_SHIFT                       19
4747 #define I2S_RCSR_WSF_MASK                        0x100000u
4748 #define I2S_RCSR_WSF_SHIFT                       20
4749 #define I2S_RCSR_SR_MASK                         0x1000000u
4750 #define I2S_RCSR_SR_SHIFT                        24
4751 #define I2S_RCSR_FR_MASK                         0x2000000u
4752 #define I2S_RCSR_FR_SHIFT                        25
4753 #define I2S_RCSR_BCE_MASK                        0x10000000u
4754 #define I2S_RCSR_BCE_SHIFT                       28
4755 #define I2S_RCSR_DBGE_MASK                       0x20000000u
4756 #define I2S_RCSR_DBGE_SHIFT                      29
4757 #define I2S_RCSR_STOPE_MASK                      0x40000000u
4758 #define I2S_RCSR_STOPE_SHIFT                     30
4759 #define I2S_RCSR_RE_MASK                         0x80000000u
4760 #define I2S_RCSR_RE_SHIFT                        31
4761 /* RCR1 Bit Fields */
4762 #define I2S_RCR1_RFW_MASK                        0x7u
4763 #define I2S_RCR1_RFW_SHIFT                       0
4764 #define I2S_RCR1_RFW(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_RCR1_RFW_SHIFT))&I2S_RCR1_RFW_MASK)
4765 /* RCR2 Bit Fields */
4766 #define I2S_RCR2_DIV_MASK                        0xFFu
4767 #define I2S_RCR2_DIV_SHIFT                       0
4768 #define I2S_RCR2_DIV(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_RCR2_DIV_SHIFT))&I2S_RCR2_DIV_MASK)
4769 #define I2S_RCR2_BCD_MASK                        0x1000000u
4770 #define I2S_RCR2_BCD_SHIFT                       24
4771 #define I2S_RCR2_BCP_MASK                        0x2000000u
4772 #define I2S_RCR2_BCP_SHIFT                       25
4773 #define I2S_RCR2_MSEL_MASK                       0xC000000u
4774 #define I2S_RCR2_MSEL_SHIFT                      26
4775 #define I2S_RCR2_MSEL(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_RCR2_MSEL_SHIFT))&I2S_RCR2_MSEL_MASK)
4776 #define I2S_RCR2_BCI_MASK                        0x10000000u
4777 #define I2S_RCR2_BCI_SHIFT                       28
4778 #define I2S_RCR2_BCS_MASK                        0x20000000u
4779 #define I2S_RCR2_BCS_SHIFT                       29
4780 #define I2S_RCR2_SYNC_MASK                       0xC0000000u
4781 #define I2S_RCR2_SYNC_SHIFT                      30
4782 #define I2S_RCR2_SYNC(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_RCR2_SYNC_SHIFT))&I2S_RCR2_SYNC_MASK)
4783 /* RCR3 Bit Fields */
4784 #define I2S_RCR3_WDFL_MASK                       0xFu
4785 #define I2S_RCR3_WDFL_SHIFT                      0
4786 #define I2S_RCR3_WDFL(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_RCR3_WDFL_SHIFT))&I2S_RCR3_WDFL_MASK)
4787 #define I2S_RCR3_RCE_MASK                        0x10000u
4788 #define I2S_RCR3_RCE_SHIFT                       16
4789 /* RCR4 Bit Fields */
4790 #define I2S_RCR4_FSD_MASK                        0x1u
4791 #define I2S_RCR4_FSD_SHIFT                       0
4792 #define I2S_RCR4_FSP_MASK                        0x2u
4793 #define I2S_RCR4_FSP_SHIFT                       1
4794 #define I2S_RCR4_ONDEM_MASK                      0x4u
4795 #define I2S_RCR4_ONDEM_SHIFT                     2
4796 #define I2S_RCR4_FSE_MASK                        0x8u
4797 #define I2S_RCR4_FSE_SHIFT                       3
4798 #define I2S_RCR4_MF_MASK                         0x10u
4799 #define I2S_RCR4_MF_SHIFT                        4
4800 #define I2S_RCR4_SYWD_MASK                       0x1F00u
4801 #define I2S_RCR4_SYWD_SHIFT                      8
4802 #define I2S_RCR4_SYWD(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_RCR4_SYWD_SHIFT))&I2S_RCR4_SYWD_MASK)
4803 #define I2S_RCR4_FRSZ_MASK                       0xF0000u
4804 #define I2S_RCR4_FRSZ_SHIFT                      16
4805 #define I2S_RCR4_FRSZ(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_RCR4_FRSZ_SHIFT))&I2S_RCR4_FRSZ_MASK)
4806 #define I2S_RCR4_FPACK_MASK                      0x3000000u
4807 #define I2S_RCR4_FPACK_SHIFT                     24
4808 #define I2S_RCR4_FPACK(x)                        (((uint32_t)(((uint32_t)(x))<<I2S_RCR4_FPACK_SHIFT))&I2S_RCR4_FPACK_MASK)
4809 #define I2S_RCR4_FCONT_MASK                      0x10000000u
4810 #define I2S_RCR4_FCONT_SHIFT                     28
4811 /* RCR5 Bit Fields */
4812 #define I2S_RCR5_FBT_MASK                        0x1F00u
4813 #define I2S_RCR5_FBT_SHIFT                       8
4814 #define I2S_RCR5_FBT(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_RCR5_FBT_SHIFT))&I2S_RCR5_FBT_MASK)
4815 #define I2S_RCR5_W0W_MASK                        0x1F0000u
4816 #define I2S_RCR5_W0W_SHIFT                       16
4817 #define I2S_RCR5_W0W(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_RCR5_W0W_SHIFT))&I2S_RCR5_W0W_MASK)
4818 #define I2S_RCR5_WNW_MASK                        0x1F000000u
4819 #define I2S_RCR5_WNW_SHIFT                       24
4820 #define I2S_RCR5_WNW(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_RCR5_WNW_SHIFT))&I2S_RCR5_WNW_MASK)
4821 /* RDR Bit Fields */
4822 #define I2S_RDR_RDR_MASK                         0xFFFFFFFFu
4823 #define I2S_RDR_RDR_SHIFT                        0
4824 #define I2S_RDR_RDR(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_RDR_RDR_SHIFT))&I2S_RDR_RDR_MASK)
4825 /* RFR Bit Fields */
4826 #define I2S_RFR_RFP_MASK                         0xFu
4827 #define I2S_RFR_RFP_SHIFT                        0
4828 #define I2S_RFR_RFP(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_RFR_RFP_SHIFT))&I2S_RFR_RFP_MASK)
4829 #define I2S_RFR_WFP_MASK                         0xF0000u
4830 #define I2S_RFR_WFP_SHIFT                        16
4831 #define I2S_RFR_WFP(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_RFR_WFP_SHIFT))&I2S_RFR_WFP_MASK)
4832 /* RMR Bit Fields */
4833 #define I2S_RMR_RWM_MASK                         0xFFFFu
4834 #define I2S_RMR_RWM_SHIFT                        0
4835 #define I2S_RMR_RWM(x)                           (((uint32_t)(((uint32_t)(x))<<I2S_RMR_RWM_SHIFT))&I2S_RMR_RWM_MASK)
4836 /* MCR Bit Fields */
4837 #define I2S_MCR_MICS_MASK                        0x3000000u
4838 #define I2S_MCR_MICS_SHIFT                       24
4839 #define I2S_MCR_MICS(x)                          (((uint32_t)(((uint32_t)(x))<<I2S_MCR_MICS_SHIFT))&I2S_MCR_MICS_MASK)
4840 #define I2S_MCR_MOE_MASK                         0x40000000u
4841 #define I2S_MCR_MOE_SHIFT                        30
4842 #define I2S_MCR_DUF_MASK                         0x80000000u
4843 #define I2S_MCR_DUF_SHIFT                        31
4844 /* MDR Bit Fields */
4845 #define I2S_MDR_DIVIDE_MASK                      0xFFFu
4846 #define I2S_MDR_DIVIDE_SHIFT                     0
4847 #define I2S_MDR_DIVIDE(x)                        (((uint32_t)(((uint32_t)(x))<<I2S_MDR_DIVIDE_SHIFT))&I2S_MDR_DIVIDE_MASK)
4848 #define I2S_MDR_FRACT_MASK                       0xFF000u
4849 #define I2S_MDR_FRACT_SHIFT                      12
4850 #define I2S_MDR_FRACT(x)                         (((uint32_t)(((uint32_t)(x))<<I2S_MDR_FRACT_SHIFT))&I2S_MDR_FRACT_MASK)
4851
4852 /*!
4853  * @}
4854  */ /* end of group I2S_Register_Masks */
4855
4856
4857 /* I2S - Peripheral instance base addresses */
4858 /** Peripheral I2S0 base address */
4859 #define I2S0_BASE                                (0x4002F000u)
4860 /** Peripheral I2S0 base pointer */
4861 #define I2S0                                     ((I2S_Type *)I2S0_BASE)
4862 #define I2S0_BASE_PTR                            (I2S0)
4863 /** Array initializer of I2S peripheral base addresses */
4864 #define I2S_BASE_ADDRS                           { I2S0_BASE }
4865 /** Array initializer of I2S peripheral base pointers */
4866 #define I2S_BASE_PTRS                            { I2S0 }
4867 /** Interrupt vectors for the I2S peripheral type */
4868 #define I2S_RX_IRQS                              { I2S0_Rx_IRQn }
4869 #define I2S_TX_IRQS                              { I2S0_Tx_IRQn }
4870
4871 /* ----------------------------------------------------------------------------
4872    -- I2S - Register accessor macros
4873    ---------------------------------------------------------------------------- */
4874
4875 /*!
4876  * @addtogroup I2S_Register_Accessor_Macros I2S - Register accessor macros
4877  * @{
4878  */
4879
4880
4881 /* I2S - Register instance definitions */
4882 /* I2S0 */
4883 #define I2S0_TCSR                                I2S_TCSR_REG(I2S0)
4884 #define I2S0_TCR1                                I2S_TCR1_REG(I2S0)
4885 #define I2S0_TCR2                                I2S_TCR2_REG(I2S0)
4886 #define I2S0_TCR3                                I2S_TCR3_REG(I2S0)
4887 #define I2S0_TCR4                                I2S_TCR4_REG(I2S0)
4888 #define I2S0_TCR5                                I2S_TCR5_REG(I2S0)
4889 #define I2S0_TDR0                                I2S_TDR_REG(I2S0,0)
4890 #define I2S0_TFR0                                I2S_TFR_REG(I2S0,0)
4891 #define I2S0_TMR                                 I2S_TMR_REG(I2S0)
4892 #define I2S0_RCSR                                I2S_RCSR_REG(I2S0)
4893 #define I2S0_RCR1                                I2S_RCR1_REG(I2S0)
4894 #define I2S0_RCR2                                I2S_RCR2_REG(I2S0)
4895 #define I2S0_RCR3                                I2S_RCR3_REG(I2S0)
4896 #define I2S0_RCR4                                I2S_RCR4_REG(I2S0)
4897 #define I2S0_RCR5                                I2S_RCR5_REG(I2S0)
4898 #define I2S0_RDR0                                I2S_RDR_REG(I2S0,0)
4899 #define I2S0_RFR0                                I2S_RFR_REG(I2S0,0)
4900 #define I2S0_RMR                                 I2S_RMR_REG(I2S0)
4901 #define I2S0_MCR                                 I2S_MCR_REG(I2S0)
4902 #define I2S0_MDR                                 I2S_MDR_REG(I2S0)
4903
4904 /* I2S - Register array accessors */
4905 #define I2S0_TDR(index)                          I2S_TDR_REG(I2S0,index)
4906 #define I2S0_TFR(index)                          I2S_TFR_REG(I2S0,index)
4907 #define I2S0_RDR(index)                          I2S_RDR_REG(I2S0,index)
4908 #define I2S0_RFR(index)                          I2S_RFR_REG(I2S0,index)
4909
4910 /*!
4911  * @}
4912  */ /* end of group I2S_Register_Accessor_Macros */
4913
4914
4915 /*!
4916  * @}
4917  */ /* end of group I2S_Peripheral_Access_Layer */
4918
4919
4920 /* ----------------------------------------------------------------------------
4921    -- LLWU Peripheral Access Layer
4922    ---------------------------------------------------------------------------- */
4923
4924 /*!
4925  * @addtogroup LLWU_Peripheral_Access_Layer LLWU Peripheral Access Layer
4926  * @{
4927  */
4928
4929 /** LLWU - Register Layout Typedef */
4930 typedef struct {
4931   __IO uint8_t PE1;                                /**< LLWU Pin Enable 1 register, offset: 0x0 */
4932   __IO uint8_t PE2;                                /**< LLWU Pin Enable 2 register, offset: 0x1 */
4933   __IO uint8_t PE3;                                /**< LLWU Pin Enable 3 register, offset: 0x2 */
4934   __IO uint8_t PE4;                                /**< LLWU Pin Enable 4 register, offset: 0x3 */
4935   __IO uint8_t ME;                                 /**< LLWU Module Enable register, offset: 0x4 */
4936   __IO uint8_t F1;                                 /**< LLWU Flag 1 register, offset: 0x5 */
4937   __IO uint8_t F2;                                 /**< LLWU Flag 2 register, offset: 0x6 */
4938   __I  uint8_t F3;                                 /**< LLWU Flag 3 register, offset: 0x7 */
4939   __IO uint8_t FILT1;                              /**< LLWU Pin Filter 1 register, offset: 0x8 */
4940   __IO uint8_t FILT2;                              /**< LLWU Pin Filter 2 register, offset: 0x9 */
4941 } LLWU_Type, *LLWU_MemMapPtr;
4942
4943 /* ----------------------------------------------------------------------------
4944    -- LLWU - Register accessor macros
4945    ---------------------------------------------------------------------------- */
4946
4947 /*!
4948  * @addtogroup LLWU_Register_Accessor_Macros LLWU - Register accessor macros
4949  * @{
4950  */
4951
4952
4953 /* LLWU - Register accessors */
4954 #define LLWU_PE1_REG(base)                       ((base)->PE1)
4955 #define LLWU_PE2_REG(base)                       ((base)->PE2)
4956 #define LLWU_PE3_REG(base)                       ((base)->PE3)
4957 #define LLWU_PE4_REG(base)                       ((base)->PE4)
4958 #define LLWU_ME_REG(base)                        ((base)->ME)
4959 #define LLWU_F1_REG(base)                        ((base)->F1)
4960 #define LLWU_F2_REG(base)                        ((base)->F2)
4961 #define LLWU_F3_REG(base)                        ((base)->F3)
4962 #define LLWU_FILT1_REG(base)                     ((base)->FILT1)
4963 #define LLWU_FILT2_REG(base)                     ((base)->FILT2)
4964
4965 /*!
4966  * @}
4967  */ /* end of group LLWU_Register_Accessor_Macros */
4968
4969
4970 /* ----------------------------------------------------------------------------
4971    -- LLWU Register Masks
4972    ---------------------------------------------------------------------------- */
4973
4974 /*!
4975  * @addtogroup LLWU_Register_Masks LLWU Register Masks
4976  * @{
4977  */
4978
4979 /* PE1 Bit Fields */
4980 #define LLWU_PE1_WUPE0_MASK                      0x3u
4981 #define LLWU_PE1_WUPE0_SHIFT                     0
4982 #define LLWU_PE1_WUPE0(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE0_SHIFT))&LLWU_PE1_WUPE0_MASK)
4983 #define LLWU_PE1_WUPE1_MASK                      0xCu
4984 #define LLWU_PE1_WUPE1_SHIFT                     2
4985 #define LLWU_PE1_WUPE1(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE1_SHIFT))&LLWU_PE1_WUPE1_MASK)
4986 #define LLWU_PE1_WUPE2_MASK                      0x30u
4987 #define LLWU_PE1_WUPE2_SHIFT                     4
4988 #define LLWU_PE1_WUPE2(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE2_SHIFT))&LLWU_PE1_WUPE2_MASK)
4989 #define LLWU_PE1_WUPE3_MASK                      0xC0u
4990 #define LLWU_PE1_WUPE3_SHIFT                     6
4991 #define LLWU_PE1_WUPE3(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE1_WUPE3_SHIFT))&LLWU_PE1_WUPE3_MASK)
4992 /* PE2 Bit Fields */
4993 #define LLWU_PE2_WUPE4_MASK                      0x3u
4994 #define LLWU_PE2_WUPE4_SHIFT                     0
4995 #define LLWU_PE2_WUPE4(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE4_SHIFT))&LLWU_PE2_WUPE4_MASK)
4996 #define LLWU_PE2_WUPE5_MASK                      0xCu
4997 #define LLWU_PE2_WUPE5_SHIFT                     2
4998 #define LLWU_PE2_WUPE5(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE5_SHIFT))&LLWU_PE2_WUPE5_MASK)
4999 #define LLWU_PE2_WUPE6_MASK                      0x30u
5000 #define LLWU_PE2_WUPE6_SHIFT                     4
5001 #define LLWU_PE2_WUPE6(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE6_SHIFT))&LLWU_PE2_WUPE6_MASK)
5002 #define LLWU_PE2_WUPE7_MASK                      0xC0u
5003 #define LLWU_PE2_WUPE7_SHIFT                     6
5004 #define LLWU_PE2_WUPE7(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE2_WUPE7_SHIFT))&LLWU_PE2_WUPE7_MASK)
5005 /* PE3 Bit Fields */
5006 #define LLWU_PE3_WUPE8_MASK                      0x3u
5007 #define LLWU_PE3_WUPE8_SHIFT                     0
5008 #define LLWU_PE3_WUPE8(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE8_SHIFT))&LLWU_PE3_WUPE8_MASK)
5009 #define LLWU_PE3_WUPE9_MASK                      0xCu
5010 #define LLWU_PE3_WUPE9_SHIFT                     2
5011 #define LLWU_PE3_WUPE9(x)                        (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE9_SHIFT))&LLWU_PE3_WUPE9_MASK)
5012 #define LLWU_PE3_WUPE10_MASK                     0x30u
5013 #define LLWU_PE3_WUPE10_SHIFT                    4
5014 #define LLWU_PE3_WUPE10(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE10_SHIFT))&LLWU_PE3_WUPE10_MASK)
5015 #define LLWU_PE3_WUPE11_MASK                     0xC0u
5016 #define LLWU_PE3_WUPE11_SHIFT                    6
5017 #define LLWU_PE3_WUPE11(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE3_WUPE11_SHIFT))&LLWU_PE3_WUPE11_MASK)
5018 /* PE4 Bit Fields */
5019 #define LLWU_PE4_WUPE12_MASK                     0x3u
5020 #define LLWU_PE4_WUPE12_SHIFT                    0
5021 #define LLWU_PE4_WUPE12(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE12_SHIFT))&LLWU_PE4_WUPE12_MASK)
5022 #define LLWU_PE4_WUPE13_MASK                     0xCu
5023 #define LLWU_PE4_WUPE13_SHIFT                    2
5024 #define LLWU_PE4_WUPE13(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE13_SHIFT))&LLWU_PE4_WUPE13_MASK)
5025 #define LLWU_PE4_WUPE14_MASK                     0x30u
5026 #define LLWU_PE4_WUPE14_SHIFT                    4
5027 #define LLWU_PE4_WUPE14(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE14_SHIFT))&LLWU_PE4_WUPE14_MASK)
5028 #define LLWU_PE4_WUPE15_MASK                     0xC0u
5029 #define LLWU_PE4_WUPE15_SHIFT                    6
5030 #define LLWU_PE4_WUPE15(x)                       (((uint8_t)(((uint8_t)(x))<<LLWU_PE4_WUPE15_SHIFT))&LLWU_PE4_WUPE15_MASK)
5031 /* ME Bit Fields */
5032 #define LLWU_ME_WUME0_MASK                       0x1u
5033 #define LLWU_ME_WUME0_SHIFT                      0
5034 #define LLWU_ME_WUME1_MASK                       0x2u
5035 #define LLWU_ME_WUME1_SHIFT                      1
5036 #define LLWU_ME_WUME2_MASK                       0x4u
5037 #define LLWU_ME_WUME2_SHIFT                      2
5038 #define LLWU_ME_WUME3_MASK                       0x8u
5039 #define LLWU_ME_WUME3_SHIFT                      3
5040 #define LLWU_ME_WUME4_MASK                       0x10u
5041 #define LLWU_ME_WUME4_SHIFT                      4
5042 #define LLWU_ME_WUME5_MASK                       0x20u
5043 #define LLWU_ME_WUME5_SHIFT                      5
5044 #define LLWU_ME_WUME6_MASK                       0x40u
5045 #define LLWU_ME_WUME6_SHIFT                      6
5046 #define LLWU_ME_WUME7_MASK                       0x80u
5047 #define LLWU_ME_WUME7_SHIFT                      7
5048 /* F1 Bit Fields */
5049 #define LLWU_F1_WUF0_MASK                        0x1u
5050 #define LLWU_F1_WUF0_SHIFT                       0
5051 #define LLWU_F1_WUF1_MASK                        0x2u
5052 #define LLWU_F1_WUF1_SHIFT                       1
5053 #define LLWU_F1_WUF2_MASK                        0x4u
5054 #define LLWU_F1_WUF2_SHIFT                       2
5055 #define LLWU_F1_WUF3_MASK                        0x8u
5056 #define LLWU_F1_WUF3_SHIFT                       3
5057 #define LLWU_F1_WUF4_MASK                        0x10u
5058 #define LLWU_F1_WUF4_SHIFT                       4
5059 #define LLWU_F1_WUF5_MASK                        0x20u
5060 #define LLWU_F1_WUF5_SHIFT                       5
5061 #define LLWU_F1_WUF6_MASK                        0x40u
5062 #define LLWU_F1_WUF6_SHIFT                       6
5063 #define LLWU_F1_WUF7_MASK                        0x80u
5064 #define LLWU_F1_WUF7_SHIFT                       7
5065 /* F2 Bit Fields */
5066 #define LLWU_F2_WUF8_MASK                        0x1u
5067 #define LLWU_F2_WUF8_SHIFT                       0
5068 #define LLWU_F2_WUF9_MASK                        0x2u
5069 #define LLWU_F2_WUF9_SHIFT                       1
5070 #define LLWU_F2_WUF10_MASK                       0x4u
5071 #define LLWU_F2_WUF10_SHIFT                      2
5072 #define LLWU_F2_WUF11_MASK                       0x8u
5073 #define LLWU_F2_WUF11_SHIFT                      3
5074 #define LLWU_F2_WUF12_MASK                       0x10u
5075 #define LLWU_F2_WUF12_SHIFT                      4
5076 #define LLWU_F2_WUF13_MASK                       0x20u
5077 #define LLWU_F2_WUF13_SHIFT                      5
5078 #define LLWU_F2_WUF14_MASK                       0x40u
5079 #define LLWU_F2_WUF14_SHIFT                      6
5080 #define LLWU_F2_WUF15_MASK                       0x80u
5081 #define LLWU_F2_WUF15_SHIFT                      7
5082 /* F3 Bit Fields */
5083 #define LLWU_F3_MWUF0_MASK                       0x1u
5084 #define LLWU_F3_MWUF0_SHIFT                      0
5085 #define LLWU_F3_MWUF1_MASK                       0x2u
5086 #define LLWU_F3_MWUF1_SHIFT                      1
5087 #define LLWU_F3_MWUF2_MASK                       0x4u
5088 #define LLWU_F3_MWUF2_SHIFT                      2
5089 #define LLWU_F3_MWUF3_MASK                       0x8u
5090 #define LLWU_F3_MWUF3_SHIFT                      3
5091 #define LLWU_F3_MWUF4_MASK                       0x10u
5092 #define LLWU_F3_MWUF4_SHIFT                      4
5093 #define LLWU_F3_MWUF5_MASK                       0x20u
5094 #define LLWU_F3_MWUF5_SHIFT                      5
5095 #define LLWU_F3_MWUF6_MASK                       0x40u
5096 #define LLWU_F3_MWUF6_SHIFT                      6
5097 #define LLWU_F3_MWUF7_MASK                       0x80u
5098 #define LLWU_F3_MWUF7_SHIFT                      7
5099 /* FILT1 Bit Fields */
5100 #define LLWU_FILT1_FILTSEL_MASK                  0xFu
5101 #define LLWU_FILT1_FILTSEL_SHIFT                 0
5102 #define LLWU_FILT1_FILTSEL(x)                    (((uint8_t)(((uint8_t)(x))<<LLWU_FILT1_FILTSEL_SHIFT))&LLWU_FILT1_FILTSEL_MASK)
5103 #define LLWU_FILT1_FILTE_MASK                    0x60u
5104 #define LLWU_FILT1_FILTE_SHIFT                   5
5105 #define LLWU_FILT1_FILTE(x)                      (((uint8_t)(((uint8_t)(x))<<LLWU_FILT1_FILTE_SHIFT))&LLWU_FILT1_FILTE_MASK)
5106 #define LLWU_FILT1_FILTF_MASK                    0x80u
5107 #define LLWU_FILT1_FILTF_SHIFT                   7
5108 /* FILT2 Bit Fields */
5109 #define LLWU_FILT2_FILTSEL_MASK                  0xFu
5110 #define LLWU_FILT2_FILTSEL_SHIFT                 0
5111 #define LLWU_FILT2_FILTSEL(x)                    (((uint8_t)(((uint8_t)(x))<<LLWU_FILT2_FILTSEL_SHIFT))&LLWU_FILT2_FILTSEL_MASK)
5112 #define LLWU_FILT2_FILTE_MASK                    0x60u
5113 #define LLWU_FILT2_FILTE_SHIFT                   5
5114 #define LLWU_FILT2_FILTE(x)                      (((uint8_t)(((uint8_t)(x))<<LLWU_FILT2_FILTE_SHIFT))&LLWU_FILT2_FILTE_MASK)
5115 #define LLWU_FILT2_FILTF_MASK                    0x80u
5116 #define LLWU_FILT2_FILTF_SHIFT                   7
5117
5118 /*!
5119  * @}
5120  */ /* end of group LLWU_Register_Masks */
5121
5122
5123 /* LLWU - Peripheral instance base addresses */
5124 /** Peripheral LLWU base address */
5125 #define LLWU_BASE                                (0x4007C000u)
5126 /** Peripheral LLWU base pointer */
5127 #define LLWU                                     ((LLWU_Type *)LLWU_BASE)
5128 #define LLWU_BASE_PTR                            (LLWU)
5129 /** Array initializer of LLWU peripheral base addresses */
5130 #define LLWU_BASE_ADDRS                          { LLWU_BASE }
5131 /** Array initializer of LLWU peripheral base pointers */
5132 #define LLWU_BASE_PTRS                           { LLWU }
5133 /** Interrupt vectors for the LLWU peripheral type */
5134 #define LLWU_IRQS                                { LLW_IRQn }
5135
5136 /* ----------------------------------------------------------------------------
5137    -- LLWU - Register accessor macros
5138    ---------------------------------------------------------------------------- */
5139
5140 /*!
5141  * @addtogroup LLWU_Register_Accessor_Macros LLWU - Register accessor macros
5142  * @{
5143  */
5144
5145
5146 /* LLWU - Register instance definitions */
5147 /* LLWU */
5148 #define LLWU_PE1                                 LLWU_PE1_REG(LLWU)
5149 #define LLWU_PE2                                 LLWU_PE2_REG(LLWU)
5150 #define LLWU_PE3                                 LLWU_PE3_REG(LLWU)
5151 #define LLWU_PE4                                 LLWU_PE4_REG(LLWU)
5152 #define LLWU_ME                                  LLWU_ME_REG(LLWU)
5153 #define LLWU_F1                                  LLWU_F1_REG(LLWU)
5154 #define LLWU_F2                                  LLWU_F2_REG(LLWU)
5155 #define LLWU_F3                                  LLWU_F3_REG(LLWU)
5156 #define LLWU_FILT1                               LLWU_FILT1_REG(LLWU)
5157 #define LLWU_FILT2                               LLWU_FILT2_REG(LLWU)
5158
5159 /*!
5160  * @}
5161  */ /* end of group LLWU_Register_Accessor_Macros */
5162
5163
5164 /*!
5165  * @}
5166  */ /* end of group LLWU_Peripheral_Access_Layer */
5167
5168
5169 /* ----------------------------------------------------------------------------
5170    -- LPTMR Peripheral Access Layer
5171    ---------------------------------------------------------------------------- */
5172
5173 /*!
5174  * @addtogroup LPTMR_Peripheral_Access_Layer LPTMR Peripheral Access Layer
5175  * @{
5176  */
5177
5178 /** LPTMR - Register Layout Typedef */
5179 typedef struct {
5180   __IO uint32_t CSR;                               /**< Low Power Timer Control Status Register, offset: 0x0 */
5181   __IO uint32_t PSR;                               /**< Low Power Timer Prescale Register, offset: 0x4 */
5182   __IO uint32_t CMR;                               /**< Low Power Timer Compare Register, offset: 0x8 */
5183   __IO uint32_t CNR;                               /**< Low Power Timer Counter Register, offset: 0xC */
5184 } LPTMR_Type, *LPTMR_MemMapPtr;
5185
5186 /* ----------------------------------------------------------------------------
5187    -- LPTMR - Register accessor macros
5188    ---------------------------------------------------------------------------- */
5189
5190 /*!
5191  * @addtogroup LPTMR_Register_Accessor_Macros LPTMR - Register accessor macros
5192  * @{
5193  */
5194
5195
5196 /* LPTMR - Register accessors */
5197 #define LPTMR_CSR_REG(base)                      ((base)->CSR)
5198 #define LPTMR_PSR_REG(base)                      ((base)->PSR)
5199 #define LPTMR_CMR_REG(base)                      ((base)->CMR)
5200 #define LPTMR_CNR_REG(base)                      ((base)->CNR)
5201
5202 /*!
5203  * @}
5204  */ /* end of group LPTMR_Register_Accessor_Macros */
5205
5206
5207 /* ----------------------------------------------------------------------------
5208    -- LPTMR Register Masks
5209    ---------------------------------------------------------------------------- */
5210
5211 /*!
5212  * @addtogroup LPTMR_Register_Masks LPTMR Register Masks
5213  * @{
5214  */
5215
5216 /* CSR Bit Fields */
5217 #define LPTMR_CSR_TEN_MASK                       0x1u
5218 #define LPTMR_CSR_TEN_SHIFT                      0
5219 #define LPTMR_CSR_TMS_MASK                       0x2u
5220 #define LPTMR_CSR_TMS_SHIFT                      1
5221 #define LPTMR_CSR_TFC_MASK                       0x4u
5222 #define LPTMR_CSR_TFC_SHIFT                      2
5223 #define LPTMR_CSR_TPP_MASK                       0x8u
5224 #define LPTMR_CSR_TPP_SHIFT                      3
5225 #define LPTMR_CSR_TPS_MASK                       0x30u
5226 #define LPTMR_CSR_TPS_SHIFT                      4
5227 #define LPTMR_CSR_TPS(x)                         (((uint32_t)(((uint32_t)(x))<<LPTMR_CSR_TPS_SHIFT))&LPTMR_CSR_TPS_MASK)
5228 #define LPTMR_CSR_TIE_MASK                       0x40u
5229 #define LPTMR_CSR_TIE_SHIFT                      6
5230 #define LPTMR_CSR_TCF_MASK                       0x80u
5231 #define LPTMR_CSR_TCF_SHIFT                      7
5232 /* PSR Bit Fields */
5233 #define LPTMR_PSR_PCS_MASK                       0x3u
5234 #define LPTMR_PSR_PCS_SHIFT                      0
5235 #define LPTMR_PSR_PCS(x)                         (((uint32_t)(((uint32_t)(x))<<LPTMR_PSR_PCS_SHIFT))&LPTMR_PSR_PCS_MASK)
5236 #define LPTMR_PSR_PBYP_MASK                      0x4u
5237 #define LPTMR_PSR_PBYP_SHIFT                     2
5238 #define LPTMR_PSR_PRESCALE_MASK                  0x78u
5239 #define LPTMR_PSR_PRESCALE_SHIFT                 3
5240 #define LPTMR_PSR_PRESCALE(x)                    (((uint32_t)(((uint32_t)(x))<<LPTMR_PSR_PRESCALE_SHIFT))&LPTMR_PSR_PRESCALE_MASK)
5241 /* CMR Bit Fields */
5242 #define LPTMR_CMR_COMPARE_MASK                   0xFFFFu
5243 #define LPTMR_CMR_COMPARE_SHIFT                  0
5244 #define LPTMR_CMR_COMPARE(x)                     (((uint32_t)(((uint32_t)(x))<<LPTMR_CMR_COMPARE_SHIFT))&LPTMR_CMR_COMPARE_MASK)
5245 /* CNR Bit Fields */
5246 #define LPTMR_CNR_COUNTER_MASK                   0xFFFFu
5247 #define LPTMR_CNR_COUNTER_SHIFT                  0
5248 #define LPTMR_CNR_COUNTER(x)                     (((uint32_t)(((uint32_t)(x))<<LPTMR_CNR_COUNTER_SHIFT))&LPTMR_CNR_COUNTER_MASK)
5249
5250 /*!
5251  * @}
5252  */ /* end of group LPTMR_Register_Masks */
5253
5254
5255 /* LPTMR - Peripheral instance base addresses */
5256 /** Peripheral LPTMR0 base address */
5257 #define LPTMR0_BASE                              (0x40040000u)
5258 /** Peripheral LPTMR0 base pointer */
5259 #define LPTMR0                                   ((LPTMR_Type *)LPTMR0_BASE)
5260 #define LPTMR0_BASE_PTR                          (LPTMR0)
5261 /** Array initializer of LPTMR peripheral base addresses */
5262 #define LPTMR_BASE_ADDRS                         { LPTMR0_BASE }
5263 /** Array initializer of LPTMR peripheral base pointers */
5264 #define LPTMR_BASE_PTRS                          { LPTMR0 }
5265 /** Interrupt vectors for the LPTMR peripheral type */
5266 #define LPTMR_IRQS                               { LPTimer_IRQn }
5267
5268 /* ----------------------------------------------------------------------------
5269    -- LPTMR - Register accessor macros
5270    ---------------------------------------------------------------------------- */
5271
5272 /*!
5273  * @addtogroup LPTMR_Register_Accessor_Macros LPTMR - Register accessor macros
5274  * @{
5275  */
5276
5277
5278 /* LPTMR - Register instance definitions */
5279 /* LPTMR0 */
5280 #define LPTMR0_CSR                               LPTMR_CSR_REG(LPTMR0)
5281 #define LPTMR0_PSR                               LPTMR_PSR_REG(LPTMR0)
5282 #define LPTMR0_CMR                               LPTMR_CMR_REG(LPTMR0)
5283 #define LPTMR0_CNR                               LPTMR_CNR_REG(LPTMR0)
5284
5285 /*!
5286  * @}
5287  */ /* end of group LPTMR_Register_Accessor_Macros */
5288
5289
5290 /*!
5291  * @}
5292  */ /* end of group LPTMR_Peripheral_Access_Layer */
5293
5294
5295 /* ----------------------------------------------------------------------------
5296    -- LPUART Peripheral Access Layer
5297    ---------------------------------------------------------------------------- */
5298
5299 /*!
5300  * @addtogroup LPUART_Peripheral_Access_Layer LPUART Peripheral Access Layer
5301  * @{
5302  */
5303
5304 /** LPUART - Register Layout Typedef */
5305 typedef struct {
5306   __IO uint32_t BAUD;                              /**< LPUART Baud Rate Register, offset: 0x0 */
5307   __IO uint32_t STAT;                              /**< LPUART Status Register, offset: 0x4 */
5308   __IO uint32_t CTRL;                              /**< LPUART Control Register, offset: 0x8 */
5309   __IO uint32_t DATA;                              /**< LPUART Data Register, offset: 0xC */
5310   __IO uint32_t MATCH;                             /**< LPUART Match Address Register, offset: 0x10 */
5311   __IO uint32_t MODIR;                             /**< LPUART Modem IrDA Register, offset: 0x14 */
5312 } LPUART_Type, *LPUART_MemMapPtr;
5313
5314 /* ----------------------------------------------------------------------------
5315    -- LPUART - Register accessor macros
5316    ---------------------------------------------------------------------------- */
5317
5318 /*!
5319  * @addtogroup LPUART_Register_Accessor_Macros LPUART - Register accessor macros
5320  * @{
5321  */
5322
5323
5324 /* LPUART - Register accessors */
5325 #define LPUART_BAUD_REG(base)                    ((base)->BAUD)
5326 #define LPUART_STAT_REG(base)                    ((base)->STAT)
5327 #define LPUART_CTRL_REG(base)                    ((base)->CTRL)
5328 #define LPUART_DATA_REG(base)                    ((base)->DATA)
5329 #define LPUART_MATCH_REG(base)                   ((base)->MATCH)
5330 #define LPUART_MODIR_REG(base)                   ((base)->MODIR)
5331
5332 /*!
5333  * @}
5334  */ /* end of group LPUART_Register_Accessor_Macros */
5335
5336
5337 /* ----------------------------------------------------------------------------
5338    -- LPUART Register Masks
5339    ---------------------------------------------------------------------------- */
5340
5341 /*!
5342  * @addtogroup LPUART_Register_Masks LPUART Register Masks
5343  * @{
5344  */
5345
5346 /* BAUD Bit Fields */
5347 #define LPUART_BAUD_SBR_MASK                     0x1FFFu
5348 #define LPUART_BAUD_SBR_SHIFT                    0
5349 #define LPUART_BAUD_SBR(x)                       (((uint32_t)(((uint32_t)(x))<<LPUART_BAUD_SBR_SHIFT))&LPUART_BAUD_SBR_MASK)
5350 #define LPUART_BAUD_SBNS_MASK                    0x2000u
5351 #define LPUART_BAUD_SBNS_SHIFT                   13
5352 #define LPUART_BAUD_RXEDGIE_MASK                 0x4000u
5353 #define LPUART_BAUD_RXEDGIE_SHIFT                14
5354 #define LPUART_BAUD_LBKDIE_MASK                  0x8000u
5355 #define LPUART_BAUD_LBKDIE_SHIFT                 15
5356 #define LPUART_BAUD_RESYNCDIS_MASK               0x10000u
5357 #define LPUART_BAUD_RESYNCDIS_SHIFT              16
5358 #define LPUART_BAUD_BOTHEDGE_MASK                0x20000u
5359 #define LPUART_BAUD_BOTHEDGE_SHIFT               17
5360 #define LPUART_BAUD_MATCFG_MASK                  0xC0000u
5361 #define LPUART_BAUD_MATCFG_SHIFT                 18
5362 #define LPUART_BAUD_MATCFG(x)                    (((uint32_t)(((uint32_t)(x))<<LPUART_BAUD_MATCFG_SHIFT))&LPUART_BAUD_MATCFG_MASK)
5363 #define LPUART_BAUD_RDMAE_MASK                   0x200000u
5364 #define LPUART_BAUD_RDMAE_SHIFT                  21
5365 #define LPUART_BAUD_TDMAE_MASK                   0x800000u
5366 #define LPUART_BAUD_TDMAE_SHIFT                  23
5367 #define LPUART_BAUD_OSR_MASK                     0x1F000000u
5368 #define LPUART_BAUD_OSR_SHIFT                    24
5369 #define LPUART_BAUD_OSR(x)                       (((uint32_t)(((uint32_t)(x))<<LPUART_BAUD_OSR_SHIFT))&LPUART_BAUD_OSR_MASK)
5370 #define LPUART_BAUD_M10_MASK                     0x20000000u
5371 #define LPUART_BAUD_M10_SHIFT                    29
5372 #define LPUART_BAUD_MAEN2_MASK                   0x40000000u
5373 #define LPUART_BAUD_MAEN2_SHIFT                  30
5374 #define LPUART_BAUD_MAEN1_MASK                   0x80000000u
5375 #define LPUART_BAUD_MAEN1_SHIFT                  31
5376 /* STAT Bit Fields */
5377 #define LPUART_STAT_MA2F_MASK                    0x4000u
5378 #define LPUART_STAT_MA2F_SHIFT                   14
5379 #define LPUART_STAT_MA1F_MASK                    0x8000u
5380 #define LPUART_STAT_MA1F_SHIFT                   15
5381 #define LPUART_STAT_PF_MASK                      0x10000u
5382 #define LPUART_STAT_PF_SHIFT                     16
5383 #define LPUART_STAT_FE_MASK                      0x20000u
5384 #define LPUART_STAT_FE_SHIFT                     17
5385 #define LPUART_STAT_NF_MASK                      0x40000u
5386 #define LPUART_STAT_NF_SHIFT                     18
5387 #define LPUART_STAT_OR_MASK                      0x80000u
5388 #define LPUART_STAT_OR_SHIFT                     19
5389 #define LPUART_STAT_IDLE_MASK                    0x100000u
5390 #define LPUART_STAT_IDLE_SHIFT                   20
5391 #define LPUART_STAT_RDRF_MASK                    0x200000u
5392 #define LPUART_STAT_RDRF_SHIFT                   21
5393 #define LPUART_STAT_TC_MASK                      0x400000u
5394 #define LPUART_STAT_TC_SHIFT                     22
5395 #define LPUART_STAT_TDRE_MASK                    0x800000u
5396 #define LPUART_STAT_TDRE_SHIFT                   23
5397 #define LPUART_STAT_RAF_MASK                     0x1000000u
5398 #define LPUART_STAT_RAF_SHIFT                    24
5399 #define LPUART_STAT_LBKDE_MASK                   0x2000000u
5400 #define LPUART_STAT_LBKDE_SHIFT                  25
5401 #define LPUART_STAT_BRK13_MASK                   0x4000000u
5402 #define LPUART_STAT_BRK13_SHIFT                  26
5403 #define LPUART_STAT_RWUID_MASK                   0x8000000u
5404 #define LPUART_STAT_RWUID_SHIFT                  27
5405 #define LPUART_STAT_RXINV_MASK                   0x10000000u
5406 #define LPUART_STAT_RXINV_SHIFT                  28
5407 #define LPUART_STAT_MSBF_MASK                    0x20000000u
5408 #define LPUART_STAT_MSBF_SHIFT                   29
5409 #define LPUART_STAT_RXEDGIF_MASK                 0x40000000u
5410 #define LPUART_STAT_RXEDGIF_SHIFT                30
5411 #define LPUART_STAT_LBKDIF_MASK                  0x80000000u
5412 #define LPUART_STAT_LBKDIF_SHIFT                 31
5413 /* CTRL Bit Fields */
5414 #define LPUART_CTRL_PT_MASK                      0x1u
5415 #define LPUART_CTRL_PT_SHIFT                     0
5416 #define LPUART_CTRL_PE_MASK                      0x2u
5417 #define LPUART_CTRL_PE_SHIFT                     1
5418 #define LPUART_CTRL_ILT_MASK                     0x4u
5419 #define LPUART_CTRL_ILT_SHIFT                    2
5420 #define LPUART_CTRL_WAKE_MASK                    0x8u
5421 #define LPUART_CTRL_WAKE_SHIFT                   3
5422 #define LPUART_CTRL_M_MASK                       0x10u
5423 #define LPUART_CTRL_M_SHIFT                      4
5424 #define LPUART_CTRL_RSRC_MASK                    0x20u
5425 #define LPUART_CTRL_RSRC_SHIFT                   5
5426 #define LPUART_CTRL_DOZEEN_MASK                  0x40u
5427 #define LPUART_CTRL_DOZEEN_SHIFT                 6
5428 #define LPUART_CTRL_LOOPS_MASK                   0x80u
5429 #define LPUART_CTRL_LOOPS_SHIFT                  7
5430 #define LPUART_CTRL_IDLECFG_MASK                 0x700u
5431 #define LPUART_CTRL_IDLECFG_SHIFT                8
5432 #define LPUART_CTRL_IDLECFG(x)                   (((uint32_t)(((uint32_t)(x))<<LPUART_CTRL_IDLECFG_SHIFT))&LPUART_CTRL_IDLECFG_MASK)
5433 #define LPUART_CTRL_MA2IE_MASK                   0x4000u
5434 #define LPUART_CTRL_MA2IE_SHIFT                  14
5435 #define LPUART_CTRL_MA1IE_MASK                   0x8000u
5436 #define LPUART_CTRL_MA1IE_SHIFT                  15
5437 #define LPUART_CTRL_SBK_MASK                     0x10000u
5438 #define LPUART_CTRL_SBK_SHIFT                    16
5439 #define LPUART_CTRL_RWU_MASK                     0x20000u
5440 #define LPUART_CTRL_RWU_SHIFT                    17
5441 #define LPUART_CTRL_RE_MASK                      0x40000u
5442 #define LPUART_CTRL_RE_SHIFT                     18
5443 #define LPUART_CTRL_TE_MASK                      0x80000u
5444 #define LPUART_CTRL_TE_SHIFT                     19
5445 #define LPUART_CTRL_ILIE_MASK                    0x100000u
5446 #define LPUART_CTRL_ILIE_SHIFT                   20
5447 #define LPUART_CTRL_RIE_MASK                     0x200000u
5448 #define LPUART_CTRL_RIE_SHIFT                    21
5449 #define LPUART_CTRL_TCIE_MASK                    0x400000u
5450 #define LPUART_CTRL_TCIE_SHIFT                   22
5451 #define LPUART_CTRL_TIE_MASK                     0x800000u
5452 #define LPUART_CTRL_TIE_SHIFT                    23
5453 #define LPUART_CTRL_PEIE_MASK                    0x1000000u
5454 #define LPUART_CTRL_PEIE_SHIFT                   24
5455 #define LPUART_CTRL_FEIE_MASK                    0x2000000u
5456 #define LPUART_CTRL_FEIE_SHIFT                   25
5457 #define LPUART_CTRL_NEIE_MASK                    0x4000000u
5458 #define LPUART_CTRL_NEIE_SHIFT                   26
5459 #define LPUART_CTRL_ORIE_MASK                    0x8000000u
5460 #define LPUART_CTRL_ORIE_SHIFT                   27
5461 #define LPUART_CTRL_TXINV_MASK                   0x10000000u
5462 #define LPUART_CTRL_TXINV_SHIFT                  28
5463 #define LPUART_CTRL_TXDIR_MASK                   0x20000000u
5464 #define LPUART_CTRL_TXDIR_SHIFT                  29
5465 #define LPUART_CTRL_R9T8_MASK                    0x40000000u
5466 #define LPUART_CTRL_R9T8_SHIFT                   30
5467 #define LPUART_CTRL_R8T9_MASK                    0x80000000u
5468 #define LPUART_CTRL_R8T9_SHIFT                   31
5469 /* DATA Bit Fields */
5470 #define LPUART_DATA_R0T0_MASK                    0x1u
5471 #define LPUART_DATA_R0T0_SHIFT                   0
5472 #define LPUART_DATA_R1T1_MASK                    0x2u
5473 #define LPUART_DATA_R1T1_SHIFT                   1
5474 #define LPUART_DATA_R2T2_MASK                    0x4u
5475 #define LPUART_DATA_R2T2_SHIFT                   2
5476 #define LPUART_DATA_R3T3_MASK                    0x8u
5477 #define LPUART_DATA_R3T3_SHIFT                   3
5478 #define LPUART_DATA_R4T4_MASK                    0x10u
5479 #define LPUART_DATA_R4T4_SHIFT                   4
5480 #define LPUART_DATA_R5T5_MASK                    0x20u
5481 #define LPUART_DATA_R5T5_SHIFT                   5
5482 #define LPUART_DATA_R6T6_MASK                    0x40u
5483 #define LPUART_DATA_R6T6_SHIFT                   6
5484 #define LPUART_DATA_R7T7_MASK                    0x80u
5485 #define LPUART_DATA_R7T7_SHIFT                   7
5486 #define LPUART_DATA_R8T8_MASK                    0x100u
5487 #define LPUART_DATA_R8T8_SHIFT                   8
5488 #define LPUART_DATA_R9T9_MASK                    0x200u
5489 #define LPUART_DATA_R9T9_SHIFT                   9
5490 #define LPUART_DATA_IDLINE_MASK                  0x800u
5491 #define LPUART_DATA_IDLINE_SHIFT                 11
5492 #define LPUART_DATA_RXEMPT_MASK                  0x1000u
5493 #define LPUART_DATA_RXEMPT_SHIFT                 12
5494 #define LPUART_DATA_FRETSC_MASK                  0x2000u
5495 #define LPUART_DATA_FRETSC_SHIFT                 13
5496 #define LPUART_DATA_PARITYE_MASK                 0x4000u
5497 #define LPUART_DATA_PARITYE_SHIFT                14
5498 #define LPUART_DATA_NOISY_MASK                   0x8000u
5499 #define LPUART_DATA_NOISY_SHIFT                  15
5500 /* MATCH Bit Fields */
5501 #define LPUART_MATCH_MA1_MASK                    0x3FFu
5502 #define LPUART_MATCH_MA1_SHIFT                   0
5503 #define LPUART_MATCH_MA1(x)                      (((uint32_t)(((uint32_t)(x))<<LPUART_MATCH_MA1_SHIFT))&LPUART_MATCH_MA1_MASK)
5504 #define LPUART_MATCH_MA2_MASK                    0x3FF0000u
5505 #define LPUART_MATCH_MA2_SHIFT                   16
5506 #define LPUART_MATCH_MA2(x)                      (((uint32_t)(((uint32_t)(x))<<LPUART_MATCH_MA2_SHIFT))&LPUART_MATCH_MA2_MASK)
5507 /* MODIR Bit Fields */
5508 #define LPUART_MODIR_TXCTSE_MASK                 0x1u
5509 #define LPUART_MODIR_TXCTSE_SHIFT                0
5510 #define LPUART_MODIR_TXRTSE_MASK                 0x2u
5511 #define LPUART_MODIR_TXRTSE_SHIFT                1
5512 #define LPUART_MODIR_TXRTSPOL_MASK               0x4u
5513 #define LPUART_MODIR_TXRTSPOL_SHIFT              2
5514 #define LPUART_MODIR_RXRTSE_MASK                 0x8u
5515 #define LPUART_MODIR_RXRTSE_SHIFT                3
5516 #define LPUART_MODIR_TXCTSC_MASK                 0x10u
5517 #define LPUART_MODIR_TXCTSC_SHIFT                4
5518 #define LPUART_MODIR_TXCTSSRC_MASK               0x20u
5519 #define LPUART_MODIR_TXCTSSRC_SHIFT              5
5520 #define LPUART_MODIR_TNP_MASK                    0x30000u
5521 #define LPUART_MODIR_TNP_SHIFT                   16
5522 #define LPUART_MODIR_TNP(x)                      (((uint32_t)(((uint32_t)(x))<<LPUART_MODIR_TNP_SHIFT))&LPUART_MODIR_TNP_MASK)
5523 #define LPUART_MODIR_IREN_MASK                   0x40000u
5524 #define LPUART_MODIR_IREN_SHIFT                  18
5525
5526 /*!
5527  * @}
5528  */ /* end of group LPUART_Register_Masks */
5529
5530
5531 /* LPUART - Peripheral instance base addresses */
5532 /** Peripheral LPUART0 base address */
5533 #define LPUART0_BASE                             (0x4002A000u)
5534 /** Peripheral LPUART0 base pointer */
5535 #define LPUART0                                  ((LPUART_Type *)LPUART0_BASE)
5536 #define LPUART0_BASE_PTR                         (LPUART0)
5537 /** Array initializer of LPUART peripheral base addresses */
5538 #define LPUART_BASE_ADDRS                        { LPUART0_BASE }
5539 /** Array initializer of LPUART peripheral base pointers */
5540 #define LPUART_BASE_PTRS                         { LPUART0 }
5541 /** Interrupt vectors for the LPUART peripheral type */
5542 #define LPUART_RX_TX_IRQS                        { LPUART0_IRQn }
5543 #define LPUART_ERR_IRQS                          { LPUART0_IRQn }
5544
5545 /* ----------------------------------------------------------------------------
5546    -- LPUART - Register accessor macros
5547    ---------------------------------------------------------------------------- */
5548
5549 /*!
5550  * @addtogroup LPUART_Register_Accessor_Macros LPUART - Register accessor macros
5551  * @{
5552  */
5553
5554
5555 /* LPUART - Register instance definitions */
5556 /* LPUART0 */
5557 #define LPUART0_BAUD                             LPUART_BAUD_REG(LPUART0)
5558 #define LPUART0_STAT                             LPUART_STAT_REG(LPUART0)
5559 #define LPUART0_CTRL                             LPUART_CTRL_REG(LPUART0)
5560 #define LPUART0_DATA                             LPUART_DATA_REG(LPUART0)
5561 #define LPUART0_MATCH                            LPUART_MATCH_REG(LPUART0)
5562 #define LPUART0_MODIR                            LPUART_MODIR_REG(LPUART0)
5563
5564 /*!
5565  * @}
5566  */ /* end of group LPUART_Register_Accessor_Macros */
5567
5568
5569 /*!
5570  * @}
5571  */ /* end of group LPUART_Peripheral_Access_Layer */
5572
5573
5574 /* ----------------------------------------------------------------------------
5575    -- MCG Peripheral Access Layer
5576    ---------------------------------------------------------------------------- */
5577
5578 /*!
5579  * @addtogroup MCG_Peripheral_Access_Layer MCG Peripheral Access Layer
5580  * @{
5581  */
5582
5583 /** MCG - Register Layout Typedef */
5584 typedef struct {
5585   __IO uint8_t C1;                                 /**< MCG Control 1 Register, offset: 0x0 */
5586   __IO uint8_t C2;                                 /**< MCG Control 2 Register, offset: 0x1 */
5587   __IO uint8_t C3;                                 /**< MCG Control 3 Register, offset: 0x2 */
5588   __IO uint8_t C4;                                 /**< MCG Control 4 Register, offset: 0x3 */
5589   __IO uint8_t C5;                                 /**< MCG Control 5 Register, offset: 0x4 */
5590   __IO uint8_t C6;                                 /**< MCG Control 6 Register, offset: 0x5 */
5591   __IO uint8_t S;                                  /**< MCG Status Register, offset: 0x6 */
5592        uint8_t RESERVED_0[1];
5593   __IO uint8_t SC;                                 /**< MCG Status and Control Register, offset: 0x8 */
5594        uint8_t RESERVED_1[1];
5595   __IO uint8_t ATCVH;                              /**< MCG Auto Trim Compare Value High Register, offset: 0xA */
5596   __IO uint8_t ATCVL;                              /**< MCG Auto Trim Compare Value Low Register, offset: 0xB */
5597   __IO uint8_t C7;                                 /**< MCG Control 7 Register, offset: 0xC */
5598   __IO uint8_t C8;                                 /**< MCG Control 8 Register, offset: 0xD */
5599 } MCG_Type, *MCG_MemMapPtr;
5600
5601 /* ----------------------------------------------------------------------------
5602    -- MCG - Register accessor macros
5603    ---------------------------------------------------------------------------- */
5604
5605 /*!
5606  * @addtogroup MCG_Register_Accessor_Macros MCG - Register accessor macros
5607  * @{
5608  */
5609
5610
5611 /* MCG - Register accessors */
5612 #define MCG_C1_REG(base)                         ((base)->C1)
5613 #define MCG_C2_REG(base)                         ((base)->C2)
5614 #define MCG_C3_REG(base)                         ((base)->C3)
5615 #define MCG_C4_REG(base)                         ((base)->C4)
5616 #define MCG_C5_REG(base)                         ((base)->C5)
5617 #define MCG_C6_REG(base)                         ((base)->C6)
5618 #define MCG_S_REG(base)                          ((base)->S)
5619 #define MCG_SC_REG(base)                         ((base)->SC)
5620 #define MCG_ATCVH_REG(base)                      ((base)->ATCVH)
5621 #define MCG_ATCVL_REG(base)                      ((base)->ATCVL)
5622 #define MCG_C7_REG(base)                         ((base)->C7)
5623 #define MCG_C8_REG(base)                         ((base)->C8)
5624
5625 /*!
5626  * @}
5627  */ /* end of group MCG_Register_Accessor_Macros */
5628
5629
5630 /* ----------------------------------------------------------------------------
5631    -- MCG Register Masks
5632    ---------------------------------------------------------------------------- */
5633
5634 /*!
5635  * @addtogroup MCG_Register_Masks MCG Register Masks
5636  * @{
5637  */
5638
5639 /* C1 Bit Fields */
5640 #define MCG_C1_IREFSTEN_MASK                     0x1u
5641 #define MCG_C1_IREFSTEN_SHIFT                    0
5642 #define MCG_C1_IRCLKEN_MASK                      0x2u
5643 #define MCG_C1_IRCLKEN_SHIFT                     1
5644 #define MCG_C1_IREFS_MASK                        0x4u
5645 #define MCG_C1_IREFS_SHIFT                       2
5646 #define MCG_C1_FRDIV_MASK                        0x38u
5647 #define MCG_C1_FRDIV_SHIFT                       3
5648 #define MCG_C1_FRDIV(x)                          (((uint8_t)(((uint8_t)(x))<<MCG_C1_FRDIV_SHIFT))&MCG_C1_FRDIV_MASK)
5649 #define MCG_C1_CLKS_MASK                         0xC0u
5650 #define MCG_C1_CLKS_SHIFT                        6
5651 #define MCG_C1_CLKS(x)                           (((uint8_t)(((uint8_t)(x))<<MCG_C1_CLKS_SHIFT))&MCG_C1_CLKS_MASK)
5652 /* C2 Bit Fields */
5653 #define MCG_C2_IRCS_MASK                         0x1u
5654 #define MCG_C2_IRCS_SHIFT                        0
5655 #define MCG_C2_LP_MASK                           0x2u
5656 #define MCG_C2_LP_SHIFT                          1
5657 #define MCG_C2_EREFS_MASK                        0x4u
5658 #define MCG_C2_EREFS_SHIFT                       2
5659 #define MCG_C2_HGO_MASK                          0x8u
5660 #define MCG_C2_HGO_SHIFT                         3
5661 #define MCG_C2_RANGE_MASK                        0x30u
5662 #define MCG_C2_RANGE_SHIFT                       4
5663 #define MCG_C2_RANGE(x)                          (((uint8_t)(((uint8_t)(x))<<MCG_C2_RANGE_SHIFT))&MCG_C2_RANGE_MASK)
5664 #define MCG_C2_FCFTRIM_MASK                      0x40u
5665 #define MCG_C2_FCFTRIM_SHIFT                     6
5666 #define MCG_C2_LOCRE0_MASK                       0x80u
5667 #define MCG_C2_LOCRE0_SHIFT                      7
5668 /* C3 Bit Fields */
5669 #define MCG_C3_SCTRIM_MASK                       0xFFu
5670 #define MCG_C3_SCTRIM_SHIFT                      0
5671 #define MCG_C3_SCTRIM(x)                         (((uint8_t)(((uint8_t)(x))<<MCG_C3_SCTRIM_SHIFT))&MCG_C3_SCTRIM_MASK)
5672 /* C4 Bit Fields */
5673 #define MCG_C4_SCFTRIM_MASK                      0x1u
5674 #define MCG_C4_SCFTRIM_SHIFT                     0
5675 #define MCG_C4_FCTRIM_MASK                       0x1Eu
5676 #define MCG_C4_FCTRIM_SHIFT                      1
5677 #define MCG_C4_FCTRIM(x)                         (((uint8_t)(((uint8_t)(x))<<MCG_C4_FCTRIM_SHIFT))&MCG_C4_FCTRIM_MASK)
5678 #define MCG_C4_DRST_DRS_MASK                     0x60u
5679 #define MCG_C4_DRST_DRS_SHIFT                    5
5680 #define MCG_C4_DRST_DRS(x)                       (((uint8_t)(((uint8_t)(x))<<MCG_C4_DRST_DRS_SHIFT))&MCG_C4_DRST_DRS_MASK)
5681 #define MCG_C4_DMX32_MASK                        0x80u
5682 #define MCG_C4_DMX32_SHIFT                       7
5683 /* C5 Bit Fields */
5684 #define MCG_C5_PRDIV0_MASK                       0x1Fu
5685 #define MCG_C5_PRDIV0_SHIFT                      0
5686 #define MCG_C5_PRDIV0(x)                         (((uint8_t)(((uint8_t)(x))<<MCG_C5_PRDIV0_SHIFT))&MCG_C5_PRDIV0_MASK)
5687 #define MCG_C5_PLLSTEN0_MASK                     0x20u
5688 #define MCG_C5_PLLSTEN0_SHIFT                    5
5689 #define MCG_C5_PLLCLKEN0_MASK                    0x40u
5690 #define MCG_C5_PLLCLKEN0_SHIFT                   6
5691 /* C6 Bit Fields */
5692 #define MCG_C6_VDIV0_MASK                        0x1Fu
5693 #define MCG_C6_VDIV0_SHIFT                       0
5694 #define MCG_C6_VDIV0(x)                          (((uint8_t)(((uint8_t)(x))<<MCG_C6_VDIV0_SHIFT))&MCG_C6_VDIV0_MASK)
5695 #define MCG_C6_CME0_MASK                         0x20u
5696 #define MCG_C6_CME0_SHIFT                        5
5697 #define MCG_C6_PLLS_MASK                         0x40u
5698 #define MCG_C6_PLLS_SHIFT                        6
5699 #define MCG_C6_LOLIE0_MASK                       0x80u
5700 #define MCG_C6_LOLIE0_SHIFT                      7
5701 /* S Bit Fields */
5702 #define MCG_S_IRCST_MASK                         0x1u
5703 #define MCG_S_IRCST_SHIFT                        0
5704 #define MCG_S_OSCINIT0_MASK                      0x2u
5705 #define MCG_S_OSCINIT0_SHIFT                     1
5706 #define MCG_S_CLKST_MASK                         0xCu
5707 #define MCG_S_CLKST_SHIFT                        2
5708 #define MCG_S_CLKST(x)                           (((uint8_t)(((uint8_t)(x))<<MCG_S_CLKST_SHIFT))&MCG_S_CLKST_MASK)
5709 #define MCG_S_IREFST_MASK                        0x10u
5710 #define MCG_S_IREFST_SHIFT                       4
5711 #define MCG_S_PLLST_MASK                         0x20u
5712 #define MCG_S_PLLST_SHIFT                        5
5713 #define MCG_S_LOCK0_MASK                         0x40u
5714 #define MCG_S_LOCK0_SHIFT                        6
5715 #define MCG_S_LOLS0_MASK                         0x80u
5716 #define MCG_S_LOLS0_SHIFT                        7
5717 /* SC Bit Fields */
5718 #define MCG_SC_LOCS0_MASK                        0x1u
5719 #define MCG_SC_LOCS0_SHIFT                       0
5720 #define MCG_SC_FCRDIV_MASK                       0xEu
5721 #define MCG_SC_FCRDIV_SHIFT                      1
5722 #define MCG_SC_FCRDIV(x)                         (((uint8_t)(((uint8_t)(x))<<MCG_SC_FCRDIV_SHIFT))&MCG_SC_FCRDIV_MASK)
5723 #define MCG_SC_FLTPRSRV_MASK                     0x10u
5724 #define MCG_SC_FLTPRSRV_SHIFT                    4
5725 #define MCG_SC_ATMF_MASK                         0x20u
5726 #define MCG_SC_ATMF_SHIFT                        5
5727 #define MCG_SC_ATMS_MASK                         0x40u
5728 #define MCG_SC_ATMS_SHIFT                        6
5729 #define MCG_SC_ATME_MASK                         0x80u
5730 #define MCG_SC_ATME_SHIFT                        7
5731 /* ATCVH Bit Fields */
5732 #define MCG_ATCVH_ATCVH_MASK                     0xFFu
5733 #define MCG_ATCVH_ATCVH_SHIFT                    0
5734 #define MCG_ATCVH_ATCVH(x)                       (((uint8_t)(((uint8_t)(x))<<MCG_ATCVH_ATCVH_SHIFT))&MCG_ATCVH_ATCVH_MASK)
5735 /* ATCVL Bit Fields */
5736 #define MCG_ATCVL_ATCVL_MASK                     0xFFu
5737 #define MCG_ATCVL_ATCVL_SHIFT                    0
5738 #define MCG_ATCVL_ATCVL(x)                       (((uint8_t)(((uint8_t)(x))<<MCG_ATCVL_ATCVL_SHIFT))&MCG_ATCVL_ATCVL_MASK)
5739 /* C7 Bit Fields */
5740 #define MCG_C7_OSCSEL_MASK                       0x3u
5741 #define MCG_C7_OSCSEL_SHIFT                      0
5742 #define MCG_C7_OSCSEL(x)                         (((uint8_t)(((uint8_t)(x))<<MCG_C7_OSCSEL_SHIFT))&MCG_C7_OSCSEL_MASK)
5743 /* C8 Bit Fields */
5744 #define MCG_C8_LOCS1_MASK                        0x1u
5745 #define MCG_C8_LOCS1_SHIFT                       0
5746 #define MCG_C8_CME1_MASK                         0x20u
5747 #define MCG_C8_CME1_SHIFT                        5
5748 #define MCG_C8_LOLRE_MASK                        0x40u
5749 #define MCG_C8_LOLRE_SHIFT                       6
5750 #define MCG_C8_LOCRE1_MASK                       0x80u
5751 #define MCG_C8_LOCRE1_SHIFT                      7
5752
5753 /*!
5754  * @}
5755  */ /* end of group MCG_Register_Masks */
5756
5757
5758 /* MCG - Peripheral instance base addresses */
5759 /** Peripheral MCG base address */
5760 #define MCG_BASE                                 (0x40064000u)
5761 /** Peripheral MCG base pointer */
5762 #define MCG                                      ((MCG_Type *)MCG_BASE)
5763 #define MCG_BASE_PTR                             (MCG)
5764 /** Array initializer of MCG peripheral base addresses */
5765 #define MCG_BASE_ADDRS                           { MCG_BASE }
5766 /** Array initializer of MCG peripheral base pointers */
5767 #define MCG_BASE_PTRS                            { MCG }
5768
5769 /* ----------------------------------------------------------------------------
5770    -- MCG - Register accessor macros
5771    ---------------------------------------------------------------------------- */
5772
5773 /*!
5774  * @addtogroup MCG_Register_Accessor_Macros MCG - Register accessor macros
5775  * @{
5776  */
5777
5778
5779 /* MCG - Register instance definitions */
5780 /* MCG */
5781 #define MCG_C1                                   MCG_C1_REG(MCG)
5782 #define MCG_C2                                   MCG_C2_REG(MCG)
5783 #define MCG_C3                                   MCG_C3_REG(MCG)
5784 #define MCG_C4                                   MCG_C4_REG(MCG)
5785 #define MCG_C5                                   MCG_C5_REG(MCG)
5786 #define MCG_C6                                   MCG_C6_REG(MCG)
5787 #define MCG_S                                    MCG_S_REG(MCG)
5788 #define MCG_SC                                   MCG_SC_REG(MCG)
5789 #define MCG_ATCVH                                MCG_ATCVH_REG(MCG)
5790 #define MCG_ATCVL                                MCG_ATCVL_REG(MCG)
5791 #define MCG_C7                                   MCG_C7_REG(MCG)
5792 #define MCG_C8                                   MCG_C8_REG(MCG)
5793
5794 /*!
5795  * @}
5796  */ /* end of group MCG_Register_Accessor_Macros */
5797
5798
5799 /*!
5800  * @}
5801  */ /* end of group MCG_Peripheral_Access_Layer */
5802
5803
5804 /* ----------------------------------------------------------------------------
5805    -- MCM Peripheral Access Layer
5806    ---------------------------------------------------------------------------- */
5807
5808 /*!
5809  * @addtogroup MCM_Peripheral_Access_Layer MCM Peripheral Access Layer
5810  * @{
5811  */
5812
5813 /** MCM - Register Layout Typedef */
5814 typedef struct {
5815        uint8_t RESERVED_0[8];
5816   __I  uint16_t PLASC;                             /**< Crossbar Switch (AXBS) Slave Configuration, offset: 0x8 */
5817   __I  uint16_t PLAMC;                             /**< Crossbar Switch (AXBS) Master Configuration, offset: 0xA */
5818   __IO uint32_t PLACR;                             /**< Crossbar Switch (AXBS) Control Register, offset: 0xC */
5819   __IO uint32_t ISCR;                              /**< Interrupt Status and Control Register, offset: 0x10 */
5820        uint8_t RESERVED_1[44];
5821   __IO uint32_t CPO;                               /**< Compute Operation Control Register, offset: 0x40 */
5822 } MCM_Type, *MCM_MemMapPtr;
5823
5824 /* ----------------------------------------------------------------------------
5825    -- MCM - Register accessor macros
5826    ---------------------------------------------------------------------------- */
5827
5828 /*!
5829  * @addtogroup MCM_Register_Accessor_Macros MCM - Register accessor macros
5830  * @{
5831  */
5832
5833
5834 /* MCM - Register accessors */
5835 #define MCM_PLASC_REG(base)                      ((base)->PLASC)
5836 #define MCM_PLAMC_REG(base)                      ((base)->PLAMC)
5837 #define MCM_PLACR_REG(base)                      ((base)->PLACR)
5838 #define MCM_ISCR_REG(base)                       ((base)->ISCR)
5839 #define MCM_CPO_REG(base)                        ((base)->CPO)
5840
5841 /*!
5842  * @}
5843  */ /* end of group MCM_Register_Accessor_Macros */
5844
5845
5846 /* ----------------------------------------------------------------------------
5847    -- MCM Register Masks
5848    ---------------------------------------------------------------------------- */
5849
5850 /*!
5851  * @addtogroup MCM_Register_Masks MCM Register Masks
5852  * @{
5853  */
5854
5855 /* PLASC Bit Fields */
5856 #define MCM_PLASC_ASC_MASK                       0xFFu
5857 #define MCM_PLASC_ASC_SHIFT                      0
5858 #define MCM_PLASC_ASC(x)                         (((uint16_t)(((uint16_t)(x))<<MCM_PLASC_ASC_SHIFT))&MCM_PLASC_ASC_MASK)
5859 /* PLAMC Bit Fields */
5860 #define MCM_PLAMC_AMC_MASK                       0xFFu
5861 #define MCM_PLAMC_AMC_SHIFT                      0
5862 #define MCM_PLAMC_AMC(x)                         (((uint16_t)(((uint16_t)(x))<<MCM_PLAMC_AMC_SHIFT))&MCM_PLAMC_AMC_MASK)
5863 /* PLACR Bit Fields */
5864 #define MCM_PLACR_ARB_MASK                       0x200u
5865 #define MCM_PLACR_ARB_SHIFT                      9
5866 /* ISCR Bit Fields */
5867 #define MCM_ISCR_FIOC_MASK                       0x100u
5868 #define MCM_ISCR_FIOC_SHIFT                      8
5869 #define MCM_ISCR_FDZC_MASK                       0x200u
5870 #define MCM_ISCR_FDZC_SHIFT                      9
5871 #define MCM_ISCR_FOFC_MASK                       0x400u
5872 #define MCM_ISCR_FOFC_SHIFT                      10
5873 #define MCM_ISCR_FUFC_MASK                       0x800u
5874 #define MCM_ISCR_FUFC_SHIFT                      11
5875 #define MCM_ISCR_FIXC_MASK                       0x1000u
5876 #define MCM_ISCR_FIXC_SHIFT                      12
5877 #define MCM_ISCR_FIDC_MASK                       0x8000u
5878 #define MCM_ISCR_FIDC_SHIFT                      15
5879 #define MCM_ISCR_FIOCE_MASK                      0x1000000u
5880 #define MCM_ISCR_FIOCE_SHIFT                     24
5881 #define MCM_ISCR_FDZCE_MASK                      0x2000000u
5882 #define MCM_ISCR_FDZCE_SHIFT                     25
5883 #define MCM_ISCR_FOFCE_MASK                      0x4000000u
5884 #define MCM_ISCR_FOFCE_SHIFT                     26
5885 #define MCM_ISCR_FUFCE_MASK                      0x8000000u
5886 #define MCM_ISCR_FUFCE_SHIFT                     27
5887 #define MCM_ISCR_FIXCE_MASK                      0x10000000u
5888 #define MCM_ISCR_FIXCE_SHIFT                     28
5889 #define MCM_ISCR_FIDCE_MASK                      0x80000000u
5890 #define MCM_ISCR_FIDCE_SHIFT                     31
5891 /* CPO Bit Fields */
5892 #define MCM_CPO_CPOREQ_MASK                      0x1u
5893 #define MCM_CPO_CPOREQ_SHIFT                     0
5894 #define MCM_CPO_CPOACK_MASK                      0x2u
5895 #define MCM_CPO_CPOACK_SHIFT                     1
5896 #define MCM_CPO_CPOWOI_MASK                      0x4u
5897 #define MCM_CPO_CPOWOI_SHIFT                     2
5898
5899 /*!
5900  * @}
5901  */ /* end of group MCM_Register_Masks */
5902
5903
5904 /* MCM - Peripheral instance base addresses */
5905 /** Peripheral MCM base address */
5906 #define MCM_BASE                                 (0xE0080000u)
5907 /** Peripheral MCM base pointer */
5908 #define MCM                                      ((MCM_Type *)MCM_BASE)
5909 #define MCM_BASE_PTR                             (MCM)
5910 /** Array initializer of MCM peripheral base addresses */
5911 #define MCM_BASE_ADDRS                           { MCM_BASE }
5912 /** Array initializer of MCM peripheral base pointers */
5913 #define MCM_BASE_PTRS                            { MCM }
5914
5915 /* ----------------------------------------------------------------------------
5916    -- MCM - Register accessor macros
5917    ---------------------------------------------------------------------------- */
5918
5919 /*!
5920  * @addtogroup MCM_Register_Accessor_Macros MCM - Register accessor macros
5921  * @{
5922  */
5923
5924
5925 /* MCM - Register instance definitions */
5926 /* MCM */
5927 #define MCM_PLASC                                MCM_PLASC_REG(MCM)
5928 #define MCM_PLAMC                                MCM_PLAMC_REG(MCM)
5929 #define MCM_PLACR                                MCM_PLACR_REG(MCM)
5930 #define MCM_ISCR                                 MCM_ISCR_REG(MCM)
5931 #define MCM_CPO                                  MCM_CPO_REG(MCM)
5932
5933 /*!
5934  * @}
5935  */ /* end of group MCM_Register_Accessor_Macros */
5936
5937
5938 /*!
5939  * @}
5940  */ /* end of group MCM_Peripheral_Access_Layer */
5941
5942
5943 /* ----------------------------------------------------------------------------
5944    -- NV Peripheral Access Layer
5945    ---------------------------------------------------------------------------- */
5946
5947 /*!
5948  * @addtogroup NV_Peripheral_Access_Layer NV Peripheral Access Layer
5949  * @{
5950  */
5951
5952 /** NV - Register Layout Typedef */
5953 typedef struct {
5954   __I  uint8_t BACKKEY3;                           /**< Backdoor Comparison Key 3., offset: 0x0 */
5955   __I  uint8_t BACKKEY2;                           /**< Backdoor Comparison Key 2., offset: 0x1 */
5956   __I  uint8_t BACKKEY1;                           /**< Backdoor Comparison Key 1., offset: 0x2 */
5957   __I  uint8_t BACKKEY0;                           /**< Backdoor Comparison Key 0., offset: 0x3 */
5958   __I  uint8_t BACKKEY7;                           /**< Backdoor Comparison Key 7., offset: 0x4 */
5959   __I  uint8_t BACKKEY6;                           /**< Backdoor Comparison Key 6., offset: 0x5 */
5960   __I  uint8_t BACKKEY5;                           /**< Backdoor Comparison Key 5., offset: 0x6 */
5961   __I  uint8_t BACKKEY4;                           /**< Backdoor Comparison Key 4., offset: 0x7 */
5962   __I  uint8_t FPROT3;                             /**< Non-volatile P-Flash Protection 1 - Low Register, offset: 0x8 */
5963   __I  uint8_t FPROT2;                             /**< Non-volatile P-Flash Protection 1 - High Register, offset: 0x9 */
5964   __I  uint8_t FPROT1;                             /**< Non-volatile P-Flash Protection 0 - Low Register, offset: 0xA */
5965   __I  uint8_t FPROT0;                             /**< Non-volatile P-Flash Protection 0 - High Register, offset: 0xB */
5966   __I  uint8_t FSEC;                               /**< Non-volatile Flash Security Register, offset: 0xC */
5967   __I  uint8_t FOPT;                               /**< Non-volatile Flash Option Register, offset: 0xD */
5968 } NV_Type, *NV_MemMapPtr;
5969
5970 /* ----------------------------------------------------------------------------
5971    -- NV - Register accessor macros
5972    ---------------------------------------------------------------------------- */
5973
5974 /*!
5975  * @addtogroup NV_Register_Accessor_Macros NV - Register accessor macros
5976  * @{
5977  */
5978
5979
5980 /* NV - Register accessors */
5981 #define NV_BACKKEY3_REG(base)                    ((base)->BACKKEY3)
5982 #define NV_BACKKEY2_REG(base)                    ((base)->BACKKEY2)
5983 #define NV_BACKKEY1_REG(base)                    ((base)->BACKKEY1)
5984 #define NV_BACKKEY0_REG(base)                    ((base)->BACKKEY0)
5985 #define NV_BACKKEY7_REG(base)                    ((base)->BACKKEY7)
5986 #define NV_BACKKEY6_REG(base)                    ((base)->BACKKEY6)
5987 #define NV_BACKKEY5_REG(base)                    ((base)->BACKKEY5)
5988 #define NV_BACKKEY4_REG(base)                    ((base)->BACKKEY4)
5989 #define NV_FPROT3_REG(base)                      ((base)->FPROT3)
5990 #define NV_FPROT2_REG(base)                      ((base)->FPROT2)
5991 #define NV_FPROT1_REG(base)                      ((base)->FPROT1)
5992 #define NV_FPROT0_REG(base)                      ((base)->FPROT0)
5993 #define NV_FSEC_REG(base)                        ((base)->FSEC)
5994 #define NV_FOPT_REG(base)                        ((base)->FOPT)
5995
5996 /*!
5997  * @}
5998  */ /* end of group NV_Register_Accessor_Macros */
5999
6000
6001 /* ----------------------------------------------------------------------------
6002    -- NV Register Masks
6003    ---------------------------------------------------------------------------- */
6004
6005 /*!
6006  * @addtogroup NV_Register_Masks NV Register Masks
6007  * @{
6008  */
6009
6010 /* BACKKEY3 Bit Fields */
6011 #define NV_BACKKEY3_KEY_MASK                     0xFFu
6012 #define NV_BACKKEY3_KEY_SHIFT                    0
6013 #define NV_BACKKEY3_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY3_KEY_SHIFT))&NV_BACKKEY3_KEY_MASK)
6014 /* BACKKEY2 Bit Fields */
6015 #define NV_BACKKEY2_KEY_MASK                     0xFFu
6016 #define NV_BACKKEY2_KEY_SHIFT                    0
6017 #define NV_BACKKEY2_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY2_KEY_SHIFT))&NV_BACKKEY2_KEY_MASK)
6018 /* BACKKEY1 Bit Fields */
6019 #define NV_BACKKEY1_KEY_MASK                     0xFFu
6020 #define NV_BACKKEY1_KEY_SHIFT                    0
6021 #define NV_BACKKEY1_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY1_KEY_SHIFT))&NV_BACKKEY1_KEY_MASK)
6022 /* BACKKEY0 Bit Fields */
6023 #define NV_BACKKEY0_KEY_MASK                     0xFFu
6024 #define NV_BACKKEY0_KEY_SHIFT                    0
6025 #define NV_BACKKEY0_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY0_KEY_SHIFT))&NV_BACKKEY0_KEY_MASK)
6026 /* BACKKEY7 Bit Fields */
6027 #define NV_BACKKEY7_KEY_MASK                     0xFFu
6028 #define NV_BACKKEY7_KEY_SHIFT                    0
6029 #define NV_BACKKEY7_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY7_KEY_SHIFT))&NV_BACKKEY7_KEY_MASK)
6030 /* BACKKEY6 Bit Fields */
6031 #define NV_BACKKEY6_KEY_MASK                     0xFFu
6032 #define NV_BACKKEY6_KEY_SHIFT                    0
6033 #define NV_BACKKEY6_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY6_KEY_SHIFT))&NV_BACKKEY6_KEY_MASK)
6034 /* BACKKEY5 Bit Fields */
6035 #define NV_BACKKEY5_KEY_MASK                     0xFFu
6036 #define NV_BACKKEY5_KEY_SHIFT                    0
6037 #define NV_BACKKEY5_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY5_KEY_SHIFT))&NV_BACKKEY5_KEY_MASK)
6038 /* BACKKEY4 Bit Fields */
6039 #define NV_BACKKEY4_KEY_MASK                     0xFFu
6040 #define NV_BACKKEY4_KEY_SHIFT                    0
6041 #define NV_BACKKEY4_KEY(x)                       (((uint8_t)(((uint8_t)(x))<<NV_BACKKEY4_KEY_SHIFT))&NV_BACKKEY4_KEY_MASK)
6042 /* FPROT3 Bit Fields */
6043 #define NV_FPROT3_PROT_MASK                      0xFFu
6044 #define NV_FPROT3_PROT_SHIFT                     0
6045 #define NV_FPROT3_PROT(x)                        (((uint8_t)(((uint8_t)(x))<<NV_FPROT3_PROT_SHIFT))&NV_FPROT3_PROT_MASK)
6046 /* FPROT2 Bit Fields */
6047 #define NV_FPROT2_PROT_MASK                      0xFFu
6048 #define NV_FPROT2_PROT_SHIFT                     0
6049 #define NV_FPROT2_PROT(x)                        (((uint8_t)(((uint8_t)(x))<<NV_FPROT2_PROT_SHIFT))&NV_FPROT2_PROT_MASK)
6050 /* FPROT1 Bit Fields */
6051 #define NV_FPROT1_PROT_MASK                      0xFFu
6052 #define NV_FPROT1_PROT_SHIFT                     0
6053 #define NV_FPROT1_PROT(x)                        (((uint8_t)(((uint8_t)(x))<<NV_FPROT1_PROT_SHIFT))&NV_FPROT1_PROT_MASK)
6054 /* FPROT0 Bit Fields */
6055 #define NV_FPROT0_PROT_MASK                      0xFFu
6056 #define NV_FPROT0_PROT_SHIFT                     0
6057 #define NV_FPROT0_PROT(x)                        (((uint8_t)(((uint8_t)(x))<<NV_FPROT0_PROT_SHIFT))&NV_FPROT0_PROT_MASK)
6058 /* FSEC Bit Fields */
6059 #define NV_FSEC_SEC_MASK                         0x3u
6060 #define NV_FSEC_SEC_SHIFT                        0
6061 #define NV_FSEC_SEC(x)                           (((uint8_t)(((uint8_t)(x))<<NV_FSEC_SEC_SHIFT))&NV_FSEC_SEC_MASK)
6062 #define NV_FSEC_FSLACC_MASK                      0xCu
6063 #define NV_FSEC_FSLACC_SHIFT                     2
6064 #define NV_FSEC_FSLACC(x)                        (((uint8_t)(((uint8_t)(x))<<NV_FSEC_FSLACC_SHIFT))&NV_FSEC_FSLACC_MASK)
6065 #define NV_FSEC_MEEN_MASK                        0x30u
6066 #define NV_FSEC_MEEN_SHIFT                       4
6067 #define NV_FSEC_MEEN(x)                          (((uint8_t)(((uint8_t)(x))<<NV_FSEC_MEEN_SHIFT))&NV_FSEC_MEEN_MASK)
6068 #define NV_FSEC_KEYEN_MASK                       0xC0u
6069 #define NV_FSEC_KEYEN_SHIFT                      6
6070 #define NV_FSEC_KEYEN(x)                         (((uint8_t)(((uint8_t)(x))<<NV_FSEC_KEYEN_SHIFT))&NV_FSEC_KEYEN_MASK)
6071 /* FOPT Bit Fields */
6072 #define NV_FOPT_LPBOOT_MASK                      0x1u
6073 #define NV_FOPT_LPBOOT_SHIFT                     0
6074 #define NV_FOPT_EZPORT_DIS_MASK                  0x2u
6075 #define NV_FOPT_EZPORT_DIS_SHIFT                 1
6076 #define NV_FOPT_NMI_DIS_MASK                     0x4u
6077 #define NV_FOPT_NMI_DIS_SHIFT                    2
6078 #define NV_FOPT_FAST_INIT_MASK                   0x20u
6079 #define NV_FOPT_FAST_INIT_SHIFT                  5
6080
6081 /*!
6082  * @}
6083  */ /* end of group NV_Register_Masks */
6084
6085
6086 /* NV - Peripheral instance base addresses */
6087 /** Peripheral FTFA_FlashConfig base address */
6088 #define FTFA_FlashConfig_BASE                    (0x400u)
6089 /** Peripheral FTFA_FlashConfig base pointer */
6090 #define FTFA_FlashConfig                         ((NV_Type *)FTFA_FlashConfig_BASE)
6091 #define FTFA_FlashConfig_BASE_PTR                (FTFA_FlashConfig)
6092 /** Array initializer of NV peripheral base addresses */
6093 #define NV_BASE_ADDRS                            { FTFA_FlashConfig_BASE }
6094 /** Array initializer of NV peripheral base pointers */
6095 #define NV_BASE_PTRS                             { FTFA_FlashConfig }
6096
6097 /* ----------------------------------------------------------------------------
6098    -- NV - Register accessor macros
6099    ---------------------------------------------------------------------------- */
6100
6101 /*!
6102  * @addtogroup NV_Register_Accessor_Macros NV - Register accessor macros
6103  * @{
6104  */
6105
6106
6107 /* NV - Register instance definitions */
6108 /* FTFA_FlashConfig */
6109 #define NV_BACKKEY3                              NV_BACKKEY3_REG(FTFA_FlashConfig)
6110 #define NV_BACKKEY2                              NV_BACKKEY2_REG(FTFA_FlashConfig)
6111 #define NV_BACKKEY1                              NV_BACKKEY1_REG(FTFA_FlashConfig)
6112 #define NV_BACKKEY0                              NV_BACKKEY0_REG(FTFA_FlashConfig)
6113 #define NV_BACKKEY7                              NV_BACKKEY7_REG(FTFA_FlashConfig)
6114 #define NV_BACKKEY6                              NV_BACKKEY6_REG(FTFA_FlashConfig)
6115 #define NV_BACKKEY5                              NV_BACKKEY5_REG(FTFA_FlashConfig)
6116 #define NV_BACKKEY4                              NV_BACKKEY4_REG(FTFA_FlashConfig)
6117 #define NV_FPROT3                                NV_FPROT3_REG(FTFA_FlashConfig)
6118 #define NV_FPROT2                                NV_FPROT2_REG(FTFA_FlashConfig)
6119 #define NV_FPROT1                                NV_FPROT1_REG(FTFA_FlashConfig)
6120 #define NV_FPROT0                                NV_FPROT0_REG(FTFA_FlashConfig)
6121 #define NV_FSEC                                  NV_FSEC_REG(FTFA_FlashConfig)
6122 #define NV_FOPT                                  NV_FOPT_REG(FTFA_FlashConfig)
6123
6124 /*!
6125  * @}
6126  */ /* end of group NV_Register_Accessor_Macros */
6127
6128
6129 /*!
6130  * @}
6131  */ /* end of group NV_Peripheral_Access_Layer */
6132
6133
6134 /* ----------------------------------------------------------------------------
6135    -- OSC Peripheral Access Layer
6136    ---------------------------------------------------------------------------- */
6137
6138 /*!
6139  * @addtogroup OSC_Peripheral_Access_Layer OSC Peripheral Access Layer
6140  * @{
6141  */
6142
6143 /** OSC - Register Layout Typedef */
6144 typedef struct {
6145   __IO uint8_t CR;                                 /**< OSC Control Register, offset: 0x0 */
6146        uint8_t RESERVED_0[1];
6147   __IO uint8_t DIV;                                /**< OSC_DIV, offset: 0x2 */
6148 } OSC_Type, *OSC_MemMapPtr;
6149
6150 /* ----------------------------------------------------------------------------
6151    -- OSC - Register accessor macros
6152    ---------------------------------------------------------------------------- */
6153
6154 /*!
6155  * @addtogroup OSC_Register_Accessor_Macros OSC - Register accessor macros
6156  * @{
6157  */
6158
6159
6160 /* OSC - Register accessors */
6161 #define OSC_CR_REG(base)                         ((base)->CR)
6162 #define OSC_DIV_REG(base)                        ((base)->DIV)
6163
6164 /*!
6165  * @}
6166  */ /* end of group OSC_Register_Accessor_Macros */
6167
6168
6169 /* ----------------------------------------------------------------------------
6170    -- OSC Register Masks
6171    ---------------------------------------------------------------------------- */
6172
6173 /*!
6174  * @addtogroup OSC_Register_Masks OSC Register Masks
6175  * @{
6176  */
6177
6178 /* CR Bit Fields */
6179 #define OSC_CR_SC16P_MASK                        0x1u
6180 #define OSC_CR_SC16P_SHIFT                       0
6181 #define OSC_CR_SC8P_MASK                         0x2u
6182 #define OSC_CR_SC8P_SHIFT                        1
6183 #define OSC_CR_SC4P_MASK                         0x4u
6184 #define OSC_CR_SC4P_SHIFT                        2
6185 #define OSC_CR_SC2P_MASK                         0x8u
6186 #define OSC_CR_SC2P_SHIFT                        3
6187 #define OSC_CR_EREFSTEN_MASK                     0x20u
6188 #define OSC_CR_EREFSTEN_SHIFT                    5
6189 #define OSC_CR_ERCLKEN_MASK                      0x80u
6190 #define OSC_CR_ERCLKEN_SHIFT                     7
6191 /* DIV Bit Fields */
6192 #define OSC_DIV_ERPS_MASK                        0xC0u
6193 #define OSC_DIV_ERPS_SHIFT                       6
6194 #define OSC_DIV_ERPS(x)                          (((uint8_t)(((uint8_t)(x))<<OSC_DIV_ERPS_SHIFT))&OSC_DIV_ERPS_MASK)
6195
6196 /*!
6197  * @}
6198  */ /* end of group OSC_Register_Masks */
6199
6200
6201 /* OSC - Peripheral instance base addresses */
6202 /** Peripheral OSC base address */
6203 #define OSC_BASE                                 (0x40065000u)
6204 /** Peripheral OSC base pointer */
6205 #define OSC                                      ((OSC_Type *)OSC_BASE)
6206 #define OSC_BASE_PTR                             (OSC)
6207 /** Array initializer of OSC peripheral base addresses */
6208 #define OSC_BASE_ADDRS                           { OSC_BASE }
6209 /** Array initializer of OSC peripheral base pointers */
6210 #define OSC_BASE_PTRS                            { OSC }
6211
6212 /* ----------------------------------------------------------------------------
6213    -- OSC - Register accessor macros
6214    ---------------------------------------------------------------------------- */
6215
6216 /*!
6217  * @addtogroup OSC_Register_Accessor_Macros OSC - Register accessor macros
6218  * @{
6219  */
6220
6221
6222 /* OSC - Register instance definitions */
6223 /* OSC */
6224 #define OSC_CR                                   OSC_CR_REG(OSC)
6225 #define OSC_DIV                                  OSC_DIV_REG(OSC)
6226
6227 /*!
6228  * @}
6229  */ /* end of group OSC_Register_Accessor_Macros */
6230
6231
6232 /*!
6233  * @}
6234  */ /* end of group OSC_Peripheral_Access_Layer */
6235
6236
6237 /* ----------------------------------------------------------------------------
6238    -- PDB Peripheral Access Layer
6239    ---------------------------------------------------------------------------- */
6240
6241 /*!
6242  * @addtogroup PDB_Peripheral_Access_Layer PDB Peripheral Access Layer
6243  * @{
6244  */
6245
6246 /** PDB - Register Layout Typedef */
6247 typedef struct {
6248   __IO uint32_t SC;                                /**< Status and Control register, offset: 0x0 */
6249   __IO uint32_t MOD;                               /**< Modulus register, offset: 0x4 */
6250   __I  uint32_t CNT;                               /**< Counter register, offset: 0x8 */
6251   __IO uint32_t IDLY;                              /**< Interrupt Delay register, offset: 0xC */
6252   struct {                                         /* offset: 0x10, array step: 0x28 */
6253     __IO uint32_t C1;                                /**< Channel n Control register 1, array offset: 0x10, array step: 0x28 */
6254     __IO uint32_t S;                                 /**< Channel n Status register, array offset: 0x14, array step: 0x28 */
6255     __IO uint32_t DLY[2];                            /**< Channel n Delay 0 register..Channel n Delay 1 register, array offset: 0x18, array step: index*0x28, index2*0x4 */
6256          uint8_t RESERVED_0[24];
6257   } CH[2];
6258        uint8_t RESERVED_0[240];
6259   struct {                                         /* offset: 0x150, array step: 0x8 */
6260     __IO uint32_t INTC;                              /**< DAC Interval Trigger n Control register, array offset: 0x150, array step: 0x8 */
6261     __IO uint32_t INT;                               /**< DAC Interval n register, array offset: 0x154, array step: 0x8 */
6262   } DAC[2];
6263        uint8_t RESERVED_1[48];
6264   __IO uint32_t POEN;                              /**< Pulse-Out n Enable register, offset: 0x190 */
6265   __IO uint32_t PODLY[2];                          /**< Pulse-Out n Delay register, array offset: 0x194, array step: 0x4 */
6266 } PDB_Type, *PDB_MemMapPtr;
6267
6268 /* ----------------------------------------------------------------------------
6269    -- PDB - Register accessor macros
6270    ---------------------------------------------------------------------------- */
6271
6272 /*!
6273  * @addtogroup PDB_Register_Accessor_Macros PDB - Register accessor macros
6274  * @{
6275  */
6276
6277
6278 /* PDB - Register accessors */
6279 #define PDB_SC_REG(base)                         ((base)->SC)
6280 #define PDB_MOD_REG(base)                        ((base)->MOD)
6281 #define PDB_CNT_REG(base)                        ((base)->CNT)
6282 #define PDB_IDLY_REG(base)                       ((base)->IDLY)
6283 #define PDB_C1_REG(base,index)                   ((base)->CH[index].C1)
6284 #define PDB_S_REG(base,index)                    ((base)->CH[index].S)
6285 #define PDB_DLY_REG(base,index,index2)           ((base)->CH[index].DLY[index2])
6286 #define PDB_INTC_REG(base,index)                 ((base)->DAC[index].INTC)
6287 #define PDB_INT_REG(base,index)                  ((base)->DAC[index].INT)
6288 #define PDB_POEN_REG(base)                       ((base)->POEN)
6289 #define PDB_PODLY_REG(base,index)                ((base)->PODLY[index])
6290
6291 /*!
6292  * @}
6293  */ /* end of group PDB_Register_Accessor_Macros */
6294
6295
6296 /* ----------------------------------------------------------------------------
6297    -- PDB Register Masks
6298    ---------------------------------------------------------------------------- */
6299
6300 /*!
6301  * @addtogroup PDB_Register_Masks PDB Register Masks
6302  * @{
6303  */
6304
6305 /* SC Bit Fields */
6306 #define PDB_SC_LDOK_MASK                         0x1u
6307 #define PDB_SC_LDOK_SHIFT                        0
6308 #define PDB_SC_CONT_MASK                         0x2u
6309 #define PDB_SC_CONT_SHIFT                        1
6310 #define PDB_SC_MULT_MASK                         0xCu
6311 #define PDB_SC_MULT_SHIFT                        2
6312 #define PDB_SC_MULT(x)                           (((uint32_t)(((uint32_t)(x))<<PDB_SC_MULT_SHIFT))&PDB_SC_MULT_MASK)
6313 #define PDB_SC_PDBIE_MASK                        0x20u
6314 #define PDB_SC_PDBIE_SHIFT                       5
6315 #define PDB_SC_PDBIF_MASK                        0x40u
6316 #define PDB_SC_PDBIF_SHIFT                       6
6317 #define PDB_SC_PDBEN_MASK                        0x80u
6318 #define PDB_SC_PDBEN_SHIFT                       7
6319 #define PDB_SC_TRGSEL_MASK                       0xF00u
6320 #define PDB_SC_TRGSEL_SHIFT                      8
6321 #define PDB_SC_TRGSEL(x)                         (((uint32_t)(((uint32_t)(x))<<PDB_SC_TRGSEL_SHIFT))&PDB_SC_TRGSEL_MASK)
6322 #define PDB_SC_PRESCALER_MASK                    0x7000u
6323 #define PDB_SC_PRESCALER_SHIFT                   12
6324 #define PDB_SC_PRESCALER(x)                      (((uint32_t)(((uint32_t)(x))<<PDB_SC_PRESCALER_SHIFT))&PDB_SC_PRESCALER_MASK)
6325 #define PDB_SC_DMAEN_MASK                        0x8000u
6326 #define PDB_SC_DMAEN_SHIFT                       15
6327 #define PDB_SC_SWTRIG_MASK                       0x10000u
6328 #define PDB_SC_SWTRIG_SHIFT                      16
6329 #define PDB_SC_PDBEIE_MASK                       0x20000u
6330 #define PDB_SC_PDBEIE_SHIFT                      17
6331 #define PDB_SC_LDMOD_MASK                        0xC0000u
6332 #define PDB_SC_LDMOD_SHIFT                       18
6333 #define PDB_SC_LDMOD(x)                          (((uint32_t)(((uint32_t)(x))<<PDB_SC_LDMOD_SHIFT))&PDB_SC_LDMOD_MASK)
6334 /* MOD Bit Fields */
6335 #define PDB_MOD_MOD_MASK                         0xFFFFu
6336 #define PDB_MOD_MOD_SHIFT                        0
6337 #define PDB_MOD_MOD(x)                           (((uint32_t)(((uint32_t)(x))<<PDB_MOD_MOD_SHIFT))&PDB_MOD_MOD_MASK)
6338 /* CNT Bit Fields */
6339 #define PDB_CNT_CNT_MASK                         0xFFFFu
6340 #define PDB_CNT_CNT_SHIFT                        0
6341 #define PDB_CNT_CNT(x)                           (((uint32_t)(((uint32_t)(x))<<PDB_CNT_CNT_SHIFT))&PDB_CNT_CNT_MASK)
6342 /* IDLY Bit Fields */
6343 #define PDB_IDLY_IDLY_MASK                       0xFFFFu
6344 #define PDB_IDLY_IDLY_SHIFT                      0
6345 #define PDB_IDLY_IDLY(x)                         (((uint32_t)(((uint32_t)(x))<<PDB_IDLY_IDLY_SHIFT))&PDB_IDLY_IDLY_MASK)
6346 /* C1 Bit Fields */
6347 #define PDB_C1_EN_MASK                           0xFFu
6348 #define PDB_C1_EN_SHIFT                          0
6349 #define PDB_C1_EN(x)                             (((uint32_t)(((uint32_t)(x))<<PDB_C1_EN_SHIFT))&PDB_C1_EN_MASK)
6350 #define PDB_C1_TOS_MASK                          0xFF00u
6351 #define PDB_C1_TOS_SHIFT                         8
6352 #define PDB_C1_TOS(x)                            (((uint32_t)(((uint32_t)(x))<<PDB_C1_TOS_SHIFT))&PDB_C1_TOS_MASK)
6353 #define PDB_C1_BB_MASK                           0xFF0000u
6354 #define PDB_C1_BB_SHIFT                          16
6355 #define PDB_C1_BB(x)                             (((uint32_t)(((uint32_t)(x))<<PDB_C1_BB_SHIFT))&PDB_C1_BB_MASK)
6356 /* S Bit Fields */
6357 #define PDB_S_ERR_MASK                           0xFFu
6358 #define PDB_S_ERR_SHIFT                          0
6359 #define PDB_S_ERR(x)                             (((uint32_t)(((uint32_t)(x))<<PDB_S_ERR_SHIFT))&PDB_S_ERR_MASK)
6360 #define PDB_S_CF_MASK                            0xFF0000u
6361 #define PDB_S_CF_SHIFT                           16
6362 #define PDB_S_CF(x)                              (((uint32_t)(((uint32_t)(x))<<PDB_S_CF_SHIFT))&PDB_S_CF_MASK)
6363 /* DLY Bit Fields */
6364 #define PDB_DLY_DLY_MASK                         0xFFFFu
6365 #define PDB_DLY_DLY_SHIFT                        0
6366 #define PDB_DLY_DLY(x)                           (((uint32_t)(((uint32_t)(x))<<PDB_DLY_DLY_SHIFT))&PDB_DLY_DLY_MASK)
6367 /* INTC Bit Fields */
6368 #define PDB_INTC_TOE_MASK                        0x1u
6369 #define PDB_INTC_TOE_SHIFT                       0
6370 #define PDB_INTC_EXT_MASK                        0x2u
6371 #define PDB_INTC_EXT_SHIFT                       1
6372 /* INT Bit Fields */
6373 #define PDB_INT_INT_MASK                         0xFFFFu
6374 #define PDB_INT_INT_SHIFT                        0
6375 #define PDB_INT_INT(x)                           (((uint32_t)(((uint32_t)(x))<<PDB_INT_INT_SHIFT))&PDB_INT_INT_MASK)
6376 /* POEN Bit Fields */
6377 #define PDB_POEN_POEN_MASK                       0xFFu
6378 #define PDB_POEN_POEN_SHIFT                      0
6379 #define PDB_POEN_POEN(x)                         (((uint32_t)(((uint32_t)(x))<<PDB_POEN_POEN_SHIFT))&PDB_POEN_POEN_MASK)
6380 /* PODLY Bit Fields */
6381 #define PDB_PODLY_DLY2_MASK                      0xFFFFu
6382 #define PDB_PODLY_DLY2_SHIFT                     0
6383 #define PDB_PODLY_DLY2(x)                        (((uint32_t)(((uint32_t)(x))<<PDB_PODLY_DLY2_SHIFT))&PDB_PODLY_DLY2_MASK)
6384 #define PDB_PODLY_DLY1_MASK                      0xFFFF0000u
6385 #define PDB_PODLY_DLY1_SHIFT                     16
6386 #define PDB_PODLY_DLY1(x)                        (((uint32_t)(((uint32_t)(x))<<PDB_PODLY_DLY1_SHIFT))&PDB_PODLY_DLY1_MASK)
6387
6388 /*!
6389  * @}
6390  */ /* end of group PDB_Register_Masks */
6391
6392
6393 /* PDB - Peripheral instance base addresses */
6394 /** Peripheral PDB0 base address */
6395 #define PDB0_BASE                                (0x40036000u)
6396 /** Peripheral PDB0 base pointer */
6397 #define PDB0                                     ((PDB_Type *)PDB0_BASE)
6398 #define PDB0_BASE_PTR                            (PDB0)
6399 /** Array initializer of PDB peripheral base addresses */
6400 #define PDB_BASE_ADDRS                           { PDB0_BASE }
6401 /** Array initializer of PDB peripheral base pointers */
6402 #define PDB_BASE_PTRS                            { PDB0 }
6403 /** Interrupt vectors for the PDB peripheral type */
6404 #define PDB_IRQS                                 { PDB0_IRQn }
6405
6406 /* ----------------------------------------------------------------------------
6407    -- PDB - Register accessor macros
6408    ---------------------------------------------------------------------------- */
6409
6410 /*!
6411  * @addtogroup PDB_Register_Accessor_Macros PDB - Register accessor macros
6412  * @{
6413  */
6414
6415
6416 /* PDB - Register instance definitions */
6417 /* PDB0 */
6418 #define PDB0_SC                                  PDB_SC_REG(PDB0)
6419 #define PDB0_MOD                                 PDB_MOD_REG(PDB0)
6420 #define PDB0_CNT                                 PDB_CNT_REG(PDB0)
6421 #define PDB0_IDLY                                PDB_IDLY_REG(PDB0)
6422 #define PDB0_CH0C1                               PDB_C1_REG(PDB0,0)
6423 #define PDB0_CH0S                                PDB_S_REG(PDB0,0)
6424 #define PDB0_CH0DLY0                             PDB_DLY_REG(PDB0,0,0)
6425 #define PDB0_CH0DLY1                             PDB_DLY_REG(PDB0,0,1)
6426 #define PDB0_CH1C1                               PDB_C1_REG(PDB0,1)
6427 #define PDB0_CH1S                                PDB_S_REG(PDB0,1)
6428 #define PDB0_CH1DLY0                             PDB_DLY_REG(PDB0,1,0)
6429 #define PDB0_CH1DLY1                             PDB_DLY_REG(PDB0,1,1)
6430 #define PDB0_DACINTC0                            PDB_INTC_REG(PDB0,0)
6431 #define PDB0_DACINT0                             PDB_INT_REG(PDB0,0)
6432 #define PDB0_DACINTC1                            PDB_INTC_REG(PDB0,1)
6433 #define PDB0_DACINT1                             PDB_INT_REG(PDB0,1)
6434 #define PDB0_POEN                                PDB_POEN_REG(PDB0)
6435 #define PDB0_PO0DLY                              PDB_PODLY_REG(PDB0,0)
6436 #define PDB0_PO1DLY                              PDB_PODLY_REG(PDB0,1)
6437
6438 /* PDB - Register array accessors */
6439 #define PDB0_C1(index)                           PDB_C1_REG(PDB0,index)
6440 #define PDB0_S(index)                            PDB_S_REG(PDB0,index)
6441 #define PDB0_DLY(index,index2)                   PDB_DLY_REG(PDB0,index,index2)
6442 #define PDB0_INTC(index)                         PDB_INTC_REG(PDB0,index)
6443 #define PDB0_INT(index)                          PDB_INT_REG(PDB0,index)
6444 #define PDB0_PODLY(index)                        PDB_PODLY_REG(PDB0,index)
6445
6446 /*!
6447  * @}
6448  */ /* end of group PDB_Register_Accessor_Macros */
6449
6450
6451 /*!
6452  * @}
6453  */ /* end of group PDB_Peripheral_Access_Layer */
6454
6455
6456 /* ----------------------------------------------------------------------------
6457    -- PIT Peripheral Access Layer
6458    ---------------------------------------------------------------------------- */
6459
6460 /*!
6461  * @addtogroup PIT_Peripheral_Access_Layer PIT Peripheral Access Layer
6462  * @{
6463  */
6464
6465 /** PIT - Register Layout Typedef */
6466 typedef struct {
6467   __IO uint32_t MCR;                               /**< PIT Module Control Register, offset: 0x0 */
6468        uint8_t RESERVED_0[252];
6469   struct {                                         /* offset: 0x100, array step: 0x10 */
6470     __IO uint32_t LDVAL;                             /**< Timer Load Value Register, array offset: 0x100, array step: 0x10 */
6471     __I  uint32_t CVAL;                              /**< Current Timer Value Register, array offset: 0x104, array step: 0x10 */
6472     __IO uint32_t TCTRL;                             /**< Timer Control Register, array offset: 0x108, array step: 0x10 */
6473     __IO uint32_t TFLG;                              /**< Timer Flag Register, array offset: 0x10C, array step: 0x10 */
6474   } CHANNEL[4];
6475 } PIT_Type, *PIT_MemMapPtr;
6476
6477 /* ----------------------------------------------------------------------------
6478    -- PIT - Register accessor macros
6479    ---------------------------------------------------------------------------- */
6480
6481 /*!
6482  * @addtogroup PIT_Register_Accessor_Macros PIT - Register accessor macros
6483  * @{
6484  */
6485
6486
6487 /* PIT - Register accessors */
6488 #define PIT_MCR_REG(base)                        ((base)->MCR)
6489 #define PIT_LDVAL_REG(base,index)                ((base)->CHANNEL[index].LDVAL)
6490 #define PIT_CVAL_REG(base,index)                 ((base)->CHANNEL[index].CVAL)
6491 #define PIT_TCTRL_REG(base,index)                ((base)->CHANNEL[index].TCTRL)
6492 #define PIT_TFLG_REG(base,index)                 ((base)->CHANNEL[index].TFLG)
6493
6494 /*!
6495  * @}
6496  */ /* end of group PIT_Register_Accessor_Macros */
6497
6498
6499 /* ----------------------------------------------------------------------------
6500    -- PIT Register Masks
6501    ---------------------------------------------------------------------------- */
6502
6503 /*!
6504  * @addtogroup PIT_Register_Masks PIT Register Masks
6505  * @{
6506  */
6507
6508 /* MCR Bit Fields */
6509 #define PIT_MCR_FRZ_MASK                         0x1u
6510 #define PIT_MCR_FRZ_SHIFT                        0
6511 #define PIT_MCR_MDIS_MASK                        0x2u
6512 #define PIT_MCR_MDIS_SHIFT                       1
6513 /* LDVAL Bit Fields */
6514 #define PIT_LDVAL_TSV_MASK                       0xFFFFFFFFu
6515 #define PIT_LDVAL_TSV_SHIFT                      0
6516 #define PIT_LDVAL_TSV(x)                         (((uint32_t)(((uint32_t)(x))<<PIT_LDVAL_TSV_SHIFT))&PIT_LDVAL_TSV_MASK)
6517 /* CVAL Bit Fields */
6518 #define PIT_CVAL_TVL_MASK                        0xFFFFFFFFu
6519 #define PIT_CVAL_TVL_SHIFT                       0
6520 #define PIT_CVAL_TVL(x)                          (((uint32_t)(((uint32_t)(x))<<PIT_CVAL_TVL_SHIFT))&PIT_CVAL_TVL_MASK)
6521 /* TCTRL Bit Fields */
6522 #define PIT_TCTRL_TEN_MASK                       0x1u
6523 #define PIT_TCTRL_TEN_SHIFT                      0
6524 #define PIT_TCTRL_TIE_MASK                       0x2u
6525 #define PIT_TCTRL_TIE_SHIFT                      1
6526 #define PIT_TCTRL_CHN_MASK                       0x4u
6527 #define PIT_TCTRL_CHN_SHIFT                      2
6528 /* TFLG Bit Fields */
6529 #define PIT_TFLG_TIF_MASK                        0x1u
6530 #define PIT_TFLG_TIF_SHIFT                       0
6531
6532 /*!
6533  * @}
6534  */ /* end of group PIT_Register_Masks */
6535
6536
6537 /* PIT - Peripheral instance base addresses */
6538 /** Peripheral PIT base address */
6539 #define PIT_BASE                                 (0x40037000u)
6540 /** Peripheral PIT base pointer */
6541 #define PIT                                      ((PIT_Type *)PIT_BASE)
6542 #define PIT_BASE_PTR                             (PIT)
6543 /** Array initializer of PIT peripheral base addresses */
6544 #define PIT_BASE_ADDRS                           { PIT_BASE }
6545 /** Array initializer of PIT peripheral base pointers */
6546 #define PIT_BASE_PTRS                            { PIT }
6547 /** Interrupt vectors for the PIT peripheral type */
6548 #define PIT_IRQS                                 { PIT0_IRQn, PIT1_IRQn, PIT2_IRQn, PIT3_IRQn }
6549
6550 /* ----------------------------------------------------------------------------
6551    -- PIT - Register accessor macros
6552    ---------------------------------------------------------------------------- */
6553
6554 /*!
6555  * @addtogroup PIT_Register_Accessor_Macros PIT - Register accessor macros
6556  * @{
6557  */
6558
6559
6560 /* PIT - Register instance definitions */
6561 /* PIT */
6562 #define PIT_MCR                                  PIT_MCR_REG(PIT)
6563 #define PIT_LDVAL0                               PIT_LDVAL_REG(PIT,0)
6564 #define PIT_CVAL0                                PIT_CVAL_REG(PIT,0)
6565 #define PIT_TCTRL0                               PIT_TCTRL_REG(PIT,0)
6566 #define PIT_TFLG0                                PIT_TFLG_REG(PIT,0)
6567 #define PIT_LDVAL1                               PIT_LDVAL_REG(PIT,1)
6568 #define PIT_CVAL1                                PIT_CVAL_REG(PIT,1)
6569 #define PIT_TCTRL1                               PIT_TCTRL_REG(PIT,1)
6570 #define PIT_TFLG1                                PIT_TFLG_REG(PIT,1)
6571 #define PIT_LDVAL2                               PIT_LDVAL_REG(PIT,2)
6572 #define PIT_CVAL2                                PIT_CVAL_REG(PIT,2)
6573 #define PIT_TCTRL2                               PIT_TCTRL_REG(PIT,2)
6574 #define PIT_TFLG2                                PIT_TFLG_REG(PIT,2)
6575 #define PIT_LDVAL3                               PIT_LDVAL_REG(PIT,3)
6576 #define PIT_CVAL3                                PIT_CVAL_REG(PIT,3)
6577 #define PIT_TCTRL3                               PIT_TCTRL_REG(PIT,3)
6578 #define PIT_TFLG3                                PIT_TFLG_REG(PIT,3)
6579
6580 /* PIT - Register array accessors */
6581 #define PIT_LDVAL(index)                         PIT_LDVAL_REG(PIT,index)
6582 #define PIT_CVAL(index)                          PIT_CVAL_REG(PIT,index)
6583 #define PIT_TCTRL(index)                         PIT_TCTRL_REG(PIT,index)
6584 #define PIT_TFLG(index)                          PIT_TFLG_REG(PIT,index)
6585
6586 /*!
6587  * @}
6588  */ /* end of group PIT_Register_Accessor_Macros */
6589
6590
6591 /*!
6592  * @}
6593  */ /* end of group PIT_Peripheral_Access_Layer */
6594
6595
6596 /* ----------------------------------------------------------------------------
6597    -- PMC Peripheral Access Layer
6598    ---------------------------------------------------------------------------- */
6599
6600 /*!
6601  * @addtogroup PMC_Peripheral_Access_Layer PMC Peripheral Access Layer
6602  * @{
6603  */
6604
6605 /** PMC - Register Layout Typedef */
6606 typedef struct {
6607   __IO uint8_t LVDSC1;                             /**< Low Voltage Detect Status And Control 1 register, offset: 0x0 */
6608   __IO uint8_t LVDSC2;                             /**< Low Voltage Detect Status And Control 2 register, offset: 0x1 */
6609   __IO uint8_t REGSC;                              /**< Regulator Status And Control register, offset: 0x2 */
6610 } PMC_Type, *PMC_MemMapPtr;
6611
6612 /* ----------------------------------------------------------------------------
6613    -- PMC - Register accessor macros
6614    ---------------------------------------------------------------------------- */
6615
6616 /*!
6617  * @addtogroup PMC_Register_Accessor_Macros PMC - Register accessor macros
6618  * @{
6619  */
6620
6621
6622 /* PMC - Register accessors */
6623 #define PMC_LVDSC1_REG(base)                     ((base)->LVDSC1)
6624 #define PMC_LVDSC2_REG(base)                     ((base)->LVDSC2)
6625 #define PMC_REGSC_REG(base)                      ((base)->REGSC)
6626
6627 /*!
6628  * @}
6629  */ /* end of group PMC_Register_Accessor_Macros */
6630
6631
6632 /* ----------------------------------------------------------------------------
6633    -- PMC Register Masks
6634    ---------------------------------------------------------------------------- */
6635
6636 /*!
6637  * @addtogroup PMC_Register_Masks PMC Register Masks
6638  * @{
6639  */
6640
6641 /* LVDSC1 Bit Fields */
6642 #define PMC_LVDSC1_LVDV_MASK                     0x3u
6643 #define PMC_LVDSC1_LVDV_SHIFT                    0
6644 #define PMC_LVDSC1_LVDV(x)                       (((uint8_t)(((uint8_t)(x))<<PMC_LVDSC1_LVDV_SHIFT))&PMC_LVDSC1_LVDV_MASK)
6645 #define PMC_LVDSC1_LVDRE_MASK                    0x10u
6646 #define PMC_LVDSC1_LVDRE_SHIFT                   4
6647 #define PMC_LVDSC1_LVDIE_MASK                    0x20u
6648 #define PMC_LVDSC1_LVDIE_SHIFT                   5
6649 #define PMC_LVDSC1_LVDACK_MASK                   0x40u
6650 #define PMC_LVDSC1_LVDACK_SHIFT                  6
6651 #define PMC_LVDSC1_LVDF_MASK                     0x80u
6652 #define PMC_LVDSC1_LVDF_SHIFT                    7
6653 /* LVDSC2 Bit Fields */
6654 #define PMC_LVDSC2_LVWV_MASK                     0x3u
6655 #define PMC_LVDSC2_LVWV_SHIFT                    0
6656 #define PMC_LVDSC2_LVWV(x)                       (((uint8_t)(((uint8_t)(x))<<PMC_LVDSC2_LVWV_SHIFT))&PMC_LVDSC2_LVWV_MASK)
6657 #define PMC_LVDSC2_LVWIE_MASK                    0x20u
6658 #define PMC_LVDSC2_LVWIE_SHIFT                   5
6659 #define PMC_LVDSC2_LVWACK_MASK                   0x40u
6660 #define PMC_LVDSC2_LVWACK_SHIFT                  6
6661 #define PMC_LVDSC2_LVWF_MASK                     0x80u
6662 #define PMC_LVDSC2_LVWF_SHIFT                    7
6663 /* REGSC Bit Fields */
6664 #define PMC_REGSC_BGBE_MASK                      0x1u
6665 #define PMC_REGSC_BGBE_SHIFT                     0
6666 #define PMC_REGSC_REGONS_MASK                    0x4u
6667 #define PMC_REGSC_REGONS_SHIFT                   2
6668 #define PMC_REGSC_ACKISO_MASK                    0x8u
6669 #define PMC_REGSC_ACKISO_SHIFT                   3
6670 #define PMC_REGSC_BGEN_MASK                      0x10u
6671 #define PMC_REGSC_BGEN_SHIFT                     4
6672
6673 /*!
6674  * @}
6675  */ /* end of group PMC_Register_Masks */
6676
6677
6678 /* PMC - Peripheral instance base addresses */
6679 /** Peripheral PMC base address */
6680 #define PMC_BASE                                 (0x4007D000u)
6681 /** Peripheral PMC base pointer */
6682 #define PMC                                      ((PMC_Type *)PMC_BASE)
6683 #define PMC_BASE_PTR                             (PMC)
6684 /** Array initializer of PMC peripheral base addresses */
6685 #define PMC_BASE_ADDRS                           { PMC_BASE }
6686 /** Array initializer of PMC peripheral base pointers */
6687 #define PMC_BASE_PTRS                            { PMC }
6688 /** Interrupt vectors for the PMC peripheral type */
6689 #define PMC_IRQS                                 { LVD_LVW_IRQn }
6690
6691 /* ----------------------------------------------------------------------------
6692    -- PMC - Register accessor macros
6693    ---------------------------------------------------------------------------- */
6694
6695 /*!
6696  * @addtogroup PMC_Register_Accessor_Macros PMC - Register accessor macros
6697  * @{
6698  */
6699
6700
6701 /* PMC - Register instance definitions */
6702 /* PMC */
6703 #define PMC_LVDSC1                               PMC_LVDSC1_REG(PMC)
6704 #define PMC_LVDSC2                               PMC_LVDSC2_REG(PMC)
6705 #define PMC_REGSC                                PMC_REGSC_REG(PMC)
6706
6707 /*!
6708  * @}
6709  */ /* end of group PMC_Register_Accessor_Macros */
6710
6711
6712 /*!
6713  * @}
6714  */ /* end of group PMC_Peripheral_Access_Layer */
6715
6716
6717 /* ----------------------------------------------------------------------------
6718    -- PORT Peripheral Access Layer
6719    ---------------------------------------------------------------------------- */
6720
6721 /*!
6722  * @addtogroup PORT_Peripheral_Access_Layer PORT Peripheral Access Layer
6723  * @{
6724  */
6725
6726 /** PORT - Register Layout Typedef */
6727 typedef struct {
6728   __IO uint32_t PCR[32];                           /**< Pin Control Register n, array offset: 0x0, array step: 0x4 */
6729   __O  uint32_t GPCLR;                             /**< Global Pin Control Low Register, offset: 0x80 */
6730   __O  uint32_t GPCHR;                             /**< Global Pin Control High Register, offset: 0x84 */
6731        uint8_t RESERVED_0[24];
6732   __IO uint32_t ISFR;                              /**< Interrupt Status Flag Register, offset: 0xA0 */
6733        uint8_t RESERVED_1[28];
6734   __IO uint32_t DFER;                              /**< Digital Filter Enable Register, offset: 0xC0 */
6735   __IO uint32_t DFCR;                              /**< Digital Filter Clock Register, offset: 0xC4 */
6736   __IO uint32_t DFWR;                              /**< Digital Filter Width Register, offset: 0xC8 */
6737 } PORT_Type, *PORT_MemMapPtr;
6738
6739 /* ----------------------------------------------------------------------------
6740    -- PORT - Register accessor macros
6741    ---------------------------------------------------------------------------- */
6742
6743 /*!
6744  * @addtogroup PORT_Register_Accessor_Macros PORT - Register accessor macros
6745  * @{
6746  */
6747
6748
6749 /* PORT - Register accessors */
6750 #define PORT_PCR_REG(base,index)                 ((base)->PCR[index])
6751 #define PORT_GPCLR_REG(base)                     ((base)->GPCLR)
6752 #define PORT_GPCHR_REG(base)                     ((base)->GPCHR)
6753 #define PORT_ISFR_REG(base)                      ((base)->ISFR)
6754 #define PORT_DFER_REG(base)                      ((base)->DFER)
6755 #define PORT_DFCR_REG(base)                      ((base)->DFCR)
6756 #define PORT_DFWR_REG(base)                      ((base)->DFWR)
6757
6758 /*!
6759  * @}
6760  */ /* end of group PORT_Register_Accessor_Macros */
6761
6762
6763 /* ----------------------------------------------------------------------------
6764    -- PORT Register Masks
6765    ---------------------------------------------------------------------------- */
6766
6767 /*!
6768  * @addtogroup PORT_Register_Masks PORT Register Masks
6769  * @{
6770  */
6771
6772 /* PCR Bit Fields */
6773 #define PORT_PCR_PS_MASK                         0x1u
6774 #define PORT_PCR_PS_SHIFT                        0
6775 #define PORT_PCR_PE_MASK                         0x2u
6776 #define PORT_PCR_PE_SHIFT                        1
6777 #define PORT_PCR_SRE_MASK                        0x4u
6778 #define PORT_PCR_SRE_SHIFT                       2
6779 #define PORT_PCR_PFE_MASK                        0x10u
6780 #define PORT_PCR_PFE_SHIFT                       4
6781 #define PORT_PCR_ODE_MASK                        0x20u
6782 #define PORT_PCR_ODE_SHIFT                       5
6783 #define PORT_PCR_DSE_MASK                        0x40u
6784 #define PORT_PCR_DSE_SHIFT                       6
6785 #define PORT_PCR_MUX_MASK                        0x700u
6786 #define PORT_PCR_MUX_SHIFT                       8
6787 #define PORT_PCR_MUX(x)                          (((uint32_t)(((uint32_t)(x))<<PORT_PCR_MUX_SHIFT))&PORT_PCR_MUX_MASK)
6788 #define PORT_PCR_LK_MASK                         0x8000u
6789 #define PORT_PCR_LK_SHIFT                        15
6790 #define PORT_PCR_IRQC_MASK                       0xF0000u
6791 #define PORT_PCR_IRQC_SHIFT                      16
6792 #define PORT_PCR_IRQC(x)                         (((uint32_t)(((uint32_t)(x))<<PORT_PCR_IRQC_SHIFT))&PORT_PCR_IRQC_MASK)
6793 #define PORT_PCR_ISF_MASK                        0x1000000u
6794 #define PORT_PCR_ISF_SHIFT                       24
6795 /* GPCLR Bit Fields */
6796 #define PORT_GPCLR_GPWD_MASK                     0xFFFFu
6797 #define PORT_GPCLR_GPWD_SHIFT                    0
6798 #define PORT_GPCLR_GPWD(x)                       (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWD_SHIFT))&PORT_GPCLR_GPWD_MASK)
6799 #define PORT_GPCLR_GPWE_MASK                     0xFFFF0000u
6800 #define PORT_GPCLR_GPWE_SHIFT                    16
6801 #define PORT_GPCLR_GPWE(x)                       (((uint32_t)(((uint32_t)(x))<<PORT_GPCLR_GPWE_SHIFT))&PORT_GPCLR_GPWE_MASK)
6802 /* GPCHR Bit Fields */
6803 #define PORT_GPCHR_GPWD_MASK                     0xFFFFu
6804 #define PORT_GPCHR_GPWD_SHIFT                    0
6805 #define PORT_GPCHR_GPWD(x)                       (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWD_SHIFT))&PORT_GPCHR_GPWD_MASK)
6806 #define PORT_GPCHR_GPWE_MASK                     0xFFFF0000u
6807 #define PORT_GPCHR_GPWE_SHIFT                    16
6808 #define PORT_GPCHR_GPWE(x)                       (((uint32_t)(((uint32_t)(x))<<PORT_GPCHR_GPWE_SHIFT))&PORT_GPCHR_GPWE_MASK)
6809 /* ISFR Bit Fields */
6810 #define PORT_ISFR_ISF_MASK                       0xFFFFFFFFu
6811 #define PORT_ISFR_ISF_SHIFT                      0
6812 #define PORT_ISFR_ISF(x)                         (((uint32_t)(((uint32_t)(x))<<PORT_ISFR_ISF_SHIFT))&PORT_ISFR_ISF_MASK)
6813 /* DFER Bit Fields */
6814 #define PORT_DFER_DFE_MASK                       0xFFFFFFFFu
6815 #define PORT_DFER_DFE_SHIFT                      0
6816 #define PORT_DFER_DFE(x)                         (((uint32_t)(((uint32_t)(x))<<PORT_DFER_DFE_SHIFT))&PORT_DFER_DFE_MASK)
6817 /* DFCR Bit Fields */
6818 #define PORT_DFCR_CS_MASK                        0x1u
6819 #define PORT_DFCR_CS_SHIFT                       0
6820 /* DFWR Bit Fields */
6821 #define PORT_DFWR_FILT_MASK                      0x1Fu
6822 #define PORT_DFWR_FILT_SHIFT                     0
6823 #define PORT_DFWR_FILT(x)                        (((uint32_t)(((uint32_t)(x))<<PORT_DFWR_FILT_SHIFT))&PORT_DFWR_FILT_MASK)
6824
6825 /*!
6826  * @}
6827  */ /* end of group PORT_Register_Masks */
6828
6829
6830 /* PORT - Peripheral instance base addresses */
6831 /** Peripheral PORTA base address */
6832 #define PORTA_BASE                               (0x40049000u)
6833 /** Peripheral PORTA base pointer */
6834 #define PORTA                                    ((PORT_Type *)PORTA_BASE)
6835 #define PORTA_BASE_PTR                           (PORTA)
6836 /** Peripheral PORTB base address */
6837 #define PORTB_BASE                               (0x4004A000u)
6838 /** Peripheral PORTB base pointer */
6839 #define PORTB                                    ((PORT_Type *)PORTB_BASE)
6840 #define PORTB_BASE_PTR                           (PORTB)
6841 /** Peripheral PORTC base address */
6842 #define PORTC_BASE                               (0x4004B000u)
6843 /** Peripheral PORTC base pointer */
6844 #define PORTC                                    ((PORT_Type *)PORTC_BASE)
6845 #define PORTC_BASE_PTR                           (PORTC)
6846 /** Peripheral PORTD base address */
6847 #define PORTD_BASE                               (0x4004C000u)
6848 /** Peripheral PORTD base pointer */
6849 #define PORTD                                    ((PORT_Type *)PORTD_BASE)
6850 #define PORTD_BASE_PTR                           (PORTD)
6851 /** Peripheral PORTE base address */
6852 #define PORTE_BASE                               (0x4004D000u)
6853 /** Peripheral PORTE base pointer */
6854 #define PORTE                                    ((PORT_Type *)PORTE_BASE)
6855 #define PORTE_BASE_PTR                           (PORTE)
6856 /** Array initializer of PORT peripheral base addresses */
6857 #define PORT_BASE_ADDRS                          { PORTA_BASE, PORTB_BASE, PORTC_BASE, PORTD_BASE, PORTE_BASE }
6858 /** Array initializer of PORT peripheral base pointers */
6859 #define PORT_BASE_PTRS                           { PORTA, PORTB, PORTC, PORTD, PORTE }
6860 /** Interrupt vectors for the PORT peripheral type */
6861 #define PORT_IRQS                                { PORTA_IRQn, PORTB_IRQn, PORTC_IRQn, PORTD_IRQn, PORTE_IRQn }
6862
6863 /* ----------------------------------------------------------------------------
6864    -- PORT - Register accessor macros
6865    ---------------------------------------------------------------------------- */
6866
6867 /*!
6868  * @addtogroup PORT_Register_Accessor_Macros PORT - Register accessor macros
6869  * @{
6870  */
6871
6872
6873 /* PORT - Register instance definitions */
6874 /* PORTA */
6875 #define PORTA_PCR0                               PORT_PCR_REG(PORTA,0)
6876 #define PORTA_PCR1                               PORT_PCR_REG(PORTA,1)
6877 #define PORTA_PCR2                               PORT_PCR_REG(PORTA,2)
6878 #define PORTA_PCR3                               PORT_PCR_REG(PORTA,3)
6879 #define PORTA_PCR4                               PORT_PCR_REG(PORTA,4)
6880 #define PORTA_PCR5                               PORT_PCR_REG(PORTA,5)
6881 #define PORTA_PCR6                               PORT_PCR_REG(PORTA,6)
6882 #define PORTA_PCR7                               PORT_PCR_REG(PORTA,7)
6883 #define PORTA_PCR8                               PORT_PCR_REG(PORTA,8)
6884 #define PORTA_PCR9                               PORT_PCR_REG(PORTA,9)
6885 #define PORTA_PCR10                              PORT_PCR_REG(PORTA,10)
6886 #define PORTA_PCR11                              PORT_PCR_REG(PORTA,11)
6887 #define PORTA_PCR12                              PORT_PCR_REG(PORTA,12)
6888 #define PORTA_PCR13                              PORT_PCR_REG(PORTA,13)
6889 #define PORTA_PCR14                              PORT_PCR_REG(PORTA,14)
6890 #define PORTA_PCR15                              PORT_PCR_REG(PORTA,15)
6891 #define PORTA_PCR16                              PORT_PCR_REG(PORTA,16)
6892 #define PORTA_PCR17                              PORT_PCR_REG(PORTA,17)
6893 #define PORTA_PCR18                              PORT_PCR_REG(PORTA,18)
6894 #define PORTA_PCR19                              PORT_PCR_REG(PORTA,19)
6895 #define PORTA_PCR20                              PORT_PCR_REG(PORTA,20)
6896 #define PORTA_PCR21                              PORT_PCR_REG(PORTA,21)
6897 #define PORTA_PCR22                              PORT_PCR_REG(PORTA,22)
6898 #define PORTA_PCR23                              PORT_PCR_REG(PORTA,23)
6899 #define PORTA_PCR24                              PORT_PCR_REG(PORTA,24)
6900 #define PORTA_PCR25                              PORT_PCR_REG(PORTA,25)
6901 #define PORTA_PCR26                              PORT_PCR_REG(PORTA,26)
6902 #define PORTA_PCR27                              PORT_PCR_REG(PORTA,27)
6903 #define PORTA_PCR28                              PORT_PCR_REG(PORTA,28)
6904 #define PORTA_PCR29                              PORT_PCR_REG(PORTA,29)
6905 #define PORTA_PCR30                              PORT_PCR_REG(PORTA,30)
6906 #define PORTA_PCR31                              PORT_PCR_REG(PORTA,31)
6907 #define PORTA_GPCLR                              PORT_GPCLR_REG(PORTA)
6908 #define PORTA_GPCHR                              PORT_GPCHR_REG(PORTA)
6909 #define PORTA_ISFR                               PORT_ISFR_REG(PORTA)
6910 /* PORTB */
6911 #define PORTB_PCR0                               PORT_PCR_REG(PORTB,0)
6912 #define PORTB_PCR1                               PORT_PCR_REG(PORTB,1)
6913 #define PORTB_PCR2                               PORT_PCR_REG(PORTB,2)
6914 #define PORTB_PCR3                               PORT_PCR_REG(PORTB,3)
6915 #define PORTB_PCR4                               PORT_PCR_REG(PORTB,4)
6916 #define PORTB_PCR5                               PORT_PCR_REG(PORTB,5)
6917 #define PORTB_PCR6                               PORT_PCR_REG(PORTB,6)
6918 #define PORTB_PCR7                               PORT_PCR_REG(PORTB,7)
6919 #define PORTB_PCR8                               PORT_PCR_REG(PORTB,8)
6920 #define PORTB_PCR9                               PORT_PCR_REG(PORTB,9)
6921 #define PORTB_PCR10                              PORT_PCR_REG(PORTB,10)
6922 #define PORTB_PCR11                              PORT_PCR_REG(PORTB,11)
6923 #define PORTB_PCR12                              PORT_PCR_REG(PORTB,12)
6924 #define PORTB_PCR13                              PORT_PCR_REG(PORTB,13)
6925 #define PORTB_PCR14                              PORT_PCR_REG(PORTB,14)
6926 #define PORTB_PCR15                              PORT_PCR_REG(PORTB,15)
6927 #define PORTB_PCR16                              PORT_PCR_REG(PORTB,16)
6928 #define PORTB_PCR17                              PORT_PCR_REG(PORTB,17)
6929 #define PORTB_PCR18                              PORT_PCR_REG(PORTB,18)
6930 #define PORTB_PCR19                              PORT_PCR_REG(PORTB,19)
6931 #define PORTB_PCR20                              PORT_PCR_REG(PORTB,20)
6932 #define PORTB_PCR21                              PORT_PCR_REG(PORTB,21)
6933 #define PORTB_PCR22                              PORT_PCR_REG(PORTB,22)
6934 #define PORTB_PCR23                              PORT_PCR_REG(PORTB,23)
6935 #define PORTB_PCR24                              PORT_PCR_REG(PORTB,24)
6936 #define PORTB_PCR25                              PORT_PCR_REG(PORTB,25)
6937 #define PORTB_PCR26                              PORT_PCR_REG(PORTB,26)
6938 #define PORTB_PCR27                              PORT_PCR_REG(PORTB,27)
6939 #define PORTB_PCR28                              PORT_PCR_REG(PORTB,28)
6940 #define PORTB_PCR29                              PORT_PCR_REG(PORTB,29)
6941 #define PORTB_PCR30                              PORT_PCR_REG(PORTB,30)
6942 #define PORTB_PCR31                              PORT_PCR_REG(PORTB,31)
6943 #define PORTB_GPCLR                              PORT_GPCLR_REG(PORTB)
6944 #define PORTB_GPCHR                              PORT_GPCHR_REG(PORTB)
6945 #define PORTB_ISFR                               PORT_ISFR_REG(PORTB)
6946 /* PORTC */
6947 #define PORTC_PCR0                               PORT_PCR_REG(PORTC,0)
6948 #define PORTC_PCR1                               PORT_PCR_REG(PORTC,1)
6949 #define PORTC_PCR2                               PORT_PCR_REG(PORTC,2)
6950 #define PORTC_PCR3                               PORT_PCR_REG(PORTC,3)
6951 #define PORTC_PCR4                               PORT_PCR_REG(PORTC,4)
6952 #define PORTC_PCR5                               PORT_PCR_REG(PORTC,5)
6953 #define PORTC_PCR6                               PORT_PCR_REG(PORTC,6)
6954 #define PORTC_PCR7                               PORT_PCR_REG(PORTC,7)
6955 #define PORTC_PCR8                               PORT_PCR_REG(PORTC,8)
6956 #define PORTC_PCR9                               PORT_PCR_REG(PORTC,9)
6957 #define PORTC_PCR10                              PORT_PCR_REG(PORTC,10)
6958 #define PORTC_PCR11                              PORT_PCR_REG(PORTC,11)
6959 #define PORTC_PCR12                              PORT_PCR_REG(PORTC,12)
6960 #define PORTC_PCR13                              PORT_PCR_REG(PORTC,13)
6961 #define PORTC_PCR14                              PORT_PCR_REG(PORTC,14)
6962 #define PORTC_PCR15                              PORT_PCR_REG(PORTC,15)
6963 #define PORTC_PCR16                              PORT_PCR_REG(PORTC,16)
6964 #define PORTC_PCR17                              PORT_PCR_REG(PORTC,17)
6965 #define PORTC_PCR18                              PORT_PCR_REG(PORTC,18)
6966 #define PORTC_PCR19                              PORT_PCR_REG(PORTC,19)
6967 #define PORTC_PCR20                              PORT_PCR_REG(PORTC,20)
6968 #define PORTC_PCR21                              PORT_PCR_REG(PORTC,21)
6969 #define PORTC_PCR22                              PORT_PCR_REG(PORTC,22)
6970 #define PORTC_PCR23                              PORT_PCR_REG(PORTC,23)
6971 #define PORTC_PCR24                              PORT_PCR_REG(PORTC,24)
6972 #define PORTC_PCR25                              PORT_PCR_REG(PORTC,25)
6973 #define PORTC_PCR26                              PORT_PCR_REG(PORTC,26)
6974 #define PORTC_PCR27                              PORT_PCR_REG(PORTC,27)
6975 #define PORTC_PCR28                              PORT_PCR_REG(PORTC,28)
6976 #define PORTC_PCR29                              PORT_PCR_REG(PORTC,29)
6977 #define PORTC_PCR30                              PORT_PCR_REG(PORTC,30)
6978 #define PORTC_PCR31                              PORT_PCR_REG(PORTC,31)
6979 #define PORTC_GPCLR                              PORT_GPCLR_REG(PORTC)
6980 #define PORTC_GPCHR                              PORT_GPCHR_REG(PORTC)
6981 #define PORTC_ISFR                               PORT_ISFR_REG(PORTC)
6982 /* PORTD */
6983 #define PORTD_PCR0                               PORT_PCR_REG(PORTD,0)
6984 #define PORTD_PCR1                               PORT_PCR_REG(PORTD,1)
6985 #define PORTD_PCR2                               PORT_PCR_REG(PORTD,2)
6986 #define PORTD_PCR3                               PORT_PCR_REG(PORTD,3)
6987 #define PORTD_PCR4                               PORT_PCR_REG(PORTD,4)
6988 #define PORTD_PCR5                               PORT_PCR_REG(PORTD,5)
6989 #define PORTD_PCR6                               PORT_PCR_REG(PORTD,6)
6990 #define PORTD_PCR7                               PORT_PCR_REG(PORTD,7)
6991 #define PORTD_PCR8                               PORT_PCR_REG(PORTD,8)
6992 #define PORTD_PCR9                               PORT_PCR_REG(PORTD,9)
6993 #define PORTD_PCR10                              PORT_PCR_REG(PORTD,10)
6994 #define PORTD_PCR11                              PORT_PCR_REG(PORTD,11)
6995 #define PORTD_PCR12                              PORT_PCR_REG(PORTD,12)
6996 #define PORTD_PCR13                              PORT_PCR_REG(PORTD,13)
6997 #define PORTD_PCR14                              PORT_PCR_REG(PORTD,14)
6998 #define PORTD_PCR15                              PORT_PCR_REG(PORTD,15)
6999 #define PORTD_PCR16                              PORT_PCR_REG(PORTD,16)
7000 #define PORTD_PCR17                              PORT_PCR_REG(PORTD,17)
7001 #define PORTD_PCR18                              PORT_PCR_REG(PORTD,18)
7002 #define PORTD_PCR19                              PORT_PCR_REG(PORTD,19)
7003 #define PORTD_PCR20                              PORT_PCR_REG(PORTD,20)
7004 #define PORTD_PCR21                              PORT_PCR_REG(PORTD,21)
7005 #define PORTD_PCR22                              PORT_PCR_REG(PORTD,22)
7006 #define PORTD_PCR23                              PORT_PCR_REG(PORTD,23)
7007 #define PORTD_PCR24                              PORT_PCR_REG(PORTD,24)
7008 #define PORTD_PCR25                              PORT_PCR_REG(PORTD,25)
7009 #define PORTD_PCR26                              PORT_PCR_REG(PORTD,26)
7010 #define PORTD_PCR27                              PORT_PCR_REG(PORTD,27)
7011 #define PORTD_PCR28                              PORT_PCR_REG(PORTD,28)
7012 #define PORTD_PCR29                              PORT_PCR_REG(PORTD,29)
7013 #define PORTD_PCR30                              PORT_PCR_REG(PORTD,30)
7014 #define PORTD_PCR31                              PORT_PCR_REG(PORTD,31)
7015 #define PORTD_GPCLR                              PORT_GPCLR_REG(PORTD)
7016 #define PORTD_GPCHR                              PORT_GPCHR_REG(PORTD)
7017 #define PORTD_ISFR                               PORT_ISFR_REG(PORTD)
7018 #define PORTD_DFER                               PORT_DFER_REG(PORTD)
7019 #define PORTD_DFCR                               PORT_DFCR_REG(PORTD)
7020 #define PORTD_DFWR                               PORT_DFWR_REG(PORTD)
7021 /* PORTE */
7022 #define PORTE_PCR0                               PORT_PCR_REG(PORTE,0)
7023 #define PORTE_PCR1                               PORT_PCR_REG(PORTE,1)
7024 #define PORTE_PCR2                               PORT_PCR_REG(PORTE,2)
7025 #define PORTE_PCR3                               PORT_PCR_REG(PORTE,3)
7026 #define PORTE_PCR4                               PORT_PCR_REG(PORTE,4)
7027 #define PORTE_PCR5                               PORT_PCR_REG(PORTE,5)
7028 #define PORTE_PCR6                               PORT_PCR_REG(PORTE,6)
7029 #define PORTE_PCR7                               PORT_PCR_REG(PORTE,7)
7030 #define PORTE_PCR8                               PORT_PCR_REG(PORTE,8)
7031 #define PORTE_PCR9                               PORT_PCR_REG(PORTE,9)
7032 #define PORTE_PCR10                              PORT_PCR_REG(PORTE,10)
7033 #define PORTE_PCR11                              PORT_PCR_REG(PORTE,11)
7034 #define PORTE_PCR12                              PORT_PCR_REG(PORTE,12)
7035 #define PORTE_PCR13                              PORT_PCR_REG(PORTE,13)
7036 #define PORTE_PCR14                              PORT_PCR_REG(PORTE,14)
7037 #define PORTE_PCR15                              PORT_PCR_REG(PORTE,15)
7038 #define PORTE_PCR16                              PORT_PCR_REG(PORTE,16)
7039 #define PORTE_PCR17                              PORT_PCR_REG(PORTE,17)
7040 #define PORTE_PCR18                              PORT_PCR_REG(PORTE,18)
7041 #define PORTE_PCR19                              PORT_PCR_REG(PORTE,19)
7042 #define PORTE_PCR20                              PORT_PCR_REG(PORTE,20)
7043 #define PORTE_PCR21                              PORT_PCR_REG(PORTE,21)
7044 #define PORTE_PCR22                              PORT_PCR_REG(PORTE,22)
7045 #define PORTE_PCR23                              PORT_PCR_REG(PORTE,23)
7046 #define PORTE_PCR24                              PORT_PCR_REG(PORTE,24)
7047 #define PORTE_PCR25                              PORT_PCR_REG(PORTE,25)
7048 #define PORTE_PCR26                              PORT_PCR_REG(PORTE,26)
7049 #define PORTE_PCR27                              PORT_PCR_REG(PORTE,27)
7050 #define PORTE_PCR28                              PORT_PCR_REG(PORTE,28)
7051 #define PORTE_PCR29                              PORT_PCR_REG(PORTE,29)
7052 #define PORTE_PCR30                              PORT_PCR_REG(PORTE,30)
7053 #define PORTE_PCR31                              PORT_PCR_REG(PORTE,31)
7054 #define PORTE_GPCLR                              PORT_GPCLR_REG(PORTE)
7055 #define PORTE_GPCHR                              PORT_GPCHR_REG(PORTE)
7056 #define PORTE_ISFR                               PORT_ISFR_REG(PORTE)
7057
7058 /* PORT - Register array accessors */
7059 #define PORTA_PCR(index)                         PORT_PCR_REG(PORTA,index)
7060 #define PORTB_PCR(index)                         PORT_PCR_REG(PORTB,index)
7061 #define PORTC_PCR(index)                         PORT_PCR_REG(PORTC,index)
7062 #define PORTD_PCR(index)                         PORT_PCR_REG(PORTD,index)
7063 #define PORTE_PCR(index)                         PORT_PCR_REG(PORTE,index)
7064
7065 /*!
7066  * @}
7067  */ /* end of group PORT_Register_Accessor_Macros */
7068
7069
7070 /*!
7071  * @}
7072  */ /* end of group PORT_Peripheral_Access_Layer */
7073
7074
7075 /* ----------------------------------------------------------------------------
7076    -- RCM Peripheral Access Layer
7077    ---------------------------------------------------------------------------- */
7078
7079 /*!
7080  * @addtogroup RCM_Peripheral_Access_Layer RCM Peripheral Access Layer
7081  * @{
7082  */
7083
7084 /** RCM - Register Layout Typedef */
7085 typedef struct {
7086   __I  uint8_t SRS0;                               /**< System Reset Status Register 0, offset: 0x0 */
7087   __I  uint8_t SRS1;                               /**< System Reset Status Register 1, offset: 0x1 */
7088        uint8_t RESERVED_0[2];
7089   __IO uint8_t RPFC;                               /**< Reset Pin Filter Control register, offset: 0x4 */
7090   __IO uint8_t RPFW;                               /**< Reset Pin Filter Width register, offset: 0x5 */
7091        uint8_t RESERVED_1[1];
7092   __I  uint8_t MR;                                 /**< Mode Register, offset: 0x7 */
7093   __IO uint8_t SSRS0;                              /**< Sticky System Reset Status Register 0, offset: 0x8 */
7094   __IO uint8_t SSRS1;                              /**< Sticky System Reset Status Register 1, offset: 0x9 */
7095 } RCM_Type, *RCM_MemMapPtr;
7096
7097 /* ----------------------------------------------------------------------------
7098    -- RCM - Register accessor macros
7099    ---------------------------------------------------------------------------- */
7100
7101 /*!
7102  * @addtogroup RCM_Register_Accessor_Macros RCM - Register accessor macros
7103  * @{
7104  */
7105
7106
7107 /* RCM - Register accessors */
7108 #define RCM_SRS0_REG(base)                       ((base)->SRS0)
7109 #define RCM_SRS1_REG(base)                       ((base)->SRS1)
7110 #define RCM_RPFC_REG(base)                       ((base)->RPFC)
7111 #define RCM_RPFW_REG(base)                       ((base)->RPFW)
7112 #define RCM_MR_REG(base)                         ((base)->MR)
7113 #define RCM_SSRS0_REG(base)                      ((base)->SSRS0)
7114 #define RCM_SSRS1_REG(base)                      ((base)->SSRS1)
7115
7116 /*!
7117  * @}
7118  */ /* end of group RCM_Register_Accessor_Macros */
7119
7120
7121 /* ----------------------------------------------------------------------------
7122    -- RCM Register Masks
7123    ---------------------------------------------------------------------------- */
7124
7125 /*!
7126  * @addtogroup RCM_Register_Masks RCM Register Masks
7127  * @{
7128  */
7129
7130 /* SRS0 Bit Fields */
7131 #define RCM_SRS0_WAKEUP_MASK                     0x1u
7132 #define RCM_SRS0_WAKEUP_SHIFT                    0
7133 #define RCM_SRS0_LVD_MASK                        0x2u
7134 #define RCM_SRS0_LVD_SHIFT                       1
7135 #define RCM_SRS0_LOC_MASK                        0x4u
7136 #define RCM_SRS0_LOC_SHIFT                       2
7137 #define RCM_SRS0_LOL_MASK                        0x8u
7138 #define RCM_SRS0_LOL_SHIFT                       3
7139 #define RCM_SRS0_WDOG_MASK                       0x20u
7140 #define RCM_SRS0_WDOG_SHIFT                      5
7141 #define RCM_SRS0_PIN_MASK                        0x40u
7142 #define RCM_SRS0_PIN_SHIFT                       6
7143 #define RCM_SRS0_POR_MASK                        0x80u
7144 #define RCM_SRS0_POR_SHIFT                       7
7145 /* SRS1 Bit Fields */
7146 #define RCM_SRS1_JTAG_MASK                       0x1u
7147 #define RCM_SRS1_JTAG_SHIFT                      0
7148 #define RCM_SRS1_LOCKUP_MASK                     0x2u
7149 #define RCM_SRS1_LOCKUP_SHIFT                    1
7150 #define RCM_SRS1_SW_MASK                         0x4u
7151 #define RCM_SRS1_SW_SHIFT                        2
7152 #define RCM_SRS1_MDM_AP_MASK                     0x8u
7153 #define RCM_SRS1_MDM_AP_SHIFT                    3
7154 #define RCM_SRS1_EZPT_MASK                       0x10u
7155 #define RCM_SRS1_EZPT_SHIFT                      4
7156 #define RCM_SRS1_SACKERR_MASK                    0x20u
7157 #define RCM_SRS1_SACKERR_SHIFT                   5
7158 /* RPFC Bit Fields */
7159 #define RCM_RPFC_RSTFLTSRW_MASK                  0x3u
7160 #define RCM_RPFC_RSTFLTSRW_SHIFT                 0
7161 #define RCM_RPFC_RSTFLTSRW(x)                    (((uint8_t)(((uint8_t)(x))<<RCM_RPFC_RSTFLTSRW_SHIFT))&RCM_RPFC_RSTFLTSRW_MASK)
7162 #define RCM_RPFC_RSTFLTSS_MASK                   0x4u
7163 #define RCM_RPFC_RSTFLTSS_SHIFT                  2
7164 /* RPFW Bit Fields */
7165 #define RCM_RPFW_RSTFLTSEL_MASK                  0x1Fu
7166 #define RCM_RPFW_RSTFLTSEL_SHIFT                 0
7167 #define RCM_RPFW_RSTFLTSEL(x)                    (((uint8_t)(((uint8_t)(x))<<RCM_RPFW_RSTFLTSEL_SHIFT))&RCM_RPFW_RSTFLTSEL_MASK)
7168 /* MR Bit Fields */
7169 #define RCM_MR_EZP_MS_MASK                       0x2u
7170 #define RCM_MR_EZP_MS_SHIFT                      1
7171 /* SSRS0 Bit Fields */
7172 #define RCM_SSRS0_SWAKEUP_MASK                   0x1u
7173 #define RCM_SSRS0_SWAKEUP_SHIFT                  0
7174 #define RCM_SSRS0_SLVD_MASK                      0x2u
7175 #define RCM_SSRS0_SLVD_SHIFT                     1
7176 #define RCM_SSRS0_SLOC_MASK                      0x4u
7177 #define RCM_SSRS0_SLOC_SHIFT                     2
7178 #define RCM_SSRS0_SLOL_MASK                      0x8u
7179 #define RCM_SSRS0_SLOL_SHIFT                     3
7180 #define RCM_SSRS0_SWDOG_MASK                     0x20u
7181 #define RCM_SSRS0_SWDOG_SHIFT                    5
7182 #define RCM_SSRS0_SPIN_MASK                      0x40u
7183 #define RCM_SSRS0_SPIN_SHIFT                     6
7184 #define RCM_SSRS0_SPOR_MASK                      0x80u
7185 #define RCM_SSRS0_SPOR_SHIFT                     7
7186 /* SSRS1 Bit Fields */
7187 #define RCM_SSRS1_SJTAG_MASK                     0x1u
7188 #define RCM_SSRS1_SJTAG_SHIFT                    0
7189 #define RCM_SSRS1_SLOCKUP_MASK                   0x2u
7190 #define RCM_SSRS1_SLOCKUP_SHIFT                  1
7191 #define RCM_SSRS1_SSW_MASK                       0x4u
7192 #define RCM_SSRS1_SSW_SHIFT                      2
7193 #define RCM_SSRS1_SMDM_AP_MASK                   0x8u
7194 #define RCM_SSRS1_SMDM_AP_SHIFT                  3
7195 #define RCM_SSRS1_SEZPT_MASK                     0x10u
7196 #define RCM_SSRS1_SEZPT_SHIFT                    4
7197 #define RCM_SSRS1_SSACKERR_MASK                  0x20u
7198 #define RCM_SSRS1_SSACKERR_SHIFT                 5
7199
7200 /*!
7201  * @}
7202  */ /* end of group RCM_Register_Masks */
7203
7204
7205 /* RCM - Peripheral instance base addresses */
7206 /** Peripheral RCM base address */
7207 #define RCM_BASE                                 (0x4007F000u)
7208 /** Peripheral RCM base pointer */
7209 #define RCM                                      ((RCM_Type *)RCM_BASE)
7210 #define RCM_BASE_PTR                             (RCM)
7211 /** Array initializer of RCM peripheral base addresses */
7212 #define RCM_BASE_ADDRS                           { RCM_BASE }
7213 /** Array initializer of RCM peripheral base pointers */
7214 #define RCM_BASE_PTRS                            { RCM }
7215
7216 /* ----------------------------------------------------------------------------
7217    -- RCM - Register accessor macros
7218    ---------------------------------------------------------------------------- */
7219
7220 /*!
7221  * @addtogroup RCM_Register_Accessor_Macros RCM - Register accessor macros
7222  * @{
7223  */
7224
7225
7226 /* RCM - Register instance definitions */
7227 /* RCM */
7228 #define RCM_SRS0                                 RCM_SRS0_REG(RCM)
7229 #define RCM_SRS1                                 RCM_SRS1_REG(RCM)
7230 #define RCM_RPFC                                 RCM_RPFC_REG(RCM)
7231 #define RCM_RPFW                                 RCM_RPFW_REG(RCM)
7232 #define RCM_MR                                   RCM_MR_REG(RCM)
7233 #define RCM_SSRS0                                RCM_SSRS0_REG(RCM)
7234 #define RCM_SSRS1                                RCM_SSRS1_REG(RCM)
7235
7236 /*!
7237  * @}
7238  */ /* end of group RCM_Register_Accessor_Macros */
7239
7240
7241 /*!
7242  * @}
7243  */ /* end of group RCM_Peripheral_Access_Layer */
7244
7245
7246 /* ----------------------------------------------------------------------------
7247    -- RFSYS Peripheral Access Layer
7248    ---------------------------------------------------------------------------- */
7249
7250 /*!
7251  * @addtogroup RFSYS_Peripheral_Access_Layer RFSYS Peripheral Access Layer
7252  * @{
7253  */
7254
7255 /** RFSYS - Register Layout Typedef */
7256 typedef struct {
7257   __IO uint32_t REG[8];                            /**< Register file register, array offset: 0x0, array step: 0x4 */
7258 } RFSYS_Type, *RFSYS_MemMapPtr;
7259
7260 /* ----------------------------------------------------------------------------
7261    -- RFSYS - Register accessor macros
7262    ---------------------------------------------------------------------------- */
7263
7264 /*!
7265  * @addtogroup RFSYS_Register_Accessor_Macros RFSYS - Register accessor macros
7266  * @{
7267  */
7268
7269
7270 /* RFSYS - Register accessors */
7271 #define RFSYS_REG_REG(base,index)                ((base)->REG[index])
7272
7273 /*!
7274  * @}
7275  */ /* end of group RFSYS_Register_Accessor_Macros */
7276
7277
7278 /* ----------------------------------------------------------------------------
7279    -- RFSYS Register Masks
7280    ---------------------------------------------------------------------------- */
7281
7282 /*!
7283  * @addtogroup RFSYS_Register_Masks RFSYS Register Masks
7284  * @{
7285  */
7286
7287 /* REG Bit Fields */
7288 #define RFSYS_REG_LL_MASK                        0xFFu
7289 #define RFSYS_REG_LL_SHIFT                       0
7290 #define RFSYS_REG_LL(x)                          (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_LL_SHIFT))&RFSYS_REG_LL_MASK)
7291 #define RFSYS_REG_LH_MASK                        0xFF00u
7292 #define RFSYS_REG_LH_SHIFT                       8
7293 #define RFSYS_REG_LH(x)                          (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_LH_SHIFT))&RFSYS_REG_LH_MASK)
7294 #define RFSYS_REG_HL_MASK                        0xFF0000u
7295 #define RFSYS_REG_HL_SHIFT                       16
7296 #define RFSYS_REG_HL(x)                          (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_HL_SHIFT))&RFSYS_REG_HL_MASK)
7297 #define RFSYS_REG_HH_MASK                        0xFF000000u
7298 #define RFSYS_REG_HH_SHIFT                       24
7299 #define RFSYS_REG_HH(x)                          (((uint32_t)(((uint32_t)(x))<<RFSYS_REG_HH_SHIFT))&RFSYS_REG_HH_MASK)
7300
7301 /*!
7302  * @}
7303  */ /* end of group RFSYS_Register_Masks */
7304
7305
7306 /* RFSYS - Peripheral instance base addresses */
7307 /** Peripheral RFSYS base address */
7308 #define RFSYS_BASE                               (0x40041000u)
7309 /** Peripheral RFSYS base pointer */
7310 #define RFSYS                                    ((RFSYS_Type *)RFSYS_BASE)
7311 #define RFSYS_BASE_PTR                           (RFSYS)
7312 /** Array initializer of RFSYS peripheral base addresses */
7313 #define RFSYS_BASE_ADDRS                         { RFSYS_BASE }
7314 /** Array initializer of RFSYS peripheral base pointers */
7315 #define RFSYS_BASE_PTRS                          { RFSYS }
7316
7317 /* ----------------------------------------------------------------------------
7318    -- RFSYS - Register accessor macros
7319    ---------------------------------------------------------------------------- */
7320
7321 /*!
7322  * @addtogroup RFSYS_Register_Accessor_Macros RFSYS - Register accessor macros
7323  * @{
7324  */
7325
7326
7327 /* RFSYS - Register instance definitions */
7328 /* RFSYS */
7329 #define RFSYS_REG0                               RFSYS_REG_REG(RFSYS,0)
7330 #define RFSYS_REG1                               RFSYS_REG_REG(RFSYS,1)
7331 #define RFSYS_REG2                               RFSYS_REG_REG(RFSYS,2)
7332 #define RFSYS_REG3                               RFSYS_REG_REG(RFSYS,3)
7333 #define RFSYS_REG4                               RFSYS_REG_REG(RFSYS,4)
7334 #define RFSYS_REG5                               RFSYS_REG_REG(RFSYS,5)
7335 #define RFSYS_REG6                               RFSYS_REG_REG(RFSYS,6)
7336 #define RFSYS_REG7                               RFSYS_REG_REG(RFSYS,7)
7337
7338 /* RFSYS - Register array accessors */
7339 #define RFSYS_REG(index)                         RFSYS_REG_REG(RFSYS,index)
7340
7341 /*!
7342  * @}
7343  */ /* end of group RFSYS_Register_Accessor_Macros */
7344
7345
7346 /*!
7347  * @}
7348  */ /* end of group RFSYS_Peripheral_Access_Layer */
7349
7350
7351 /* ----------------------------------------------------------------------------
7352    -- RFVBAT Peripheral Access Layer
7353    ---------------------------------------------------------------------------- */
7354
7355 /*!
7356  * @addtogroup RFVBAT_Peripheral_Access_Layer RFVBAT Peripheral Access Layer
7357  * @{
7358  */
7359
7360 /** RFVBAT - Register Layout Typedef */
7361 typedef struct {
7362   __IO uint32_t REG[8];                            /**< VBAT register file register, array offset: 0x0, array step: 0x4 */
7363 } RFVBAT_Type, *RFVBAT_MemMapPtr;
7364
7365 /* ----------------------------------------------------------------------------
7366    -- RFVBAT - Register accessor macros
7367    ---------------------------------------------------------------------------- */
7368
7369 /*!
7370  * @addtogroup RFVBAT_Register_Accessor_Macros RFVBAT - Register accessor macros
7371  * @{
7372  */
7373
7374
7375 /* RFVBAT - Register accessors */
7376 #define RFVBAT_REG_REG(base,index)               ((base)->REG[index])
7377
7378 /*!
7379  * @}
7380  */ /* end of group RFVBAT_Register_Accessor_Macros */
7381
7382
7383 /* ----------------------------------------------------------------------------
7384    -- RFVBAT Register Masks
7385    ---------------------------------------------------------------------------- */
7386
7387 /*!
7388  * @addtogroup RFVBAT_Register_Masks RFVBAT Register Masks
7389  * @{
7390  */
7391
7392 /* REG Bit Fields */
7393 #define RFVBAT_REG_LL_MASK                       0xFFu
7394 #define RFVBAT_REG_LL_SHIFT                      0
7395 #define RFVBAT_REG_LL(x)                         (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_LL_SHIFT))&RFVBAT_REG_LL_MASK)
7396 #define RFVBAT_REG_LH_MASK                       0xFF00u
7397 #define RFVBAT_REG_LH_SHIFT                      8
7398 #define RFVBAT_REG_LH(x)                         (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_LH_SHIFT))&RFVBAT_REG_LH_MASK)
7399 #define RFVBAT_REG_HL_MASK                       0xFF0000u
7400 #define RFVBAT_REG_HL_SHIFT                      16
7401 #define RFVBAT_REG_HL(x)                         (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_HL_SHIFT))&RFVBAT_REG_HL_MASK)
7402 #define RFVBAT_REG_HH_MASK                       0xFF000000u
7403 #define RFVBAT_REG_HH_SHIFT                      24
7404 #define RFVBAT_REG_HH(x)                         (((uint32_t)(((uint32_t)(x))<<RFVBAT_REG_HH_SHIFT))&RFVBAT_REG_HH_MASK)
7405
7406 /*!
7407  * @}
7408  */ /* end of group RFVBAT_Register_Masks */
7409
7410
7411 /* RFVBAT - Peripheral instance base addresses */
7412 /** Peripheral RFVBAT base address */
7413 #define RFVBAT_BASE                              (0x4003E000u)
7414 /** Peripheral RFVBAT base pointer */
7415 #define RFVBAT                                   ((RFVBAT_Type *)RFVBAT_BASE)
7416 #define RFVBAT_BASE_PTR                          (RFVBAT)
7417 /** Array initializer of RFVBAT peripheral base addresses */
7418 #define RFVBAT_BASE_ADDRS                        { RFVBAT_BASE }
7419 /** Array initializer of RFVBAT peripheral base pointers */
7420 #define RFVBAT_BASE_PTRS                         { RFVBAT }
7421
7422 /* ----------------------------------------------------------------------------
7423    -- RFVBAT - Register accessor macros
7424    ---------------------------------------------------------------------------- */
7425
7426 /*!
7427  * @addtogroup RFVBAT_Register_Accessor_Macros RFVBAT - Register accessor macros
7428  * @{
7429  */
7430
7431
7432 /* RFVBAT - Register instance definitions */
7433 /* RFVBAT */
7434 #define RFVBAT_REG0                              RFVBAT_REG_REG(RFVBAT,0)
7435 #define RFVBAT_REG1                              RFVBAT_REG_REG(RFVBAT,1)
7436 #define RFVBAT_REG2                              RFVBAT_REG_REG(RFVBAT,2)
7437 #define RFVBAT_REG3                              RFVBAT_REG_REG(RFVBAT,3)
7438 #define RFVBAT_REG4                              RFVBAT_REG_REG(RFVBAT,4)
7439 #define RFVBAT_REG5                              RFVBAT_REG_REG(RFVBAT,5)
7440 #define RFVBAT_REG6                              RFVBAT_REG_REG(RFVBAT,6)
7441 #define RFVBAT_REG7                              RFVBAT_REG_REG(RFVBAT,7)
7442
7443 /* RFVBAT - Register array accessors */
7444 #define RFVBAT_REG(index)                        RFVBAT_REG_REG(RFVBAT,index)
7445
7446 /*!
7447  * @}
7448  */ /* end of group RFVBAT_Register_Accessor_Macros */
7449
7450
7451 /*!
7452  * @}
7453  */ /* end of group RFVBAT_Peripheral_Access_Layer */
7454
7455
7456 /* ----------------------------------------------------------------------------
7457    -- RNG Peripheral Access Layer
7458    ---------------------------------------------------------------------------- */
7459
7460 /*!
7461  * @addtogroup RNG_Peripheral_Access_Layer RNG Peripheral Access Layer
7462  * @{
7463  */
7464
7465 /** RNG - Register Layout Typedef */
7466 typedef struct {
7467   __IO uint32_t CR;                                /**< RNGA Control Register, offset: 0x0 */
7468   __I  uint32_t SR;                                /**< RNGA Status Register, offset: 0x4 */
7469   __O  uint32_t ER;                                /**< RNGA Entropy Register, offset: 0x8 */
7470   __I  uint32_t OR;                                /**< RNGA Output Register, offset: 0xC */
7471 } RNG_Type, *RNG_MemMapPtr;
7472
7473 /* ----------------------------------------------------------------------------
7474    -- RNG - Register accessor macros
7475    ---------------------------------------------------------------------------- */
7476
7477 /*!
7478  * @addtogroup RNG_Register_Accessor_Macros RNG - Register accessor macros
7479  * @{
7480  */
7481
7482
7483 /* RNG - Register accessors */
7484 #define RNG_CR_REG(base)                         ((base)->CR)
7485 #define RNG_SR_REG(base)                         ((base)->SR)
7486 #define RNG_ER_REG(base)                         ((base)->ER)
7487 #define RNG_OR_REG(base)                         ((base)->OR)
7488
7489 /*!
7490  * @}
7491  */ /* end of group RNG_Register_Accessor_Macros */
7492
7493
7494 /* ----------------------------------------------------------------------------
7495    -- RNG Register Masks
7496    ---------------------------------------------------------------------------- */
7497
7498 /*!
7499  * @addtogroup RNG_Register_Masks RNG Register Masks
7500  * @{
7501  */
7502
7503 /* CR Bit Fields */
7504 #define RNG_CR_GO_MASK                           0x1u
7505 #define RNG_CR_GO_SHIFT                          0
7506 #define RNG_CR_HA_MASK                           0x2u
7507 #define RNG_CR_HA_SHIFT                          1
7508 #define RNG_CR_INTM_MASK                         0x4u
7509 #define RNG_CR_INTM_SHIFT                        2
7510 #define RNG_CR_CLRI_MASK                         0x8u
7511 #define RNG_CR_CLRI_SHIFT                        3
7512 #define RNG_CR_SLP_MASK                          0x10u
7513 #define RNG_CR_SLP_SHIFT                         4
7514 /* SR Bit Fields */
7515 #define RNG_SR_SECV_MASK                         0x1u
7516 #define RNG_SR_SECV_SHIFT                        0
7517 #define RNG_SR_LRS_MASK                          0x2u
7518 #define RNG_SR_LRS_SHIFT                         1
7519 #define RNG_SR_ORU_MASK                          0x4u
7520 #define RNG_SR_ORU_SHIFT                         2
7521 #define RNG_SR_ERRI_MASK                         0x8u
7522 #define RNG_SR_ERRI_SHIFT                        3
7523 #define RNG_SR_SLP_MASK                          0x10u
7524 #define RNG_SR_SLP_SHIFT                         4
7525 #define RNG_SR_OREG_LVL_MASK                     0xFF00u
7526 #define RNG_SR_OREG_LVL_SHIFT                    8
7527 #define RNG_SR_OREG_LVL(x)                       (((uint32_t)(((uint32_t)(x))<<RNG_SR_OREG_LVL_SHIFT))&RNG_SR_OREG_LVL_MASK)
7528 #define RNG_SR_OREG_SIZE_MASK                    0xFF0000u
7529 #define RNG_SR_OREG_SIZE_SHIFT                   16
7530 #define RNG_SR_OREG_SIZE(x)                      (((uint32_t)(((uint32_t)(x))<<RNG_SR_OREG_SIZE_SHIFT))&RNG_SR_OREG_SIZE_MASK)
7531 /* ER Bit Fields */
7532 #define RNG_ER_EXT_ENT_MASK                      0xFFFFFFFFu
7533 #define RNG_ER_EXT_ENT_SHIFT                     0
7534 #define RNG_ER_EXT_ENT(x)                        (((uint32_t)(((uint32_t)(x))<<RNG_ER_EXT_ENT_SHIFT))&RNG_ER_EXT_ENT_MASK)
7535 /* OR Bit Fields */
7536 #define RNG_OR_RANDOUT_MASK                      0xFFFFFFFFu
7537 #define RNG_OR_RANDOUT_SHIFT                     0
7538 #define RNG_OR_RANDOUT(x)                        (((uint32_t)(((uint32_t)(x))<<RNG_OR_RANDOUT_SHIFT))&RNG_OR_RANDOUT_MASK)
7539
7540 /*!
7541  * @}
7542  */ /* end of group RNG_Register_Masks */
7543
7544
7545 /* RNG - Peripheral instance base addresses */
7546 /** Peripheral RNG base address */
7547 #define RNG_BASE                                 (0x40029000u)
7548 /** Peripheral RNG base pointer */
7549 #define RNG                                      ((RNG_Type *)RNG_BASE)
7550 #define RNG_BASE_PTR                             (RNG)
7551 /** Array initializer of RNG peripheral base addresses */
7552 #define RNG_BASE_ADDRS                           { RNG_BASE }
7553 /** Array initializer of RNG peripheral base pointers */
7554 #define RNG_BASE_PTRS                            { RNG }
7555 /** Interrupt vectors for the RNG peripheral type */
7556 #define RNG_IRQS                                 { RNG_IRQn }
7557
7558 /* ----------------------------------------------------------------------------
7559    -- RNG - Register accessor macros
7560    ---------------------------------------------------------------------------- */
7561
7562 /*!
7563  * @addtogroup RNG_Register_Accessor_Macros RNG - Register accessor macros
7564  * @{
7565  */
7566
7567
7568 /* RNG - Register instance definitions */
7569 /* RNG */
7570 #define RNG_CR                                   RNG_CR_REG(RNG)
7571 #define RNG_SR                                   RNG_SR_REG(RNG)
7572 #define RNG_ER                                   RNG_ER_REG(RNG)
7573 #define RNG_OR                                   RNG_OR_REG(RNG)
7574
7575 /*!
7576  * @}
7577  */ /* end of group RNG_Register_Accessor_Macros */
7578
7579
7580 /*!
7581  * @}
7582  */ /* end of group RNG_Peripheral_Access_Layer */
7583
7584
7585 /* ----------------------------------------------------------------------------
7586    -- RTC Peripheral Access Layer
7587    ---------------------------------------------------------------------------- */
7588
7589 /*!
7590  * @addtogroup RTC_Peripheral_Access_Layer RTC Peripheral Access Layer
7591  * @{
7592  */
7593
7594 /** RTC - Register Layout Typedef */
7595 typedef struct {
7596   __IO uint32_t TSR;                               /**< RTC Time Seconds Register, offset: 0x0 */
7597   __IO uint32_t TPR;                               /**< RTC Time Prescaler Register, offset: 0x4 */
7598   __IO uint32_t TAR;                               /**< RTC Time Alarm Register, offset: 0x8 */
7599   __IO uint32_t TCR;                               /**< RTC Time Compensation Register, offset: 0xC */
7600   __IO uint32_t CR;                                /**< RTC Control Register, offset: 0x10 */
7601   __IO uint32_t SR;                                /**< RTC Status Register, offset: 0x14 */
7602   __IO uint32_t LR;                                /**< RTC Lock Register, offset: 0x18 */
7603   __IO uint32_t IER;                               /**< RTC Interrupt Enable Register, offset: 0x1C */
7604        uint8_t RESERVED_0[2016];
7605   __IO uint32_t WAR;                               /**< RTC Write Access Register, offset: 0x800 */
7606   __IO uint32_t RAR;                               /**< RTC Read Access Register, offset: 0x804 */
7607 } RTC_Type, *RTC_MemMapPtr;
7608
7609 /* ----------------------------------------------------------------------------
7610    -- RTC - Register accessor macros
7611    ---------------------------------------------------------------------------- */
7612
7613 /*!
7614  * @addtogroup RTC_Register_Accessor_Macros RTC - Register accessor macros
7615  * @{
7616  */
7617
7618
7619 /* RTC - Register accessors */
7620 #define RTC_TSR_REG(base)                        ((base)->TSR)
7621 #define RTC_TPR_REG(base)                        ((base)->TPR)
7622 #define RTC_TAR_REG(base)                        ((base)->TAR)
7623 #define RTC_TCR_REG(base)                        ((base)->TCR)
7624 #define RTC_CR_REG(base)                         ((base)->CR)
7625 #define RTC_SR_REG(base)                         ((base)->SR)
7626 #define RTC_LR_REG(base)                         ((base)->LR)
7627 #define RTC_IER_REG(base)                        ((base)->IER)
7628 #define RTC_WAR_REG(base)                        ((base)->WAR)
7629 #define RTC_RAR_REG(base)                        ((base)->RAR)
7630
7631 /*!
7632  * @}
7633  */ /* end of group RTC_Register_Accessor_Macros */
7634
7635
7636 /* ----------------------------------------------------------------------------
7637    -- RTC Register Masks
7638    ---------------------------------------------------------------------------- */
7639
7640 /*!
7641  * @addtogroup RTC_Register_Masks RTC Register Masks
7642  * @{
7643  */
7644
7645 /* TSR Bit Fields */
7646 #define RTC_TSR_TSR_MASK                         0xFFFFFFFFu
7647 #define RTC_TSR_TSR_SHIFT                        0
7648 #define RTC_TSR_TSR(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TSR_TSR_SHIFT))&RTC_TSR_TSR_MASK)
7649 /* TPR Bit Fields */
7650 #define RTC_TPR_TPR_MASK                         0xFFFFu
7651 #define RTC_TPR_TPR_SHIFT                        0
7652 #define RTC_TPR_TPR(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TPR_TPR_SHIFT))&RTC_TPR_TPR_MASK)
7653 /* TAR Bit Fields */
7654 #define RTC_TAR_TAR_MASK                         0xFFFFFFFFu
7655 #define RTC_TAR_TAR_SHIFT                        0
7656 #define RTC_TAR_TAR(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TAR_TAR_SHIFT))&RTC_TAR_TAR_MASK)
7657 /* TCR Bit Fields */
7658 #define RTC_TCR_TCR_MASK                         0xFFu
7659 #define RTC_TCR_TCR_SHIFT                        0
7660 #define RTC_TCR_TCR(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TCR_TCR_SHIFT))&RTC_TCR_TCR_MASK)
7661 #define RTC_TCR_CIR_MASK                         0xFF00u
7662 #define RTC_TCR_CIR_SHIFT                        8
7663 #define RTC_TCR_CIR(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TCR_CIR_SHIFT))&RTC_TCR_CIR_MASK)
7664 #define RTC_TCR_TCV_MASK                         0xFF0000u
7665 #define RTC_TCR_TCV_SHIFT                        16
7666 #define RTC_TCR_TCV(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TCR_TCV_SHIFT))&RTC_TCR_TCV_MASK)
7667 #define RTC_TCR_CIC_MASK                         0xFF000000u
7668 #define RTC_TCR_CIC_SHIFT                        24
7669 #define RTC_TCR_CIC(x)                           (((uint32_t)(((uint32_t)(x))<<RTC_TCR_CIC_SHIFT))&RTC_TCR_CIC_MASK)
7670 /* CR Bit Fields */
7671 #define RTC_CR_SWR_MASK                          0x1u
7672 #define RTC_CR_SWR_SHIFT                         0
7673 #define RTC_CR_WPE_MASK                          0x2u
7674 #define RTC_CR_WPE_SHIFT                         1
7675 #define RTC_CR_SUP_MASK                          0x4u
7676 #define RTC_CR_SUP_SHIFT                         2
7677 #define RTC_CR_UM_MASK                           0x8u
7678 #define RTC_CR_UM_SHIFT                          3
7679 #define RTC_CR_WPS_MASK                          0x10u
7680 #define RTC_CR_WPS_SHIFT                         4
7681 #define RTC_CR_OSCE_MASK                         0x100u
7682 #define RTC_CR_OSCE_SHIFT                        8
7683 #define RTC_CR_CLKO_MASK                         0x200u
7684 #define RTC_CR_CLKO_SHIFT                        9
7685 #define RTC_CR_SC16P_MASK                        0x400u
7686 #define RTC_CR_SC16P_SHIFT                       10
7687 #define RTC_CR_SC8P_MASK                         0x800u
7688 #define RTC_CR_SC8P_SHIFT                        11
7689 #define RTC_CR_SC4P_MASK                         0x1000u
7690 #define RTC_CR_SC4P_SHIFT                        12
7691 #define RTC_CR_SC2P_MASK                         0x2000u
7692 #define RTC_CR_SC2P_SHIFT                        13
7693 /* SR Bit Fields */
7694 #define RTC_SR_TIF_MASK                          0x1u
7695 #define RTC_SR_TIF_SHIFT                         0
7696 #define RTC_SR_TOF_MASK                          0x2u
7697 #define RTC_SR_TOF_SHIFT                         1
7698 #define RTC_SR_TAF_MASK                          0x4u
7699 #define RTC_SR_TAF_SHIFT                         2
7700 #define RTC_SR_TCE_MASK                          0x10u
7701 #define RTC_SR_TCE_SHIFT                         4
7702 /* LR Bit Fields */
7703 #define RTC_LR_TCL_MASK                          0x8u
7704 #define RTC_LR_TCL_SHIFT                         3
7705 #define RTC_LR_CRL_MASK                          0x10u
7706 #define RTC_LR_CRL_SHIFT                         4
7707 #define RTC_LR_SRL_MASK                          0x20u
7708 #define RTC_LR_SRL_SHIFT                         5
7709 #define RTC_LR_LRL_MASK                          0x40u
7710 #define RTC_LR_LRL_SHIFT                         6
7711 /* IER Bit Fields */
7712 #define RTC_IER_TIIE_MASK                        0x1u
7713 #define RTC_IER_TIIE_SHIFT                       0
7714 #define RTC_IER_TOIE_MASK                        0x2u
7715 #define RTC_IER_TOIE_SHIFT                       1
7716 #define RTC_IER_TAIE_MASK                        0x4u
7717 #define RTC_IER_TAIE_SHIFT                       2
7718 #define RTC_IER_TSIE_MASK                        0x10u
7719 #define RTC_IER_TSIE_SHIFT                       4
7720 #define RTC_IER_WPON_MASK                        0x80u
7721 #define RTC_IER_WPON_SHIFT                       7
7722 /* WAR Bit Fields */
7723 #define RTC_WAR_TSRW_MASK                        0x1u
7724 #define RTC_WAR_TSRW_SHIFT                       0
7725 #define RTC_WAR_TPRW_MASK                        0x2u
7726 #define RTC_WAR_TPRW_SHIFT                       1
7727 #define RTC_WAR_TARW_MASK                        0x4u
7728 #define RTC_WAR_TARW_SHIFT                       2
7729 #define RTC_WAR_TCRW_MASK                        0x8u
7730 #define RTC_WAR_TCRW_SHIFT                       3
7731 #define RTC_WAR_CRW_MASK                         0x10u
7732 #define RTC_WAR_CRW_SHIFT                        4
7733 #define RTC_WAR_SRW_MASK                         0x20u
7734 #define RTC_WAR_SRW_SHIFT                        5
7735 #define RTC_WAR_LRW_MASK                         0x40u
7736 #define RTC_WAR_LRW_SHIFT                        6
7737 #define RTC_WAR_IERW_MASK                        0x80u
7738 #define RTC_WAR_IERW_SHIFT                       7
7739 /* RAR Bit Fields */
7740 #define RTC_RAR_TSRR_MASK                        0x1u
7741 #define RTC_RAR_TSRR_SHIFT                       0
7742 #define RTC_RAR_TPRR_MASK                        0x2u
7743 #define RTC_RAR_TPRR_SHIFT                       1
7744 #define RTC_RAR_TARR_MASK                        0x4u
7745 #define RTC_RAR_TARR_SHIFT                       2
7746 #define RTC_RAR_TCRR_MASK                        0x8u
7747 #define RTC_RAR_TCRR_SHIFT                       3
7748 #define RTC_RAR_CRR_MASK                         0x10u
7749 #define RTC_RAR_CRR_SHIFT                        4
7750 #define RTC_RAR_SRR_MASK                         0x20u
7751 #define RTC_RAR_SRR_SHIFT                        5
7752 #define RTC_RAR_LRR_MASK                         0x40u
7753 #define RTC_RAR_LRR_SHIFT                        6
7754 #define RTC_RAR_IERR_MASK                        0x80u
7755 #define RTC_RAR_IERR_SHIFT                       7
7756
7757 /*!
7758  * @}
7759  */ /* end of group RTC_Register_Masks */
7760
7761
7762 /* RTC - Peripheral instance base addresses */
7763 /** Peripheral RTC base address */
7764 #define RTC_BASE                                 (0x4003D000u)
7765 /** Peripheral RTC base pointer */
7766 #define RTC                                      ((RTC_Type *)RTC_BASE)
7767 #define RTC_BASE_PTR                             (RTC)
7768 /** Array initializer of RTC peripheral base addresses */
7769 #define RTC_BASE_ADDRS                           { RTC_BASE }
7770 /** Array initializer of RTC peripheral base pointers */
7771 #define RTC_BASE_PTRS                            { RTC }
7772 /** Interrupt vectors for the RTC peripheral type */
7773 #define RTC_IRQS                                 { RTC_IRQn }
7774 #define RTC_SECONDS_IRQS                         { RTC_Seconds_IRQn }
7775
7776 /* ----------------------------------------------------------------------------
7777    -- RTC - Register accessor macros
7778    ---------------------------------------------------------------------------- */
7779
7780 /*!
7781  * @addtogroup RTC_Register_Accessor_Macros RTC - Register accessor macros
7782  * @{
7783  */
7784
7785
7786 /* RTC - Register instance definitions */
7787 /* RTC */
7788 #define RTC_TSR                                  RTC_TSR_REG(RTC)
7789 #define RTC_TPR                                  RTC_TPR_REG(RTC)
7790 #define RTC_TAR                                  RTC_TAR_REG(RTC)
7791 #define RTC_TCR                                  RTC_TCR_REG(RTC)
7792 #define RTC_CR                                   RTC_CR_REG(RTC)
7793 #define RTC_SR                                   RTC_SR_REG(RTC)
7794 #define RTC_LR                                   RTC_LR_REG(RTC)
7795 #define RTC_IER                                  RTC_IER_REG(RTC)
7796 #define RTC_WAR                                  RTC_WAR_REG(RTC)
7797 #define RTC_RAR                                  RTC_RAR_REG(RTC)
7798
7799 /*!
7800  * @}
7801  */ /* end of group RTC_Register_Accessor_Macros */
7802
7803
7804 /*!
7805  * @}
7806  */ /* end of group RTC_Peripheral_Access_Layer */
7807
7808
7809 /* ----------------------------------------------------------------------------
7810    -- SIM Peripheral Access Layer
7811    ---------------------------------------------------------------------------- */
7812
7813 /*!
7814  * @addtogroup SIM_Peripheral_Access_Layer SIM Peripheral Access Layer
7815  * @{
7816  */
7817
7818 /** SIM - Register Layout Typedef */
7819 typedef struct {
7820   __IO uint32_t SOPT1;                             /**< System Options Register 1, offset: 0x0 */
7821   __IO uint32_t SOPT1CFG;                          /**< SOPT1 Configuration Register, offset: 0x4 */
7822        uint8_t RESERVED_0[4092];
7823   __IO uint32_t SOPT2;                             /**< System Options Register 2, offset: 0x1004 */
7824        uint8_t RESERVED_1[4];
7825   __IO uint32_t SOPT4;                             /**< System Options Register 4, offset: 0x100C */
7826   __IO uint32_t SOPT5;                             /**< System Options Register 5, offset: 0x1010 */
7827        uint8_t RESERVED_2[4];
7828   __IO uint32_t SOPT7;                             /**< System Options Register 7, offset: 0x1018 */
7829   __IO uint32_t SOPT8;                             /**< System Options Register 8, offset: 0x101C */
7830        uint8_t RESERVED_3[4];
7831   __I  uint32_t SDID;                              /**< System Device Identification Register, offset: 0x1024 */
7832        uint8_t RESERVED_4[12];
7833   __IO uint32_t SCGC4;                             /**< System Clock Gating Control Register 4, offset: 0x1034 */
7834   __IO uint32_t SCGC5;                             /**< System Clock Gating Control Register 5, offset: 0x1038 */
7835   __IO uint32_t SCGC6;                             /**< System Clock Gating Control Register 6, offset: 0x103C */
7836   __IO uint32_t SCGC7;                             /**< System Clock Gating Control Register 7, offset: 0x1040 */
7837   __IO uint32_t CLKDIV1;                           /**< System Clock Divider Register 1, offset: 0x1044 */
7838   __IO uint32_t CLKDIV2;                           /**< System Clock Divider Register 2, offset: 0x1048 */
7839   __IO uint32_t FCFG1;                             /**< Flash Configuration Register 1, offset: 0x104C */
7840   __I  uint32_t FCFG2;                             /**< Flash Configuration Register 2, offset: 0x1050 */
7841   __I  uint32_t UIDH;                              /**< Unique Identification Register High, offset: 0x1054 */
7842   __I  uint32_t UIDMH;                             /**< Unique Identification Register Mid-High, offset: 0x1058 */
7843   __I  uint32_t UIDML;                             /**< Unique Identification Register Mid Low, offset: 0x105C */
7844   __I  uint32_t UIDL;                              /**< Unique Identification Register Low, offset: 0x1060 */
7845 } SIM_Type, *SIM_MemMapPtr;
7846
7847 /* ----------------------------------------------------------------------------
7848    -- SIM - Register accessor macros
7849    ---------------------------------------------------------------------------- */
7850
7851 /*!
7852  * @addtogroup SIM_Register_Accessor_Macros SIM - Register accessor macros
7853  * @{
7854  */
7855
7856
7857 /* SIM - Register accessors */
7858 #define SIM_SOPT1_REG(base)                      ((base)->SOPT1)
7859 #define SIM_SOPT1CFG_REG(base)                   ((base)->SOPT1CFG)
7860 #define SIM_SOPT2_REG(base)                      ((base)->SOPT2)
7861 #define SIM_SOPT4_REG(base)                      ((base)->SOPT4)
7862 #define SIM_SOPT5_REG(base)                      ((base)->SOPT5)
7863 #define SIM_SOPT7_REG(base)                      ((base)->SOPT7)
7864 #define SIM_SOPT8_REG(base)                      ((base)->SOPT8)
7865 #define SIM_SDID_REG(base)                       ((base)->SDID)
7866 #define SIM_SCGC4_REG(base)                      ((base)->SCGC4)
7867 #define SIM_SCGC5_REG(base)                      ((base)->SCGC5)
7868 #define SIM_SCGC6_REG(base)                      ((base)->SCGC6)
7869 #define SIM_SCGC7_REG(base)                      ((base)->SCGC7)
7870 #define SIM_CLKDIV1_REG(base)                    ((base)->CLKDIV1)
7871 #define SIM_CLKDIV2_REG(base)                    ((base)->CLKDIV2)
7872 #define SIM_FCFG1_REG(base)                      ((base)->FCFG1)
7873 #define SIM_FCFG2_REG(base)                      ((base)->FCFG2)
7874 #define SIM_UIDH_REG(base)                       ((base)->UIDH)
7875 #define SIM_UIDMH_REG(base)                      ((base)->UIDMH)
7876 #define SIM_UIDML_REG(base)                      ((base)->UIDML)
7877 #define SIM_UIDL_REG(base)                       ((base)->UIDL)
7878
7879 /*!
7880  * @}
7881  */ /* end of group SIM_Register_Accessor_Macros */
7882
7883
7884 /* ----------------------------------------------------------------------------
7885    -- SIM Register Masks
7886    ---------------------------------------------------------------------------- */
7887
7888 /*!
7889  * @addtogroup SIM_Register_Masks SIM Register Masks
7890  * @{
7891  */
7892
7893 /* SOPT1 Bit Fields */
7894 #define SIM_SOPT1_RAMSIZE_MASK                   0xF000u
7895 #define SIM_SOPT1_RAMSIZE_SHIFT                  12
7896 #define SIM_SOPT1_RAMSIZE(x)                     (((uint32_t)(((uint32_t)(x))<<SIM_SOPT1_RAMSIZE_SHIFT))&SIM_SOPT1_RAMSIZE_MASK)
7897 #define SIM_SOPT1_OSC32KOUT_MASK                 0x30000u
7898 #define SIM_SOPT1_OSC32KOUT_SHIFT                16
7899 #define SIM_SOPT1_OSC32KOUT(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_SOPT1_OSC32KOUT_SHIFT))&SIM_SOPT1_OSC32KOUT_MASK)
7900 #define SIM_SOPT1_OSC32KSEL_MASK                 0xC0000u
7901 #define SIM_SOPT1_OSC32KSEL_SHIFT                18
7902 #define SIM_SOPT1_OSC32KSEL(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_SOPT1_OSC32KSEL_SHIFT))&SIM_SOPT1_OSC32KSEL_MASK)
7903 #define SIM_SOPT1_USBVSTBY_MASK                  0x20000000u
7904 #define SIM_SOPT1_USBVSTBY_SHIFT                 29
7905 #define SIM_SOPT1_USBSSTBY_MASK                  0x40000000u
7906 #define SIM_SOPT1_USBSSTBY_SHIFT                 30
7907 #define SIM_SOPT1_USBREGEN_MASK                  0x80000000u
7908 #define SIM_SOPT1_USBREGEN_SHIFT                 31
7909 /* SOPT1CFG Bit Fields */
7910 #define SIM_SOPT1CFG_URWE_MASK                   0x1000000u
7911 #define SIM_SOPT1CFG_URWE_SHIFT                  24
7912 #define SIM_SOPT1CFG_UVSWE_MASK                  0x2000000u
7913 #define SIM_SOPT1CFG_UVSWE_SHIFT                 25
7914 #define SIM_SOPT1CFG_USSWE_MASK                  0x4000000u
7915 #define SIM_SOPT1CFG_USSWE_SHIFT                 26
7916 /* SOPT2 Bit Fields */
7917 #define SIM_SOPT2_RTCCLKOUTSEL_MASK              0x10u
7918 #define SIM_SOPT2_RTCCLKOUTSEL_SHIFT             4
7919 #define SIM_SOPT2_CLKOUTSEL_MASK                 0xE0u
7920 #define SIM_SOPT2_CLKOUTSEL_SHIFT                5
7921 #define SIM_SOPT2_CLKOUTSEL(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_CLKOUTSEL_SHIFT))&SIM_SOPT2_CLKOUTSEL_MASK)
7922 #define SIM_SOPT2_FBSL_MASK                      0x300u
7923 #define SIM_SOPT2_FBSL_SHIFT                     8
7924 #define SIM_SOPT2_FBSL(x)                        (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_FBSL_SHIFT))&SIM_SOPT2_FBSL_MASK)
7925 #define SIM_SOPT2_TRACECLKSEL_MASK               0x1000u
7926 #define SIM_SOPT2_TRACECLKSEL_SHIFT              12
7927 #define SIM_SOPT2_PLLFLLSEL_MASK                 0x30000u
7928 #define SIM_SOPT2_PLLFLLSEL_SHIFT                16
7929 #define SIM_SOPT2_PLLFLLSEL(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_PLLFLLSEL_SHIFT))&SIM_SOPT2_PLLFLLSEL_MASK)
7930 #define SIM_SOPT2_USBSRC_MASK                    0x40000u
7931 #define SIM_SOPT2_USBSRC_SHIFT                   18
7932 #define SIM_SOPT2_LPUARTSRC_MASK                 0xC000000u
7933 #define SIM_SOPT2_LPUARTSRC_SHIFT                26
7934 #define SIM_SOPT2_LPUARTSRC(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_SOPT2_LPUARTSRC_SHIFT))&SIM_SOPT2_LPUARTSRC_MASK)
7935 /* SOPT4 Bit Fields */
7936 #define SIM_SOPT4_FTM0FLT0_MASK                  0x1u
7937 #define SIM_SOPT4_FTM0FLT0_SHIFT                 0
7938 #define SIM_SOPT4_FTM0FLT1_MASK                  0x2u
7939 #define SIM_SOPT4_FTM0FLT1_SHIFT                 1
7940 #define SIM_SOPT4_FTM1FLT0_MASK                  0x10u
7941 #define SIM_SOPT4_FTM1FLT0_SHIFT                 4
7942 #define SIM_SOPT4_FTM2FLT0_MASK                  0x100u
7943 #define SIM_SOPT4_FTM2FLT0_SHIFT                 8
7944 #define SIM_SOPT4_FTM3FLT0_MASK                  0x1000u
7945 #define SIM_SOPT4_FTM3FLT0_SHIFT                 12
7946 #define SIM_SOPT4_FTM1CH0SRC_MASK                0xC0000u
7947 #define SIM_SOPT4_FTM1CH0SRC_SHIFT               18
7948 #define SIM_SOPT4_FTM1CH0SRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT4_FTM1CH0SRC_SHIFT))&SIM_SOPT4_FTM1CH0SRC_MASK)
7949 #define SIM_SOPT4_FTM2CH0SRC_MASK                0x300000u
7950 #define SIM_SOPT4_FTM2CH0SRC_SHIFT               20
7951 #define SIM_SOPT4_FTM2CH0SRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT4_FTM2CH0SRC_SHIFT))&SIM_SOPT4_FTM2CH0SRC_MASK)
7952 #define SIM_SOPT4_FTM2CH1SRC_MASK                0x400000u
7953 #define SIM_SOPT4_FTM2CH1SRC_SHIFT               22
7954 #define SIM_SOPT4_FTM0CLKSEL_MASK                0x1000000u
7955 #define SIM_SOPT4_FTM0CLKSEL_SHIFT               24
7956 #define SIM_SOPT4_FTM1CLKSEL_MASK                0x2000000u
7957 #define SIM_SOPT4_FTM1CLKSEL_SHIFT               25
7958 #define SIM_SOPT4_FTM2CLKSEL_MASK                0x4000000u
7959 #define SIM_SOPT4_FTM2CLKSEL_SHIFT               26
7960 #define SIM_SOPT4_FTM3CLKSEL_MASK                0x8000000u
7961 #define SIM_SOPT4_FTM3CLKSEL_SHIFT               27
7962 #define SIM_SOPT4_FTM0TRG0SRC_MASK               0x10000000u
7963 #define SIM_SOPT4_FTM0TRG0SRC_SHIFT              28
7964 #define SIM_SOPT4_FTM0TRG1SRC_MASK               0x20000000u
7965 #define SIM_SOPT4_FTM0TRG1SRC_SHIFT              29
7966 #define SIM_SOPT4_FTM3TRG0SRC_MASK               0x40000000u
7967 #define SIM_SOPT4_FTM3TRG0SRC_SHIFT              30
7968 #define SIM_SOPT4_FTM3TRG1SRC_MASK               0x80000000u
7969 #define SIM_SOPT4_FTM3TRG1SRC_SHIFT              31
7970 /* SOPT5 Bit Fields */
7971 #define SIM_SOPT5_UART0TXSRC_MASK                0x3u
7972 #define SIM_SOPT5_UART0TXSRC_SHIFT               0
7973 #define SIM_SOPT5_UART0TXSRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART0TXSRC_SHIFT))&SIM_SOPT5_UART0TXSRC_MASK)
7974 #define SIM_SOPT5_UART0RXSRC_MASK                0xCu
7975 #define SIM_SOPT5_UART0RXSRC_SHIFT               2
7976 #define SIM_SOPT5_UART0RXSRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART0RXSRC_SHIFT))&SIM_SOPT5_UART0RXSRC_MASK)
7977 #define SIM_SOPT5_UART1TXSRC_MASK                0x30u
7978 #define SIM_SOPT5_UART1TXSRC_SHIFT               4
7979 #define SIM_SOPT5_UART1TXSRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART1TXSRC_SHIFT))&SIM_SOPT5_UART1TXSRC_MASK)
7980 #define SIM_SOPT5_UART1RXSRC_MASK                0xC0u
7981 #define SIM_SOPT5_UART1RXSRC_SHIFT               6
7982 #define SIM_SOPT5_UART1RXSRC(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_UART1RXSRC_SHIFT))&SIM_SOPT5_UART1RXSRC_MASK)
7983 #define SIM_SOPT5_LPUART0RXSRC_MASK              0xC0000u
7984 #define SIM_SOPT5_LPUART0RXSRC_SHIFT             18
7985 #define SIM_SOPT5_LPUART0RXSRC(x)                (((uint32_t)(((uint32_t)(x))<<SIM_SOPT5_LPUART0RXSRC_SHIFT))&SIM_SOPT5_LPUART0RXSRC_MASK)
7986 /* SOPT7 Bit Fields */
7987 #define SIM_SOPT7_ADC0TRGSEL_MASK                0xFu
7988 #define SIM_SOPT7_ADC0TRGSEL_SHIFT               0
7989 #define SIM_SOPT7_ADC0TRGSEL(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT7_ADC0TRGSEL_SHIFT))&SIM_SOPT7_ADC0TRGSEL_MASK)
7990 #define SIM_SOPT7_ADC0PRETRGSEL_MASK             0x10u
7991 #define SIM_SOPT7_ADC0PRETRGSEL_SHIFT            4
7992 #define SIM_SOPT7_ADC0ALTTRGEN_MASK              0x80u
7993 #define SIM_SOPT7_ADC0ALTTRGEN_SHIFT             7
7994 #define SIM_SOPT7_ADC1TRGSEL_MASK                0xF00u
7995 #define SIM_SOPT7_ADC1TRGSEL_SHIFT               8
7996 #define SIM_SOPT7_ADC1TRGSEL(x)                  (((uint32_t)(((uint32_t)(x))<<SIM_SOPT7_ADC1TRGSEL_SHIFT))&SIM_SOPT7_ADC1TRGSEL_MASK)
7997 #define SIM_SOPT7_ADC1PRETRGSEL_MASK             0x1000u
7998 #define SIM_SOPT7_ADC1PRETRGSEL_SHIFT            12
7999 #define SIM_SOPT7_ADC1ALTTRGEN_MASK              0x8000u
8000 #define SIM_SOPT7_ADC1ALTTRGEN_SHIFT             15
8001 /* SOPT8 Bit Fields */
8002 #define SIM_SOPT8_FTM0SYNCBIT_MASK               0x1u
8003 #define SIM_SOPT8_FTM0SYNCBIT_SHIFT              0
8004 #define SIM_SOPT8_FTM1SYNCBIT_MASK               0x2u
8005 #define SIM_SOPT8_FTM1SYNCBIT_SHIFT              1
8006 #define SIM_SOPT8_FTM2SYNCBIT_MASK               0x4u
8007 #define SIM_SOPT8_FTM2SYNCBIT_SHIFT              2
8008 #define SIM_SOPT8_FTM3SYNCBIT_MASK               0x8u
8009 #define SIM_SOPT8_FTM3SYNCBIT_SHIFT              3
8010 #define SIM_SOPT8_FTM0OCH0SRC_MASK               0x10000u
8011 #define SIM_SOPT8_FTM0OCH0SRC_SHIFT              16
8012 #define SIM_SOPT8_FTM0OCH1SRC_MASK               0x20000u
8013 #define SIM_SOPT8_FTM0OCH1SRC_SHIFT              17
8014 #define SIM_SOPT8_FTM0OCH2SRC_MASK               0x40000u
8015 #define SIM_SOPT8_FTM0OCH2SRC_SHIFT              18
8016 #define SIM_SOPT8_FTM0OCH3SRC_MASK               0x80000u
8017 #define SIM_SOPT8_FTM0OCH3SRC_SHIFT              19
8018 #define SIM_SOPT8_FTM0OCH4SRC_MASK               0x100000u
8019 #define SIM_SOPT8_FTM0OCH4SRC_SHIFT              20
8020 #define SIM_SOPT8_FTM0OCH5SRC_MASK               0x200000u
8021 #define SIM_SOPT8_FTM0OCH5SRC_SHIFT              21
8022 #define SIM_SOPT8_FTM0OCH6SRC_MASK               0x400000u
8023 #define SIM_SOPT8_FTM0OCH6SRC_SHIFT              22
8024 #define SIM_SOPT8_FTM0OCH7SRC_MASK               0x800000u
8025 #define SIM_SOPT8_FTM0OCH7SRC_SHIFT              23
8026 #define SIM_SOPT8_FTM3OCH0SRC_MASK               0x1000000u
8027 #define SIM_SOPT8_FTM3OCH0SRC_SHIFT              24
8028 #define SIM_SOPT8_FTM3OCH1SRC_MASK               0x2000000u
8029 #define SIM_SOPT8_FTM3OCH1SRC_SHIFT              25
8030 #define SIM_SOPT8_FTM3OCH2SRC_MASK               0x4000000u
8031 #define SIM_SOPT8_FTM3OCH2SRC_SHIFT              26
8032 #define SIM_SOPT8_FTM3OCH3SRC_MASK               0x8000000u
8033 #define SIM_SOPT8_FTM3OCH3SRC_SHIFT              27
8034 #define SIM_SOPT8_FTM3OCH4SRC_MASK               0x10000000u
8035 #define SIM_SOPT8_FTM3OCH4SRC_SHIFT              28
8036 #define SIM_SOPT8_FTM3OCH5SRC_MASK               0x20000000u
8037 #define SIM_SOPT8_FTM3OCH5SRC_SHIFT              29
8038 #define SIM_SOPT8_FTM3OCH6SRC_MASK               0x40000000u
8039 #define SIM_SOPT8_FTM3OCH6SRC_SHIFT              30
8040 #define SIM_SOPT8_FTM3OCH7SRC_MASK               0x80000000u
8041 #define SIM_SOPT8_FTM3OCH7SRC_SHIFT              31
8042 /* SDID Bit Fields */
8043 #define SIM_SDID_PINID_MASK                      0xFu
8044 #define SIM_SDID_PINID_SHIFT                     0
8045 #define SIM_SDID_PINID(x)                        (((uint32_t)(((uint32_t)(x))<<SIM_SDID_PINID_SHIFT))&SIM_SDID_PINID_MASK)
8046 #define SIM_SDID_FAMID_MASK                      0x70u
8047 #define SIM_SDID_FAMID_SHIFT                     4
8048 #define SIM_SDID_FAMID(x)                        (((uint32_t)(((uint32_t)(x))<<SIM_SDID_FAMID_SHIFT))&SIM_SDID_FAMID_MASK)
8049 #define SIM_SDID_DIEID_MASK                      0xF80u
8050 #define SIM_SDID_DIEID_SHIFT                     7
8051 #define SIM_SDID_DIEID(x)                        (((uint32_t)(((uint32_t)(x))<<SIM_SDID_DIEID_SHIFT))&SIM_SDID_DIEID_MASK)
8052 #define SIM_SDID_REVID_MASK                      0xF000u
8053 #define SIM_SDID_REVID_SHIFT                     12
8054 #define SIM_SDID_REVID(x)                        (((uint32_t)(((uint32_t)(x))<<SIM_SDID_REVID_SHIFT))&SIM_SDID_REVID_MASK)
8055 #define SIM_SDID_SERIESID_MASK                   0xF00000u
8056 #define SIM_SDID_SERIESID_SHIFT                  20
8057 #define SIM_SDID_SERIESID(x)                     (((uint32_t)(((uint32_t)(x))<<SIM_SDID_SERIESID_SHIFT))&SIM_SDID_SERIESID_MASK)
8058 #define SIM_SDID_SUBFAMID_MASK                   0xF000000u
8059 #define SIM_SDID_SUBFAMID_SHIFT                  24
8060 #define SIM_SDID_SUBFAMID(x)                     (((uint32_t)(((uint32_t)(x))<<SIM_SDID_SUBFAMID_SHIFT))&SIM_SDID_SUBFAMID_MASK)
8061 #define SIM_SDID_FAMILYID_MASK                   0xF0000000u
8062 #define SIM_SDID_FAMILYID_SHIFT                  28
8063 #define SIM_SDID_FAMILYID(x)                     (((uint32_t)(((uint32_t)(x))<<SIM_SDID_FAMILYID_SHIFT))&SIM_SDID_FAMILYID_MASK)
8064 /* SCGC4 Bit Fields */
8065 #define SIM_SCGC4_EWM_MASK                       0x2u
8066 #define SIM_SCGC4_EWM_SHIFT                      1
8067 #define SIM_SCGC4_I2C0_MASK                      0x40u
8068 #define SIM_SCGC4_I2C0_SHIFT                     6
8069 #define SIM_SCGC4_I2C1_MASK                      0x80u
8070 #define SIM_SCGC4_I2C1_SHIFT                     7
8071 #define SIM_SCGC4_UART0_MASK                     0x400u
8072 #define SIM_SCGC4_UART0_SHIFT                    10
8073 #define SIM_SCGC4_UART1_MASK                     0x800u
8074 #define SIM_SCGC4_UART1_SHIFT                    11
8075 #define SIM_SCGC4_UART2_MASK                     0x1000u
8076 #define SIM_SCGC4_UART2_SHIFT                    12
8077 #define SIM_SCGC4_USBOTG_MASK                    0x40000u
8078 #define SIM_SCGC4_USBOTG_SHIFT                   18
8079 #define SIM_SCGC4_CMP_MASK                       0x80000u
8080 #define SIM_SCGC4_CMP_SHIFT                      19
8081 #define SIM_SCGC4_VREF_MASK                      0x100000u
8082 #define SIM_SCGC4_VREF_SHIFT                     20
8083 /* SCGC5 Bit Fields */
8084 #define SIM_SCGC5_LPTMR_MASK                     0x1u
8085 #define SIM_SCGC5_LPTMR_SHIFT                    0
8086 #define SIM_SCGC5_PORTA_MASK                     0x200u
8087 #define SIM_SCGC5_PORTA_SHIFT                    9
8088 #define SIM_SCGC5_PORTB_MASK                     0x400u
8089 #define SIM_SCGC5_PORTB_SHIFT                    10
8090 #define SIM_SCGC5_PORTC_MASK                     0x800u
8091 #define SIM_SCGC5_PORTC_SHIFT                    11
8092 #define SIM_SCGC5_PORTD_MASK                     0x1000u
8093 #define SIM_SCGC5_PORTD_SHIFT                    12
8094 #define SIM_SCGC5_PORTE_MASK                     0x2000u
8095 #define SIM_SCGC5_PORTE_SHIFT                    13
8096 /* SCGC6 Bit Fields */
8097 #define SIM_SCGC6_FTF_MASK                       0x1u
8098 #define SIM_SCGC6_FTF_SHIFT                      0
8099 #define SIM_SCGC6_DMAMUX_MASK                    0x2u
8100 #define SIM_SCGC6_DMAMUX_SHIFT                   1
8101 #define SIM_SCGC6_FTM3_MASK                      0x40u
8102 #define SIM_SCGC6_FTM3_SHIFT                     6
8103 #define SIM_SCGC6_ADC1_MASK                      0x80u
8104 #define SIM_SCGC6_ADC1_SHIFT                     7
8105 #define SIM_SCGC6_DAC1_MASK                      0x100u
8106 #define SIM_SCGC6_DAC1_SHIFT                     8
8107 #define SIM_SCGC6_RNGA_MASK                      0x200u
8108 #define SIM_SCGC6_RNGA_SHIFT                     9
8109 #define SIM_SCGC6_LPUART0_MASK                   0x400u
8110 #define SIM_SCGC6_LPUART0_SHIFT                  10
8111 #define SIM_SCGC6_SPI0_MASK                      0x1000u
8112 #define SIM_SCGC6_SPI0_SHIFT                     12
8113 #define SIM_SCGC6_SPI1_MASK                      0x2000u
8114 #define SIM_SCGC6_SPI1_SHIFT                     13
8115 #define SIM_SCGC6_I2S_MASK                       0x8000u
8116 #define SIM_SCGC6_I2S_SHIFT                      15
8117 #define SIM_SCGC6_CRC_MASK                       0x40000u
8118 #define SIM_SCGC6_CRC_SHIFT                      18
8119 #define SIM_SCGC6_PDB_MASK                       0x400000u
8120 #define SIM_SCGC6_PDB_SHIFT                      22
8121 #define SIM_SCGC6_PIT_MASK                       0x800000u
8122 #define SIM_SCGC6_PIT_SHIFT                      23
8123 #define SIM_SCGC6_FTM0_MASK                      0x1000000u
8124 #define SIM_SCGC6_FTM0_SHIFT                     24
8125 #define SIM_SCGC6_FTM1_MASK                      0x2000000u
8126 #define SIM_SCGC6_FTM1_SHIFT                     25
8127 #define SIM_SCGC6_FTM2_MASK                      0x4000000u
8128 #define SIM_SCGC6_FTM2_SHIFT                     26
8129 #define SIM_SCGC6_ADC0_MASK                      0x8000000u
8130 #define SIM_SCGC6_ADC0_SHIFT                     27
8131 #define SIM_SCGC6_RTC_MASK                       0x20000000u
8132 #define SIM_SCGC6_RTC_SHIFT                      29
8133 #define SIM_SCGC6_DAC0_MASK                      0x80000000u
8134 #define SIM_SCGC6_DAC0_SHIFT                     31
8135 /* SCGC7 Bit Fields */
8136 #define SIM_SCGC7_FLEXBUS_MASK                   0x1u
8137 #define SIM_SCGC7_FLEXBUS_SHIFT                  0
8138 #define SIM_SCGC7_DMA_MASK                       0x2u
8139 #define SIM_SCGC7_DMA_SHIFT                      1
8140 /* CLKDIV1 Bit Fields */
8141 #define SIM_CLKDIV1_OUTDIV4_MASK                 0xF0000u
8142 #define SIM_CLKDIV1_OUTDIV4_SHIFT                16
8143 #define SIM_CLKDIV1_OUTDIV4(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV4_SHIFT))&SIM_CLKDIV1_OUTDIV4_MASK)
8144 #define SIM_CLKDIV1_OUTDIV3_MASK                 0xF00000u
8145 #define SIM_CLKDIV1_OUTDIV3_SHIFT                20
8146 #define SIM_CLKDIV1_OUTDIV3(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV3_SHIFT))&SIM_CLKDIV1_OUTDIV3_MASK)
8147 #define SIM_CLKDIV1_OUTDIV2_MASK                 0xF000000u
8148 #define SIM_CLKDIV1_OUTDIV2_SHIFT                24
8149 #define SIM_CLKDIV1_OUTDIV2(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV2_SHIFT))&SIM_CLKDIV1_OUTDIV2_MASK)
8150 #define SIM_CLKDIV1_OUTDIV1_MASK                 0xF0000000u
8151 #define SIM_CLKDIV1_OUTDIV1_SHIFT                28
8152 #define SIM_CLKDIV1_OUTDIV1(x)                   (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV1_OUTDIV1_SHIFT))&SIM_CLKDIV1_OUTDIV1_MASK)
8153 /* CLKDIV2 Bit Fields */
8154 #define SIM_CLKDIV2_USBFRAC_MASK                 0x1u
8155 #define SIM_CLKDIV2_USBFRAC_SHIFT                0
8156 #define SIM_CLKDIV2_USBDIV_MASK                  0xEu
8157 #define SIM_CLKDIV2_USBDIV_SHIFT                 1
8158 #define SIM_CLKDIV2_USBDIV(x)                    (((uint32_t)(((uint32_t)(x))<<SIM_CLKDIV2_USBDIV_SHIFT))&SIM_CLKDIV2_USBDIV_MASK)
8159 /* FCFG1 Bit Fields */
8160 #define SIM_FCFG1_FLASHDIS_MASK                  0x1u
8161 #define SIM_FCFG1_FLASHDIS_SHIFT                 0
8162 #define SIM_FCFG1_FLASHDOZE_MASK                 0x2u
8163 #define SIM_FCFG1_FLASHDOZE_SHIFT                1
8164 #define SIM_FCFG1_PFSIZE_MASK                    0xF000000u
8165 #define SIM_FCFG1_PFSIZE_SHIFT                   24
8166 #define SIM_FCFG1_PFSIZE(x)                      (((uint32_t)(((uint32_t)(x))<<SIM_FCFG1_PFSIZE_SHIFT))&SIM_FCFG1_PFSIZE_MASK)
8167 /* FCFG2 Bit Fields */
8168 #define SIM_FCFG2_MAXADDR1_MASK                  0x7F0000u
8169 #define SIM_FCFG2_MAXADDR1_SHIFT                 16
8170 #define SIM_FCFG2_MAXADDR1(x)                    (((uint32_t)(((uint32_t)(x))<<SIM_FCFG2_MAXADDR1_SHIFT))&SIM_FCFG2_MAXADDR1_MASK)
8171 #define SIM_FCFG2_MAXADDR0_MASK                  0x7F000000u
8172 #define SIM_FCFG2_MAXADDR0_SHIFT                 24
8173 #define SIM_FCFG2_MAXADDR0(x)                    (((uint32_t)(((uint32_t)(x))<<SIM_FCFG2_MAXADDR0_SHIFT))&SIM_FCFG2_MAXADDR0_MASK)
8174 /* UIDH Bit Fields */
8175 #define SIM_UIDH_UID_MASK                        0xFFFFFFFFu
8176 #define SIM_UIDH_UID_SHIFT                       0
8177 #define SIM_UIDH_UID(x)                          (((uint32_t)(((uint32_t)(x))<<SIM_UIDH_UID_SHIFT))&SIM_UIDH_UID_MASK)
8178 /* UIDMH Bit Fields */
8179 #define SIM_UIDMH_UID_MASK                       0xFFFFFFFFu
8180 #define SIM_UIDMH_UID_SHIFT                      0
8181 #define SIM_UIDMH_UID(x)                         (((uint32_t)(((uint32_t)(x))<<SIM_UIDMH_UID_SHIFT))&SIM_UIDMH_UID_MASK)
8182 /* UIDML Bit Fields */
8183 #define SIM_UIDML_UID_MASK                       0xFFFFFFFFu
8184 #define SIM_UIDML_UID_SHIFT                      0
8185 #define SIM_UIDML_UID(x)                         (((uint32_t)(((uint32_t)(x))<<SIM_UIDML_UID_SHIFT))&SIM_UIDML_UID_MASK)
8186 /* UIDL Bit Fields */
8187 #define SIM_UIDL_UID_MASK                        0xFFFFFFFFu
8188 #define SIM_UIDL_UID_SHIFT                       0
8189 #define SIM_UIDL_UID(x)                          (((uint32_t)(((uint32_t)(x))<<SIM_UIDL_UID_SHIFT))&SIM_UIDL_UID_MASK)
8190
8191 /*!
8192  * @}
8193  */ /* end of group SIM_Register_Masks */
8194
8195
8196 /* SIM - Peripheral instance base addresses */
8197 /** Peripheral SIM base address */
8198 #define SIM_BASE                                 (0x40047000u)
8199 /** Peripheral SIM base pointer */
8200 #define SIM                                      ((SIM_Type *)SIM_BASE)
8201 #define SIM_BASE_PTR                             (SIM)
8202 /** Array initializer of SIM peripheral base addresses */
8203 #define SIM_BASE_ADDRS                           { SIM_BASE }
8204 /** Array initializer of SIM peripheral base pointers */
8205 #define SIM_BASE_PTRS                            { SIM }
8206
8207 /* ----------------------------------------------------------------------------
8208    -- SIM - Register accessor macros
8209    ---------------------------------------------------------------------------- */
8210
8211 /*!
8212  * @addtogroup SIM_Register_Accessor_Macros SIM - Register accessor macros
8213  * @{
8214  */
8215
8216
8217 /* SIM - Register instance definitions */
8218 /* SIM */
8219 #define SIM_SOPT1                                SIM_SOPT1_REG(SIM)
8220 #define SIM_SOPT1CFG                             SIM_SOPT1CFG_REG(SIM)
8221 #define SIM_SOPT2                                SIM_SOPT2_REG(SIM)
8222 #define SIM_SOPT4                                SIM_SOPT4_REG(SIM)
8223 #define SIM_SOPT5                                SIM_SOPT5_REG(SIM)
8224 #define SIM_SOPT7                                SIM_SOPT7_REG(SIM)
8225 #define SIM_SOPT8                                SIM_SOPT8_REG(SIM)
8226 #define SIM_SDID                                 SIM_SDID_REG(SIM)
8227 #define SIM_SCGC4                                SIM_SCGC4_REG(SIM)
8228 #define SIM_SCGC5                                SIM_SCGC5_REG(SIM)
8229 #define SIM_SCGC6                                SIM_SCGC6_REG(SIM)
8230 #define SIM_SCGC7                                SIM_SCGC7_REG(SIM)
8231 #define SIM_CLKDIV1                              SIM_CLKDIV1_REG(SIM)
8232 #define SIM_CLKDIV2                              SIM_CLKDIV2_REG(SIM)
8233 #define SIM_FCFG1                                SIM_FCFG1_REG(SIM)
8234 #define SIM_FCFG2                                SIM_FCFG2_REG(SIM)
8235 #define SIM_UIDH                                 SIM_UIDH_REG(SIM)
8236 #define SIM_UIDMH                                SIM_UIDMH_REG(SIM)
8237 #define SIM_UIDML                                SIM_UIDML_REG(SIM)
8238 #define SIM_UIDL                                 SIM_UIDL_REG(SIM)
8239
8240 /*!
8241  * @}
8242  */ /* end of group SIM_Register_Accessor_Macros */
8243
8244
8245 /*!
8246  * @}
8247  */ /* end of group SIM_Peripheral_Access_Layer */
8248
8249
8250 /* ----------------------------------------------------------------------------
8251    -- SMC Peripheral Access Layer
8252    ---------------------------------------------------------------------------- */
8253
8254 /*!
8255  * @addtogroup SMC_Peripheral_Access_Layer SMC Peripheral Access Layer
8256  * @{
8257  */
8258
8259 /** SMC - Register Layout Typedef */
8260 typedef struct {
8261   __IO uint8_t PMPROT;                             /**< Power Mode Protection register, offset: 0x0 */
8262   __IO uint8_t PMCTRL;                             /**< Power Mode Control register, offset: 0x1 */
8263   __IO uint8_t STOPCTRL;                           /**< Stop Control Register, offset: 0x2 */
8264   __I  uint8_t PMSTAT;                             /**< Power Mode Status register, offset: 0x3 */
8265 } SMC_Type, *SMC_MemMapPtr;
8266
8267 /* ----------------------------------------------------------------------------
8268    -- SMC - Register accessor macros
8269    ---------------------------------------------------------------------------- */
8270
8271 /*!
8272  * @addtogroup SMC_Register_Accessor_Macros SMC - Register accessor macros
8273  * @{
8274  */
8275
8276
8277 /* SMC - Register accessors */
8278 #define SMC_PMPROT_REG(base)                     ((base)->PMPROT)
8279 #define SMC_PMCTRL_REG(base)                     ((base)->PMCTRL)
8280 #define SMC_STOPCTRL_REG(base)                   ((base)->STOPCTRL)
8281 #define SMC_PMSTAT_REG(base)                     ((base)->PMSTAT)
8282
8283 /*!
8284  * @}
8285  */ /* end of group SMC_Register_Accessor_Macros */
8286
8287
8288 /* ----------------------------------------------------------------------------
8289    -- SMC Register Masks
8290    ---------------------------------------------------------------------------- */
8291
8292 /*!
8293  * @addtogroup SMC_Register_Masks SMC Register Masks
8294  * @{
8295  */
8296
8297 /* PMPROT Bit Fields */
8298 #define SMC_PMPROT_AVLLS_MASK                    0x2u
8299 #define SMC_PMPROT_AVLLS_SHIFT                   1
8300 #define SMC_PMPROT_ALLS_MASK                     0x8u
8301 #define SMC_PMPROT_ALLS_SHIFT                    3
8302 #define SMC_PMPROT_AVLP_MASK                     0x20u
8303 #define SMC_PMPROT_AVLP_SHIFT                    5
8304 #define SMC_PMPROT_AHSRUN_MASK                   0x80u
8305 #define SMC_PMPROT_AHSRUN_SHIFT                  7
8306 /* PMCTRL Bit Fields */
8307 #define SMC_PMCTRL_STOPM_MASK                    0x7u
8308 #define SMC_PMCTRL_STOPM_SHIFT                   0
8309 #define SMC_PMCTRL_STOPM(x)                      (((uint8_t)(((uint8_t)(x))<<SMC_PMCTRL_STOPM_SHIFT))&SMC_PMCTRL_STOPM_MASK)
8310 #define SMC_PMCTRL_STOPA_MASK                    0x8u
8311 #define SMC_PMCTRL_STOPA_SHIFT                   3
8312 #define SMC_PMCTRL_RUNM_MASK                     0x60u
8313 #define SMC_PMCTRL_RUNM_SHIFT                    5
8314 #define SMC_PMCTRL_RUNM(x)                       (((uint8_t)(((uint8_t)(x))<<SMC_PMCTRL_RUNM_SHIFT))&SMC_PMCTRL_RUNM_MASK)
8315 /* STOPCTRL Bit Fields */
8316 #define SMC_STOPCTRL_LLSM_MASK                   0x7u
8317 #define SMC_STOPCTRL_LLSM_SHIFT                  0
8318 #define SMC_STOPCTRL_LLSM(x)                     (((uint8_t)(((uint8_t)(x))<<SMC_STOPCTRL_LLSM_SHIFT))&SMC_STOPCTRL_LLSM_MASK)
8319 #define SMC_STOPCTRL_PORPO_MASK                  0x20u
8320 #define SMC_STOPCTRL_PORPO_SHIFT                 5
8321 #define SMC_STOPCTRL_PSTOPO_MASK                 0xC0u
8322 #define SMC_STOPCTRL_PSTOPO_SHIFT                6
8323 #define SMC_STOPCTRL_PSTOPO(x)                   (((uint8_t)(((uint8_t)(x))<<SMC_STOPCTRL_PSTOPO_SHIFT))&SMC_STOPCTRL_PSTOPO_MASK)
8324 /* PMSTAT Bit Fields */
8325 #define SMC_PMSTAT_PMSTAT_MASK                   0xFFu
8326 #define SMC_PMSTAT_PMSTAT_SHIFT                  0
8327 #define SMC_PMSTAT_PMSTAT(x)                     (((uint8_t)(((uint8_t)(x))<<SMC_PMSTAT_PMSTAT_SHIFT))&SMC_PMSTAT_PMSTAT_MASK)
8328
8329 /*!
8330  * @}
8331  */ /* end of group SMC_Register_Masks */
8332
8333
8334 /* SMC - Peripheral instance base addresses */
8335 /** Peripheral SMC base address */
8336 #define SMC_BASE                                 (0x4007E000u)
8337 /** Peripheral SMC base pointer */
8338 #define SMC                                      ((SMC_Type *)SMC_BASE)
8339 #define SMC_BASE_PTR                             (SMC)
8340 /** Array initializer of SMC peripheral base addresses */
8341 #define SMC_BASE_ADDRS                           { SMC_BASE }
8342 /** Array initializer of SMC peripheral base pointers */
8343 #define SMC_BASE_PTRS                            { SMC }
8344
8345 /* ----------------------------------------------------------------------------
8346    -- SMC - Register accessor macros
8347    ---------------------------------------------------------------------------- */
8348
8349 /*!
8350  * @addtogroup SMC_Register_Accessor_Macros SMC - Register accessor macros
8351  * @{
8352  */
8353
8354
8355 /* SMC - Register instance definitions */
8356 /* SMC */
8357 #define SMC_PMPROT                               SMC_PMPROT_REG(SMC)
8358 #define SMC_PMCTRL                               SMC_PMCTRL_REG(SMC)
8359 #define SMC_STOPCTRL                             SMC_STOPCTRL_REG(SMC)
8360 #define SMC_PMSTAT                               SMC_PMSTAT_REG(SMC)
8361
8362 /*!
8363  * @}
8364  */ /* end of group SMC_Register_Accessor_Macros */
8365
8366
8367 /*!
8368  * @}
8369  */ /* end of group SMC_Peripheral_Access_Layer */
8370
8371
8372 /* ----------------------------------------------------------------------------
8373    -- SPI Peripheral Access Layer
8374    ---------------------------------------------------------------------------- */
8375
8376 /*!
8377  * @addtogroup SPI_Peripheral_Access_Layer SPI Peripheral Access Layer
8378  * @{
8379  */
8380
8381 /** SPI - Register Layout Typedef */
8382 typedef struct {
8383   __IO uint32_t MCR;                               /**< Module Configuration Register, offset: 0x0 */
8384        uint8_t RESERVED_0[4];
8385   __IO uint32_t TCR;                               /**< Transfer Count Register, offset: 0x8 */
8386   union {                                          /* offset: 0xC */
8387     __IO uint32_t CTAR[2];                           /**< Clock and Transfer Attributes Register (In Master Mode), array offset: 0xC, array step: 0x4 */
8388     __IO uint32_t CTAR_SLAVE[1];                     /**< Clock and Transfer Attributes Register (In Slave Mode), array offset: 0xC, array step: 0x4 */
8389   };
8390        uint8_t RESERVED_1[24];
8391   __IO uint32_t SR;                                /**< Status Register, offset: 0x2C */
8392   __IO uint32_t RSER;                              /**< DMA/Interrupt Request Select and Enable Register, offset: 0x30 */
8393   union {                                          /* offset: 0x34 */
8394     __IO uint32_t PUSHR;                             /**< PUSH TX FIFO Register In Master Mode, offset: 0x34 */
8395     __IO uint32_t PUSHR_SLAVE;                       /**< PUSH TX FIFO Register In Slave Mode, offset: 0x34 */
8396   };
8397   __I  uint32_t POPR;                              /**< POP RX FIFO Register, offset: 0x38 */
8398   __I  uint32_t TXFR0;                             /**< Transmit FIFO Registers, offset: 0x3C */
8399   __I  uint32_t TXFR1;                             /**< Transmit FIFO Registers, offset: 0x40 */
8400   __I  uint32_t TXFR2;                             /**< Transmit FIFO Registers, offset: 0x44 */
8401   __I  uint32_t TXFR3;                             /**< Transmit FIFO Registers, offset: 0x48 */
8402        uint8_t RESERVED_2[48];
8403   __I  uint32_t RXFR0;                             /**< Receive FIFO Registers, offset: 0x7C */
8404   __I  uint32_t RXFR1;                             /**< Receive FIFO Registers, offset: 0x80 */
8405   __I  uint32_t RXFR2;                             /**< Receive FIFO Registers, offset: 0x84 */
8406   __I  uint32_t RXFR3;                             /**< Receive FIFO Registers, offset: 0x88 */
8407 } SPI_Type, *SPI_MemMapPtr;
8408
8409 /* ----------------------------------------------------------------------------
8410    -- SPI - Register accessor macros
8411    ---------------------------------------------------------------------------- */
8412
8413 /*!
8414  * @addtogroup SPI_Register_Accessor_Macros SPI - Register accessor macros
8415  * @{
8416  */
8417
8418
8419 /* SPI - Register accessors */
8420 #define SPI_MCR_REG(base)                        ((base)->MCR)
8421 #define SPI_TCR_REG(base)                        ((base)->TCR)
8422 #define SPI_CTAR_REG(base,index2)                ((base)->CTAR[index2])
8423 #define SPI_CTAR_SLAVE_REG(base,index2)          ((base)->CTAR_SLAVE[index2])
8424 #define SPI_SR_REG(base)                         ((base)->SR)
8425 #define SPI_RSER_REG(base)                       ((base)->RSER)
8426 #define SPI_PUSHR_REG(base)                      ((base)->PUSHR)
8427 #define SPI_PUSHR_SLAVE_REG(base)                ((base)->PUSHR_SLAVE)
8428 #define SPI_POPR_REG(base)                       ((base)->POPR)
8429 #define SPI_TXFR0_REG(base)                      ((base)->TXFR0)
8430 #define SPI_TXFR1_REG(base)                      ((base)->TXFR1)
8431 #define SPI_TXFR2_REG(base)                      ((base)->TXFR2)
8432 #define SPI_TXFR3_REG(base)                      ((base)->TXFR3)
8433 #define SPI_RXFR0_REG(base)                      ((base)->RXFR0)
8434 #define SPI_RXFR1_REG(base)                      ((base)->RXFR1)
8435 #define SPI_RXFR2_REG(base)                      ((base)->RXFR2)
8436 #define SPI_RXFR3_REG(base)                      ((base)->RXFR3)
8437
8438 /*!
8439  * @}
8440  */ /* end of group SPI_Register_Accessor_Macros */
8441
8442
8443 /* ----------------------------------------------------------------------------
8444    -- SPI Register Masks
8445    ---------------------------------------------------------------------------- */
8446
8447 /*!
8448  * @addtogroup SPI_Register_Masks SPI Register Masks
8449  * @{
8450  */
8451
8452 /* MCR Bit Fields */
8453 #define SPI_MCR_HALT_MASK                        0x1u
8454 #define SPI_MCR_HALT_SHIFT                       0
8455 #define SPI_MCR_SMPL_PT_MASK                     0x300u
8456 #define SPI_MCR_SMPL_PT_SHIFT                    8
8457 #define SPI_MCR_SMPL_PT(x)                       (((uint32_t)(((uint32_t)(x))<<SPI_MCR_SMPL_PT_SHIFT))&SPI_MCR_SMPL_PT_MASK)
8458 #define SPI_MCR_CLR_RXF_MASK                     0x400u
8459 #define SPI_MCR_CLR_RXF_SHIFT                    10
8460 #define SPI_MCR_CLR_TXF_MASK                     0x800u
8461 #define SPI_MCR_CLR_TXF_SHIFT                    11
8462 #define SPI_MCR_DIS_RXF_MASK                     0x1000u
8463 #define SPI_MCR_DIS_RXF_SHIFT                    12
8464 #define SPI_MCR_DIS_TXF_MASK                     0x2000u
8465 #define SPI_MCR_DIS_TXF_SHIFT                    13
8466 #define SPI_MCR_MDIS_MASK                        0x4000u
8467 #define SPI_MCR_MDIS_SHIFT                       14
8468 #define SPI_MCR_DOZE_MASK                        0x8000u
8469 #define SPI_MCR_DOZE_SHIFT                       15
8470 #define SPI_MCR_PCSIS_MASK                       0x3F0000u
8471 #define SPI_MCR_PCSIS_SHIFT                      16
8472 #define SPI_MCR_PCSIS(x)                         (((uint32_t)(((uint32_t)(x))<<SPI_MCR_PCSIS_SHIFT))&SPI_MCR_PCSIS_MASK)
8473 #define SPI_MCR_ROOE_MASK                        0x1000000u
8474 #define SPI_MCR_ROOE_SHIFT                       24
8475 #define SPI_MCR_PCSSE_MASK                       0x2000000u
8476 #define SPI_MCR_PCSSE_SHIFT                      25
8477 #define SPI_MCR_MTFE_MASK                        0x4000000u
8478 #define SPI_MCR_MTFE_SHIFT                       26
8479 #define SPI_MCR_FRZ_MASK                         0x8000000u
8480 #define SPI_MCR_FRZ_SHIFT                        27
8481 #define SPI_MCR_DCONF_MASK                       0x30000000u
8482 #define SPI_MCR_DCONF_SHIFT                      28
8483 #define SPI_MCR_DCONF(x)                         (((uint32_t)(((uint32_t)(x))<<SPI_MCR_DCONF_SHIFT))&SPI_MCR_DCONF_MASK)
8484 #define SPI_MCR_CONT_SCKE_MASK                   0x40000000u
8485 #define SPI_MCR_CONT_SCKE_SHIFT                  30
8486 #define SPI_MCR_MSTR_MASK                        0x80000000u
8487 #define SPI_MCR_MSTR_SHIFT                       31
8488 /* TCR Bit Fields */
8489 #define SPI_TCR_SPI_TCNT_MASK                    0xFFFF0000u
8490 #define SPI_TCR_SPI_TCNT_SHIFT                   16
8491 #define SPI_TCR_SPI_TCNT(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_TCR_SPI_TCNT_SHIFT))&SPI_TCR_SPI_TCNT_MASK)
8492 /* CTAR Bit Fields */
8493 #define SPI_CTAR_BR_MASK                         0xFu
8494 #define SPI_CTAR_BR_SHIFT                        0
8495 #define SPI_CTAR_BR(x)                           (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_BR_SHIFT))&SPI_CTAR_BR_MASK)
8496 #define SPI_CTAR_DT_MASK                         0xF0u
8497 #define SPI_CTAR_DT_SHIFT                        4
8498 #define SPI_CTAR_DT(x)                           (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_DT_SHIFT))&SPI_CTAR_DT_MASK)
8499 #define SPI_CTAR_ASC_MASK                        0xF00u
8500 #define SPI_CTAR_ASC_SHIFT                       8
8501 #define SPI_CTAR_ASC(x)                          (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_ASC_SHIFT))&SPI_CTAR_ASC_MASK)
8502 #define SPI_CTAR_CSSCK_MASK                      0xF000u
8503 #define SPI_CTAR_CSSCK_SHIFT                     12
8504 #define SPI_CTAR_CSSCK(x)                        (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_CSSCK_SHIFT))&SPI_CTAR_CSSCK_MASK)
8505 #define SPI_CTAR_PBR_MASK                        0x30000u
8506 #define SPI_CTAR_PBR_SHIFT                       16
8507 #define SPI_CTAR_PBR(x)                          (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PBR_SHIFT))&SPI_CTAR_PBR_MASK)
8508 #define SPI_CTAR_PDT_MASK                        0xC0000u
8509 #define SPI_CTAR_PDT_SHIFT                       18
8510 #define SPI_CTAR_PDT(x)                          (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PDT_SHIFT))&SPI_CTAR_PDT_MASK)
8511 #define SPI_CTAR_PASC_MASK                       0x300000u
8512 #define SPI_CTAR_PASC_SHIFT                      20
8513 #define SPI_CTAR_PASC(x)                         (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PASC_SHIFT))&SPI_CTAR_PASC_MASK)
8514 #define SPI_CTAR_PCSSCK_MASK                     0xC00000u
8515 #define SPI_CTAR_PCSSCK_SHIFT                    22
8516 #define SPI_CTAR_PCSSCK(x)                       (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_PCSSCK_SHIFT))&SPI_CTAR_PCSSCK_MASK)
8517 #define SPI_CTAR_LSBFE_MASK                      0x1000000u
8518 #define SPI_CTAR_LSBFE_SHIFT                     24
8519 #define SPI_CTAR_CPHA_MASK                       0x2000000u
8520 #define SPI_CTAR_CPHA_SHIFT                      25
8521 #define SPI_CTAR_CPOL_MASK                       0x4000000u
8522 #define SPI_CTAR_CPOL_SHIFT                      26
8523 #define SPI_CTAR_FMSZ_MASK                       0x78000000u
8524 #define SPI_CTAR_FMSZ_SHIFT                      27
8525 #define SPI_CTAR_FMSZ(x)                         (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_FMSZ_SHIFT))&SPI_CTAR_FMSZ_MASK)
8526 #define SPI_CTAR_DBR_MASK                        0x80000000u
8527 #define SPI_CTAR_DBR_SHIFT                       31
8528 /* CTAR_SLAVE Bit Fields */
8529 #define SPI_CTAR_SLAVE_CPHA_MASK                 0x2000000u
8530 #define SPI_CTAR_SLAVE_CPHA_SHIFT                25
8531 #define SPI_CTAR_SLAVE_CPOL_MASK                 0x4000000u
8532 #define SPI_CTAR_SLAVE_CPOL_SHIFT                26
8533 #define SPI_CTAR_SLAVE_FMSZ_MASK                 0xF8000000u
8534 #define SPI_CTAR_SLAVE_FMSZ_SHIFT                27
8535 #define SPI_CTAR_SLAVE_FMSZ(x)                   (((uint32_t)(((uint32_t)(x))<<SPI_CTAR_SLAVE_FMSZ_SHIFT))&SPI_CTAR_SLAVE_FMSZ_MASK)
8536 /* SR Bit Fields */
8537 #define SPI_SR_POPNXTPTR_MASK                    0xFu
8538 #define SPI_SR_POPNXTPTR_SHIFT                   0
8539 #define SPI_SR_POPNXTPTR(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_SR_POPNXTPTR_SHIFT))&SPI_SR_POPNXTPTR_MASK)
8540 #define SPI_SR_RXCTR_MASK                        0xF0u
8541 #define SPI_SR_RXCTR_SHIFT                       4
8542 #define SPI_SR_RXCTR(x)                          (((uint32_t)(((uint32_t)(x))<<SPI_SR_RXCTR_SHIFT))&SPI_SR_RXCTR_MASK)
8543 #define SPI_SR_TXNXTPTR_MASK                     0xF00u
8544 #define SPI_SR_TXNXTPTR_SHIFT                    8
8545 #define SPI_SR_TXNXTPTR(x)                       (((uint32_t)(((uint32_t)(x))<<SPI_SR_TXNXTPTR_SHIFT))&SPI_SR_TXNXTPTR_MASK)
8546 #define SPI_SR_TXCTR_MASK                        0xF000u
8547 #define SPI_SR_TXCTR_SHIFT                       12
8548 #define SPI_SR_TXCTR(x)                          (((uint32_t)(((uint32_t)(x))<<SPI_SR_TXCTR_SHIFT))&SPI_SR_TXCTR_MASK)
8549 #define SPI_SR_RFDF_MASK                         0x20000u
8550 #define SPI_SR_RFDF_SHIFT                        17
8551 #define SPI_SR_RFOF_MASK                         0x80000u
8552 #define SPI_SR_RFOF_SHIFT                        19
8553 #define SPI_SR_TFFF_MASK                         0x2000000u
8554 #define SPI_SR_TFFF_SHIFT                        25
8555 #define SPI_SR_TFUF_MASK                         0x8000000u
8556 #define SPI_SR_TFUF_SHIFT                        27
8557 #define SPI_SR_EOQF_MASK                         0x10000000u
8558 #define SPI_SR_EOQF_SHIFT                        28
8559 #define SPI_SR_TXRXS_MASK                        0x40000000u
8560 #define SPI_SR_TXRXS_SHIFT                       30
8561 #define SPI_SR_TCF_MASK                          0x80000000u
8562 #define SPI_SR_TCF_SHIFT                         31
8563 /* RSER Bit Fields */
8564 #define SPI_RSER_RFDF_DIRS_MASK                  0x10000u
8565 #define SPI_RSER_RFDF_DIRS_SHIFT                 16
8566 #define SPI_RSER_RFDF_RE_MASK                    0x20000u
8567 #define SPI_RSER_RFDF_RE_SHIFT                   17
8568 #define SPI_RSER_RFOF_RE_MASK                    0x80000u
8569 #define SPI_RSER_RFOF_RE_SHIFT                   19
8570 #define SPI_RSER_TFFF_DIRS_MASK                  0x1000000u
8571 #define SPI_RSER_TFFF_DIRS_SHIFT                 24
8572 #define SPI_RSER_TFFF_RE_MASK                    0x2000000u
8573 #define SPI_RSER_TFFF_RE_SHIFT                   25
8574 #define SPI_RSER_TFUF_RE_MASK                    0x8000000u
8575 #define SPI_RSER_TFUF_RE_SHIFT                   27
8576 #define SPI_RSER_EOQF_RE_MASK                    0x10000000u
8577 #define SPI_RSER_EOQF_RE_SHIFT                   28
8578 #define SPI_RSER_TCF_RE_MASK                     0x80000000u
8579 #define SPI_RSER_TCF_RE_SHIFT                    31
8580 /* PUSHR Bit Fields */
8581 #define SPI_PUSHR_TXDATA_MASK                    0xFFFFu
8582 #define SPI_PUSHR_TXDATA_SHIFT                   0
8583 #define SPI_PUSHR_TXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_TXDATA_SHIFT))&SPI_PUSHR_TXDATA_MASK)
8584 #define SPI_PUSHR_PCS_MASK                       0x3F0000u
8585 #define SPI_PUSHR_PCS_SHIFT                      16
8586 #define SPI_PUSHR_PCS(x)                         (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_PCS_SHIFT))&SPI_PUSHR_PCS_MASK)
8587 #define SPI_PUSHR_CTCNT_MASK                     0x4000000u
8588 #define SPI_PUSHR_CTCNT_SHIFT                    26
8589 #define SPI_PUSHR_EOQ_MASK                       0x8000000u
8590 #define SPI_PUSHR_EOQ_SHIFT                      27
8591 #define SPI_PUSHR_CTAS_MASK                      0x70000000u
8592 #define SPI_PUSHR_CTAS_SHIFT                     28
8593 #define SPI_PUSHR_CTAS(x)                        (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_CTAS_SHIFT))&SPI_PUSHR_CTAS_MASK)
8594 #define SPI_PUSHR_CONT_MASK                      0x80000000u
8595 #define SPI_PUSHR_CONT_SHIFT                     31
8596 /* PUSHR_SLAVE Bit Fields */
8597 #define SPI_PUSHR_SLAVE_TXDATA_MASK              0xFFFFFFFFu
8598 #define SPI_PUSHR_SLAVE_TXDATA_SHIFT             0
8599 #define SPI_PUSHR_SLAVE_TXDATA(x)                (((uint32_t)(((uint32_t)(x))<<SPI_PUSHR_SLAVE_TXDATA_SHIFT))&SPI_PUSHR_SLAVE_TXDATA_MASK)
8600 /* POPR Bit Fields */
8601 #define SPI_POPR_RXDATA_MASK                     0xFFFFFFFFu
8602 #define SPI_POPR_RXDATA_SHIFT                    0
8603 #define SPI_POPR_RXDATA(x)                       (((uint32_t)(((uint32_t)(x))<<SPI_POPR_RXDATA_SHIFT))&SPI_POPR_RXDATA_MASK)
8604 /* TXFR0 Bit Fields */
8605 #define SPI_TXFR0_TXDATA_MASK                    0xFFFFu
8606 #define SPI_TXFR0_TXDATA_SHIFT                   0
8607 #define SPI_TXFR0_TXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_TXFR0_TXDATA_SHIFT))&SPI_TXFR0_TXDATA_MASK)
8608 #define SPI_TXFR0_TXCMD_TXDATA_MASK              0xFFFF0000u
8609 #define SPI_TXFR0_TXCMD_TXDATA_SHIFT             16
8610 #define SPI_TXFR0_TXCMD_TXDATA(x)                (((uint32_t)(((uint32_t)(x))<<SPI_TXFR0_TXCMD_TXDATA_SHIFT))&SPI_TXFR0_TXCMD_TXDATA_MASK)
8611 /* TXFR1 Bit Fields */
8612 #define SPI_TXFR1_TXDATA_MASK                    0xFFFFu
8613 #define SPI_TXFR1_TXDATA_SHIFT                   0
8614 #define SPI_TXFR1_TXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_TXFR1_TXDATA_SHIFT))&SPI_TXFR1_TXDATA_MASK)
8615 #define SPI_TXFR1_TXCMD_TXDATA_MASK              0xFFFF0000u
8616 #define SPI_TXFR1_TXCMD_TXDATA_SHIFT             16
8617 #define SPI_TXFR1_TXCMD_TXDATA(x)                (((uint32_t)(((uint32_t)(x))<<SPI_TXFR1_TXCMD_TXDATA_SHIFT))&SPI_TXFR1_TXCMD_TXDATA_MASK)
8618 /* TXFR2 Bit Fields */
8619 #define SPI_TXFR2_TXDATA_MASK                    0xFFFFu
8620 #define SPI_TXFR2_TXDATA_SHIFT                   0
8621 #define SPI_TXFR2_TXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_TXFR2_TXDATA_SHIFT))&SPI_TXFR2_TXDATA_MASK)
8622 #define SPI_TXFR2_TXCMD_TXDATA_MASK              0xFFFF0000u
8623 #define SPI_TXFR2_TXCMD_TXDATA_SHIFT             16
8624 #define SPI_TXFR2_TXCMD_TXDATA(x)                (((uint32_t)(((uint32_t)(x))<<SPI_TXFR2_TXCMD_TXDATA_SHIFT))&SPI_TXFR2_TXCMD_TXDATA_MASK)
8625 /* TXFR3 Bit Fields */
8626 #define SPI_TXFR3_TXDATA_MASK                    0xFFFFu
8627 #define SPI_TXFR3_TXDATA_SHIFT                   0
8628 #define SPI_TXFR3_TXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_TXFR3_TXDATA_SHIFT))&SPI_TXFR3_TXDATA_MASK)
8629 #define SPI_TXFR3_TXCMD_TXDATA_MASK              0xFFFF0000u
8630 #define SPI_TXFR3_TXCMD_TXDATA_SHIFT             16
8631 #define SPI_TXFR3_TXCMD_TXDATA(x)                (((uint32_t)(((uint32_t)(x))<<SPI_TXFR3_TXCMD_TXDATA_SHIFT))&SPI_TXFR3_TXCMD_TXDATA_MASK)
8632 /* RXFR0 Bit Fields */
8633 #define SPI_RXFR0_RXDATA_MASK                    0xFFFFFFFFu
8634 #define SPI_RXFR0_RXDATA_SHIFT                   0
8635 #define SPI_RXFR0_RXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_RXFR0_RXDATA_SHIFT))&SPI_RXFR0_RXDATA_MASK)
8636 /* RXFR1 Bit Fields */
8637 #define SPI_RXFR1_RXDATA_MASK                    0xFFFFFFFFu
8638 #define SPI_RXFR1_RXDATA_SHIFT                   0
8639 #define SPI_RXFR1_RXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_RXFR1_RXDATA_SHIFT))&SPI_RXFR1_RXDATA_MASK)
8640 /* RXFR2 Bit Fields */
8641 #define SPI_RXFR2_RXDATA_MASK                    0xFFFFFFFFu
8642 #define SPI_RXFR2_RXDATA_SHIFT                   0
8643 #define SPI_RXFR2_RXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_RXFR2_RXDATA_SHIFT))&SPI_RXFR2_RXDATA_MASK)
8644 /* RXFR3 Bit Fields */
8645 #define SPI_RXFR3_RXDATA_MASK                    0xFFFFFFFFu
8646 #define SPI_RXFR3_RXDATA_SHIFT                   0
8647 #define SPI_RXFR3_RXDATA(x)                      (((uint32_t)(((uint32_t)(x))<<SPI_RXFR3_RXDATA_SHIFT))&SPI_RXFR3_RXDATA_MASK)
8648
8649 /*!
8650  * @}
8651  */ /* end of group SPI_Register_Masks */
8652
8653
8654 /* SPI - Peripheral instance base addresses */
8655 /** Peripheral SPI0 base address */
8656 #define SPI0_BASE                                (0x4002C000u)
8657 /** Peripheral SPI0 base pointer */
8658 #define SPI0                                     ((SPI_Type *)SPI0_BASE)
8659 #define SPI0_BASE_PTR                            (SPI0)
8660 /** Peripheral SPI1 base address */
8661 #define SPI1_BASE                                (0x4002D000u)
8662 /** Peripheral SPI1 base pointer */
8663 #define SPI1                                     ((SPI_Type *)SPI1_BASE)
8664 #define SPI1_BASE_PTR                            (SPI1)
8665 /** Array initializer of SPI peripheral base addresses */
8666 #define SPI_BASE_ADDRS                           { SPI0_BASE, SPI1_BASE }
8667 /** Array initializer of SPI peripheral base pointers */
8668 #define SPI_BASE_PTRS                            { SPI0, SPI1 }
8669 /** Interrupt vectors for the SPI peripheral type */
8670 #define SPI_IRQS                                 { SPI0_IRQn, SPI1_IRQn }
8671
8672 /* ----------------------------------------------------------------------------
8673    -- SPI - Register accessor macros
8674    ---------------------------------------------------------------------------- */
8675
8676 /*!
8677  * @addtogroup SPI_Register_Accessor_Macros SPI - Register accessor macros
8678  * @{
8679  */
8680
8681
8682 /* SPI - Register instance definitions */
8683 /* SPI0 */
8684 #define SPI0_MCR                                 SPI_MCR_REG(SPI0)
8685 #define SPI0_TCR                                 SPI_TCR_REG(SPI0)
8686 #define SPI0_CTAR0                               SPI_CTAR_REG(SPI0,0)
8687 #define SPI0_CTAR0_SLAVE                         SPI_CTAR_SLAVE_REG(SPI0,0)
8688 #define SPI0_CTAR1                               SPI_CTAR_REG(SPI0,1)
8689 #define SPI0_SR                                  SPI_SR_REG(SPI0)
8690 #define SPI0_RSER                                SPI_RSER_REG(SPI0)
8691 #define SPI0_PUSHR                               SPI_PUSHR_REG(SPI0)
8692 #define SPI0_PUSHR_SLAVE                         SPI_PUSHR_SLAVE_REG(SPI0)
8693 #define SPI0_POPR                                SPI_POPR_REG(SPI0)
8694 #define SPI0_TXFR0                               SPI_TXFR0_REG(SPI0)
8695 #define SPI0_TXFR1                               SPI_TXFR1_REG(SPI0)
8696 #define SPI0_TXFR2                               SPI_TXFR2_REG(SPI0)
8697 #define SPI0_TXFR3                               SPI_TXFR3_REG(SPI0)
8698 #define SPI0_RXFR0                               SPI_RXFR0_REG(SPI0)
8699 #define SPI0_RXFR1                               SPI_RXFR1_REG(SPI0)
8700 #define SPI0_RXFR2                               SPI_RXFR2_REG(SPI0)
8701 #define SPI0_RXFR3                               SPI_RXFR3_REG(SPI0)
8702 /* SPI1 */
8703 #define SPI1_MCR                                 SPI_MCR_REG(SPI1)
8704 #define SPI1_TCR                                 SPI_TCR_REG(SPI1)
8705 #define SPI1_CTAR0                               SPI_CTAR_REG(SPI1,0)
8706 #define SPI1_CTAR0_SLAVE                         SPI_CTAR_SLAVE_REG(SPI1,0)
8707 #define SPI1_CTAR1                               SPI_CTAR_REG(SPI1,1)
8708 #define SPI1_SR                                  SPI_SR_REG(SPI1)
8709 #define SPI1_RSER                                SPI_RSER_REG(SPI1)
8710 #define SPI1_PUSHR                               SPI_PUSHR_REG(SPI1)
8711 #define SPI1_PUSHR_SLAVE                         SPI_PUSHR_SLAVE_REG(SPI1)
8712 #define SPI1_POPR                                SPI_POPR_REG(SPI1)
8713 #define SPI1_TXFR0                               SPI_TXFR0_REG(SPI1)
8714 #define SPI1_TXFR1                               SPI_TXFR1_REG(SPI1)
8715 #define SPI1_TXFR2                               SPI_TXFR2_REG(SPI1)
8716 #define SPI1_TXFR3                               SPI_TXFR3_REG(SPI1)
8717 #define SPI1_RXFR0                               SPI_RXFR0_REG(SPI1)
8718 #define SPI1_RXFR1                               SPI_RXFR1_REG(SPI1)
8719 #define SPI1_RXFR2                               SPI_RXFR2_REG(SPI1)
8720 #define SPI1_RXFR3                               SPI_RXFR3_REG(SPI1)
8721
8722 /* SPI - Register array accessors */
8723 #define SPI0_CTAR(index2)                        SPI_CTAR_REG(SPI0,index2)
8724 #define SPI1_CTAR(index2)                        SPI_CTAR_REG(SPI1,index2)
8725 #define SPI0_CTAR_SLAVE(index2)                  SPI_CTAR_SLAVE_REG(SPI0,index2)
8726 #define SPI1_CTAR_SLAVE(index2)                  SPI_CTAR_SLAVE_REG(SPI1,index2)
8727
8728 /*!
8729  * @}
8730  */ /* end of group SPI_Register_Accessor_Macros */
8731
8732
8733 /*!
8734  * @}
8735  */ /* end of group SPI_Peripheral_Access_Layer */
8736
8737
8738 /* ----------------------------------------------------------------------------
8739    -- UART Peripheral Access Layer
8740    ---------------------------------------------------------------------------- */
8741
8742 /*!
8743  * @addtogroup UART_Peripheral_Access_Layer UART Peripheral Access Layer
8744  * @{
8745  */
8746
8747 /** UART - Register Layout Typedef */
8748 typedef struct {
8749   __IO uint8_t BDH;                                /**< UART Baud Rate Registers: High, offset: 0x0 */
8750   __IO uint8_t BDL;                                /**< UART Baud Rate Registers: Low, offset: 0x1 */
8751   __IO uint8_t C1;                                 /**< UART Control Register 1, offset: 0x2 */
8752   __IO uint8_t C2;                                 /**< UART Control Register 2, offset: 0x3 */
8753   __I  uint8_t S1;                                 /**< UART Status Register 1, offset: 0x4 */
8754   __IO uint8_t S2;                                 /**< UART Status Register 2, offset: 0x5 */
8755   __IO uint8_t C3;                                 /**< UART Control Register 3, offset: 0x6 */
8756   __IO uint8_t D;                                  /**< UART Data Register, offset: 0x7 */
8757   __IO uint8_t MA1;                                /**< UART Match Address Registers 1, offset: 0x8 */
8758   __IO uint8_t MA2;                                /**< UART Match Address Registers 2, offset: 0x9 */
8759   __IO uint8_t C4;                                 /**< UART Control Register 4, offset: 0xA */
8760   __IO uint8_t C5;                                 /**< UART Control Register 5, offset: 0xB */
8761   __I  uint8_t ED;                                 /**< UART Extended Data Register, offset: 0xC */
8762   __IO uint8_t MODEM;                              /**< UART Modem Register, offset: 0xD */
8763   __IO uint8_t IR;                                 /**< UART Infrared Register, offset: 0xE */
8764        uint8_t RESERVED_0[1];
8765   __IO uint8_t PFIFO;                              /**< UART FIFO Parameters, offset: 0x10 */
8766   __IO uint8_t CFIFO;                              /**< UART FIFO Control Register, offset: 0x11 */
8767   __IO uint8_t SFIFO;                              /**< UART FIFO Status Register, offset: 0x12 */
8768   __IO uint8_t TWFIFO;                             /**< UART FIFO Transmit Watermark, offset: 0x13 */
8769   __I  uint8_t TCFIFO;                             /**< UART FIFO Transmit Count, offset: 0x14 */
8770   __IO uint8_t RWFIFO;                             /**< UART FIFO Receive Watermark, offset: 0x15 */
8771   __I  uint8_t RCFIFO;                             /**< UART FIFO Receive Count, offset: 0x16 */
8772        uint8_t RESERVED_1[1];
8773   __IO uint8_t C7816;                              /**< UART 7816 Control Register, offset: 0x18 */
8774   __IO uint8_t IE7816;                             /**< UART 7816 Interrupt Enable Register, offset: 0x19 */
8775   __IO uint8_t IS7816;                             /**< UART 7816 Interrupt Status Register, offset: 0x1A */
8776   __IO uint8_t WP7816;                             /**< UART 7816 Wait Parameter Register, offset: 0x1B */
8777   __IO uint8_t WN7816;                             /**< UART 7816 Wait N Register, offset: 0x1C */
8778   __IO uint8_t WF7816;                             /**< UART 7816 Wait FD Register, offset: 0x1D */
8779   __IO uint8_t ET7816;                             /**< UART 7816 Error Threshold Register, offset: 0x1E */
8780   __IO uint8_t TL7816;                             /**< UART 7816 Transmit Length Register, offset: 0x1F */
8781        uint8_t RESERVED_2[26];
8782   __IO uint8_t AP7816A_T0;                         /**< UART 7816 ATR Duration Timer Register A, offset: 0x3A */
8783   __IO uint8_t AP7816B_T0;                         /**< UART 7816 ATR Duration Timer Register B, offset: 0x3B */
8784   union {                                          /* offset: 0x3C */
8785     struct {                                         /* offset: 0x3C */
8786       __IO uint8_t WP7816A_T0;                         /**< UART 7816 Wait Parameter Register A, offset: 0x3C */
8787       __IO uint8_t WP7816B_T0;                         /**< UART 7816 Wait Parameter Register B, offset: 0x3D */
8788     } TYPE0;
8789     struct {                                         /* offset: 0x3C */
8790       __IO uint8_t WP7816A_T1;                         /**< UART 7816 Wait Parameter Register A, offset: 0x3C */
8791       __IO uint8_t WP7816B_T1;                         /**< UART 7816 Wait Parameter Register B, offset: 0x3D */
8792     } TYPE1;
8793   };
8794   __IO uint8_t WGP7816_T1;                         /**< UART 7816 Wait and Guard Parameter Register, offset: 0x3E */
8795   __IO uint8_t WP7816C_T1;                         /**< UART 7816 Wait Parameter Register C, offset: 0x3F */
8796 } UART_Type, *UART_MemMapPtr;
8797
8798 /* ----------------------------------------------------------------------------
8799    -- UART - Register accessor macros
8800    ---------------------------------------------------------------------------- */
8801
8802 /*!
8803  * @addtogroup UART_Register_Accessor_Macros UART - Register accessor macros
8804  * @{
8805  */
8806
8807
8808 /* UART - Register accessors */
8809 #define UART_BDH_REG(base)                       ((base)->BDH)
8810 #define UART_BDL_REG(base)                       ((base)->BDL)
8811 #define UART_C1_REG(base)                        ((base)->C1)
8812 #define UART_C2_REG(base)                        ((base)->C2)
8813 #define UART_S1_REG(base)                        ((base)->S1)
8814 #define UART_S2_REG(base)                        ((base)->S2)
8815 #define UART_C3_REG(base)                        ((base)->C3)
8816 #define UART_D_REG(base)                         ((base)->D)
8817 #define UART_MA1_REG(base)                       ((base)->MA1)
8818 #define UART_MA2_REG(base)                       ((base)->MA2)
8819 #define UART_C4_REG(base)                        ((base)->C4)
8820 #define UART_C5_REG(base)                        ((base)->C5)
8821 #define UART_ED_REG(base)                        ((base)->ED)
8822 #define UART_MODEM_REG(base)                     ((base)->MODEM)
8823 #define UART_IR_REG(base)                        ((base)->IR)
8824 #define UART_PFIFO_REG(base)                     ((base)->PFIFO)
8825 #define UART_CFIFO_REG(base)                     ((base)->CFIFO)
8826 #define UART_SFIFO_REG(base)                     ((base)->SFIFO)
8827 #define UART_TWFIFO_REG(base)                    ((base)->TWFIFO)
8828 #define UART_TCFIFO_REG(base)                    ((base)->TCFIFO)
8829 #define UART_RWFIFO_REG(base)                    ((base)->RWFIFO)
8830 #define UART_RCFIFO_REG(base)                    ((base)->RCFIFO)
8831 #define UART_C7816_REG(base)                     ((base)->C7816)
8832 #define UART_IE7816_REG(base)                    ((base)->IE7816)
8833 #define UART_IS7816_REG(base)                    ((base)->IS7816)
8834 #define UART_WP7816_REG(base)                    ((base)->WP7816)
8835 #define UART_WN7816_REG(base)                    ((base)->WN7816)
8836 #define UART_WF7816_REG(base)                    ((base)->WF7816)
8837 #define UART_ET7816_REG(base)                    ((base)->ET7816)
8838 #define UART_TL7816_REG(base)                    ((base)->TL7816)
8839 #define UART_AP7816A_T0_REG(base)                ((base)->AP7816A_T0)
8840 #define UART_AP7816B_T0_REG(base)                ((base)->AP7816B_T0)
8841 #define UART_WP7816A_T0_REG(base)                ((base)->TYPE0.WP7816A_T0)
8842 #define UART_WP7816B_T0_REG(base)                ((base)->TYPE0.WP7816B_T0)
8843 #define UART_WP7816A_T1_REG(base)                ((base)->TYPE1.WP7816A_T1)
8844 #define UART_WP7816B_T1_REG(base)                ((base)->TYPE1.WP7816B_T1)
8845 #define UART_WGP7816_T1_REG(base)                ((base)->WGP7816_T1)
8846 #define UART_WP7816C_T1_REG(base)                ((base)->WP7816C_T1)
8847
8848 /*!
8849  * @}
8850  */ /* end of group UART_Register_Accessor_Macros */
8851
8852
8853 /* ----------------------------------------------------------------------------
8854    -- UART Register Masks
8855    ---------------------------------------------------------------------------- */
8856
8857 /*!
8858  * @addtogroup UART_Register_Masks UART Register Masks
8859  * @{
8860  */
8861
8862 /* BDH Bit Fields */
8863 #define UART_BDH_SBR_MASK                        0x1Fu
8864 #define UART_BDH_SBR_SHIFT                       0
8865 #define UART_BDH_SBR(x)                          (((uint8_t)(((uint8_t)(x))<<UART_BDH_SBR_SHIFT))&UART_BDH_SBR_MASK)
8866 #define UART_BDH_RXEDGIE_MASK                    0x40u
8867 #define UART_BDH_RXEDGIE_SHIFT                   6
8868 #define UART_BDH_LBKDIE_MASK                     0x80u
8869 #define UART_BDH_LBKDIE_SHIFT                    7
8870 /* BDL Bit Fields */
8871 #define UART_BDL_SBR_MASK                        0xFFu
8872 #define UART_BDL_SBR_SHIFT                       0
8873 #define UART_BDL_SBR(x)                          (((uint8_t)(((uint8_t)(x))<<UART_BDL_SBR_SHIFT))&UART_BDL_SBR_MASK)
8874 /* C1 Bit Fields */
8875 #define UART_C1_PT_MASK                          0x1u
8876 #define UART_C1_PT_SHIFT                         0
8877 #define UART_C1_PE_MASK                          0x2u
8878 #define UART_C1_PE_SHIFT                         1
8879 #define UART_C1_ILT_MASK                         0x4u
8880 #define UART_C1_ILT_SHIFT                        2
8881 #define UART_C1_WAKE_MASK                        0x8u
8882 #define UART_C1_WAKE_SHIFT                       3
8883 #define UART_C1_M_MASK                           0x10u
8884 #define UART_C1_M_SHIFT                          4
8885 #define UART_C1_RSRC_MASK                        0x20u
8886 #define UART_C1_RSRC_SHIFT                       5
8887 #define UART_C1_UARTSWAI_MASK                    0x40u
8888 #define UART_C1_UARTSWAI_SHIFT                   6
8889 #define UART_C1_LOOPS_MASK                       0x80u
8890 #define UART_C1_LOOPS_SHIFT                      7
8891 /* C2 Bit Fields */
8892 #define UART_C2_SBK_MASK                         0x1u
8893 #define UART_C2_SBK_SHIFT                        0
8894 #define UART_C2_RWU_MASK                         0x2u
8895 #define UART_C2_RWU_SHIFT                        1
8896 #define UART_C2_RE_MASK                          0x4u
8897 #define UART_C2_RE_SHIFT                         2
8898 #define UART_C2_TE_MASK                          0x8u
8899 #define UART_C2_TE_SHIFT                         3
8900 #define UART_C2_ILIE_MASK                        0x10u
8901 #define UART_C2_ILIE_SHIFT                       4
8902 #define UART_C2_RIE_MASK                         0x20u
8903 #define UART_C2_RIE_SHIFT                        5
8904 #define UART_C2_TCIE_MASK                        0x40u
8905 #define UART_C2_TCIE_SHIFT                       6
8906 #define UART_C2_TIE_MASK                         0x80u
8907 #define UART_C2_TIE_SHIFT                        7
8908 /* S1 Bit Fields */
8909 #define UART_S1_PF_MASK                          0x1u
8910 #define UART_S1_PF_SHIFT                         0
8911 #define UART_S1_FE_MASK                          0x2u
8912 #define UART_S1_FE_SHIFT                         1
8913 #define UART_S1_NF_MASK                          0x4u
8914 #define UART_S1_NF_SHIFT                         2
8915 #define UART_S1_OR_MASK                          0x8u
8916 #define UART_S1_OR_SHIFT                         3
8917 #define UART_S1_IDLE_MASK                        0x10u
8918 #define UART_S1_IDLE_SHIFT                       4
8919 #define UART_S1_RDRF_MASK                        0x20u
8920 #define UART_S1_RDRF_SHIFT                       5
8921 #define UART_S1_TC_MASK                          0x40u
8922 #define UART_S1_TC_SHIFT                         6
8923 #define UART_S1_TDRE_MASK                        0x80u
8924 #define UART_S1_TDRE_SHIFT                       7
8925 /* S2 Bit Fields */
8926 #define UART_S2_RAF_MASK                         0x1u
8927 #define UART_S2_RAF_SHIFT                        0
8928 #define UART_S2_LBKDE_MASK                       0x2u
8929 #define UART_S2_LBKDE_SHIFT                      1
8930 #define UART_S2_BRK13_MASK                       0x4u
8931 #define UART_S2_BRK13_SHIFT                      2
8932 #define UART_S2_RWUID_MASK                       0x8u
8933 #define UART_S2_RWUID_SHIFT                      3
8934 #define UART_S2_RXINV_MASK                       0x10u
8935 #define UART_S2_RXINV_SHIFT                      4
8936 #define UART_S2_MSBF_MASK                        0x20u
8937 #define UART_S2_MSBF_SHIFT                       5
8938 #define UART_S2_RXEDGIF_MASK                     0x40u
8939 #define UART_S2_RXEDGIF_SHIFT                    6
8940 #define UART_S2_LBKDIF_MASK                      0x80u
8941 #define UART_S2_LBKDIF_SHIFT                     7
8942 /* C3 Bit Fields */
8943 #define UART_C3_PEIE_MASK                        0x1u
8944 #define UART_C3_PEIE_SHIFT                       0
8945 #define UART_C3_FEIE_MASK                        0x2u
8946 #define UART_C3_FEIE_SHIFT                       1
8947 #define UART_C3_NEIE_MASK                        0x4u
8948 #define UART_C3_NEIE_SHIFT                       2
8949 #define UART_C3_ORIE_MASK                        0x8u
8950 #define UART_C3_ORIE_SHIFT                       3
8951 #define UART_C3_TXINV_MASK                       0x10u
8952 #define UART_C3_TXINV_SHIFT                      4
8953 #define UART_C3_TXDIR_MASK                       0x20u
8954 #define UART_C3_TXDIR_SHIFT                      5
8955 #define UART_C3_T8_MASK                          0x40u
8956 #define UART_C3_T8_SHIFT                         6
8957 #define UART_C3_R8_MASK                          0x80u
8958 #define UART_C3_R8_SHIFT                         7
8959 /* D Bit Fields */
8960 #define UART_D_RT_MASK                           0xFFu
8961 #define UART_D_RT_SHIFT                          0
8962 #define UART_D_RT(x)                             (((uint8_t)(((uint8_t)(x))<<UART_D_RT_SHIFT))&UART_D_RT_MASK)
8963 /* MA1 Bit Fields */
8964 #define UART_MA1_MA_MASK                         0xFFu
8965 #define UART_MA1_MA_SHIFT                        0
8966 #define UART_MA1_MA(x)                           (((uint8_t)(((uint8_t)(x))<<UART_MA1_MA_SHIFT))&UART_MA1_MA_MASK)
8967 /* MA2 Bit Fields */
8968 #define UART_MA2_MA_MASK                         0xFFu
8969 #define UART_MA2_MA_SHIFT                        0
8970 #define UART_MA2_MA(x)                           (((uint8_t)(((uint8_t)(x))<<UART_MA2_MA_SHIFT))&UART_MA2_MA_MASK)
8971 /* C4 Bit Fields */
8972 #define UART_C4_BRFA_MASK                        0x1Fu
8973 #define UART_C4_BRFA_SHIFT                       0
8974 #define UART_C4_BRFA(x)                          (((uint8_t)(((uint8_t)(x))<<UART_C4_BRFA_SHIFT))&UART_C4_BRFA_MASK)
8975 #define UART_C4_M10_MASK                         0x20u
8976 #define UART_C4_M10_SHIFT                        5
8977 #define UART_C4_MAEN2_MASK                       0x40u
8978 #define UART_C4_MAEN2_SHIFT                      6
8979 #define UART_C4_MAEN1_MASK                       0x80u
8980 #define UART_C4_MAEN1_SHIFT                      7
8981 /* C5 Bit Fields */
8982 #define UART_C5_RDMAS_MASK                       0x20u
8983 #define UART_C5_RDMAS_SHIFT                      5
8984 #define UART_C5_TDMAS_MASK                       0x80u
8985 #define UART_C5_TDMAS_SHIFT                      7
8986 /* ED Bit Fields */
8987 #define UART_ED_PARITYE_MASK                     0x40u
8988 #define UART_ED_PARITYE_SHIFT                    6
8989 #define UART_ED_NOISY_MASK                       0x80u
8990 #define UART_ED_NOISY_SHIFT                      7
8991 /* MODEM Bit Fields */
8992 #define UART_MODEM_TXCTSE_MASK                   0x1u
8993 #define UART_MODEM_TXCTSE_SHIFT                  0
8994 #define UART_MODEM_TXRTSE_MASK                   0x2u
8995 #define UART_MODEM_TXRTSE_SHIFT                  1
8996 #define UART_MODEM_TXRTSPOL_MASK                 0x4u
8997 #define UART_MODEM_TXRTSPOL_SHIFT                2
8998 #define UART_MODEM_RXRTSE_MASK                   0x8u
8999 #define UART_MODEM_RXRTSE_SHIFT                  3
9000 /* IR Bit Fields */
9001 #define UART_IR_TNP_MASK                         0x3u
9002 #define UART_IR_TNP_SHIFT                        0
9003 #define UART_IR_TNP(x)                           (((uint8_t)(((uint8_t)(x))<<UART_IR_TNP_SHIFT))&UART_IR_TNP_MASK)
9004 #define UART_IR_IREN_MASK                        0x4u
9005 #define UART_IR_IREN_SHIFT                       2
9006 /* PFIFO Bit Fields */
9007 #define UART_PFIFO_RXFIFOSIZE_MASK               0x7u
9008 #define UART_PFIFO_RXFIFOSIZE_SHIFT              0
9009 #define UART_PFIFO_RXFIFOSIZE(x)                 (((uint8_t)(((uint8_t)(x))<<UART_PFIFO_RXFIFOSIZE_SHIFT))&UART_PFIFO_RXFIFOSIZE_MASK)
9010 #define UART_PFIFO_RXFE_MASK                     0x8u
9011 #define UART_PFIFO_RXFE_SHIFT                    3
9012 #define UART_PFIFO_TXFIFOSIZE_MASK               0x70u
9013 #define UART_PFIFO_TXFIFOSIZE_SHIFT              4
9014 #define UART_PFIFO_TXFIFOSIZE(x)                 (((uint8_t)(((uint8_t)(x))<<UART_PFIFO_TXFIFOSIZE_SHIFT))&UART_PFIFO_TXFIFOSIZE_MASK)
9015 #define UART_PFIFO_TXFE_MASK                     0x80u
9016 #define UART_PFIFO_TXFE_SHIFT                    7
9017 /* CFIFO Bit Fields */
9018 #define UART_CFIFO_RXUFE_MASK                    0x1u
9019 #define UART_CFIFO_RXUFE_SHIFT                   0
9020 #define UART_CFIFO_TXOFE_MASK                    0x2u
9021 #define UART_CFIFO_TXOFE_SHIFT                   1
9022 #define UART_CFIFO_RXOFE_MASK                    0x4u
9023 #define UART_CFIFO_RXOFE_SHIFT                   2
9024 #define UART_CFIFO_RXFLUSH_MASK                  0x40u
9025 #define UART_CFIFO_RXFLUSH_SHIFT                 6
9026 #define UART_CFIFO_TXFLUSH_MASK                  0x80u
9027 #define UART_CFIFO_TXFLUSH_SHIFT                 7
9028 /* SFIFO Bit Fields */
9029 #define UART_SFIFO_RXUF_MASK                     0x1u
9030 #define UART_SFIFO_RXUF_SHIFT                    0
9031 #define UART_SFIFO_TXOF_MASK                     0x2u
9032 #define UART_SFIFO_TXOF_SHIFT                    1
9033 #define UART_SFIFO_RXOF_MASK                     0x4u
9034 #define UART_SFIFO_RXOF_SHIFT                    2
9035 #define UART_SFIFO_RXEMPT_MASK                   0x40u
9036 #define UART_SFIFO_RXEMPT_SHIFT                  6
9037 #define UART_SFIFO_TXEMPT_MASK                   0x80u
9038 #define UART_SFIFO_TXEMPT_SHIFT                  7
9039 /* TWFIFO Bit Fields */
9040 #define UART_TWFIFO_TXWATER_MASK                 0xFFu
9041 #define UART_TWFIFO_TXWATER_SHIFT                0
9042 #define UART_TWFIFO_TXWATER(x)                   (((uint8_t)(((uint8_t)(x))<<UART_TWFIFO_TXWATER_SHIFT))&UART_TWFIFO_TXWATER_MASK)
9043 /* TCFIFO Bit Fields */
9044 #define UART_TCFIFO_TXCOUNT_MASK                 0xFFu
9045 #define UART_TCFIFO_TXCOUNT_SHIFT                0
9046 #define UART_TCFIFO_TXCOUNT(x)                   (((uint8_t)(((uint8_t)(x))<<UART_TCFIFO_TXCOUNT_SHIFT))&UART_TCFIFO_TXCOUNT_MASK)
9047 /* RWFIFO Bit Fields */
9048 #define UART_RWFIFO_RXWATER_MASK                 0xFFu
9049 #define UART_RWFIFO_RXWATER_SHIFT                0
9050 #define UART_RWFIFO_RXWATER(x)                   (((uint8_t)(((uint8_t)(x))<<UART_RWFIFO_RXWATER_SHIFT))&UART_RWFIFO_RXWATER_MASK)
9051 /* RCFIFO Bit Fields */
9052 #define UART_RCFIFO_RXCOUNT_MASK                 0xFFu
9053 #define UART_RCFIFO_RXCOUNT_SHIFT                0
9054 #define UART_RCFIFO_RXCOUNT(x)                   (((uint8_t)(((uint8_t)(x))<<UART_RCFIFO_RXCOUNT_SHIFT))&UART_RCFIFO_RXCOUNT_MASK)
9055 /* C7816 Bit Fields */
9056 #define UART_C7816_ISO_7816E_MASK                0x1u
9057 #define UART_C7816_ISO_7816E_SHIFT               0
9058 #define UART_C7816_TTYPE_MASK                    0x2u
9059 #define UART_C7816_TTYPE_SHIFT                   1
9060 #define UART_C7816_INIT_MASK                     0x4u
9061 #define UART_C7816_INIT_SHIFT                    2
9062 #define UART_C7816_ANACK_MASK                    0x8u
9063 #define UART_C7816_ANACK_SHIFT                   3
9064 #define UART_C7816_ONACK_MASK                    0x10u
9065 #define UART_C7816_ONACK_SHIFT                   4
9066 /* IE7816 Bit Fields */
9067 #define UART_IE7816_RXTE_MASK                    0x1u
9068 #define UART_IE7816_RXTE_SHIFT                   0
9069 #define UART_IE7816_TXTE_MASK                    0x2u
9070 #define UART_IE7816_TXTE_SHIFT                   1
9071 #define UART_IE7816_GTVE_MASK                    0x4u
9072 #define UART_IE7816_GTVE_SHIFT                   2
9073 #define UART_IE7816_ADTE_MASK                    0x8u
9074 #define UART_IE7816_ADTE_SHIFT                   3
9075 #define UART_IE7816_INITDE_MASK                  0x10u
9076 #define UART_IE7816_INITDE_SHIFT                 4
9077 #define UART_IE7816_BWTE_MASK                    0x20u
9078 #define UART_IE7816_BWTE_SHIFT                   5
9079 #define UART_IE7816_CWTE_MASK                    0x40u
9080 #define UART_IE7816_CWTE_SHIFT                   6
9081 #define UART_IE7816_WTE_MASK                     0x80u
9082 #define UART_IE7816_WTE_SHIFT                    7
9083 /* IS7816 Bit Fields */
9084 #define UART_IS7816_RXT_MASK                     0x1u
9085 #define UART_IS7816_RXT_SHIFT                    0
9086 #define UART_IS7816_TXT_MASK                     0x2u
9087 #define UART_IS7816_TXT_SHIFT                    1
9088 #define UART_IS7816_GTV_MASK                     0x4u
9089 #define UART_IS7816_GTV_SHIFT                    2
9090 #define UART_IS7816_ADT_MASK                     0x8u
9091 #define UART_IS7816_ADT_SHIFT                    3
9092 #define UART_IS7816_INITD_MASK                   0x10u
9093 #define UART_IS7816_INITD_SHIFT                  4
9094 #define UART_IS7816_BWT_MASK                     0x20u
9095 #define UART_IS7816_BWT_SHIFT                    5
9096 #define UART_IS7816_CWT_MASK                     0x40u
9097 #define UART_IS7816_CWT_SHIFT                    6
9098 #define UART_IS7816_WT_MASK                      0x80u
9099 #define UART_IS7816_WT_SHIFT                     7
9100 /* WP7816 Bit Fields */
9101 #define UART_WP7816_WTX_MASK                     0xFFu
9102 #define UART_WP7816_WTX_SHIFT                    0
9103 #define UART_WP7816_WTX(x)                       (((uint8_t)(((uint8_t)(x))<<UART_WP7816_WTX_SHIFT))&UART_WP7816_WTX_MASK)
9104 /* WN7816 Bit Fields */
9105 #define UART_WN7816_GTN_MASK                     0xFFu
9106 #define UART_WN7816_GTN_SHIFT                    0
9107 #define UART_WN7816_GTN(x)                       (((uint8_t)(((uint8_t)(x))<<UART_WN7816_GTN_SHIFT))&UART_WN7816_GTN_MASK)
9108 /* WF7816 Bit Fields */
9109 #define UART_WF7816_GTFD_MASK                    0xFFu
9110 #define UART_WF7816_GTFD_SHIFT                   0
9111 #define UART_WF7816_GTFD(x)                      (((uint8_t)(((uint8_t)(x))<<UART_WF7816_GTFD_SHIFT))&UART_WF7816_GTFD_MASK)
9112 /* ET7816 Bit Fields */
9113 #define UART_ET7816_RXTHRESHOLD_MASK             0xFu
9114 #define UART_ET7816_RXTHRESHOLD_SHIFT            0
9115 #define UART_ET7816_RXTHRESHOLD(x)               (((uint8_t)(((uint8_t)(x))<<UART_ET7816_RXTHRESHOLD_SHIFT))&UART_ET7816_RXTHRESHOLD_MASK)
9116 #define UART_ET7816_TXTHRESHOLD_MASK             0xF0u
9117 #define UART_ET7816_TXTHRESHOLD_SHIFT            4
9118 #define UART_ET7816_TXTHRESHOLD(x)               (((uint8_t)(((uint8_t)(x))<<UART_ET7816_TXTHRESHOLD_SHIFT))&UART_ET7816_TXTHRESHOLD_MASK)
9119 /* TL7816 Bit Fields */
9120 #define UART_TL7816_TLEN_MASK                    0xFFu
9121 #define UART_TL7816_TLEN_SHIFT                   0
9122 #define UART_TL7816_TLEN(x)                      (((uint8_t)(((uint8_t)(x))<<UART_TL7816_TLEN_SHIFT))&UART_TL7816_TLEN_MASK)
9123 /* AP7816A_T0 Bit Fields */
9124 #define UART_AP7816A_T0_ADTI_H_MASK              0xFFu
9125 #define UART_AP7816A_T0_ADTI_H_SHIFT             0
9126 #define UART_AP7816A_T0_ADTI_H(x)                (((uint8_t)(((uint8_t)(x))<<UART_AP7816A_T0_ADTI_H_SHIFT))&UART_AP7816A_T0_ADTI_H_MASK)
9127 /* AP7816B_T0 Bit Fields */
9128 #define UART_AP7816B_T0_ADTI_L_MASK              0xFFu
9129 #define UART_AP7816B_T0_ADTI_L_SHIFT             0
9130 #define UART_AP7816B_T0_ADTI_L(x)                (((uint8_t)(((uint8_t)(x))<<UART_AP7816B_T0_ADTI_L_SHIFT))&UART_AP7816B_T0_ADTI_L_MASK)
9131 /* WP7816A_T0 Bit Fields */
9132 #define UART_WP7816A_T0_WI_H_MASK                0xFFu
9133 #define UART_WP7816A_T0_WI_H_SHIFT               0
9134 #define UART_WP7816A_T0_WI_H(x)                  (((uint8_t)(((uint8_t)(x))<<UART_WP7816A_T0_WI_H_SHIFT))&UART_WP7816A_T0_WI_H_MASK)
9135 /* WP7816B_T0 Bit Fields */
9136 #define UART_WP7816B_T0_WI_L_MASK                0xFFu
9137 #define UART_WP7816B_T0_WI_L_SHIFT               0
9138 #define UART_WP7816B_T0_WI_L(x)                  (((uint8_t)(((uint8_t)(x))<<UART_WP7816B_T0_WI_L_SHIFT))&UART_WP7816B_T0_WI_L_MASK)
9139 /* WP7816A_T1 Bit Fields */
9140 #define UART_WP7816A_T1_BWI_H_MASK               0xFFu
9141 #define UART_WP7816A_T1_BWI_H_SHIFT              0
9142 #define UART_WP7816A_T1_BWI_H(x)                 (((uint8_t)(((uint8_t)(x))<<UART_WP7816A_T1_BWI_H_SHIFT))&UART_WP7816A_T1_BWI_H_MASK)
9143 /* WP7816B_T1 Bit Fields */
9144 #define UART_WP7816B_T1_BWI_L_MASK               0xFFu
9145 #define UART_WP7816B_T1_BWI_L_SHIFT              0
9146 #define UART_WP7816B_T1_BWI_L(x)                 (((uint8_t)(((uint8_t)(x))<<UART_WP7816B_T1_BWI_L_SHIFT))&UART_WP7816B_T1_BWI_L_MASK)
9147 /* WGP7816_T1 Bit Fields */
9148 #define UART_WGP7816_T1_BGI_MASK                 0xFu
9149 #define UART_WGP7816_T1_BGI_SHIFT                0
9150 #define UART_WGP7816_T1_BGI(x)                   (((uint8_t)(((uint8_t)(x))<<UART_WGP7816_T1_BGI_SHIFT))&UART_WGP7816_T1_BGI_MASK)
9151 #define UART_WGP7816_T1_CWI1_MASK                0xF0u
9152 #define UART_WGP7816_T1_CWI1_SHIFT               4
9153 #define UART_WGP7816_T1_CWI1(x)                  (((uint8_t)(((uint8_t)(x))<<UART_WGP7816_T1_CWI1_SHIFT))&UART_WGP7816_T1_CWI1_MASK)
9154 /* WP7816C_T1 Bit Fields */
9155 #define UART_WP7816C_T1_CWI2_MASK                0x1Fu
9156 #define UART_WP7816C_T1_CWI2_SHIFT               0
9157 #define UART_WP7816C_T1_CWI2(x)                  (((uint8_t)(((uint8_t)(x))<<UART_WP7816C_T1_CWI2_SHIFT))&UART_WP7816C_T1_CWI2_MASK)
9158
9159 /*!
9160  * @}
9161  */ /* end of group UART_Register_Masks */
9162
9163
9164 /* UART - Peripheral instance base addresses */
9165 /** Peripheral UART0 base address */
9166 #define UART0_BASE                               (0x4006A000u)
9167 /** Peripheral UART0 base pointer */
9168 #define UART0                                    ((UART_Type *)UART0_BASE)
9169 #define UART0_BASE_PTR                           (UART0)
9170 /** Peripheral UART1 base address */
9171 #define UART1_BASE                               (0x4006B000u)
9172 /** Peripheral UART1 base pointer */
9173 #define UART1                                    ((UART_Type *)UART1_BASE)
9174 #define UART1_BASE_PTR                           (UART1)
9175 /** Peripheral UART2 base address */
9176 #define UART2_BASE                               (0x4006C000u)
9177 /** Peripheral UART2 base pointer */
9178 #define UART2                                    ((UART_Type *)UART2_BASE)
9179 #define UART2_BASE_PTR                           (UART2)
9180 /** Array initializer of UART peripheral base addresses */
9181 #define UART_BASE_ADDRS                          { UART0_BASE, UART1_BASE, UART2_BASE }
9182 /** Array initializer of UART peripheral base pointers */
9183 #define UART_BASE_PTRS                           { UART0, UART1, UART2 }
9184 /** Interrupt vectors for the UART peripheral type */
9185 #define UART_RX_TX_IRQS                          { UART0_RX_TX_IRQn, UART1_RX_TX_IRQn, UART2_RX_TX_IRQn }
9186 #define UART_ERR_IRQS                            { UART0_ERR_IRQn, UART1_ERR_IRQn, UART2_ERR_IRQn }
9187
9188 /* ----------------------------------------------------------------------------
9189    -- UART - Register accessor macros
9190    ---------------------------------------------------------------------------- */
9191
9192 /*!
9193  * @addtogroup UART_Register_Accessor_Macros UART - Register accessor macros
9194  * @{
9195  */
9196
9197
9198 /* UART - Register instance definitions */
9199 /* UART0 */
9200 #define UART0_BDH                                UART_BDH_REG(UART0)
9201 #define UART0_BDL                                UART_BDL_REG(UART0)
9202 #define UART0_C1                                 UART_C1_REG(UART0)
9203 #define UART0_C2                                 UART_C2_REG(UART0)
9204 #define UART0_S1                                 UART_S1_REG(UART0)
9205 #define UART0_S2                                 UART_S2_REG(UART0)
9206 #define UART0_C3                                 UART_C3_REG(UART0)
9207 #define UART0_D                                  UART_D_REG(UART0)
9208 #define UART0_MA1                                UART_MA1_REG(UART0)
9209 #define UART0_MA2                                UART_MA2_REG(UART0)
9210 #define UART0_C4                                 UART_C4_REG(UART0)
9211 #define UART0_C5                                 UART_C5_REG(UART0)
9212 #define UART0_ED                                 UART_ED_REG(UART0)
9213 #define UART0_MODEM                              UART_MODEM_REG(UART0)
9214 #define UART0_IR                                 UART_IR_REG(UART0)
9215 #define UART0_PFIFO                              UART_PFIFO_REG(UART0)
9216 #define UART0_CFIFO                              UART_CFIFO_REG(UART0)
9217 #define UART0_SFIFO                              UART_SFIFO_REG(UART0)
9218 #define UART0_TWFIFO                             UART_TWFIFO_REG(UART0)
9219 #define UART0_TCFIFO                             UART_TCFIFO_REG(UART0)
9220 #define UART0_RWFIFO                             UART_RWFIFO_REG(UART0)
9221 #define UART0_RCFIFO                             UART_RCFIFO_REG(UART0)
9222 #define UART0_C7816                              UART_C7816_REG(UART0)
9223 #define UART0_IE7816                             UART_IE7816_REG(UART0)
9224 #define UART0_IS7816                             UART_IS7816_REG(UART0)
9225 #define UART0_WP7816                             UART_WP7816_REG(UART0)
9226 #define UART0_WN7816                             UART_WN7816_REG(UART0)
9227 #define UART0_WF7816                             UART_WF7816_REG(UART0)
9228 #define UART0_ET7816                             UART_ET7816_REG(UART0)
9229 #define UART0_TL7816                             UART_TL7816_REG(UART0)
9230 #define UART0_AP7816A_T0                         UART_AP7816A_T0_REG(UART0)
9231 #define UART0_AP7816B_T0                         UART_AP7816B_T0_REG(UART0)
9232 #define UART0_WP7816A_T0                         UART_WP7816A_T0_REG(UART0)
9233 #define UART0_WP7816A_T1                         UART_WP7816A_T1_REG(UART0)
9234 #define UART0_WP7816B_T0                         UART_WP7816B_T0_REG(UART0)
9235 #define UART0_WP7816B_T1                         UART_WP7816B_T1_REG(UART0)
9236 #define UART0_WGP7816_T1                         UART_WGP7816_T1_REG(UART0)
9237 #define UART0_WP7816C_T1                         UART_WP7816C_T1_REG(UART0)
9238 /* UART1 */
9239 #define UART1_BDH                                UART_BDH_REG(UART1)
9240 #define UART1_BDL                                UART_BDL_REG(UART1)
9241 #define UART1_C1                                 UART_C1_REG(UART1)
9242 #define UART1_C2                                 UART_C2_REG(UART1)
9243 #define UART1_S1                                 UART_S1_REG(UART1)
9244 #define UART1_S2                                 UART_S2_REG(UART1)
9245 #define UART1_C3                                 UART_C3_REG(UART1)
9246 #define UART1_D                                  UART_D_REG(UART1)
9247 #define UART1_MA1                                UART_MA1_REG(UART1)
9248 #define UART1_MA2                                UART_MA2_REG(UART1)
9249 #define UART1_C4                                 UART_C4_REG(UART1)
9250 #define UART1_C5                                 UART_C5_REG(UART1)
9251 #define UART1_ED                                 UART_ED_REG(UART1)
9252 #define UART1_MODEM                              UART_MODEM_REG(UART1)
9253 #define UART1_IR                                 UART_IR_REG(UART1)
9254 #define UART1_PFIFO                              UART_PFIFO_REG(UART1)
9255 #define UART1_CFIFO                              UART_CFIFO_REG(UART1)
9256 #define UART1_SFIFO                              UART_SFIFO_REG(UART1)
9257 #define UART1_TWFIFO                             UART_TWFIFO_REG(UART1)
9258 #define UART1_TCFIFO                             UART_TCFIFO_REG(UART1)
9259 #define UART1_RWFIFO                             UART_RWFIFO_REG(UART1)
9260 #define UART1_RCFIFO                             UART_RCFIFO_REG(UART1)
9261 /* UART2 */
9262 #define UART2_BDH                                UART_BDH_REG(UART2)
9263 #define UART2_BDL                                UART_BDL_REG(UART2)
9264 #define UART2_C1                                 UART_C1_REG(UART2)
9265 #define UART2_C2                                 UART_C2_REG(UART2)
9266 #define UART2_S1                                 UART_S1_REG(UART2)
9267 #define UART2_S2                                 UART_S2_REG(UART2)
9268 #define UART2_C3                                 UART_C3_REG(UART2)
9269 #define UART2_D                                  UART_D_REG(UART2)
9270 #define UART2_MA1                                UART_MA1_REG(UART2)
9271 #define UART2_MA2                                UART_MA2_REG(UART2)
9272 #define UART2_C4                                 UART_C4_REG(UART2)
9273 #define UART2_C5                                 UART_C5_REG(UART2)
9274 #define UART2_ED                                 UART_ED_REG(UART2)
9275 #define UART2_MODEM                              UART_MODEM_REG(UART2)
9276 #define UART2_IR                                 UART_IR_REG(UART2)
9277 #define UART2_PFIFO                              UART_PFIFO_REG(UART2)
9278 #define UART2_CFIFO                              UART_CFIFO_REG(UART2)
9279 #define UART2_SFIFO                              UART_SFIFO_REG(UART2)
9280 #define UART2_TWFIFO                             UART_TWFIFO_REG(UART2)
9281 #define UART2_TCFIFO                             UART_TCFIFO_REG(UART2)
9282 #define UART2_RWFIFO                             UART_RWFIFO_REG(UART2)
9283 #define UART2_RCFIFO                             UART_RCFIFO_REG(UART2)
9284
9285 /*!
9286  * @}
9287  */ /* end of group UART_Register_Accessor_Macros */
9288
9289
9290 /*!
9291  * @}
9292  */ /* end of group UART_Peripheral_Access_Layer */
9293
9294
9295 /* ----------------------------------------------------------------------------
9296    -- USB Peripheral Access Layer
9297    ---------------------------------------------------------------------------- */
9298
9299 /*!
9300  * @addtogroup USB_Peripheral_Access_Layer USB Peripheral Access Layer
9301  * @{
9302  */
9303
9304 /** USB - Register Layout Typedef */
9305 typedef struct {
9306   __I  uint8_t PERID;                              /**< Peripheral ID register, offset: 0x0 */
9307        uint8_t RESERVED_0[3];
9308   __I  uint8_t IDCOMP;                             /**< Peripheral ID Complement register, offset: 0x4 */
9309        uint8_t RESERVED_1[3];
9310   __I  uint8_t REV;                                /**< Peripheral Revision register, offset: 0x8 */
9311        uint8_t RESERVED_2[3];
9312   __I  uint8_t ADDINFO;                            /**< Peripheral Additional Info register, offset: 0xC */
9313        uint8_t RESERVED_3[3];
9314   __IO uint8_t OTGISTAT;                           /**< OTG Interrupt Status register, offset: 0x10 */
9315        uint8_t RESERVED_4[3];
9316   __IO uint8_t OTGICR;                             /**< OTG Interrupt Control register, offset: 0x14 */
9317        uint8_t RESERVED_5[3];
9318   __IO uint8_t OTGSTAT;                            /**< OTG Status register, offset: 0x18 */
9319        uint8_t RESERVED_6[3];
9320   __IO uint8_t OTGCTL;                             /**< OTG Control register, offset: 0x1C */
9321        uint8_t RESERVED_7[99];
9322   __IO uint8_t ISTAT;                              /**< Interrupt Status register, offset: 0x80 */
9323        uint8_t RESERVED_8[3];
9324   __IO uint8_t INTEN;                              /**< Interrupt Enable register, offset: 0x84 */
9325        uint8_t RESERVED_9[3];
9326   __IO uint8_t ERRSTAT;                            /**< Error Interrupt Status register, offset: 0x88 */
9327        uint8_t RESERVED_10[3];
9328   __IO uint8_t ERREN;                              /**< Error Interrupt Enable register, offset: 0x8C */
9329        uint8_t RESERVED_11[3];
9330   __I  uint8_t STAT;                               /**< Status register, offset: 0x90 */
9331        uint8_t RESERVED_12[3];
9332   __IO uint8_t CTL;                                /**< Control register, offset: 0x94 */
9333        uint8_t RESERVED_13[3];
9334   __IO uint8_t ADDR;                               /**< Address register, offset: 0x98 */
9335        uint8_t RESERVED_14[3];
9336   __IO uint8_t BDTPAGE1;                           /**< BDT Page register 1, offset: 0x9C */
9337        uint8_t RESERVED_15[3];
9338   __IO uint8_t FRMNUML;                            /**< Frame Number register Low, offset: 0xA0 */
9339        uint8_t RESERVED_16[3];
9340   __IO uint8_t FRMNUMH;                            /**< Frame Number register High, offset: 0xA4 */
9341        uint8_t RESERVED_17[3];
9342   __IO uint8_t TOKEN;                              /**< Token register, offset: 0xA8 */
9343        uint8_t RESERVED_18[3];
9344   __IO uint8_t SOFTHLD;                            /**< SOF Threshold register, offset: 0xAC */
9345        uint8_t RESERVED_19[3];
9346   __IO uint8_t BDTPAGE2;                           /**< BDT Page Register 2, offset: 0xB0 */
9347        uint8_t RESERVED_20[3];
9348   __IO uint8_t BDTPAGE3;                           /**< BDT Page Register 3, offset: 0xB4 */
9349        uint8_t RESERVED_21[11];
9350   struct {                                         /* offset: 0xC0, array step: 0x4 */
9351     __IO uint8_t ENDPT;                              /**< Endpoint Control register, array offset: 0xC0, array step: 0x4 */
9352          uint8_t RESERVED_0[3];
9353   } ENDPOINT[16];
9354   __IO uint8_t USBCTRL;                            /**< USB Control register, offset: 0x100 */
9355        uint8_t RESERVED_22[3];
9356   __I  uint8_t OBSERVE;                            /**< USB OTG Observe register, offset: 0x104 */
9357        uint8_t RESERVED_23[3];
9358   __IO uint8_t CONTROL;                            /**< USB OTG Control register, offset: 0x108 */
9359        uint8_t RESERVED_24[3];
9360   __IO uint8_t USBTRC0;                            /**< USB Transceiver Control register 0, offset: 0x10C */
9361        uint8_t RESERVED_25[7];
9362   __IO uint8_t USBFRMADJUST;                       /**< Frame Adjust Register, offset: 0x114 */
9363        uint8_t RESERVED_26[43];
9364   __IO uint8_t CLK_RECOVER_CTRL;                   /**< USB Clock recovery control, offset: 0x140 */
9365        uint8_t RESERVED_27[3];
9366   __IO uint8_t CLK_RECOVER_IRC_EN;                 /**< IRC48M oscillator enable register, offset: 0x144 */
9367        uint8_t RESERVED_28[23];
9368   __IO uint8_t CLK_RECOVER_INT_STATUS;             /**< Clock recovery separated interrupt status, offset: 0x15C */
9369 } USB_Type, *USB_MemMapPtr;
9370
9371 /* ----------------------------------------------------------------------------
9372    -- USB - Register accessor macros
9373    ---------------------------------------------------------------------------- */
9374
9375 /*!
9376  * @addtogroup USB_Register_Accessor_Macros USB - Register accessor macros
9377  * @{
9378  */
9379
9380
9381 /* USB - Register accessors */
9382 #define USB_PERID_REG(base)                      ((base)->PERID)
9383 #define USB_IDCOMP_REG(base)                     ((base)->IDCOMP)
9384 #define USB_REV_REG(base)                        ((base)->REV)
9385 #define USB_ADDINFO_REG(base)                    ((base)->ADDINFO)
9386 #define USB_OTGISTAT_REG(base)                   ((base)->OTGISTAT)
9387 #define USB_OTGICR_REG(base)                     ((base)->OTGICR)
9388 #define USB_OTGSTAT_REG(base)                    ((base)->OTGSTAT)
9389 #define USB_OTGCTL_REG(base)                     ((base)->OTGCTL)
9390 #define USB_ISTAT_REG(base)                      ((base)->ISTAT)
9391 #define USB_INTEN_REG(base)                      ((base)->INTEN)
9392 #define USB_ERRSTAT_REG(base)                    ((base)->ERRSTAT)
9393 #define USB_ERREN_REG(base)                      ((base)->ERREN)
9394 #define USB_STAT_REG(base)                       ((base)->STAT)
9395 #define USB_CTL_REG(base)                        ((base)->CTL)
9396 #define USB_ADDR_REG(base)                       ((base)->ADDR)
9397 #define USB_BDTPAGE1_REG(base)                   ((base)->BDTPAGE1)
9398 #define USB_FRMNUML_REG(base)                    ((base)->FRMNUML)
9399 #define USB_FRMNUMH_REG(base)                    ((base)->FRMNUMH)
9400 #define USB_TOKEN_REG(base)                      ((base)->TOKEN)
9401 #define USB_SOFTHLD_REG(base)                    ((base)->SOFTHLD)
9402 #define USB_BDTPAGE2_REG(base)                   ((base)->BDTPAGE2)
9403 #define USB_BDTPAGE3_REG(base)                   ((base)->BDTPAGE3)
9404 #define USB_ENDPT_REG(base,index)                ((base)->ENDPOINT[index].ENDPT)
9405 #define USB_USBCTRL_REG(base)                    ((base)->USBCTRL)
9406 #define USB_OBSERVE_REG(base)                    ((base)->OBSERVE)
9407 #define USB_CONTROL_REG(base)                    ((base)->CONTROL)
9408 #define USB_USBTRC0_REG(base)                    ((base)->USBTRC0)
9409 #define USB_USBFRMADJUST_REG(base)               ((base)->USBFRMADJUST)
9410 #define USB_CLK_RECOVER_CTRL_REG(base)           ((base)->CLK_RECOVER_CTRL)
9411 #define USB_CLK_RECOVER_IRC_EN_REG(base)         ((base)->CLK_RECOVER_IRC_EN)
9412 #define USB_CLK_RECOVER_INT_STATUS_REG(base)     ((base)->CLK_RECOVER_INT_STATUS)
9413
9414 /*!
9415  * @}
9416  */ /* end of group USB_Register_Accessor_Macros */
9417
9418
9419 /* ----------------------------------------------------------------------------
9420    -- USB Register Masks
9421    ---------------------------------------------------------------------------- */
9422
9423 /*!
9424  * @addtogroup USB_Register_Masks USB Register Masks
9425  * @{
9426  */
9427
9428 /* PERID Bit Fields */
9429 #define USB_PERID_ID_MASK                        0x3Fu
9430 #define USB_PERID_ID_SHIFT                       0
9431 #define USB_PERID_ID(x)                          (((uint8_t)(((uint8_t)(x))<<USB_PERID_ID_SHIFT))&USB_PERID_ID_MASK)
9432 /* IDCOMP Bit Fields */
9433 #define USB_IDCOMP_NID_MASK                      0x3Fu
9434 #define USB_IDCOMP_NID_SHIFT                     0
9435 #define USB_IDCOMP_NID(x)                        (((uint8_t)(((uint8_t)(x))<<USB_IDCOMP_NID_SHIFT))&USB_IDCOMP_NID_MASK)
9436 /* REV Bit Fields */
9437 #define USB_REV_REV_MASK                         0xFFu
9438 #define USB_REV_REV_SHIFT                        0
9439 #define USB_REV_REV(x)                           (((uint8_t)(((uint8_t)(x))<<USB_REV_REV_SHIFT))&USB_REV_REV_MASK)
9440 /* ADDINFO Bit Fields */
9441 #define USB_ADDINFO_IEHOST_MASK                  0x1u
9442 #define USB_ADDINFO_IEHOST_SHIFT                 0
9443 /* OTGISTAT Bit Fields */
9444 #define USB_OTGISTAT_AVBUSCHG_MASK               0x1u
9445 #define USB_OTGISTAT_AVBUSCHG_SHIFT              0
9446 #define USB_OTGISTAT_B_SESS_CHG_MASK             0x4u
9447 #define USB_OTGISTAT_B_SESS_CHG_SHIFT            2
9448 #define USB_OTGISTAT_SESSVLDCHG_MASK             0x8u
9449 #define USB_OTGISTAT_SESSVLDCHG_SHIFT            3
9450 #define USB_OTGISTAT_LINE_STATE_CHG_MASK         0x20u
9451 #define USB_OTGISTAT_LINE_STATE_CHG_SHIFT        5
9452 #define USB_OTGISTAT_ONEMSEC_MASK                0x40u
9453 #define USB_OTGISTAT_ONEMSEC_SHIFT               6
9454 #define USB_OTGISTAT_IDCHG_MASK                  0x80u
9455 #define USB_OTGISTAT_IDCHG_SHIFT                 7
9456 /* OTGICR Bit Fields */
9457 #define USB_OTGICR_AVBUSEN_MASK                  0x1u
9458 #define USB_OTGICR_AVBUSEN_SHIFT                 0
9459 #define USB_OTGICR_BSESSEN_MASK                  0x4u
9460 #define USB_OTGICR_BSESSEN_SHIFT                 2
9461 #define USB_OTGICR_SESSVLDEN_MASK                0x8u
9462 #define USB_OTGICR_SESSVLDEN_SHIFT               3
9463 #define USB_OTGICR_LINESTATEEN_MASK              0x20u
9464 #define USB_OTGICR_LINESTATEEN_SHIFT             5
9465 #define USB_OTGICR_ONEMSECEN_MASK                0x40u
9466 #define USB_OTGICR_ONEMSECEN_SHIFT               6
9467 #define USB_OTGICR_IDEN_MASK                     0x80u
9468 #define USB_OTGICR_IDEN_SHIFT                    7
9469 /* OTGSTAT Bit Fields */
9470 #define USB_OTGSTAT_AVBUSVLD_MASK                0x1u
9471 #define USB_OTGSTAT_AVBUSVLD_SHIFT               0
9472 #define USB_OTGSTAT_BSESSEND_MASK                0x4u
9473 #define USB_OTGSTAT_BSESSEND_SHIFT               2
9474 #define USB_OTGSTAT_SESS_VLD_MASK                0x8u
9475 #define USB_OTGSTAT_SESS_VLD_SHIFT               3
9476 #define USB_OTGSTAT_LINESTATESTABLE_MASK         0x20u
9477 #define USB_OTGSTAT_LINESTATESTABLE_SHIFT        5
9478 #define USB_OTGSTAT_ONEMSECEN_MASK               0x40u
9479 #define USB_OTGSTAT_ONEMSECEN_SHIFT              6
9480 #define USB_OTGSTAT_ID_MASK                      0x80u
9481 #define USB_OTGSTAT_ID_SHIFT                     7
9482 /* OTGCTL Bit Fields */
9483 #define USB_OTGCTL_OTGEN_MASK                    0x4u
9484 #define USB_OTGCTL_OTGEN_SHIFT                   2
9485 #define USB_OTGCTL_DMLOW_MASK                    0x10u
9486 #define USB_OTGCTL_DMLOW_SHIFT                   4
9487 #define USB_OTGCTL_DPLOW_MASK                    0x20u
9488 #define USB_OTGCTL_DPLOW_SHIFT                   5
9489 #define USB_OTGCTL_DPHIGH_MASK                   0x80u
9490 #define USB_OTGCTL_DPHIGH_SHIFT                  7
9491 /* ISTAT Bit Fields */
9492 #define USB_ISTAT_USBRST_MASK                    0x1u
9493 #define USB_ISTAT_USBRST_SHIFT                   0
9494 #define USB_ISTAT_ERROR_MASK                     0x2u
9495 #define USB_ISTAT_ERROR_SHIFT                    1
9496 #define USB_ISTAT_SOFTOK_MASK                    0x4u
9497 #define USB_ISTAT_SOFTOK_SHIFT                   2
9498 #define USB_ISTAT_TOKDNE_MASK                    0x8u
9499 #define USB_ISTAT_TOKDNE_SHIFT                   3
9500 #define USB_ISTAT_SLEEP_MASK                     0x10u
9501 #define USB_ISTAT_SLEEP_SHIFT                    4
9502 #define USB_ISTAT_RESUME_MASK                    0x20u
9503 #define USB_ISTAT_RESUME_SHIFT                   5
9504 #define USB_ISTAT_ATTACH_MASK                    0x40u
9505 #define USB_ISTAT_ATTACH_SHIFT                   6
9506 #define USB_ISTAT_STALL_MASK                     0x80u
9507 #define USB_ISTAT_STALL_SHIFT                    7
9508 /* INTEN Bit Fields */
9509 #define USB_INTEN_USBRSTEN_MASK                  0x1u
9510 #define USB_INTEN_USBRSTEN_SHIFT                 0
9511 #define USB_INTEN_ERROREN_MASK                   0x2u
9512 #define USB_INTEN_ERROREN_SHIFT                  1
9513 #define USB_INTEN_SOFTOKEN_MASK                  0x4u
9514 #define USB_INTEN_SOFTOKEN_SHIFT                 2
9515 #define USB_INTEN_TOKDNEEN_MASK                  0x8u
9516 #define USB_INTEN_TOKDNEEN_SHIFT                 3
9517 #define USB_INTEN_SLEEPEN_MASK                   0x10u
9518 #define USB_INTEN_SLEEPEN_SHIFT                  4
9519 #define USB_INTEN_RESUMEEN_MASK                  0x20u
9520 #define USB_INTEN_RESUMEEN_SHIFT                 5
9521 #define USB_INTEN_ATTACHEN_MASK                  0x40u
9522 #define USB_INTEN_ATTACHEN_SHIFT                 6
9523 #define USB_INTEN_STALLEN_MASK                   0x80u
9524 #define USB_INTEN_STALLEN_SHIFT                  7
9525 /* ERRSTAT Bit Fields */
9526 #define USB_ERRSTAT_PIDERR_MASK                  0x1u
9527 #define USB_ERRSTAT_PIDERR_SHIFT                 0
9528 #define USB_ERRSTAT_CRC5EOF_MASK                 0x2u
9529 #define USB_ERRSTAT_CRC5EOF_SHIFT                1
9530 #define USB_ERRSTAT_CRC16_MASK                   0x4u
9531 #define USB_ERRSTAT_CRC16_SHIFT                  2
9532 #define USB_ERRSTAT_DFN8_MASK                    0x8u
9533 #define USB_ERRSTAT_DFN8_SHIFT                   3
9534 #define USB_ERRSTAT_BTOERR_MASK                  0x10u
9535 #define USB_ERRSTAT_BTOERR_SHIFT                 4
9536 #define USB_ERRSTAT_DMAERR_MASK                  0x20u
9537 #define USB_ERRSTAT_DMAERR_SHIFT                 5
9538 #define USB_ERRSTAT_BTSERR_MASK                  0x80u
9539 #define USB_ERRSTAT_BTSERR_SHIFT                 7
9540 /* ERREN Bit Fields */
9541 #define USB_ERREN_PIDERREN_MASK                  0x1u
9542 #define USB_ERREN_PIDERREN_SHIFT                 0
9543 #define USB_ERREN_CRC5EOFEN_MASK                 0x2u
9544 #define USB_ERREN_CRC5EOFEN_SHIFT                1
9545 #define USB_ERREN_CRC16EN_MASK                   0x4u
9546 #define USB_ERREN_CRC16EN_SHIFT                  2
9547 #define USB_ERREN_DFN8EN_MASK                    0x8u
9548 #define USB_ERREN_DFN8EN_SHIFT                   3
9549 #define USB_ERREN_BTOERREN_MASK                  0x10u
9550 #define USB_ERREN_BTOERREN_SHIFT                 4
9551 #define USB_ERREN_DMAERREN_MASK                  0x20u
9552 #define USB_ERREN_DMAERREN_SHIFT                 5
9553 #define USB_ERREN_BTSERREN_MASK                  0x80u
9554 #define USB_ERREN_BTSERREN_SHIFT                 7
9555 /* STAT Bit Fields */
9556 #define USB_STAT_ODD_MASK                        0x4u
9557 #define USB_STAT_ODD_SHIFT                       2
9558 #define USB_STAT_TX_MASK                         0x8u
9559 #define USB_STAT_TX_SHIFT                        3
9560 #define USB_STAT_ENDP_MASK                       0xF0u
9561 #define USB_STAT_ENDP_SHIFT                      4
9562 #define USB_STAT_ENDP(x)                         (((uint8_t)(((uint8_t)(x))<<USB_STAT_ENDP_SHIFT))&USB_STAT_ENDP_MASK)
9563 /* CTL Bit Fields */
9564 #define USB_CTL_USBENSOFEN_MASK                  0x1u
9565 #define USB_CTL_USBENSOFEN_SHIFT                 0
9566 #define USB_CTL_ODDRST_MASK                      0x2u
9567 #define USB_CTL_ODDRST_SHIFT                     1
9568 #define USB_CTL_RESUME_MASK                      0x4u
9569 #define USB_CTL_RESUME_SHIFT                     2
9570 #define USB_CTL_HOSTMODEEN_MASK                  0x8u
9571 #define USB_CTL_HOSTMODEEN_SHIFT                 3
9572 #define USB_CTL_RESET_MASK                       0x10u
9573 #define USB_CTL_RESET_SHIFT                      4
9574 #define USB_CTL_TXSUSPENDTOKENBUSY_MASK          0x20u
9575 #define USB_CTL_TXSUSPENDTOKENBUSY_SHIFT         5
9576 #define USB_CTL_SE0_MASK                         0x40u
9577 #define USB_CTL_SE0_SHIFT                        6
9578 #define USB_CTL_JSTATE_MASK                      0x80u
9579 #define USB_CTL_JSTATE_SHIFT                     7
9580 /* ADDR Bit Fields */
9581 #define USB_ADDR_ADDR_MASK                       0x7Fu
9582 #define USB_ADDR_ADDR_SHIFT                      0
9583 #define USB_ADDR_ADDR(x)                         (((uint8_t)(((uint8_t)(x))<<USB_ADDR_ADDR_SHIFT))&USB_ADDR_ADDR_MASK)
9584 #define USB_ADDR_LSEN_MASK                       0x80u
9585 #define USB_ADDR_LSEN_SHIFT                      7
9586 /* BDTPAGE1 Bit Fields */
9587 #define USB_BDTPAGE1_BDTBA_MASK                  0xFEu
9588 #define USB_BDTPAGE1_BDTBA_SHIFT                 1
9589 #define USB_BDTPAGE1_BDTBA(x)                    (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE1_BDTBA_SHIFT))&USB_BDTPAGE1_BDTBA_MASK)
9590 /* FRMNUML Bit Fields */
9591 #define USB_FRMNUML_FRM_MASK                     0xFFu
9592 #define USB_FRMNUML_FRM_SHIFT                    0
9593 #define USB_FRMNUML_FRM(x)                       (((uint8_t)(((uint8_t)(x))<<USB_FRMNUML_FRM_SHIFT))&USB_FRMNUML_FRM_MASK)
9594 /* FRMNUMH Bit Fields */
9595 #define USB_FRMNUMH_FRM_MASK                     0x7u
9596 #define USB_FRMNUMH_FRM_SHIFT                    0
9597 #define USB_FRMNUMH_FRM(x)                       (((uint8_t)(((uint8_t)(x))<<USB_FRMNUMH_FRM_SHIFT))&USB_FRMNUMH_FRM_MASK)
9598 /* TOKEN Bit Fields */
9599 #define USB_TOKEN_TOKENENDPT_MASK                0xFu
9600 #define USB_TOKEN_TOKENENDPT_SHIFT               0
9601 #define USB_TOKEN_TOKENENDPT(x)                  (((uint8_t)(((uint8_t)(x))<<USB_TOKEN_TOKENENDPT_SHIFT))&USB_TOKEN_TOKENENDPT_MASK)
9602 #define USB_TOKEN_TOKENPID_MASK                  0xF0u
9603 #define USB_TOKEN_TOKENPID_SHIFT                 4
9604 #define USB_TOKEN_TOKENPID(x)                    (((uint8_t)(((uint8_t)(x))<<USB_TOKEN_TOKENPID_SHIFT))&USB_TOKEN_TOKENPID_MASK)
9605 /* SOFTHLD Bit Fields */
9606 #define USB_SOFTHLD_CNT_MASK                     0xFFu
9607 #define USB_SOFTHLD_CNT_SHIFT                    0
9608 #define USB_SOFTHLD_CNT(x)                       (((uint8_t)(((uint8_t)(x))<<USB_SOFTHLD_CNT_SHIFT))&USB_SOFTHLD_CNT_MASK)
9609 /* BDTPAGE2 Bit Fields */
9610 #define USB_BDTPAGE2_BDTBA_MASK                  0xFFu
9611 #define USB_BDTPAGE2_BDTBA_SHIFT                 0
9612 #define USB_BDTPAGE2_BDTBA(x)                    (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE2_BDTBA_SHIFT))&USB_BDTPAGE2_BDTBA_MASK)
9613 /* BDTPAGE3 Bit Fields */
9614 #define USB_BDTPAGE3_BDTBA_MASK                  0xFFu
9615 #define USB_BDTPAGE3_BDTBA_SHIFT                 0
9616 #define USB_BDTPAGE3_BDTBA(x)                    (((uint8_t)(((uint8_t)(x))<<USB_BDTPAGE3_BDTBA_SHIFT))&USB_BDTPAGE3_BDTBA_MASK)
9617 /* ENDPT Bit Fields */
9618 #define USB_ENDPT_EPHSHK_MASK                    0x1u
9619 #define USB_ENDPT_EPHSHK_SHIFT                   0
9620 #define USB_ENDPT_EPSTALL_MASK                   0x2u
9621 #define USB_ENDPT_EPSTALL_SHIFT                  1
9622 #define USB_ENDPT_EPTXEN_MASK                    0x4u
9623 #define USB_ENDPT_EPTXEN_SHIFT                   2
9624 #define USB_ENDPT_EPRXEN_MASK                    0x8u
9625 #define USB_ENDPT_EPRXEN_SHIFT                   3
9626 #define USB_ENDPT_EPCTLDIS_MASK                  0x10u
9627 #define USB_ENDPT_EPCTLDIS_SHIFT                 4
9628 #define USB_ENDPT_RETRYDIS_MASK                  0x40u
9629 #define USB_ENDPT_RETRYDIS_SHIFT                 6
9630 #define USB_ENDPT_HOSTWOHUB_MASK                 0x80u
9631 #define USB_ENDPT_HOSTWOHUB_SHIFT                7
9632 /* USBCTRL Bit Fields */
9633 #define USB_USBCTRL_PDE_MASK                     0x40u
9634 #define USB_USBCTRL_PDE_SHIFT                    6
9635 #define USB_USBCTRL_SUSP_MASK                    0x80u
9636 #define USB_USBCTRL_SUSP_SHIFT                   7
9637 /* OBSERVE Bit Fields */
9638 #define USB_OBSERVE_DMPD_MASK                    0x10u
9639 #define USB_OBSERVE_DMPD_SHIFT                   4
9640 #define USB_OBSERVE_DPPD_MASK                    0x40u
9641 #define USB_OBSERVE_DPPD_SHIFT                   6
9642 #define USB_OBSERVE_DPPU_MASK                    0x80u
9643 #define USB_OBSERVE_DPPU_SHIFT                   7
9644 /* CONTROL Bit Fields */
9645 #define USB_CONTROL_DPPULLUPNONOTG_MASK          0x10u
9646 #define USB_CONTROL_DPPULLUPNONOTG_SHIFT         4
9647 /* USBTRC0 Bit Fields */
9648 #define USB_USBTRC0_USB_RESUME_INT_MASK          0x1u
9649 #define USB_USBTRC0_USB_RESUME_INT_SHIFT         0
9650 #define USB_USBTRC0_SYNC_DET_MASK                0x2u
9651 #define USB_USBTRC0_SYNC_DET_SHIFT               1
9652 #define USB_USBTRC0_USB_CLK_RECOVERY_INT_MASK    0x4u
9653 #define USB_USBTRC0_USB_CLK_RECOVERY_INT_SHIFT   2
9654 #define USB_USBTRC0_USBRESMEN_MASK               0x20u
9655 #define USB_USBTRC0_USBRESMEN_SHIFT              5
9656 #define USB_USBTRC0_USBRESET_MASK                0x80u
9657 #define USB_USBTRC0_USBRESET_SHIFT               7
9658 /* USBFRMADJUST Bit Fields */
9659 #define USB_USBFRMADJUST_ADJ_MASK                0xFFu
9660 #define USB_USBFRMADJUST_ADJ_SHIFT               0
9661 #define USB_USBFRMADJUST_ADJ(x)                  (((uint8_t)(((uint8_t)(x))<<USB_USBFRMADJUST_ADJ_SHIFT))&USB_USBFRMADJUST_ADJ_MASK)
9662 /* CLK_RECOVER_CTRL Bit Fields */
9663 #define USB_CLK_RECOVER_CTRL_RESTART_IFRTRIM_EN_MASK 0x20u
9664 #define USB_CLK_RECOVER_CTRL_RESTART_IFRTRIM_EN_SHIFT 5
9665 #define USB_CLK_RECOVER_CTRL_RESET_RESUME_ROUGH_EN_MASK 0x40u
9666 #define USB_CLK_RECOVER_CTRL_RESET_RESUME_ROUGH_EN_SHIFT 6
9667 #define USB_CLK_RECOVER_CTRL_CLOCK_RECOVER_EN_MASK 0x80u
9668 #define USB_CLK_RECOVER_CTRL_CLOCK_RECOVER_EN_SHIFT 7
9669 /* CLK_RECOVER_IRC_EN Bit Fields */
9670 #define USB_CLK_RECOVER_IRC_EN_REG_EN_MASK       0x1u
9671 #define USB_CLK_RECOVER_IRC_EN_REG_EN_SHIFT      0
9672 #define USB_CLK_RECOVER_IRC_EN_IRC_EN_MASK       0x2u
9673 #define USB_CLK_RECOVER_IRC_EN_IRC_EN_SHIFT      1
9674 /* CLK_RECOVER_INT_STATUS Bit Fields */
9675 #define USB_CLK_RECOVER_INT_STATUS_OVF_ERROR_MASK 0x10u
9676 #define USB_CLK_RECOVER_INT_STATUS_OVF_ERROR_SHIFT 4
9677
9678 /*!
9679  * @}
9680  */ /* end of group USB_Register_Masks */
9681
9682
9683 /* USB - Peripheral instance base addresses */
9684 /** Peripheral USB0 base address */
9685 #define USB0_BASE                                (0x40072000u)
9686 /** Peripheral USB0 base pointer */
9687 #define USB0                                     ((USB_Type *)USB0_BASE)
9688 #define USB0_BASE_PTR                            (USB0)
9689 /** Array initializer of USB peripheral base addresses */
9690 #define USB_BASE_ADDRS                           { USB0_BASE }
9691 /** Array initializer of USB peripheral base pointers */
9692 #define USB_BASE_PTRS                            { USB0 }
9693 /** Interrupt vectors for the USB peripheral type */
9694 #define USB_IRQS                                 { USB0_IRQn }
9695
9696 /* ----------------------------------------------------------------------------
9697    -- USB - Register accessor macros
9698    ---------------------------------------------------------------------------- */
9699
9700 /*!
9701  * @addtogroup USB_Register_Accessor_Macros USB - Register accessor macros
9702  * @{
9703  */
9704
9705
9706 /* USB - Register instance definitions */
9707 /* USB0 */
9708 #define USB0_PERID                               USB_PERID_REG(USB0)
9709 #define USB0_IDCOMP                              USB_IDCOMP_REG(USB0)
9710 #define USB0_REV                                 USB_REV_REG(USB0)
9711 #define USB0_ADDINFO                             USB_ADDINFO_REG(USB0)
9712 #define USB0_OTGISTAT                            USB_OTGISTAT_REG(USB0)
9713 #define USB0_OTGICR                              USB_OTGICR_REG(USB0)
9714 #define USB0_OTGSTAT                             USB_OTGSTAT_REG(USB0)
9715 #define USB0_OTGCTL                              USB_OTGCTL_REG(USB0)
9716 #define USB0_ISTAT                               USB_ISTAT_REG(USB0)
9717 #define USB0_INTEN                               USB_INTEN_REG(USB0)
9718 #define USB0_ERRSTAT                             USB_ERRSTAT_REG(USB0)
9719 #define USB0_ERREN                               USB_ERREN_REG(USB0)
9720 #define USB0_STAT                                USB_STAT_REG(USB0)
9721 #define USB0_CTL                                 USB_CTL_REG(USB0)
9722 #define USB0_ADDR                                USB_ADDR_REG(USB0)
9723 #define USB0_BDTPAGE1                            USB_BDTPAGE1_REG(USB0)
9724 #define USB0_FRMNUML                             USB_FRMNUML_REG(USB0)
9725 #define USB0_FRMNUMH                             USB_FRMNUMH_REG(USB0)
9726 #define USB0_TOKEN                               USB_TOKEN_REG(USB0)
9727 #define USB0_SOFTHLD                             USB_SOFTHLD_REG(USB0)
9728 #define USB0_BDTPAGE2                            USB_BDTPAGE2_REG(USB0)
9729 #define USB0_BDTPAGE3                            USB_BDTPAGE3_REG(USB0)
9730 #define USB0_ENDPT0                              USB_ENDPT_REG(USB0,0)
9731 #define USB0_ENDPT1                              USB_ENDPT_REG(USB0,1)
9732 #define USB0_ENDPT2                              USB_ENDPT_REG(USB0,2)
9733 #define USB0_ENDPT3                              USB_ENDPT_REG(USB0,3)
9734 #define USB0_ENDPT4                              USB_ENDPT_REG(USB0,4)
9735 #define USB0_ENDPT5                              USB_ENDPT_REG(USB0,5)
9736 #define USB0_ENDPT6                              USB_ENDPT_REG(USB0,6)
9737 #define USB0_ENDPT7                              USB_ENDPT_REG(USB0,7)
9738 #define USB0_ENDPT8                              USB_ENDPT_REG(USB0,8)
9739 #define USB0_ENDPT9                              USB_ENDPT_REG(USB0,9)
9740 #define USB0_ENDPT10                             USB_ENDPT_REG(USB0,10)
9741 #define USB0_ENDPT11                             USB_ENDPT_REG(USB0,11)
9742 #define USB0_ENDPT12                             USB_ENDPT_REG(USB0,12)
9743 #define USB0_ENDPT13                             USB_ENDPT_REG(USB0,13)
9744 #define USB0_ENDPT14                             USB_ENDPT_REG(USB0,14)
9745 #define USB0_ENDPT15                             USB_ENDPT_REG(USB0,15)
9746 #define USB0_USBCTRL                             USB_USBCTRL_REG(USB0)
9747 #define USB0_OBSERVE                             USB_OBSERVE_REG(USB0)
9748 #define USB0_CONTROL                             USB_CONTROL_REG(USB0)
9749 #define USB0_USBTRC0                             USB_USBTRC0_REG(USB0)
9750 #define USB0_USBFRMADJUST                        USB_USBFRMADJUST_REG(USB0)
9751 #define USB0_CLK_RECOVER_CTRL                    USB_CLK_RECOVER_CTRL_REG(USB0)
9752 #define USB0_CLK_RECOVER_IRC_EN                  USB_CLK_RECOVER_IRC_EN_REG(USB0)
9753 #define USB0_CLK_RECOVER_INT_STATUS              USB_CLK_RECOVER_INT_STATUS_REG(USB0)
9754
9755 /* USB - Register array accessors */
9756 #define USB0_ENDPT(index)                        USB_ENDPT_REG(USB0,index)
9757
9758 /*!
9759  * @}
9760  */ /* end of group USB_Register_Accessor_Macros */
9761
9762
9763 /*!
9764  * @}
9765  */ /* end of group USB_Peripheral_Access_Layer */
9766
9767
9768 /* ----------------------------------------------------------------------------
9769    -- VREF Peripheral Access Layer
9770    ---------------------------------------------------------------------------- */
9771
9772 /*!
9773  * @addtogroup VREF_Peripheral_Access_Layer VREF Peripheral Access Layer
9774  * @{
9775  */
9776
9777 /** VREF - Register Layout Typedef */
9778 typedef struct {
9779   __IO uint8_t TRM;                                /**< VREF Trim Register, offset: 0x0 */
9780   __IO uint8_t SC;                                 /**< VREF Status and Control Register, offset: 0x1 */
9781 } VREF_Type, *VREF_MemMapPtr;
9782
9783 /* ----------------------------------------------------------------------------
9784    -- VREF - Register accessor macros
9785    ---------------------------------------------------------------------------- */
9786
9787 /*!
9788  * @addtogroup VREF_Register_Accessor_Macros VREF - Register accessor macros
9789  * @{
9790  */
9791
9792
9793 /* VREF - Register accessors */
9794 #define VREF_TRM_REG(base)                       ((base)->TRM)
9795 #define VREF_SC_REG(base)                        ((base)->SC)
9796
9797 /*!
9798  * @}
9799  */ /* end of group VREF_Register_Accessor_Macros */
9800
9801
9802 /* ----------------------------------------------------------------------------
9803    -- VREF Register Masks
9804    ---------------------------------------------------------------------------- */
9805
9806 /*!
9807  * @addtogroup VREF_Register_Masks VREF Register Masks
9808  * @{
9809  */
9810
9811 /* TRM Bit Fields */
9812 #define VREF_TRM_TRIM_MASK                       0x3Fu
9813 #define VREF_TRM_TRIM_SHIFT                      0
9814 #define VREF_TRM_TRIM(x)                         (((uint8_t)(((uint8_t)(x))<<VREF_TRM_TRIM_SHIFT))&VREF_TRM_TRIM_MASK)
9815 #define VREF_TRM_CHOPEN_MASK                     0x40u
9816 #define VREF_TRM_CHOPEN_SHIFT                    6
9817 /* SC Bit Fields */
9818 #define VREF_SC_MODE_LV_MASK                     0x3u
9819 #define VREF_SC_MODE_LV_SHIFT                    0
9820 #define VREF_SC_MODE_LV(x)                       (((uint8_t)(((uint8_t)(x))<<VREF_SC_MODE_LV_SHIFT))&VREF_SC_MODE_LV_MASK)
9821 #define VREF_SC_VREFST_MASK                      0x4u
9822 #define VREF_SC_VREFST_SHIFT                     2
9823 #define VREF_SC_ICOMPEN_MASK                     0x20u
9824 #define VREF_SC_ICOMPEN_SHIFT                    5
9825 #define VREF_SC_REGEN_MASK                       0x40u
9826 #define VREF_SC_REGEN_SHIFT                      6
9827 #define VREF_SC_VREFEN_MASK                      0x80u
9828 #define VREF_SC_VREFEN_SHIFT                     7
9829
9830 /*!
9831  * @}
9832  */ /* end of group VREF_Register_Masks */
9833
9834
9835 /* VREF - Peripheral instance base addresses */
9836 /** Peripheral VREF base address */
9837 #define VREF_BASE                                (0x40074000u)
9838 /** Peripheral VREF base pointer */
9839 #define VREF                                     ((VREF_Type *)VREF_BASE)
9840 #define VREF_BASE_PTR                            (VREF)
9841 /** Array initializer of VREF peripheral base addresses */
9842 #define VREF_BASE_ADDRS                          { VREF_BASE }
9843 /** Array initializer of VREF peripheral base pointers */
9844 #define VREF_BASE_PTRS                           { VREF }
9845
9846 /* ----------------------------------------------------------------------------
9847    -- VREF - Register accessor macros
9848    ---------------------------------------------------------------------------- */
9849
9850 /*!
9851  * @addtogroup VREF_Register_Accessor_Macros VREF - Register accessor macros
9852  * @{
9853  */
9854
9855
9856 /* VREF - Register instance definitions */
9857 /* VREF */
9858 #define VREF_TRM                                 VREF_TRM_REG(VREF)
9859 #define VREF_SC                                  VREF_SC_REG(VREF)
9860
9861 /*!
9862  * @}
9863  */ /* end of group VREF_Register_Accessor_Macros */
9864
9865
9866 /*!
9867  * @}
9868  */ /* end of group VREF_Peripheral_Access_Layer */
9869
9870
9871 /* ----------------------------------------------------------------------------
9872    -- WDOG Peripheral Access Layer
9873    ---------------------------------------------------------------------------- */
9874
9875 /*!
9876  * @addtogroup WDOG_Peripheral_Access_Layer WDOG Peripheral Access Layer
9877  * @{
9878  */
9879
9880 /** WDOG - Register Layout Typedef */
9881 typedef struct {
9882   __IO uint16_t STCTRLH;                           /**< Watchdog Status and Control Register High, offset: 0x0 */
9883   __IO uint16_t STCTRLL;                           /**< Watchdog Status and Control Register Low, offset: 0x2 */
9884   __IO uint16_t TOVALH;                            /**< Watchdog Time-out Value Register High, offset: 0x4 */
9885   __IO uint16_t TOVALL;                            /**< Watchdog Time-out Value Register Low, offset: 0x6 */
9886   __IO uint16_t WINH;                              /**< Watchdog Window Register High, offset: 0x8 */
9887   __IO uint16_t WINL;                              /**< Watchdog Window Register Low, offset: 0xA */
9888   __IO uint16_t REFRESH;                           /**< Watchdog Refresh register, offset: 0xC */
9889   __IO uint16_t UNLOCK;                            /**< Watchdog Unlock register, offset: 0xE */
9890   __IO uint16_t TMROUTH;                           /**< Watchdog Timer Output Register High, offset: 0x10 */
9891   __IO uint16_t TMROUTL;                           /**< Watchdog Timer Output Register Low, offset: 0x12 */
9892   __IO uint16_t RSTCNT;                            /**< Watchdog Reset Count register, offset: 0x14 */
9893   __IO uint16_t PRESC;                             /**< Watchdog Prescaler register, offset: 0x16 */
9894 } WDOG_Type, *WDOG_MemMapPtr;
9895
9896 /* ----------------------------------------------------------------------------
9897    -- WDOG - Register accessor macros
9898    ---------------------------------------------------------------------------- */
9899
9900 /*!
9901  * @addtogroup WDOG_Register_Accessor_Macros WDOG - Register accessor macros
9902  * @{
9903  */
9904
9905
9906 /* WDOG - Register accessors */
9907 #define WDOG_STCTRLH_REG(base)                   ((base)->STCTRLH)
9908 #define WDOG_STCTRLL_REG(base)                   ((base)->STCTRLL)
9909 #define WDOG_TOVALH_REG(base)                    ((base)->TOVALH)
9910 #define WDOG_TOVALL_REG(base)                    ((base)->TOVALL)
9911 #define WDOG_WINH_REG(base)                      ((base)->WINH)
9912 #define WDOG_WINL_REG(base)                      ((base)->WINL)
9913 #define WDOG_REFRESH_REG(base)                   ((base)->REFRESH)
9914 #define WDOG_UNLOCK_REG(base)                    ((base)->UNLOCK)
9915 #define WDOG_TMROUTH_REG(base)                   ((base)->TMROUTH)
9916 #define WDOG_TMROUTL_REG(base)                   ((base)->TMROUTL)
9917 #define WDOG_RSTCNT_REG(base)                    ((base)->RSTCNT)
9918 #define WDOG_PRESC_REG(base)                     ((base)->PRESC)
9919
9920 /*!
9921  * @}
9922  */ /* end of group WDOG_Register_Accessor_Macros */
9923
9924
9925 /* ----------------------------------------------------------------------------
9926    -- WDOG Register Masks
9927    ---------------------------------------------------------------------------- */
9928
9929 /*!
9930  * @addtogroup WDOG_Register_Masks WDOG Register Masks
9931  * @{
9932  */
9933
9934 /* STCTRLH Bit Fields */
9935 #define WDOG_STCTRLH_WDOGEN_MASK                 0x1u
9936 #define WDOG_STCTRLH_WDOGEN_SHIFT                0
9937 #define WDOG_STCTRLH_CLKSRC_MASK                 0x2u
9938 #define WDOG_STCTRLH_CLKSRC_SHIFT                1
9939 #define WDOG_STCTRLH_IRQRSTEN_MASK               0x4u
9940 #define WDOG_STCTRLH_IRQRSTEN_SHIFT              2
9941 #define WDOG_STCTRLH_WINEN_MASK                  0x8u
9942 #define WDOG_STCTRLH_WINEN_SHIFT                 3
9943 #define WDOG_STCTRLH_ALLOWUPDATE_MASK            0x10u
9944 #define WDOG_STCTRLH_ALLOWUPDATE_SHIFT           4
9945 #define WDOG_STCTRLH_DBGEN_MASK                  0x20u
9946 #define WDOG_STCTRLH_DBGEN_SHIFT                 5
9947 #define WDOG_STCTRLH_STOPEN_MASK                 0x40u
9948 #define WDOG_STCTRLH_STOPEN_SHIFT                6
9949 #define WDOG_STCTRLH_WAITEN_MASK                 0x80u
9950 #define WDOG_STCTRLH_WAITEN_SHIFT                7
9951 #define WDOG_STCTRLH_TESTWDOG_MASK               0x400u
9952 #define WDOG_STCTRLH_TESTWDOG_SHIFT              10
9953 #define WDOG_STCTRLH_TESTSEL_MASK                0x800u
9954 #define WDOG_STCTRLH_TESTSEL_SHIFT               11
9955 #define WDOG_STCTRLH_BYTESEL_MASK                0x3000u
9956 #define WDOG_STCTRLH_BYTESEL_SHIFT               12
9957 #define WDOG_STCTRLH_BYTESEL(x)                  (((uint16_t)(((uint16_t)(x))<<WDOG_STCTRLH_BYTESEL_SHIFT))&WDOG_STCTRLH_BYTESEL_MASK)
9958 #define WDOG_STCTRLH_DISTESTWDOG_MASK            0x4000u
9959 #define WDOG_STCTRLH_DISTESTWDOG_SHIFT           14
9960 /* STCTRLL Bit Fields */
9961 #define WDOG_STCTRLL_INTFLG_MASK                 0x8000u
9962 #define WDOG_STCTRLL_INTFLG_SHIFT                15
9963 /* TOVALH Bit Fields */
9964 #define WDOG_TOVALH_TOVALHIGH_MASK               0xFFFFu
9965 #define WDOG_TOVALH_TOVALHIGH_SHIFT              0
9966 #define WDOG_TOVALH_TOVALHIGH(x)                 (((uint16_t)(((uint16_t)(x))<<WDOG_TOVALH_TOVALHIGH_SHIFT))&WDOG_TOVALH_TOVALHIGH_MASK)
9967 /* TOVALL Bit Fields */
9968 #define WDOG_TOVALL_TOVALLOW_MASK                0xFFFFu
9969 #define WDOG_TOVALL_TOVALLOW_SHIFT               0
9970 #define WDOG_TOVALL_TOVALLOW(x)                  (((uint16_t)(((uint16_t)(x))<<WDOG_TOVALL_TOVALLOW_SHIFT))&WDOG_TOVALL_TOVALLOW_MASK)
9971 /* WINH Bit Fields */
9972 #define WDOG_WINH_WINHIGH_MASK                   0xFFFFu
9973 #define WDOG_WINH_WINHIGH_SHIFT                  0
9974 #define WDOG_WINH_WINHIGH(x)                     (((uint16_t)(((uint16_t)(x))<<WDOG_WINH_WINHIGH_SHIFT))&WDOG_WINH_WINHIGH_MASK)
9975 /* WINL Bit Fields */
9976 #define WDOG_WINL_WINLOW_MASK                    0xFFFFu
9977 #define WDOG_WINL_WINLOW_SHIFT                   0
9978 #define WDOG_WINL_WINLOW(x)                      (((uint16_t)(((uint16_t)(x))<<WDOG_WINL_WINLOW_SHIFT))&WDOG_WINL_WINLOW_MASK)
9979 /* REFRESH Bit Fields */
9980 #define WDOG_REFRESH_WDOGREFRESH_MASK            0xFFFFu
9981 #define WDOG_REFRESH_WDOGREFRESH_SHIFT           0
9982 #define WDOG_REFRESH_WDOGREFRESH(x)              (((uint16_t)(((uint16_t)(x))<<WDOG_REFRESH_WDOGREFRESH_SHIFT))&WDOG_REFRESH_WDOGREFRESH_MASK)
9983 /* UNLOCK Bit Fields */
9984 #define WDOG_UNLOCK_WDOGUNLOCK_MASK              0xFFFFu
9985 #define WDOG_UNLOCK_WDOGUNLOCK_SHIFT             0
9986 #define WDOG_UNLOCK_WDOGUNLOCK(x)                (((uint16_t)(((uint16_t)(x))<<WDOG_UNLOCK_WDOGUNLOCK_SHIFT))&WDOG_UNLOCK_WDOGUNLOCK_MASK)
9987 /* TMROUTH Bit Fields */
9988 #define WDOG_TMROUTH_TIMEROUTHIGH_MASK           0xFFFFu
9989 #define WDOG_TMROUTH_TIMEROUTHIGH_SHIFT          0
9990 #define WDOG_TMROUTH_TIMEROUTHIGH(x)             (((uint16_t)(((uint16_t)(x))<<WDOG_TMROUTH_TIMEROUTHIGH_SHIFT))&WDOG_TMROUTH_TIMEROUTHIGH_MASK)
9991 /* TMROUTL Bit Fields */
9992 #define WDOG_TMROUTL_TIMEROUTLOW_MASK            0xFFFFu
9993 #define WDOG_TMROUTL_TIMEROUTLOW_SHIFT           0
9994 #define WDOG_TMROUTL_TIMEROUTLOW(x)              (((uint16_t)(((uint16_t)(x))<<WDOG_TMROUTL_TIMEROUTLOW_SHIFT))&WDOG_TMROUTL_TIMEROUTLOW_MASK)
9995 /* RSTCNT Bit Fields */
9996 #define WDOG_RSTCNT_RSTCNT_MASK                  0xFFFFu
9997 #define WDOG_RSTCNT_RSTCNT_SHIFT                 0
9998 #define WDOG_RSTCNT_RSTCNT(x)                    (((uint16_t)(((uint16_t)(x))<<WDOG_RSTCNT_RSTCNT_SHIFT))&WDOG_RSTCNT_RSTCNT_MASK)
9999 /* PRESC Bit Fields */
10000 #define WDOG_PRESC_PRESCVAL_MASK                 0x700u
10001 #define WDOG_PRESC_PRESCVAL_SHIFT                8
10002 #define WDOG_PRESC_PRESCVAL(x)                   (((uint16_t)(((uint16_t)(x))<<WDOG_PRESC_PRESCVAL_SHIFT))&WDOG_PRESC_PRESCVAL_MASK)
10003
10004 /*!
10005  * @}
10006  */ /* end of group WDOG_Register_Masks */
10007
10008
10009 /* WDOG - Peripheral instance base addresses */
10010 /** Peripheral WDOG base address */
10011 #define WDOG_BASE                                (0x40052000u)
10012 /** Peripheral WDOG base pointer */
10013 #define WDOG                                     ((WDOG_Type *)WDOG_BASE)
10014 #define WDOG_BASE_PTR                            (WDOG)
10015 /** Array initializer of WDOG peripheral base addresses */
10016 #define WDOG_BASE_ADDRS                          { WDOG_BASE }
10017 /** Array initializer of WDOG peripheral base pointers */
10018 #define WDOG_BASE_PTRS                           { WDOG }
10019 /** Interrupt vectors for the WDOG peripheral type */
10020 #define WDOG_IRQS                                { Watchdog_IRQn }
10021
10022 /* ----------------------------------------------------------------------------
10023    -- WDOG - Register accessor macros
10024    ---------------------------------------------------------------------------- */
10025
10026 /*!
10027  * @addtogroup WDOG_Register_Accessor_Macros WDOG - Register accessor macros
10028  * @{
10029  */
10030
10031
10032 /* WDOG - Register instance definitions */
10033 /* WDOG */
10034 #define WDOG_STCTRLH                             WDOG_STCTRLH_REG(WDOG)
10035 #define WDOG_STCTRLL                             WDOG_STCTRLL_REG(WDOG)
10036 #define WDOG_TOVALH                              WDOG_TOVALH_REG(WDOG)
10037 #define WDOG_TOVALL                              WDOG_TOVALL_REG(WDOG)
10038 #define WDOG_WINH                                WDOG_WINH_REG(WDOG)
10039 #define WDOG_WINL                                WDOG_WINL_REG(WDOG)
10040 #define WDOG_REFRESH                             WDOG_REFRESH_REG(WDOG)
10041 #define WDOG_UNLOCK                              WDOG_UNLOCK_REG(WDOG)
10042 #define WDOG_TMROUTH                             WDOG_TMROUTH_REG(WDOG)
10043 #define WDOG_TMROUTL                             WDOG_TMROUTL_REG(WDOG)
10044 #define WDOG_RSTCNT                              WDOG_RSTCNT_REG(WDOG)
10045 #define WDOG_PRESC                               WDOG_PRESC_REG(WDOG)
10046
10047 /*!
10048  * @}
10049  */ /* end of group WDOG_Register_Accessor_Macros */
10050
10051
10052 /*!
10053  * @}
10054  */ /* end of group WDOG_Peripheral_Access_Layer */
10055
10056
10057 /*
10058 ** End of section using anonymous unions
10059 */
10060
10061 #if defined(__ARMCC_VERSION)
10062   #pragma pop
10063 #elif defined(__CWCC__)
10064   #pragma pop
10065 #elif defined(__GNUC__)
10066   /* leave anonymous unions enabled */
10067 #elif defined(__IAR_SYSTEMS_ICC__)
10068   #pragma language=default
10069 #else
10070   #error Not supported compiler type
10071 #endif
10072
10073 /*!
10074  * @}
10075  */ /* end of group Peripheral_access_layer */
10076
10077
10078 /* ----------------------------------------------------------------------------
10079    -- Backward Compatibility
10080    ---------------------------------------------------------------------------- */
10081
10082 /*!
10083  * @addtogroup Backward_Compatibility_Symbols Backward Compatibility
10084  * @{
10085  */
10086
10087 #define  MCG_C2_EREFS0_MASK          MCG_C2_EREFS_MASK
10088 #define  MCG_C2_EREFS0_SHIFT         MCG_C2_EREFS_SHIFT
10089 #define  MCG_C2_HGO0_MASK            MCG_C2_HGO_MASK
10090 #define  MCG_C2_HGO0_SHIFT           MCG_C2_HGO_SHIFT
10091 #define  MCG_C2_RANGE0_MASK          MCG_C2_RANGE_MASK
10092 #define  MCG_C2_RANGE0_SHIFT         MCG_C2_RANGE_SHIFT
10093 #define  MCG_C2_RANGE0(x)            MCG_C2_RANGE(x)
10094 #define MCM_ISR_REG(base)            MCM_ISCR_REG(base)
10095 #define MCM_ISR_FIOC_MASK            MCM_ISCR_FIOC_MASK
10096 #define MCM_ISR_FIOC_SHIFT           MCM_ISCR_FIOC_SHIFT
10097 #define MCM_ISR_FDZC_MASK            MCM_ISCR_FDZC_MASK
10098 #define MCM_ISR_FDZC_SHIFT           MCM_ISCR_FDZC_SHIFT
10099 #define MCM_ISR_FOFC_MASK            MCM_ISCR_FOFC_MASK
10100 #define MCM_ISR_FOFC_SHIFT           MCM_ISCR_FOFC_SHIFT
10101 #define MCM_ISR_FUFC_MASK            MCM_ISCR_FUFC_MASK
10102 #define MCM_ISR_FUFC_SHIFT           MCM_ISCR_FUFC_SHIFT
10103 #define MCM_ISR_FIXC_MASK            MCM_ISCR_FIXC_MASK
10104 #define MCM_ISR_FIXC_SHIFT           MCM_ISCR_FIXC_SHIFT
10105 #define MCM_ISR_FIDC_MASK            MCM_ISCR_FIDC_MASK
10106 #define MCM_ISR_FIDC_SHIFT           MCM_ISCR_FIDC_SHIFT
10107 #define MCM_ISR_FIOCE_MASK           MCM_ISCR_FIOCE_MASK
10108 #define MCM_ISR_FIOCE_SHIFT          MCM_ISCR_FIOCE_SHIFT
10109 #define MCM_ISR_FDZCE_MASK           MCM_ISCR_FDZCE_MASK
10110 #define MCM_ISR_FDZCE_SHIFT          MCM_ISCR_FDZCE_SHIFT
10111 #define MCM_ISR_FOFCE_MASK           MCM_ISCR_FOFCE_MASK
10112 #define MCM_ISR_FOFCE_SHIFT          MCM_ISCR_FOFCE_SHIFT
10113 #define MCM_ISR_FUFCE_MASK           MCM_ISCR_FUFCE_MASK
10114 #define MCM_ISR_FUFCE_SHIFT          MCM_ISCR_FUFCE_SHIFT
10115 #define MCM_ISR_FIXCE_MASK           MCM_ISCR_FIXCE_MASK
10116 #define MCM_ISR_FIXCE_SHIFT          MCM_ISCR_FIXCE_SHIFT
10117 #define MCM_ISR_FIDCE_MASK           MCM_ISCR_FIDCE_MASK
10118 #define MCM_ISR_FIDCE_SHIFT          MCM_ISCR_FIDCE_SHIFT
10119 #define USB_ADDINFO_IRQNUM_MASK      This_symbol_has_been_deprecated
10120 #define USB_ADDINFO_IRQNUM_SHIFT     This_symbol_has_been_deprecated
10121 #define USB_ADDINFO_IRQNUM(x)        This_symbol_has_been_deprecated
10122
10123 /*!
10124  * @}
10125  */ /* end of group Backward_Compatibility_Symbols */
10126
10127
10128 #else /* #if !defined(MK22F51212_H_) */
10129   /* There is already included the same memory map. Check if it is compatible (has the same major version) */
10130   #if (MCU_MEM_MAP_VERSION != 0x0200u)
10131     #if (!defined(MCU_MEM_MAP_SUPPRESS_VERSION_WARNING))
10132       #warning There are included two not compatible versions of memory maps. Please check possible differences.
10133     #endif /* (!defined(MCU_MEM_MAP_SUPPRESS_VERSION_WARNING)) */
10134   #endif /* (MCU_MEM_MAP_VERSION != 0x0200u) */
10135 #endif  /* #if !defined(MK22F51212_H_) */
10136
10137 /* MK22F51212.h, eof. */