Contiki 3.x
ADuCRF101.h
1 /**
2  * Copyright (c) 2014, Analog Devices, Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted (subject to the limitations in the
6  * disclaimer below) provided that the following conditions are met:
7  *
8  * - Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * - Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * - Neither the name of Analog Devices, Inc. nor the names of its
17  * contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
21  * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
22  * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
23  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
25  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
29  * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
31  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
32  * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  */
34 
35 /****************************************************************************************************//**
36  * @file ADUCRF101.h
37  *
38  * @brief CMSIS Cortex-M3 Core Peripheral Access Layer Header File for
39  * default ADUCRF101 Device Series
40  *
41  * @version V1.0
42  * @date Thursday January 10 2013 15:30
43  *
44  *******************************************************************************************************/
45 
46 
47 
48 /** @addtogroup ADUCRF101
49  * @{
50  */
51 
52 #ifndef __ADUCRF101_H__
53 #define __ADUCRF101_H__
54 
55 #ifndef __NO_MMR_STRUCTS__
56 // The new style CMSIS structure definitions for MMRs clash with
57 // the old style defs. If the old style are required for compilation
58 // then set __NO_MMR_STRUCTS__ to 0x1
59 #define __NO_MMR_STRUCTS__ 0x0
60 #endif
61 
62 #ifdef __cplusplus
63 extern "C" {
64 #endif
65 
66 
67 /* ------------------------- Interrupt Number Definition ------------------------ */
68 
69 typedef enum {
70 /* ------------------- Cortex-M3 Processor Exceptions Numbers ------------------- */
71  Reset_IRQn = -15, /*!< 1 Reset Vector, invoked on Power up and warm reset */
72  NonMaskableInt_IRQn = -14, /*!< 2 Non maskable Interrupt, cannot be stopped or preempted */
73  HardFault_IRQn = -13, /*!< 3 Hard Fault, all classes of Fault */
74  MemoryManagement_IRQn = -12, /*!< 4 Memory Management, MPU mismatch, including Access Violation and No Match */
75  BusFault_IRQn = -11, /*!< 5 Bus Fault, Pre-Fetch-, Memory Access Fault, other address/memory related Fault */
76  UsageFault_IRQn = -10, /*!< 6 Usage Fault, i.e. Undef Instruction, Illegal State Transition */
77  SVCall_IRQn = -5, /*!< 11 System Service Call via SVC instruction */
78  DebugMonitor_IRQn = -4, /*!< 12 Debug Monitor */
79  PendSV_IRQn = -2, /*!< 14 Pendable request for system service */
80  SysTick_IRQn = -1, /*!< 15 System Tick Timer */
81 // -------------------------- ADUCRF101 Specific Interrupt Numbers ------------------------------
82  WUT_IRQn = 0, /*!< 0 WUT */
83  EINT0_IRQn = 1, /*!< 1 EINT0 */
84  EINT1_IRQn = 2, /*!< 2 EINT1 */
85  EINT2_IRQn = 3, /*!< 3 EINT2 */
86  EINT3_IRQn = 4, /*!< 4 EINT3 */
87  EINT4_IRQn = 5, /*!< 5 EINT4 */
88  EINT5_IRQn = 6, /*!< 6 EINT5 */
89  EINT6_IRQn = 7, /*!< 7 EINT6 */
90  EINT7_IRQn = 8, /*!< 8 EINT7 */
91  EINT8_IRQn = 9, /*!< 9 EINT8 */
92  UHFTRX_IRQn = 9, /*!< 9 UHFTRX */
93  WDT_IRQn = 10, /*!< 10 WDT */
94  TIMER0_IRQn = 12, /*!< 12 TIMER0 */
95  TIMER1_IRQn = 13, /*!< 13 TIMER1 */
96  ADC0_IRQn = 14, /*!< 14 ADC0 */
97  FLASH_IRQn = 15, /*!< 15 FLASH */
98  UART_IRQn = 16, /*!< 16 UART */
99  SPI0_IRQn = 17, /*!< 17 SPI0 */
100  SPI1_IRQn = 18, /*!< 18 SPI1 */
101  I2CS_IRQn = 19, /*!< 19 I2CS */
102  I2CM_IRQn = 20, /*!< 20 I2CM */
103  DMA_ERR_IRQn = 23, /*!< 23 DMA_ERR */
104  DMA_SPI1_TX_IRQn = 24, /*!< 24 DMA_SPI1_TX */
105  DMA_SPI1_RX_IRQn = 25, /*!< 25 DMA_SPI1_RX */
106  DMA_UART_TX_IRQn = 26, /*!< 26 DMA_UART_TX */
107  DMA_UART_RX_IRQn = 27, /*!< 27 DMA_UART_RX */
108  DMA_I2CS_TX_IRQn = 28, /*!< 28 DMA_I2CS_TX */
109  DMA_I2CS_RX_IRQn = 29, /*!< 29 DMA_I2CS_RX */
110  DMA_I2CM_TX_IRQn = 30, /*!< 30 DMA_I2CM_TX */
111  DMA_I2CM_RX_IRQn = 31, /*!< 31 DMA_I2CM_RX */
112  DMA_ADC0_IRQn = 35, /*!< 35 DMA_ADC0 */
113  DMA_SPI0_TX_IRQn = 36, /*!< 36 DMA_SPI0_TX */
114  DMA_SPI0_RX_IRQn = 37, /*!< 37 DMA_SPI0_RX */
115  PWM_TRIP_IRQn = 38, /*!< 38 PWM_TRIP */
116  PWM_PAIR0_IRQn = 39, /*!< 39 PWM_PAIR0 */
117  PWM_PAIR1_IRQn = 40, /*!< 40 PWM_PAIR1 */
118  PWM_PAIR2_IRQn = 41, /*!< 41 PWM_PAIR2 */
119  PWM_PAIR3_IRQn = 42 /*!< 42 PWM_PAIR3 */
120 } IRQn_Type;
121 
122 
123 /** @addtogroup Configuration_of_CMSIS
124  * @{
125  */
126 
127 /* ================================================================================ */
128 /* ================ Processor and Core Peripheral Section ================ */
129 /* ================================================================================ */
130 
131 /* ----------------Configuration of the cm3 Processor and Core Peripherals---------------- */
132 
133 #define __CM3_REV 0x0200 /*!< Cortex-M3 Core Revision */
134 #define __MPU_PRESENT 0 /*!< MPU present or not */
135 #define __NVIC_PRIO_BITS 3 /*!< Number of Bits used for Priority Levels */
136 #define __Vendor_SysTickConfig 0 /*!< Set to 1 if different SysTick Config is used */
137 /** @} */ /* End of group Configuration_of_CMSIS */
138 
139 #include <core_cm3.h> /*!< Cortex-M3 processor and core peripherals */
140 #include "system_ADuCRF101.h" /*!< ADUCRF101 System */
141 
142 
143 /* ================================================================================ */
144 /* ================ Device Specific Peripheral Section ================ */
145 /* ================================================================================ */
146 
147 
148 /** @addtogroup Device_Peripheral_Registers
149  * @{
150  */
151 
152 
153 /* ------------------- Start of section using anonymous unions ------------------ */
154 #if defined(__CC_ARM)
155  #pragma push
156  #pragma anon_unions
157 #elif defined(__ICCARM__)
158  #pragma language=extended
159 #elif defined(__GNUC__)
160  /* anonymous unions are enabled by default */
161 #elif defined(__TMS470__)
162 /* anonymous unions are enabled by default */
163 #elif defined(__TASKING__)
164  #pragma warning 586
165 #else
166  #warning Not supported compiler type
167 #endif
168 
169 
170 
171 
172 /* TCON[EVENTEN] - Enable event bit. */
173 #define TCON_EVENTEN_MSK (0x1 << 12 )
174 #define TCON_EVENTEN (0x1 << 12 )
175 #define TCON_EVENTEN_DIS (0x0 << 12 ) /* DIS. Cleared by user. */
176 #define TCON_EVENTEN_EN (0x1 << 12 ) /* EN. Enable time capture of an event. */
177 
178 /* TCON[EVENT] - Event select bits. Settings not described are reserved and should not be used. */
179 #define TCON_EVENT_MSK (0xF << 8 )
180 
181 /* TCON[RLD] - Reload control bit for periodic mode. */
182 #define TCON_RLD_MSK (0x1 << 7 )
183 #define TCON_RLD (0x1 << 7 )
184 #define TCON_RLD_DIS (0x0 << 7 ) /* DIS. Reload on a time out. */
185 #define TCON_RLD_EN (0x1 << 7 ) /* EN. Reload the counter on a write to T0CLRI. */
186 
187 /* TCON[CLK] - Clock select. */
188 #define TCON_CLK_MSK (0x3 << 5 )
189 #define TCON_CLK_UCLK (0x0 << 5 ) /* UCLK. Undivided system clock. */
190 #define TCON_CLK_PCLK (0x1 << 5 ) /* PCLK. Peripheral clock. */
191 #define TCON_CLK_LFOSC (0x2 << 5 ) /* LFOSC. 32 kHz internal oscillator. */
192 #define TCON_CLK_LFXTAL (0x3 << 5 ) /* LFXTAL. 32 kHz external crystal. */
193 
194 /* TCON[ENABLE] - Timer enable bit. */
195 #define TCON_ENABLE_MSK (0x1 << 4 )
196 #define TCON_ENABLE (0x1 << 4 )
197 #define TCON_ENABLE_DIS (0x0 << 4 ) /* DIS. Disable the timer. Clearing this bit resets the timer, including the T0VAL register. */
198 #define TCON_ENABLE_EN (0x1 << 4 ) /* EN. Enable the timer. The timer starts counting from its initial value, 0 if count-up mode or 0xFFFF if count-down mode. */
199 
200 /* TCON[MOD] - Timer mode. */
201 #define TCON_MOD_MSK (0x1 << 3 )
202 #define TCON_MOD (0x1 << 3 )
203 #define TCON_MOD_FREERUN (0x0 << 3 ) /* FREERUN. Operate in free running mode. */
204 #define TCON_MOD_PERIODIC (0x1 << 3 ) /* PERIODIC. Operate in periodic mode. */
205 
206 /* TCON[UP] - Count down/up. */
207 #define TCON_UP_MSK (0x1 << 2 )
208 #define TCON_UP (0x1 << 2 )
209 #define TCON_UP_DIS (0x0 << 2 ) /* DIS. Timer to count down. */
210 #define TCON_UP_EN (0x1 << 2 ) /* EN. Timer to count up. */
211 
212 /* TCON[PRE] - Prescaler. */
213 #define TCON_PRE_MSK (0x3 << 0 )
214 #define TCON_PRE_DIV1 (0x0 << 0 ) /* DIV1. Source clock/1.If the selected clock source is UCLK or PCLK this setting results in a prescaler of 4. */
215 #define TCON_PRE_DIV16 (0x1 << 0 ) /* DIV16. Source clock/16. */
216 #define TCON_PRE_DIV256 (0x2 << 0 ) /* DIV256. Source clock/256. */
217 #define TCON_PRE_DIV32768 (0x3 << 0 ) /* DIV32768. Source clock/32768. */
218 
219 /* TCLRI[CAP] - Clear captured event interrupt. */
220 #define TCLRI_CAP_MSK (0x1 << 1 )
221 #define TCLRI_CAP (0x1 << 1 )
222 #define TCLRI_CAP_CLR (0x1 << 1 ) /* CLR. Clear a captured event interrupt. This bit always reads 0. */
223 
224 /* TCLRI[TMOUT] - Clear timeout interrupt. */
225 #define TCLRI_TMOUT_MSK (0x1 << 0 )
226 #define TCLRI_TMOUT (0x1 << 0 )
227 #define TCLRI_TMOUT_CLR (0x1 << 0 ) /* CLR. Clear a timeout interrupt. This bit always reads 0. */
228 
229 /* TSTA[CLRI] - T0CLRI write sync in progress.. */
230 #define TSTA_CLRI_MSK (0x1 << 7 )
231 #define TSTA_CLRI (0x1 << 7 )
232 #define TSTA_CLRI_CLR (0x0 << 7 ) /* CLR. Cleared when the interrupt is cleared in the timer clock domain. */
233 #define TSTA_CLRI_SET (0x1 << 7 ) /* SET. Set automatically when the T0CLRI value is being updated in the timer clock domain, indicating that the timer’s configuration is not yet valid. */
234 
235 /* TSTA[CON] - T0CON write sync in progress. */
236 #define TSTA_CON_MSK (0x1 << 6 )
237 #define TSTA_CON (0x1 << 6 )
238 #define TSTA_CON_CLR (0x0 << 6 ) /* CLR. Timer ready to receive commands to T0CON. The previous change of T0CON has been synchronized in the timer clock domain. */
239 #define TSTA_CON_SET (0x1 << 6 ) /* SET. Timer not ready to receive commands to T0CON. Previous change of the T0CON value has not been synchronized in the timer clock domain. */
240 
241 /* TSTA[CAP] - Capture event pending. */
242 #define TSTA_CAP_MSK (0x1 << 1 )
243 #define TSTA_CAP (0x1 << 1 )
244 #define TSTA_CAP_CLR (0x0 << 1 ) /* CLR. No capture event is pending. */
245 #define TSTA_CAP_SET (0x1 << 1 ) /* SET. Capture event is pending. */
246 
247 /* TSTA[TMOUT] - Time out event occurred. */
248 #define TSTA_TMOUT_MSK (0x1 << 0 )
249 #define TSTA_TMOUT (0x1 << 0 )
250 #define TSTA_TMOUT_CLR (0x0 << 0 ) /* CLR. No timeout event has occurred. */
251 #define TSTA_TMOUT_SET (0x1 << 0 ) /* SET. Timeout event has occurred. For count-up mode, this is when the counter reaches full scale. For count-down mode, this is when the counter reaches 0. */
252 
253 /* GPCON[CON7] - Configuration bits for Px.7 (not available for port 1). */
254 #define GPCON_CON7_MSK (0x3 << 14 )
255 
256 /* GPCON[CON6] - Configuration bits for Px.6 (not available for port 1). */
257 #define GPCON_CON6_MSK (0x3 << 12 )
258 
259 /* GPCON[CON5] - Configuration bits for Px.5. */
260 #define GPCON_CON5_MSK (0x3 << 10 )
261 
262 /* GPCON[CON4] - Configuration bits for Px.4. */
263 #define GPCON_CON4_MSK (0x3 << 8 )
264 
265 /* GPCON[CON3] - Configuration bits for Px.3. */
266 #define GPCON_CON3_MSK (0x3 << 6 )
267 
268 /* GPCON[CON2] - Configuration bits for Px.2. */
269 #define GPCON_CON2_MSK (0x3 << 4 )
270 
271 /* GPCON[CON1] - Configuration bits for Px.1. */
272 #define GPCON_CON1_MSK (0x3 << 2 )
273 
274 /* GPCON[CON0] - Configuration bits for Px.0. */
275 #define GPCON_CON0_MSK (0x3 << 0 )
276 
277 /* GPOEN[OEN7] - Port pin direction. */
278 #define GPOEN_OEN7_MSK (0x1 << 7 )
279 #define GPOEN_OEN7 (0x1 << 7 )
280 #define GPOEN_OEN7_IN (0x0 << 7 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
281 #define GPOEN_OEN7_OUT (0x1 << 7 ) /* OUT. Enables the output on corresponding port pin. */
282 
283 /* GPOEN[OEN6] - Port pin direction. */
284 #define GPOEN_OEN6_MSK (0x1 << 6 )
285 #define GPOEN_OEN6 (0x1 << 6 )
286 #define GPOEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
287 #define GPOEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
288 
289 /* GPOEN[OEN5] - Port pin direction. */
290 #define GPOEN_OEN5_MSK (0x1 << 5 )
291 #define GPOEN_OEN5 (0x1 << 5 )
292 #define GPOEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
293 #define GPOEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
294 
295 /* GPOEN[OEN4] - Port pin direction. */
296 #define GPOEN_OEN4_MSK (0x1 << 4 )
297 #define GPOEN_OEN4 (0x1 << 4 )
298 #define GPOEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
299 #define GPOEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
300 
301 /* GPOEN[OEN3] - Port pin direction. */
302 #define GPOEN_OEN3_MSK (0x1 << 3 )
303 #define GPOEN_OEN3 (0x1 << 3 )
304 #define GPOEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
305 #define GPOEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
306 
307 /* GPOEN[OEN2] - Port pin direction. */
308 #define GPOEN_OEN2_MSK (0x1 << 2 )
309 #define GPOEN_OEN2 (0x1 << 2 )
310 #define GPOEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
311 #define GPOEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
312 
313 /* GPOEN[OEN1] - Port pin direction. */
314 #define GPOEN_OEN1_MSK (0x1 << 1 )
315 #define GPOEN_OEN1 (0x1 << 1 )
316 #define GPOEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
317 #define GPOEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
318 
319 /* GPOEN[OEN0] - Port pin direction. */
320 #define GPOEN_OEN0_MSK (0x1 << 0 )
321 #define GPOEN_OEN0 (0x1 << 0 )
322 #define GPOEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
323 #define GPOEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin.. */
324 
325 /* GPIN[IN7] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
326 #define GPIN_IN7_MSK (0x1 << 7 )
327 #define GPIN_IN7 (0x1 << 7 )
328 #define GPIN_IN7_LOW (0x0 << 7 ) /* LOW */
329 #define GPIN_IN7_HIGH (0x1 << 7 ) /* HIGH */
330 
331 /* GPIN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
332 #define GPIN_IN6_MSK (0x1 << 6 )
333 #define GPIN_IN6 (0x1 << 6 )
334 #define GPIN_IN6_LOW (0x0 << 6 ) /* LOW */
335 #define GPIN_IN6_HIGH (0x1 << 6 ) /* HIGH */
336 
337 /* GPIN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
338 #define GPIN_IN5_MSK (0x1 << 5 )
339 #define GPIN_IN5 (0x1 << 5 )
340 #define GPIN_IN5_LOW (0x0 << 5 ) /* LOW */
341 #define GPIN_IN5_HIGH (0x1 << 5 ) /* HIGH */
342 
343 /* GPIN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
344 #define GPIN_IN4_MSK (0x1 << 4 )
345 #define GPIN_IN4 (0x1 << 4 )
346 #define GPIN_IN4_LOW (0x0 << 4 ) /* LOW */
347 #define GPIN_IN4_HIGH (0x1 << 4 ) /* HIGH */
348 
349 /* GPIN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
350 #define GPIN_IN3_MSK (0x1 << 3 )
351 #define GPIN_IN3 (0x1 << 3 )
352 #define GPIN_IN3_LOW (0x0 << 3 ) /* LOW */
353 #define GPIN_IN3_HIGH (0x1 << 3 ) /* HIGH */
354 
355 /* GPIN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
356 #define GPIN_IN2_MSK (0x1 << 2 )
357 #define GPIN_IN2 (0x1 << 2 )
358 #define GPIN_IN2_LOW (0x0 << 2 ) /* LOW */
359 #define GPIN_IN2_HIGH (0x1 << 2 ) /* HIGH */
360 
361 /* GPIN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
362 #define GPIN_IN1_MSK (0x1 << 1 )
363 #define GPIN_IN1 (0x1 << 1 )
364 #define GPIN_IN1_LOW (0x0 << 1 ) /* LOW */
365 #define GPIN_IN1_HIGH (0x1 << 1 ) /* HIGH */
366 
367 /* GPIN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
368 #define GPIN_IN0_MSK (0x1 << 0 )
369 #define GPIN_IN0 (0x1 << 0 )
370 #define GPIN_IN0_LOW (0x0 << 0 ) /* LOW */
371 #define GPIN_IN0_HIGH (0x1 << 0 ) /* HIGH */
372 
373 /* GPOUT[OUT7] - Data out register. */
374 #define GPOUT_OUT7_MSK (0x1 << 7 )
375 #define GPOUT_OUT7 (0x1 << 7 )
376 #define GPOUT_OUT7_LOW (0x0 << 7 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
377 #define GPOUT_OUT7_HIGH (0x1 << 7 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
378 
379 /* GPOUT[OUT6] - Data out register. */
380 #define GPOUT_OUT6_MSK (0x1 << 6 )
381 #define GPOUT_OUT6 (0x1 << 6 )
382 #define GPOUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
383 #define GPOUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
384 
385 /* GPOUT[OUT5] - Data out register. */
386 #define GPOUT_OUT5_MSK (0x1 << 5 )
387 #define GPOUT_OUT5 (0x1 << 5 )
388 #define GPOUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
389 #define GPOUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
390 
391 /* GPOUT[OUT4] - Data out register. */
392 #define GPOUT_OUT4_MSK (0x1 << 4 )
393 #define GPOUT_OUT4 (0x1 << 4 )
394 #define GPOUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
395 #define GPOUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
396 
397 /* GPOUT[OUT3] - Data out register. */
398 #define GPOUT_OUT3_MSK (0x1 << 3 )
399 #define GPOUT_OUT3 (0x1 << 3 )
400 #define GPOUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
401 #define GPOUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
402 
403 /* GPOUT[OUT2] - Data out register. */
404 #define GPOUT_OUT2_MSK (0x1 << 2 )
405 #define GPOUT_OUT2 (0x1 << 2 )
406 #define GPOUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
407 #define GPOUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
408 
409 /* GPOUT[OUT1] - Data out register. */
410 #define GPOUT_OUT1_MSK (0x1 << 1 )
411 #define GPOUT_OUT1 (0x1 << 1 )
412 #define GPOUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
413 #define GPOUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
414 
415 /* GPOUT[OUT0] - Data out register. */
416 #define GPOUT_OUT0_MSK (0x1 << 0 )
417 #define GPOUT_OUT0 (0x1 << 0 )
418 #define GPOUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
419 #define GPOUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
420 
421 /* GPSET[SET7] - Set output high for corresponding port pin. */
422 #define GPSET_SET7_MSK (0x1 << 7 )
423 #define GPSET_SET7 (0x1 << 7 )
424 #define GPSET_SET7_SET (0x1 << 7 ) /* SET. Set by user code to drive the corresponding GPIO high. */
425 
426 /* GPSET[SET6] - Set output high for corresponding port pin. */
427 #define GPSET_SET6_MSK (0x1 << 6 )
428 #define GPSET_SET6 (0x1 << 6 )
429 #define GPSET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
430 
431 /* GPSET[SET5] - Set output high for corresponding port pin. */
432 #define GPSET_SET5_MSK (0x1 << 5 )
433 #define GPSET_SET5 (0x1 << 5 )
434 #define GPSET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
435 
436 /* GPSET[SET4] - Set output high for corresponding port pin. */
437 #define GPSET_SET4_MSK (0x1 << 4 )
438 #define GPSET_SET4 (0x1 << 4 )
439 #define GPSET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
440 
441 /* GPSET[SET3] - Set output high for corresponding port pin. */
442 #define GPSET_SET3_MSK (0x1 << 3 )
443 #define GPSET_SET3 (0x1 << 3 )
444 #define GPSET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
445 
446 /* GPSET[SET2] - Set output high for corresponding port pin. */
447 #define GPSET_SET2_MSK (0x1 << 2 )
448 #define GPSET_SET2 (0x1 << 2 )
449 #define GPSET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
450 
451 /* GPSET[SET1] - Set output high for corresponding port pin. */
452 #define GPSET_SET1_MSK (0x1 << 1 )
453 #define GPSET_SET1 (0x1 << 1 )
454 #define GPSET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
455 
456 /* GPSET[SET0] - Set output high for corresponding port pin. */
457 #define GPSET_SET0_MSK (0x1 << 0 )
458 #define GPSET_SET0 (0x1 << 0 )
459 #define GPSET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
460 
461 /* GPCLR[CLR7] - Set by user code to drive the corresponding GPIO low. */
462 #define GPCLR_CLR7_MSK (0x1 << 7 )
463 #define GPCLR_CLR7 (0x1 << 7 )
464 #define GPCLR_CLR7_CLR (0x1 << 7 ) /* CLR */
465 
466 /* GPCLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
467 #define GPCLR_CLR6_MSK (0x1 << 6 )
468 #define GPCLR_CLR6 (0x1 << 6 )
469 #define GPCLR_CLR6_CLR (0x1 << 6 ) /* CLR */
470 
471 /* GPCLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
472 #define GPCLR_CLR5_MSK (0x1 << 5 )
473 #define GPCLR_CLR5 (0x1 << 5 )
474 #define GPCLR_CLR5_CLR (0x1 << 5 ) /* CLR */
475 
476 /* GPCLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
477 #define GPCLR_CLR4_MSK (0x1 << 4 )
478 #define GPCLR_CLR4 (0x1 << 4 )
479 #define GPCLR_CLR4_CLR (0x1 << 4 ) /* CLR */
480 
481 /* GPCLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
482 #define GPCLR_CLR3_MSK (0x1 << 3 )
483 #define GPCLR_CLR3 (0x1 << 3 )
484 #define GPCLR_CLR3_CLR (0x1 << 3 ) /* CLR */
485 
486 /* GPCLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
487 #define GPCLR_CLR2_MSK (0x1 << 2 )
488 #define GPCLR_CLR2 (0x1 << 2 )
489 #define GPCLR_CLR2_CLR (0x1 << 2 ) /* CLR */
490 
491 /* GPCLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
492 #define GPCLR_CLR1_MSK (0x1 << 1 )
493 #define GPCLR_CLR1 (0x1 << 1 )
494 #define GPCLR_CLR1_CLR (0x1 << 1 ) /* CLR */
495 
496 /* GPCLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
497 #define GPCLR_CLR0_MSK (0x1 << 0 )
498 #define GPCLR_CLR0 (0x1 << 0 )
499 #define GPCLR_CLR0_CLR (0x1 << 0 ) /* CLR */
500 
501 /* GPTGL[TGL7] - Toggle for corresponding port pin. */
502 #define GPTGL_TGL7_MSK (0x1 << 7 )
503 #define GPTGL_TGL7 (0x1 << 7 )
504 #define GPTGL_TGL7_TGL (0x1 << 7 ) /* TGL. Set by user code to invert the corresponding GPIO. */
505 
506 /* GPTGL[TGL6] - Toggle for corresponding port pin. */
507 #define GPTGL_TGL6_MSK (0x1 << 6 )
508 #define GPTGL_TGL6 (0x1 << 6 )
509 #define GPTGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
510 
511 /* GPTGL[TGL5] - Toggle for corresponding port pin. */
512 #define GPTGL_TGL5_MSK (0x1 << 5 )
513 #define GPTGL_TGL5 (0x1 << 5 )
514 #define GPTGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
515 
516 /* GPTGL[TGL4] - Toggle for corresponding port pin. */
517 #define GPTGL_TGL4_MSK (0x1 << 4 )
518 #define GPTGL_TGL4 (0x1 << 4 )
519 #define GPTGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
520 
521 /* GPTGL[TGL3] - Toggle for corresponding port pin. */
522 #define GPTGL_TGL3_MSK (0x1 << 3 )
523 #define GPTGL_TGL3 (0x1 << 3 )
524 #define GPTGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
525 
526 /* GPTGL[TGL2] - Toggle for corresponding port pin. */
527 #define GPTGL_TGL2_MSK (0x1 << 2 )
528 #define GPTGL_TGL2 (0x1 << 2 )
529 #define GPTGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
530 
531 /* GPTGL[TGL1] - Toggle for corresponding port pin. */
532 #define GPTGL_TGL1_MSK (0x1 << 1 )
533 #define GPTGL_TGL1 (0x1 << 1 )
534 #define GPTGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
535 
536 /* GPTGL[TGL0] - Toggle for corresponding port pin. */
537 #define GPTGL_TGL0_MSK (0x1 << 0 )
538 #define GPTGL_TGL0 (0x1 << 0 )
539 #define GPTGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
540 
541 /* CLK[T1] - T1 clocks enable bit. */
542 #define CLK_T1_MSK (0x1 << 11 )
543 #define CLK_T1 (0x1 << 11 )
544 #define CLK_T1_DIS (0x0 << 11 ) /* DIS. Disable T1 clocks. */
545 #define CLK_T1_EN (0x1 << 11 ) /* EN. Enable T1 clocks. */
546 
547 /* CLK[T0] - T0 clocks enable bit. */
548 #define CLK_T0_MSK (0x1 << 10 )
549 #define CLK_T0 (0x1 << 10 )
550 #define CLK_T0_DIS (0x0 << 10 ) /* DIS. Disable T0 clocks. */
551 #define CLK_T0_EN (0x1 << 10 ) /* EN. Enable T0 clocks. */
552 
553 /* CLK[PWM] - PWM clocks enable bit. */
554 #define CLK_PWM_MSK (0x1 << 9 )
555 #define CLK_PWM (0x1 << 9 )
556 #define CLK_PWM_DIS (0x0 << 9 ) /* DIS. Disable PWM clocks. */
557 #define CLK_PWM_EN (0x1 << 9 ) /* EN. Enable PWM clocks. */
558 
559 /* CLK[I2C] - I2C clocks enable bit. */
560 #define CLK_I2C_MSK (0x1 << 8 )
561 #define CLK_I2C (0x1 << 8 )
562 #define CLK_I2C_DIS (0x0 << 8 ) /* DIS. Disable I2C clocks. */
563 #define CLK_I2C_EN (0x1 << 8 ) /* EN. Enable I2C clocks. */
564 
565 /* CLK[COM] - UART clocks enable bit. */
566 #define CLK_COM_MSK (0x1 << 7 )
567 #define CLK_COM (0x1 << 7 )
568 #define CLK_COM_DIS (0x0 << 7 ) /* DIS. Disable UART clocks. */
569 #define CLK_COM_EN (0x1 << 7 ) /* EN. Enable UART clocks. */
570 
571 /* CLK[SPI1] - SPI1 clocks enable bit. */
572 #define CLK_SPI1_MSK (0x1 << 6 )
573 #define CLK_SPI1 (0x1 << 6 )
574 #define CLK_SPI1_DIS (0x0 << 6 ) /* DIS. Disable SPI1 clocks. */
575 #define CLK_SPI1_EN (0x1 << 6 ) /* EN. Enable SPI1 clocks. */
576 
577 /* CLK[SPI0] - SPI0 clocks enable bit. */
578 #define CLK_SPI0_MSK (0x1 << 5 )
579 #define CLK_SPI0 (0x1 << 5 )
580 #define CLK_SPI0_DIS (0x0 << 5 ) /* DIS. Disable SPI0 clocks. */
581 #define CLK_SPI0_EN (0x1 << 5 ) /* EN. Enable SPI0 clocks. */
582 
583 /* CLK[T2] - T2 clocks enable bit. */
584 #define CLK_T2_MSK (0x1 << 4 )
585 #define CLK_T2 (0x1 << 4 )
586 #define CLK_T2_DIS (0x0 << 4 ) /* DIS. Disable T2 clocks. */
587 #define CLK_T2_EN (0x1 << 4 ) /* EN. Enable T2 clocks. */
588 
589 /* CLK[ADC] - ADC clocks enable bit. */
590 #define CLK_ADC_MSK (0x1 << 3 )
591 #define CLK_ADC (0x1 << 3 )
592 #define CLK_ADC_DIS (0x0 << 3 ) /* DIS. Disable ADC clocks. */
593 #define CLK_ADC_EN (0x1 << 3 ) /* EN. Enable ADC clocks. */
594 
595 /* CLK[SRAM] - SRAM clocks enable bit. */
596 #define CLK_SRAM_MSK (0x1 << 2 )
597 #define CLK_SRAM (0x1 << 2 )
598 #define CLK_SRAM_DIS (0x0 << 2 ) /* DIS. Disable SRAM memory clocks. */
599 #define CLK_SRAM_EN (0x1 << 2 ) /* EN. Enable SRAM memory clocks. */
600 
601 /* CLK[FEE] - Flash clocks enable bit. */
602 #define CLK_FEE_MSK (0x1 << 1 )
603 #define CLK_FEE (0x1 << 1 )
604 #define CLK_FEE_DIS (0x0 << 1 ) /* DIS. Disable Flash memory clocks. */
605 #define CLK_FEE_EN (0x1 << 1 ) /* EN. Enable Flash memory clocks. */
606 
607 /* CLK[DMA] - DMA clock enable bit. */
608 #define CLK_DMA_MSK (0x1 << 0 )
609 #define CLK_DMA (0x1 << 0 )
610 #define CLK_DMA_DIS (0x0 << 0 ) /* DIS. Disable DMA clock. */
611 #define CLK_DMA_EN (0x1 << 0 ) /* EN. Enable DMA clock. */
612 
613 /* SPIDIV[BCRST] - Configures the behavior of SPI communication after an abrupt deassertion of CS. This bit should be set in slave and master mode. */
614 #define SPIDIV_BCRST_MSK (0x1 << 7 )
615 #define SPIDIV_BCRST (0x1 << 7 )
616 #define SPIDIV_BCRST_DIS (0x0 << 7 ) /* DIS. Resumes communication from where it stopped when the CS is deasserted. The rest of the bits are then received/ transmitted when CS returns low. User code should ignore the CSERR interrupt. */
617 #define SPIDIV_BCRST_EN (0x1 << 7 ) /* EN. Enabled for a clean restart of SPI transfer after a CSERR condition. User code must also clear the SPI enable bit in SPI0CON during the CSERR interrupt. */
618 
619 /* SPIDIV[DIV] - Factor used to divide UCLK in the generation of the master mode serial clock. */
620 #define SPIDIV_DIV_MSK (0x3F << 0 )
621 
622 /* SPICON[MOD] - IRQ mode bits. When TIM is set these bits configure when the Tx/Rx interrupts occur in a transfer. For a DMA Rx transfer, these bits should be 00. */
623 #define SPICON_MOD_MSK (0x3 << 14 )
624 #define SPICON_MOD_TX1RX1 (0x0 << 14 ) /* TX1RX1. Tx/Rx interrupt occurs when 1 byte has been transmitted/received from/into the FIFO. */
625 #define SPICON_MOD_TX2RX2 (0x1 << 14 ) /* TX2RX2. Tx/Rx interrupt occurs when 2 bytes have been transmitted/received from/into the FIFO. */
626 #define SPICON_MOD_TX3RX3 (0x2 << 14 ) /* TX3RX3. Tx/Rx interrupt occurs when 3 bytes have been transmitted/received from/into the FIFO. */
627 #define SPICON_MOD_TX4RX4 (0x3 << 14 ) /* TX4RX4. Tx/Rx interrupt occurs when 4 bytes have been transmitted/received from/into the FIFO. */
628 
629 /* SPICON[TFLUSH] - Tx FIFO flush enable bit. */
630 #define SPICON_TFLUSH_MSK (0x1 << 13 )
631 #define SPICON_TFLUSH (0x1 << 13 )
632 #define SPICON_TFLUSH_DIS (0x0 << 13 ) /* DIS. Disable Tx FIFO flushing. */
633 #define SPICON_TFLUSH_EN (0x1 << 13 ) /* EN. Flush the Tx FIFO. This bit does not clear itself and should be toggled if a single flush is required. If this bit is left high, then either the last transmitted value or 0x00 is transmitted depending on the ZEN bit (SPI0CON[7]). Any writes to the Tx FIFO are ignored while this bit is set. */
634 
635 /* SPICON[RFLUSH] - Rx FIFO flush enable bit. */
636 #define SPICON_RFLUSH_MSK (0x1 << 12 )
637 #define SPICON_RFLUSH (0x1 << 12 )
638 #define SPICON_RFLUSH_DIS (0x0 << 12 ) /* DIS. Disable Rx FIFO flushing. */
639 #define SPICON_RFLUSH_EN (0x1 << 12 ) /* EN. If this bit is set, all incoming data is ignored and no interrupts are generated. If set and TIM = 0 (SPI0CON[6]), a read of the Rx FIFO initiates a transfer. */
640 
641 /* SPICON[CON] - Continuous transfer enable bit. */
642 #define SPICON_CON_MSK (0x1 << 11 )
643 #define SPICON_CON (0x1 << 11 )
644 #define SPICON_CON_DIS (0x0 << 11 ) /* DIS. Disable continuous transfer. Each transfer consists of a single 8-bit serial transfer. If valid data exists in the SPIxTX register, then a new transfer is initiated after a stall period of one serial clock cycle. The CS line is deactivated for this one serial clock cycle. */
645 #define SPICON_CON_EN (0x1 << 11 ) /* EN. Enable continuous transfer. In master mode, the transfer continues until no valid data is available in the Tx register. CS is asserted and remains asserted for the duration of each 8-bit serial transfer until Tx is empty. */
646 
647 /* SPICON[LOOPBACK] - Loopback enable bit. */
648 #define SPICON_LOOPBACK_MSK (0x1 << 10 )
649 #define SPICON_LOOPBACK (0x1 << 10 )
650 #define SPICON_LOOPBACK_DIS (0x0 << 10 ) /* DIS. Normal mode. */
651 #define SPICON_LOOPBACK_EN (0x1 << 10 ) /* EN. Connect MISO to MOSI, thus, data transmitted from Tx register is looped back to the Rx register. SPI must be configured in master mode. */
652 
653 /* SPICON[SOEN] - Slave output enable bit. */
654 #define SPICON_SOEN_MSK (0x1 << 9 )
655 #define SPICON_SOEN (0x1 << 9 )
656 #define SPICON_SOEN_DIS (0x0 << 9 ) /* DIS. Disable the output driver on the MISO pin. The MISO pin is open-circuit when this bit is clear. */
657 #define SPICON_SOEN_EN (0x1 << 9 ) /* EN. MISO operates as normal. */
658 
659 /* SPICON[RXOF] - RX overflow overwrite enable bit. */
660 #define SPICON_RXOF_MSK (0x1 << 8 )
661 #define SPICON_RXOF (0x1 << 8 )
662 #define SPICON_RXOF_DIS (0x0 << 8 ) /* DIS. The new serial byte received is discarded when there is no space left in the FIFO */
663 #define SPICON_RXOF_EN (0x1 << 8 ) /* EN. The valid data in the Rx register is overwritten by the new serial byte received when there is no space left in the FIFO. */
664 
665 /* SPICON[ZEN] - Transmit underrun: Transmit 0s when the Tx FIFO is empty */
666 #define SPICON_ZEN_MSK (0x1 << 7 )
667 #define SPICON_ZEN (0x1 << 7 )
668 #define SPICON_ZEN_DIS (0x0 << 7 ) /* DIS. The last byte from the previous transmission is shifted out when a transfer is initiated with no valid data in the FIFO. */
669 #define SPICON_ZEN_EN (0x1 << 7 ) /* EN. Transmit 0x00 when a transfer is initiated with no valid data in the FIFO. */
670 
671 /* SPICON[TIM] - Transfer and interrupt mode bit. */
672 #define SPICON_TIM_MSK (0x1 << 6 )
673 #define SPICON_TIM (0x1 << 6 )
674 #define SPICON_TIM_TXWR (0x1 << 6 ) /* TXWR. Initiate transfer with a write to the SPIxTX register. Interrupt only occurs when Tx is empty. */
675 #define SPICON_TIM_RXRD (0x0 << 6 ) /* RXRD. Initiate transfer with a read of the SPIxRX register. The read must be done while the SPI interface is idle. Interrupt only occurs when Rx is full. */
676 
677 /* SPICON[LSB] - LSB first transfer enable bit. */
678 #define SPICON_LSB_MSK (0x1 << 5 )
679 #define SPICON_LSB (0x1 << 5 )
680 #define SPICON_LSB_DIS (0x0 << 5 ) /* DIS. MSB is transmitted first. */
681 #define SPICON_LSB_EN (0x1 << 5 ) /* EN. LSB is transmitted first. */
682 
683 /* SPICON[WOM] - Wired OR enable bit. */
684 #define SPICON_WOM_MSK (0x1 << 4 )
685 #define SPICON_WOM (0x1 << 4 )
686 #define SPICON_WOM_DIS (0x0 << 4 ) /* DIS. Normal driver output operation. */
687 #define SPICON_WOM_EN (0x1 << 4 ) /* EN. Enable open circuit data output for multimaster/multislave configuration. */
688 
689 /* SPICON[CPOL] - Serial clock polarity mode bit. */
690 #define SPICON_CPOL_MSK (0x1 << 3 )
691 #define SPICON_CPOL (0x1 << 3 )
692 #define SPICON_CPOL_LOW (0x0 << 3 ) /* LOW. Serial clock idles low. */
693 #define SPICON_CPOL_HIGH (0x1 << 3 ) /* HIGH. Serial clock idles high. */
694 
695 /* SPICON[CPHA] - Serial clock phase mode bit. */
696 #define SPICON_CPHA_MSK (0x1 << 2 )
697 #define SPICON_CPHA (0x1 << 2 )
698 #define SPICON_CPHA_SAMPLELEADING (0x0 << 2 ) /* SAMPLELEADING. Serial clock pulses at the middle of the first data bit transfer. */
699 #define SPICON_CPHA_SAMPLETRAILING (0x1 << 2 ) /* SAMPLETRAILING. Serial clock pulses at the start of the first data bit. */
700 
701 /* SPICON[MASEN] - Master mode enable bit. */
702 #define SPICON_MASEN_MSK (0x1 << 1 )
703 #define SPICON_MASEN (0x1 << 1 )
704 #define SPICON_MASEN_DIS (0x0 << 1 ) /* DIS. Configure in slave mode. */
705 #define SPICON_MASEN_EN (0x1 << 1 ) /* EN. Configure in master mode. */
706 
707 /* SPICON[ENABLE] - SPI enable bit. */
708 #define SPICON_ENABLE_MSK (0x1 << 0 )
709 #define SPICON_ENABLE (0x1 << 0 )
710 #define SPICON_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable the SPI. Clearing this bit will also reset all the FIFO related logic to enable a clean start. */
711 #define SPICON_ENABLE_EN (0x1 << 0 ) /* EN. Enable the SPI. */
712 
713 /* SPIDMA[IENRXDMA] - Receive DMA request enable bit. */
714 #define SPIDMA_IENRXDMA_MSK (0x1 << 2 )
715 #define SPIDMA_IENRXDMA (0x1 << 2 )
716 #define SPIDMA_IENRXDMA_DIS (0x0 << 2 ) /* DIS. Disable Rx DMA requests. */
717 #define SPIDMA_IENRXDMA_EN (0x1 << 2 ) /* EN. Enable Rx DMA requests. */
718 
719 /* SPIDMA[IENTXDMA] - Transmit DMA request enable bit. */
720 #define SPIDMA_IENTXDMA_MSK (0x1 << 1 )
721 #define SPIDMA_IENTXDMA (0x1 << 1 )
722 #define SPIDMA_IENTXDMA_DIS (0x0 << 1 ) /* DIS. Disable Tx DMA requests. */
723 #define SPIDMA_IENTXDMA_EN (0x1 << 1 ) /* EN. Enable Tx DMA requests. */
724 
725 /* SPIDMA[ENABLE] - DMA data transfer enable bit. */
726 #define SPIDMA_ENABLE_MSK (0x1 << 0 )
727 #define SPIDMA_ENABLE (0x1 << 0 )
728 #define SPIDMA_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable DMA transfer. This bit needs to be cleared to prevent extra DMA request to the µDMA controller. */
729 #define SPIDMA_ENABLE_EN (0x1 << 0 ) /* EN. Enable a DMA transfer. Starts the transfer of a master configured to initiate transfer on transmit. */
730 
731 /* SPISTA[CSERR] - CS error status bit. This bit generates an interrupt when detecting an abrupt CS desassertion before the full byte of data is transmitted completely. */
732 #define SPISTA_CSERR_MSK (0x1 << 12 )
733 #define SPISTA_CSERR (0x1 << 12 )
734 #define SPISTA_CSERR_CLR (0x0 << 12 ) /* CLR: Cleared when no CS error is detected. Cleared to 0 on a read of SPI0STA register. */
735 #define SPISTA_CSERR_SET (0x1 << 12 ) /* SET: Set when the CS line is deasserted abruptly. */
736 
737 /* SPISTA[RXS] - Rx FIFO excess bytes present. */
738 #define SPISTA_RXS_MSK (0x1 << 11 )
739 #define SPISTA_RXS (0x1 << 11 )
740 #define SPISTA_RXS_CLR (0x0 << 11 ) /* CLR. When the number of bytes in the FIFO is equal or less than the number in SPI0CON[15:14]. This bit is not cleared on a read of SPI0STA register. */
741 #define SPISTA_RXS_SET (0x1 << 11 ) /* SET. When there are more bytes in the Rx FIFO than configured in MOD (SPI0CON[15:14]). For example if MOD = TX1RX1, RXS is set when there are 2 or more bytes in the Rx FIFO. This bit does not dependent on SPI0CON[6] and does not cause an interrupt. */
742 
743 /* SPISTA[RXFSTA] - Rx FIFO status bits, indicates how many valid bytes are in the Rx FIFO. */
744 #define SPISTA_RXFSTA_MSK (0x7 << 8 )
745 #define SPISTA_RXFSTA_EMPTY (0x0 << 8 ) /* EMPTY. When Rx FIFO is empty. */
746 #define SPISTA_RXFSTA_ONEBYTE (0x1 << 8 ) /* ONEBYTE. When 1 valid byte is in the FIFO. */
747 #define SPISTA_RXFSTA_TWOBYTES (0x2 << 8 ) /* TWOBYTES. When 2 valid bytes are in the FIFO. */
748 #define SPISTA_RXFSTA_THREEBYTES (0x3 << 8 ) /* THREEBYTES. When 3 valid bytes are in the FIFO. */
749 #define SPISTA_RXFSTA_FOURBYTES (0x4 << 8 ) /* FOURBYTES. When 4 valid bytes are in the FIFO. */
750 
751 /* SPISTA[RXOF] - Rx FIFO overflow status bit. This bit generates an interrupt. */
752 #define SPISTA_RXOF_MSK (0x1 << 7 )
753 #define SPISTA_RXOF (0x1 << 7 )
754 #define SPISTA_RXOF_CLR (0x0 << 7 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
755 #define SPISTA_RXOF_SET (0x1 << 7 ) /* SET. Set when the Rx FIFO is already full when new data is loaded to the FIFO. This bit generates an interrupt except when RFLUSH is set. (SPI0CON[12]). */
756 
757 /* SPISTA[RX] - Rx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
758 #define SPISTA_RX_MSK (0x1 << 6 )
759 #define SPISTA_RX (0x1 << 6 )
760 #define SPISTA_RX_CLR (0x0 << 6 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
761 #define SPISTA_RX_SET (0x1 << 6 ) /* SET. Set when a receive interrupt occurs. This bit is set when TIM (SPI0CON[6]) is cleared and the required number of bytes have been received. */
762 
763 /* SPISTA[TX] - Tx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
764 #define SPISTA_TX_MSK (0x1 << 5 )
765 #define SPISTA_TX (0x1 << 5 )
766 #define SPISTA_TX_CLR (0x0 << 5 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
767 #define SPISTA_TX_SET (0x1 << 5 ) /* SET. Set when a transmit interrupt occurs. This bit is set when TIM (SPI0CON[6]) set and the required number of bytes have been transmitted. */
768 
769 /* SPISTA[TXUR] - Tx FIFO Underrun. This bit generates an interrupt. */
770 #define SPISTA_TXUR_MSK (0x1 << 4 )
771 #define SPISTA_TXUR (0x1 << 4 )
772 #define SPISTA_TXUR_CLR (0x0 << 4 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
773 #define SPISTA_TXUR_SET (0x1 << 4 ) /* SET. Set when a transmit is initiated without any valid data in the Tx FIFO. This bit generates an interrupt except when TFLUSH is set in SPI0CON. */
774 
775 /* SPISTA[TXFSTA] - Tx FIFO status bits, indicates how many valid bytes are in the Tx FIFO. */
776 #define SPISTA_TXFSTA_MSK (0x7 << 1 )
777 #define SPISTA_TXFSTA_EMPTY (0x0 << 1 ) /* EMPTY. Tx FIFO is empty. */
778 #define SPISTA_TXFSTA_ONEBYTE (0x1 << 1 ) /* ONEBYTE. 1 valid byte is in the FIFO. */
779 #define SPISTA_TXFSTA_TWOBYTES (0x2 << 1 ) /* TWOBYTES. 2 valid bytes are in the FIFO. */
780 #define SPISTA_TXFSTA_THREEBYTES (0x3 << 1 ) /* THREEBYTES. 3 valid bytes are in the FIFO. */
781 #define SPISTA_TXFSTA_FOURBYTES (0x4 << 1 ) /* FOURBYTES . 4 valid bytes are in the FIFO. */
782 
783 /* SPISTA[IRQ] - Interrupt status bit. */
784 #define SPISTA_IRQ_MSK (0x1 << 0 )
785 #define SPISTA_IRQ (0x1 << 0 )
786 #define SPISTA_IRQ_CLR (0x0 << 0 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
787 #define SPISTA_IRQ_SET (0x1 << 0 ) /* SET. Set to 1 when an SPI0 based interrupt occurs. */
788 
789 /* SPIDIV[BCRST] - Configures the behavior of SPI communication after an abrupt deassertion of CS. This bit should be set in slave and master mode. */
790 #define SPIDIV_BCRST_MSK (0x1 << 7 )
791 #define SPIDIV_BCRST (0x1 << 7 )
792 #define SPIDIV_BCRST_DIS (0x0 << 7 ) /* DIS. Resumes communication from where it stopped when the CS is deasserted. The rest of the bits are then received/ transmitted when CS returns low. User code should ignore the CSERR interrupt. */
793 #define SPIDIV_BCRST_EN (0x1 << 7 ) /* EN. Enabled for a clean restart of SPI transfer after a CSERR condition. User code must also clear the SPI enable bit in SPI0CON during the CSERR interrupt. */
794 
795 /* SPIDIV[DIV] - Factor used to divide UCLK in the generation of the master mode serial clock. */
796 #define SPIDIV_DIV_MSK (0x3F << 0 )
797 // ------------------------------------------------------------------------------------------------
798 // ----- ADC0 -----
799 // ------------------------------------------------------------------------------------------------
800 
801 
802 /**
803  * @brief Analog to Digital Converter (pADI_ADC0)
804  */
805 
806 #if (__NO_MMR_STRUCTS__==0)
807 typedef struct { /*!< pADI_ADC0 Structure */
808  __IO uint16_t ADCCFG; /*!< ADC Configuration Register */
809  __I uint16_t RESERVED0;
810  __IO uint8_t ADCCON; /*!< ADC Control Register */
811  __I uint8_t RESERVED1[3];
812  __IO uint8_t ADCSTA; /*!< ADC Status Register */
813  __I uint8_t RESERVED2[3];
814  __IO uint16_t ADCDAT; /*!< ADC Data Register */
815  __I uint16_t RESERVED3;
816  __IO uint16_t ADCGN; /*!< ADC Gain Register */
817  __I uint16_t RESERVED4;
818  __IO uint16_t ADCOF; /*!< ADC Offset Register */
820 #else // (__NO_MMR_STRUCTS__==0)
821 #define ADCCFG (*(volatile unsigned short int *) 0x40050000)
822 #define ADCCON (*(volatile unsigned char *) 0x40050004)
823 #define ADCSTA (*(volatile unsigned char *) 0x40050008)
824 #define ADCDAT (*(volatile unsigned short int *) 0x4005000C)
825 #define ADCGN (*(volatile unsigned short int *) 0x40050010)
826 #define ADCOF (*(volatile unsigned short int *) 0x40050014)
827 #endif // (__NO_MMR_STRUCTS__==0)
828 
829 /* Reset Value for ADCCFG*/
830 #define ADCCFG_RVAL 0xA00
831 
832 /* ADCCFG[REF] - Reference select */
833 #define ADCCFG_REF_BBA (*(volatile unsigned long *) 0x42A00034)
834 #define ADCCFG_REF_MSK (0x1 << 13 )
835 #define ADCCFG_REF (0x1 << 13 )
836 #define ADCCFG_REF_INTERNAL125V (0x0 << 13 ) /* INTERNAL125V. Select the internal 1.25 V reference as the ADC reference. */
837 #define ADCCFG_REF_LVDD (0x1 << 13 ) /* LVDD. Select the 1.8V regulator output (LVDD1) as the ADC reference. */
838 
839 /* ADCCFG[CLK] - ADC clock frequency */
840 #define ADCCFG_CLK_MSK (0x7 << 10 )
841 #define ADCCFG_CLK_FCORE (0x0 << 10 ) /* FCORE. */
842 #define ADCCFG_CLK_FCOREDIV2 (0x1 << 10 ) /* FCOREDIV2. */
843 #define ADCCFG_CLK_FCOREDIV4 (0x2 << 10 ) /* FCOREDIV4. */
844 #define ADCCFG_CLK_FCOREDIV8 (0x3 << 10 ) /* FCOREDIV8. */
845 #define ADCCFG_CLK_FCOREDIV16 (0x4 << 10 ) /* FCOREDIV16. */
846 #define ADCCFG_CLK_FCOREDIV32 (0x5 << 10 ) /* FCOREDIV32. */
847 
848 /* ADCCFG[ACQ] - Acquisition clocks */
849 #define ADCCFG_ACQ_MSK (0x3 << 8 )
850 #define ADCCFG_ACQ_2 (0x0 << 8 ) /* 2. */
851 #define ADCCFG_ACQ_4 (0x1 << 8 ) /* 4. */
852 #define ADCCFG_ACQ_8 (0x2 << 8 ) /* 8. */
853 #define ADCCFG_ACQ_16 (0x3 << 8 ) /* 16. */
854 
855 /* ADCCFG[CHSEL] - Channel select */
856 #define ADCCFG_CHSEL_MSK (0xF << 0 )
857 #define ADCCFG_CHSEL_ADC0 (0x0 << 0 ) /* ADC0. Single ended ADC0 input. */
858 #define ADCCFG_CHSEL_ADC1 (0x1 << 0 ) /* ADC1. Single ended ADC1 input. */
859 #define ADCCFG_CHSEL_ADC2 (0x2 << 0 ) /* ADC2. Single ended ADC2 input. */
860 #define ADCCFG_CHSEL_ADC3 (0x3 << 0 ) /* ADC3. Single ended ADC3 input. */
861 #define ADCCFG_CHSEL_ADC4 (0x4 << 0 ) /* ADC4. Single ended ADC4 input. */
862 #define ADCCFG_CHSEL_ADC5 (0x5 << 0 ) /* ADC5. Single ended ADC5 input. */
863 #define ADCCFG_CHSEL_DIFF0 (0x6 << 0 ) /* DIFF0. Differential ADC0 - ADC1 inputs. */
864 #define ADCCFG_CHSEL_DIFF1 (0x7 << 0 ) /* DIFF1. Differential ADC2 - ADC3 inputs. */
865 #define ADCCFG_CHSEL_DIFF2 (0x8 << 0 ) /* DIFF2. Differential ADC4 - ADC5 inputs. */
866 #define ADCCFG_CHSEL_TEMP (0x9 << 0 ) /* TEMP. Internal temperature sensor. */
867 #define ADCCFG_CHSEL_VBATDIV4 (0xA << 0 ) /* VBATDIV4. Internal supply divided by 4. */
868 #define ADCCFG_CHSEL_LVDDDIV2 (0xB << 0 ) /* LVDDDIV2. Internal 1.8V regulator output (LVDD1) divided by 2. */
869 #define ADCCFG_CHSEL_VREF (0xC << 0 ) /* VREF. Internal ADC reference input for gain calibration. */
870 #define ADCCFG_CHSEL_AGND (0xD << 0 ) /* AGND. Internal ADC ground input for offset calibration. */
871 
872 /* Reset Value for ADCCON*/
873 #define ADCCON_RVAL 0x90
874 
875 /* ADCCON[REFBUF] - Reference buffer enable bit. */
876 #define ADCCON_REFBUF_BBA (*(volatile unsigned long *) 0x42A0009C)
877 #define ADCCON_REFBUF_MSK (0x1 << 7 )
878 #define ADCCON_REFBUF (0x1 << 7 )
879 #define ADCCON_REFBUF_EN (0x0 << 7 ) /* EN. Turn on the reference buffer. The reference buffer takes 5 ms to settle and consumes approximately 210 μA. */
880 #define ADCCON_REFBUF_DIS (0x1 << 7 ) /* DIS. Turn off the reference buffer. The internal reference buffer must be turned off if using an external reference. */
881 
882 /* ADCCON[DMA] - DMA transfer enable bit. */
883 #define ADCCON_DMA_BBA (*(volatile unsigned long *) 0x42A00098)
884 #define ADCCON_DMA_MSK (0x1 << 6 )
885 #define ADCCON_DMA (0x1 << 6 )
886 #define ADCCON_DMA_DIS (0x0 << 6 ) /* DIS. Disable DMA transfer. */
887 #define ADCCON_DMA_EN (0x1 << 6 ) /* EN. Enable DMA transfer. */
888 
889 /* ADCCON[IEN] - Interrupt enable. */
890 #define ADCCON_IEN_BBA (*(volatile unsigned long *) 0x42A00094)
891 #define ADCCON_IEN_MSK (0x1 << 5 )
892 #define ADCCON_IEN (0x1 << 5 )
893 #define ADCCON_IEN_DIS (0x0 << 5 ) /* DIS. Disable the ADC interrupt. */
894 #define ADCCON_IEN_EN (0x1 << 5 ) /* EN. Enable the ADC interrupt. An interrupt is generated when new data is available. */
895 
896 /* ADCCON[ENABLE] - ADC enable. */
897 #define ADCCON_ENABLE_BBA (*(volatile unsigned long *) 0x42A00090)
898 #define ADCCON_ENABLE_MSK (0x1 << 4 )
899 #define ADCCON_ENABLE (0x1 << 4 )
900 #define ADCCON_ENABLE_EN (0x0 << 4 ) /* EN. Enable the ADC. */
901 #define ADCCON_ENABLE_DIS (0x1 << 4 ) /* DIS. Disable the ADC. */
902 
903 /* ADCCON[MOD] - Conversion mode. */
904 #define ADCCON_MOD_MSK (0x7 << 1 )
905 #define ADCCON_MOD_SOFT (0x0 << 1 ) /* SOFT. Software trigger, used in conjunction with the START bit. */
906 #define ADCCON_MOD_CONT (0x1 << 1 ) /* CONT. Continuous convert mode. */
907 #define ADCCON_MOD_T0OVF (0x3 << 1 ) /* T0OVF. Timer0 overflow. */
908 #define ADCCON_MOD_T1OVF (0x4 << 1 ) /* T1OVF. Timer1 overflow. */
909 #define ADCCON_MOD_GPIO (0x5 << 1 ) /* GPIO. ADC conversion triggered by P0.3 input. */
910 
911 /* ADCCON[START] - ADC conversion start. */
912 #define ADCCON_START_BBA (*(volatile unsigned long *) 0x42A00080)
913 #define ADCCON_START_MSK (0x1 << 0 )
914 #define ADCCON_START (0x1 << 0 )
915 #define ADCCON_START_DIS (0x0 << 0 ) /* DIS. Has no effect. */
916 #define ADCCON_START_EN (0x1 << 0 ) /* EN. Start conversion when SOFT conversion mode is selected. This bit does not clear after a single software conversion. */
917 
918 /* Reset Value for ADCSTA*/
919 #define ADCSTA_RVAL 0x0
920 
921 /* ADCSTA[READY] - ADC Ready bit */
922 #define ADCSTA_READY_BBA (*(volatile unsigned long *) 0x42A00100)
923 #define ADCSTA_READY_MSK (0x1 << 0 )
924 #define ADCSTA_READY (0x1 << 0 )
925 #define ADCSTA_READY_CLR (0x0 << 0 ) /* CLR. Cleared automatically when ADCDAT is read. */
926 #define ADCSTA_READY_EN (0x1 << 0 ) /* EN. Set by the ADC when a conversion is complete. This bit generates an interrupt if enabled (IEN set in ADCCON). */
927 
928 /* Reset Value for ADCDAT*/
929 #define ADCDAT_RVAL 0x0
930 
931 /* ADCDAT[VALUE] - ADC result */
932 #define ADCDAT_VALUE_MSK (0xFFF << 2 )
933 
934 /* ADCDAT[Value_Reserved] - ADC result / Reserved */
935 #define ADCDAT_Value_Reserved_MSK (0x3 << 0 )
936 
937 /* Reset Value for ADCGN*/
938 #define ADCGN_RVAL 0x0
939 
940 /* ADCGN[VALUE] - Gain */
941 #define ADCGN_VALUE_MSK (0xFFFF << 0 )
942 
943 /* Reset Value for ADCOF*/
944 #define ADCOF_RVAL 0x0
945 
946 /* ADCOF[VALUE] - Offset */
947 #define ADCOF_VALUE_MSK (0xFFFF << 0 )
948 // ------------------------------------------------------------------------------------------------
949 // ----- CLKCTL -----
950 // ------------------------------------------------------------------------------------------------
951 
952 
953 /**
954  * @brief Clock Control (pADI_CLKCTL)
955  */
956 
957 #if (__NO_MMR_STRUCTS__==0)
958 typedef struct { /*!< pADI_CLKCTL Structure */
959  __IO uint16_t CLKCON; /*!< System Clocking Architecture Control Register */
960  __I uint16_t RESERVED0[519];
961  __IO uint8_t XOSCCON; /*!< Crystal Oscillator Control Register */
962  __I uint8_t RESERVED1[111];
963  __IO uint16_t CLKACT; /*!< Clock in Active Mode Enable Register */
964  __I uint16_t RESERVED2;
965  __IO uint16_t CLKPD; /*!< Clock in Power-Down Mode Enable Register */
967 #else // (__NO_MMR_STRUCTS__==0)
968 #define CLKCON (*(volatile unsigned short int *) 0x40002000)
969 #define XOSCCON (*(volatile unsigned char *) 0x40002410)
970 #define CLKACT (*(volatile unsigned short int *) 0x40002480)
971 #define CLKPD (*(volatile unsigned short int *) 0x40002484)
972 #endif // (__NO_MMR_STRUCTS__==0)
973 
974 /* Reset Value for CLKCON*/
975 #define CLKCON_RVAL 0x0
976 
977 /* CLKCON[CLKOUT] - GPIO output clock multiplexer select bits. */
978 #define CLKCON_CLKOUT_MSK (0x7 << 5 )
979 #define CLKCON_CLKOUT_UCLKCG (0x0 << 5 ) /* UCLKCG. */
980 #define CLKCON_CLKOUT_UCLK (0x1 << 5 ) /* UCLK. */
981 #define CLKCON_CLKOUT_PCLK (0x2 << 5 ) /* PCLK. */
982 #define CLKCON_CLKOUT_HFOSC (0x5 << 5 ) /* HFOSC. */
983 #define CLKCON_CLKOUT_LFOSC (0x6 << 5 ) /* LFOSC. */
984 #define CLKCON_CLKOUT_LFXTAL (0x7 << 5 ) /* LFXTAL. */
985 
986 /* CLKCON[CLKMUX] - Digital subsystem clock source select bits. */
987 #define CLKCON_CLKMUX_MSK (0x3 << 3 )
988 #define CLKCON_CLKMUX_HFOSC (0x0 << 3 ) /* HFOSC. 16MHz internal oscillator. */
989 #define CLKCON_CLKMUX_LFXTAL (0x1 << 3 ) /* LFXTAL. 32.768kHz external crystal. */
990 #define CLKCON_CLKMUX_LFOSC (0x2 << 3 ) /* LFOSC. 32.768kHz internal oscillator. */
991 #define CLKCON_CLKMUX_ECLKIN (0x3 << 3 ) /* ECLKIN. External clock on P0.5. */
992 
993 /* CLKCON[CD] - Clock divide bits. */
994 #define CLKCON_CD_MSK (0x7 << 0 )
995 #define CLKCON_CD_DIV1 (0x0 << 0 ) /* DIV1. */
996 #define CLKCON_CD_DIV2 (0x1 << 0 ) /* DIV2. */
997 #define CLKCON_CD_DIV4 (0x2 << 0 ) /* DIV4. */
998 #define CLKCON_CD_DIV8 (0x3 << 0 ) /* DIV8. */
999 #define CLKCON_CD_DIV16 (0x4 << 0 ) /* DIV16. */
1000 #define CLKCON_CD_DIV32 (0x5 << 0 ) /* DIV32. */
1001 #define CLKCON_CD_DIV64 (0x6 << 0 ) /* DIV64. */
1002 #define CLKCON_CD_DIV128 (0x7 << 0 ) /* DIV128. */
1003 
1004 /* Reset Value for XOSCCON*/
1005 #define XOSCCON_RVAL 0x0
1006 
1007 /* XOSCCON[ENABLE] - Crystal oscillator circuit enable bit. */
1008 #define XOSCCON_ENABLE_BBA (*(volatile unsigned long *) 0x42048200)
1009 #define XOSCCON_ENABLE_MSK (0x1 << 0 )
1010 #define XOSCCON_ENABLE (0x1 << 0 )
1011 #define XOSCCON_ENABLE_DIS (0x0 << 0 ) /* DIS. Disables the watch crystal circuitry.(LFXTAL) */
1012 #define XOSCCON_ENABLE_EN (0x1 << 0 ) /* EN. Enables the watch crystal circuitry.(LFXTAL) */
1013 
1014 /* Reset Value for CLKACT*/
1015 #define CLKACT_RVAL 0x3FFF
1016 
1017 /* CLKACT[T1] - T1 clocks enable bit. */
1018 #define CLKACT_T1_BBA (*(volatile unsigned long *) 0x4204902C)
1019 #define CLKACT_T1_MSK (0x1 << 11 )
1020 #define CLKACT_T1 (0x1 << 11 )
1021 #define CLKACT_T1_DIS (0x0 << 11 ) /* DIS. Disable T1 clocks. */
1022 #define CLKACT_T1_EN (0x1 << 11 ) /* EN. Enable T1 clocks. */
1023 
1024 /* CLKACT[T0] - T0 clocks enable bit. */
1025 #define CLKACT_T0_BBA (*(volatile unsigned long *) 0x42049028)
1026 #define CLKACT_T0_MSK (0x1 << 10 )
1027 #define CLKACT_T0 (0x1 << 10 )
1028 #define CLKACT_T0_DIS (0x0 << 10 ) /* DIS. Disable T0 clocks. */
1029 #define CLKACT_T0_EN (0x1 << 10 ) /* EN. Enable T0 clocks. */
1030 
1031 /* CLKACT[PWM] - PWM clocks enable bit. */
1032 #define CLKACT_PWM_BBA (*(volatile unsigned long *) 0x42049024)
1033 #define CLKACT_PWM_MSK (0x1 << 9 )
1034 #define CLKACT_PWM (0x1 << 9 )
1035 #define CLKACT_PWM_DIS (0x0 << 9 ) /* DIS. Disable PWM clocks. */
1036 #define CLKACT_PWM_EN (0x1 << 9 ) /* EN. Enable PWM clocks. */
1037 
1038 /* CLKACT[I2C] - I2C clocks enable bit. */
1039 #define CLKACT_I2C_BBA (*(volatile unsigned long *) 0x42049020)
1040 #define CLKACT_I2C_MSK (0x1 << 8 )
1041 #define CLKACT_I2C (0x1 << 8 )
1042 #define CLKACT_I2C_DIS (0x0 << 8 ) /* DIS. Disable I2C clocks. */
1043 #define CLKACT_I2C_EN (0x1 << 8 ) /* EN. Enable I2C clocks. */
1044 
1045 /* CLKACT[COM] - UART clocks enable bit. */
1046 #define CLKACT_COM_BBA (*(volatile unsigned long *) 0x4204901C)
1047 #define CLKACT_COM_MSK (0x1 << 7 )
1048 #define CLKACT_COM (0x1 << 7 )
1049 #define CLKACT_COM_DIS (0x0 << 7 ) /* DIS. Disable UART clocks. */
1050 #define CLKACT_COM_EN (0x1 << 7 ) /* EN. Enable UART clocks. */
1051 
1052 /* CLKACT[SPI1] - SPI1 clocks enable bit. */
1053 #define CLKACT_SPI1_BBA (*(volatile unsigned long *) 0x42049018)
1054 #define CLKACT_SPI1_MSK (0x1 << 6 )
1055 #define CLKACT_SPI1 (0x1 << 6 )
1056 #define CLKACT_SPI1_DIS (0x0 << 6 ) /* DIS. Disable SPI1 clocks. */
1057 #define CLKACT_SPI1_EN (0x1 << 6 ) /* EN. Enable SPI1 clocks. */
1058 
1059 /* CLKACT[SPI0] - SPI0 clocks enable bit. */
1060 #define CLKACT_SPI0_BBA (*(volatile unsigned long *) 0x42049014)
1061 #define CLKACT_SPI0_MSK (0x1 << 5 )
1062 #define CLKACT_SPI0 (0x1 << 5 )
1063 #define CLKACT_SPI0_DIS (0x0 << 5 ) /* DIS. Disable SPI0 clocks. */
1064 #define CLKACT_SPI0_EN (0x1 << 5 ) /* EN. Enable SPI0 clocks. */
1065 
1066 /* CLKACT[T2] - T2 clocks enable bit. */
1067 #define CLKACT_T2_BBA (*(volatile unsigned long *) 0x42049010)
1068 #define CLKACT_T2_MSK (0x1 << 4 )
1069 #define CLKACT_T2 (0x1 << 4 )
1070 #define CLKACT_T2_DIS (0x0 << 4 ) /* DIS. Disable T2 clocks. */
1071 #define CLKACT_T2_EN (0x1 << 4 ) /* EN. Enable T2 clocks. */
1072 
1073 /* CLKACT[ADC] - ADC clocks enable bit. */
1074 #define CLKACT_ADC_BBA (*(volatile unsigned long *) 0x4204900C)
1075 #define CLKACT_ADC_MSK (0x1 << 3 )
1076 #define CLKACT_ADC (0x1 << 3 )
1077 #define CLKACT_ADC_DIS (0x0 << 3 ) /* DIS. Disable ADC clocks. */
1078 #define CLKACT_ADC_EN (0x1 << 3 ) /* EN. Enable ADC clocks. */
1079 
1080 /* CLKACT[SRAM] - SRAM clocks enable bit. */
1081 #define CLKACT_SRAM_BBA (*(volatile unsigned long *) 0x42049008)
1082 #define CLKACT_SRAM_MSK (0x1 << 2 )
1083 #define CLKACT_SRAM (0x1 << 2 )
1084 #define CLKACT_SRAM_DIS (0x0 << 2 ) /* DIS. Disable SRAM memory clocks. */
1085 #define CLKACT_SRAM_EN (0x1 << 2 ) /* EN. Enable SRAM memory clocks. */
1086 
1087 /* CLKACT[FEE] - Flash clocks enable bit. */
1088 #define CLKACT_FEE_BBA (*(volatile unsigned long *) 0x42049004)
1089 #define CLKACT_FEE_MSK (0x1 << 1 )
1090 #define CLKACT_FEE (0x1 << 1 )
1091 #define CLKACT_FEE_DIS (0x0 << 1 ) /* DIS. Disable Flash memory clocks. */
1092 #define CLKACT_FEE_EN (0x1 << 1 ) /* EN. Enable Flash memory clocks. */
1093 
1094 /* CLKACT[DMA] - DMA clock enable bit. */
1095 #define CLKACT_DMA_BBA (*(volatile unsigned long *) 0x42049000)
1096 #define CLKACT_DMA_MSK (0x1 << 0 )
1097 #define CLKACT_DMA (0x1 << 0 )
1098 #define CLKACT_DMA_DIS (0x0 << 0 ) /* DIS.Disable DMA clock. */
1099 #define CLKACT_DMA_EN (0x1 << 0 ) /* EN. Enable DMA clock. */
1100 
1101 /* Reset Value for CLKPD*/
1102 #define CLKPD_RVAL 0x3FFF
1103 
1104 /* CLKPD[T1] - T1 clocks enable bit. */
1105 #define CLKPD_T1_BBA (*(volatile unsigned long *) 0x420490AC)
1106 #define CLKPD_T1_MSK (0x1 << 11 )
1107 #define CLKPD_T1 (0x1 << 11 )
1108 #define CLKPD_T1_DIS (0x0 << 11 ) /* DIS. Disable T1 clocks. */
1109 #define CLKPD_T1_EN (0x1 << 11 ) /* EN. Enable T1 clocks. */
1110 
1111 /* CLKPD[T0] - T0 clocks enable bit. */
1112 #define CLKPD_T0_BBA (*(volatile unsigned long *) 0x420490A8)
1113 #define CLKPD_T0_MSK (0x1 << 10 )
1114 #define CLKPD_T0 (0x1 << 10 )
1115 #define CLKPD_T0_DIS (0x0 << 10 ) /* DIS. Disable T0 clocks. */
1116 #define CLKPD_T0_EN (0x1 << 10 ) /* EN. Enable T0 clocks. */
1117 
1118 /* CLKPD[PWM] - PWM clocks enable bit. */
1119 #define CLKPD_PWM_BBA (*(volatile unsigned long *) 0x420490A4)
1120 #define CLKPD_PWM_MSK (0x1 << 9 )
1121 #define CLKPD_PWM (0x1 << 9 )
1122 #define CLKPD_PWM_DIS (0x0 << 9 ) /* DIS. Disable PWM clocks. */
1123 #define CLKPD_PWM_EN (0x1 << 9 ) /* EN. Enable PWM clocks. */
1124 
1125 /* CLKPD[I2C] - I2C clocks enable bit. */
1126 #define CLKPD_I2C_BBA (*(volatile unsigned long *) 0x420490A0)
1127 #define CLKPD_I2C_MSK (0x1 << 8 )
1128 #define CLKPD_I2C (0x1 << 8 )
1129 #define CLKPD_I2C_DIS (0x0 << 8 ) /* DIS. Disable I2C clocks. */
1130 #define CLKPD_I2C_EN (0x1 << 8 ) /* EN. Enable I2C clocks. */
1131 
1132 /* CLKPD[COM] - UART clocks enable bit. */
1133 #define CLKPD_COM_BBA (*(volatile unsigned long *) 0x4204909C)
1134 #define CLKPD_COM_MSK (0x1 << 7 )
1135 #define CLKPD_COM (0x1 << 7 )
1136 #define CLKPD_COM_DIS (0x0 << 7 ) /* DIS. Disable UART clocks. */
1137 #define CLKPD_COM_EN (0x1 << 7 ) /* EN. Enable UART clocks. */
1138 
1139 /* CLKPD[SPI1] - SPI1 clocks enable bit. */
1140 #define CLKPD_SPI1_BBA (*(volatile unsigned long *) 0x42049098)
1141 #define CLKPD_SPI1_MSK (0x1 << 6 )
1142 #define CLKPD_SPI1 (0x1 << 6 )
1143 #define CLKPD_SPI1_DIS (0x0 << 6 ) /* DIS. Disable SPI1 clocks. */
1144 #define CLKPD_SPI1_EN (0x1 << 6 ) /* EN. Enable SPI1 clocks. */
1145 
1146 /* CLKPD[SPI0] - SPI0 clocks enable bit. */
1147 #define CLKPD_SPI0_BBA (*(volatile unsigned long *) 0x42049094)
1148 #define CLKPD_SPI0_MSK (0x1 << 5 )
1149 #define CLKPD_SPI0 (0x1 << 5 )
1150 #define CLKPD_SPI0_DIS (0x0 << 5 ) /* DIS. Disable SPI0 clocks. */
1151 #define CLKPD_SPI0_EN (0x1 << 5 ) /* EN. Enable SPI0 clocks. */
1152 
1153 /* CLKPD[T2] - T2 clocks enable bit. */
1154 #define CLKPD_T2_BBA (*(volatile unsigned long *) 0x42049090)
1155 #define CLKPD_T2_MSK (0x1 << 4 )
1156 #define CLKPD_T2 (0x1 << 4 )
1157 #define CLKPD_T2_DIS (0x0 << 4 ) /* DIS. Disable T2 clocks. */
1158 #define CLKPD_T2_EN (0x1 << 4 ) /* EN. Enable T2 clocks. */
1159 
1160 /* CLKPD[ADC] - ADC clocks enable bit. */
1161 #define CLKPD_ADC_BBA (*(volatile unsigned long *) 0x4204908C)
1162 #define CLKPD_ADC_MSK (0x1 << 3 )
1163 #define CLKPD_ADC (0x1 << 3 )
1164 #define CLKPD_ADC_DIS (0x0 << 3 ) /* DIS. Disable ADC clocks. */
1165 #define CLKPD_ADC_EN (0x1 << 3 ) /* EN. Enable ADC clocks. */
1166 
1167 /* CLKPD[SRAM] - SRAM clocks enable bit. */
1168 #define CLKPD_SRAM_BBA (*(volatile unsigned long *) 0x42049088)
1169 #define CLKPD_SRAM_MSK (0x1 << 2 )
1170 #define CLKPD_SRAM (0x1 << 2 )
1171 #define CLKPD_SRAM_DIS (0x0 << 2 ) /* DIS. Disable SRAM memory clocks. */
1172 #define CLKPD_SRAM_EN (0x1 << 2 ) /* EN. Enable SRAM memory clocks. */
1173 
1174 /* CLKPD[FEE] - Flash clocks enable bit. */
1175 #define CLKPD_FEE_BBA (*(volatile unsigned long *) 0x42049084)
1176 #define CLKPD_FEE_MSK (0x1 << 1 )
1177 #define CLKPD_FEE (0x1 << 1 )
1178 #define CLKPD_FEE_DIS (0x0 << 1 ) /* DIS. Disable Flash memory clocks. */
1179 #define CLKPD_FEE_EN (0x1 << 1 ) /* EN. Enable Flash memory clocks. */
1180 
1181 /* CLKPD[DMA] - DMA clock enable bit. */
1182 #define CLKPD_DMA_BBA (*(volatile unsigned long *) 0x42049080)
1183 #define CLKPD_DMA_MSK (0x1 << 0 )
1184 #define CLKPD_DMA (0x1 << 0 )
1185 #define CLKPD_DMA_DIS (0x0 << 0 ) /* DIS. Disable DMA clock. */
1186 #define CLKPD_DMA_EN (0x1 << 0 ) /* EN. Enable DMA clock. */
1187 // ------------------------------------------------------------------------------------------------
1188 // ----- DMA -----
1189 // ------------------------------------------------------------------------------------------------
1190 
1191 
1192 /**
1193  * @brief Direct Memory Access (pADI_DMA)
1194  */
1195 
1196 #if (__NO_MMR_STRUCTS__==0)
1197 typedef struct { /*!< pADI_DMA Structure */
1198  __IO uint32_t DMASTA; /*!< Status Register */
1199  __IO uint32_t DMACFG; /*!< Configuration Register */
1200  __IO uint32_t DMAPDBPTR; /*!< Primary Control Database Pointer Register */
1201  __IO uint32_t DMAADBPTR; /*!< Alternate Control Database Pointer Register */
1202  __I uint32_t RESERVED0;
1203  __IO uint32_t DMASWREQ; /*!< Channel Software Request Register */
1204  __I uint32_t RESERVED1[2];
1205  __IO uint32_t DMARMSKSET; /*!< Channel Request Mask Set Register */
1206  __IO uint32_t DMARMSKCLR; /*!< Channel Request Mask Clear Register */
1207  __IO uint32_t DMAENSET; /*!< Channel Enable Set Register */
1208  __IO uint32_t DMAENCLR; /*!< Channel Enable Clear Register */
1209  __IO uint32_t DMAALTSET; /*!< Channel Primary-Alternate Set Register */
1210  __IO uint32_t DMAALTCLR; /*!< Channel Primary-Alternate Clear Register */
1211  __IO uint32_t DMAPRISET; /*!< Channel Priority Set Register */
1212  __IO uint32_t DMAPRICLR; /*!< Channel Priority Clear Register */
1213  __I uint32_t RESERVED2[3];
1214  __IO uint32_t DMAERRCLR; /*!< Bus Error Clear Register */
1215 } ADI_DMA_TypeDef;
1216 #else // (__NO_MMR_STRUCTS__==0)
1217 #define DMASTA (*(volatile unsigned long *) 0x40010000)
1218 #define DMACFG (*(volatile unsigned long *) 0x40010004)
1219 #define DMAPDBPTR (*(volatile unsigned long *) 0x40010008)
1220 #define DMAADBPTR (*(volatile unsigned long *) 0x4001000C)
1221 #define DMASWREQ (*(volatile unsigned long *) 0x40010014)
1222 #define DMARMSKSET (*(volatile unsigned long *) 0x40010020)
1223 #define DMARMSKCLR (*(volatile unsigned long *) 0x40010024)
1224 #define DMAENSET (*(volatile unsigned long *) 0x40010028)
1225 #define DMAENCLR (*(volatile unsigned long *) 0x4001002C)
1226 #define DMAALTSET (*(volatile unsigned long *) 0x40010030)
1227 #define DMAALTCLR (*(volatile unsigned long *) 0x40010034)
1228 #define DMAPRISET (*(volatile unsigned long *) 0x40010038)
1229 #define DMAPRICLR (*(volatile unsigned long *) 0x4001003C)
1230 #define DMAERRCLR (*(volatile unsigned long *) 0x4001004C)
1231 #endif // (__NO_MMR_STRUCTS__==0)
1232 
1233 /* Reset Value for DMASTA*/
1234 #define DMASTA_RVAL 0xD0000
1235 
1236 /* DMASTA[CHNLSMINUS1] - Number of available DMA channels minus 1. For example, if there are 14 channels available, the register reads back 0xD for these bits. */
1237 #define DMASTA_CHNLSMINUS1_MSK (0x1F << 16 )
1238 #define DMASTA_CHNLSMINUS1_FOURTEENCHNLS (0xD << 16 ) /* FOURTEENCHNLS - Controller configured to use 14 DMA channels. */
1239 
1240 /* DMASTA[STATE] - Current state of DMA controller state machine. Provides insight into the operation performed by the DMA at the time this register is read. */
1241 #define DMASTA_STATE_MSK (0xF << 4 )
1242 #define DMASTA_STATE_IDLE (0x0 << 4 ) /* IDL. Idle. */
1243 #define DMASTA_STATE_RDCHNLDATA (0x1 << 4 ) /* RDCHNLDATA. Reading channel controller data. */
1244 #define DMASTA_STATE_RDSRCENDPTR (0x2 << 4 ) /* RDSRCENDPTR. Reading source data end pointer. */
1245 #define DMASTA_STATE_RDDSTENDPTR (0x3 << 4 ) /* RDDSTENDPTR. Reading destination end pointer. */
1246 #define DMASTA_STATE_RDSRCDATA (0x4 << 4 ) /* RDSRCDATA. Reading source data. */
1247 #define DMASTA_STATE_WRDSTDATA (0x5 << 4 ) /* WRDSTDATA. Writing destination data. */
1248 #define DMASTA_STATE_WAITDMAREQCLR (0x6 << 4 ) /* WAITDMAREQCLR. Waiting for DMA request to clear. */
1249 #define DMASTA_STATE_WRCHNLDATA (0x7 << 4 ) /* WRCHNLDATA. Writing channel controller data. */
1250 #define DMASTA_STATE_STALLED (0x8 << 4 ) /* STALLED. Stalled. */
1251 #define DMASTA_STATE_DONE (0x9 << 4 ) /* DONE. Done. */
1252 #define DMASTA_STATE_SCATRGATHR (0xA << 4 ) /* SCATRGATHR. Peripheral scatter-gather transition. */
1253 
1254 /* DMASTA[ENABLE] - Enable status of the controller. */
1255 #define DMASTA_ENABLE_BBA (*(volatile unsigned long *) 0x42200000)
1256 #define DMASTA_ENABLE_MSK (0x1 << 0 )
1257 #define DMASTA_ENABLE (0x1 << 0 )
1258 #define DMASTA_ENABLE_CLR (0x0 << 0 ) /* CLR. Controller is disabled. */
1259 #define DMASTA_ENABLE_SET (0x1 << 0 ) /* SET. Controller is enabled. */
1260 
1261 /* Reset Value for DMACFG*/
1262 #define DMACFG_RVAL 0x0
1263 
1264 /* DMACFG[ENABLE] - Controller enable. */
1265 #define DMACFG_ENABLE_BBA (*(volatile unsigned long *) 0x42200080)
1266 #define DMACFG_ENABLE_MSK (0x1 << 0 )
1267 #define DMACFG_ENABLE (0x1 << 0 )
1268 #define DMACFG_ENABLE_DIS (0x0 << 0 ) /* DIS. Controller is disabled. */
1269 #define DMACFG_ENABLE_EN (0x1 << 0 ) /* EN. Controller is enabled. */
1270 
1271 /* Reset Value for DMAPDBPTR*/
1272 #define DMAPDBPTR_RVAL 0x0
1273 
1274 /* DMAPDBPTR[CTRLBASEPTR] - Pointer to the base address of the primary data structure. 5 + log (2)M LSBs are reserved and must be written 0. M is the number of channels. */
1275 #define DMAPDBPTR_CTRLBASEPTR_MSK (0xFFFFFFFF << 0 )
1276 
1277 /* Reset Value for DMAADBPTR*/
1278 #define DMAADBPTR_RVAL 0x100
1279 
1280 /* DMAADBPTR[ALTCBPTR] - Base address of the alternate data structure. */
1281 #define DMAADBPTR_ALTCBPTR_MSK (0xFFFFFFFF << 0 )
1282 
1283 /* Reset Value for DMASWREQ*/
1284 #define DMASWREQ_RVAL 0x0
1285 
1286 /* DMASWREQ[SPI0RX] - DMA SPI0 RX. */
1287 #define DMASWREQ_SPI0RX_BBA (*(volatile unsigned long *) 0x422002B4)
1288 #define DMASWREQ_SPI0RX_MSK (0x1 << 13 )
1289 #define DMASWREQ_SPI0RX (0x1 << 13 )
1290 #define DMASWREQ_SPI0RX_DIS (0x0 << 13 ) /* DIS. Does not create a DMA request for SPI0RX. */
1291 #define DMASWREQ_SPI0RX_EN (0x1 << 13 ) /* EN. Generates a DMA request for SPI0RX. */
1292 
1293 /* DMASWREQ[SPI0TX] - DMA SPI0 TX. */
1294 #define DMASWREQ_SPI0TX_BBA (*(volatile unsigned long *) 0x422002B0)
1295 #define DMASWREQ_SPI0TX_MSK (0x1 << 12 )
1296 #define DMASWREQ_SPI0TX (0x1 << 12 )
1297 #define DMASWREQ_SPI0TX_DIS (0x0 << 12 ) /* DIS. Does not create a DMA request for SPI0TX. */
1298 #define DMASWREQ_SPI0TX_EN (0x1 << 12 ) /* EN. Generates a DMA request for SPI0TX. */
1299 
1300 /* DMASWREQ[ADC] - DMA ADC. */
1301 #define DMASWREQ_ADC_BBA (*(volatile unsigned long *) 0x422002AC)
1302 #define DMASWREQ_ADC_MSK (0x1 << 11 )
1303 #define DMASWREQ_ADC (0x1 << 11 )
1304 #define DMASWREQ_ADC_DIS (0x0 << 11 ) /* DIS. Does not create a DMA request for ADC. */
1305 #define DMASWREQ_ADC_EN (0x1 << 11 ) /* EN. Generates a DMA request for ADC. */
1306 
1307 /* DMASWREQ[I2CMRX] - DMA I2C Master RX. */
1308 #define DMASWREQ_I2CMRX_BBA (*(volatile unsigned long *) 0x4220029C)
1309 #define DMASWREQ_I2CMRX_MSK (0x1 << 7 )
1310 #define DMASWREQ_I2CMRX (0x1 << 7 )
1311 #define DMASWREQ_I2CMRX_DIS (0x0 << 7 ) /* DIS. Does not create a DMA request for I2CMRX. */
1312 #define DMASWREQ_I2CMRX_EN (0x1 << 7 ) /* EN. Generates a DMA request for I2CMRX. */
1313 
1314 /* DMASWREQ[I2CMTX] - DMA I2C Master TX. */
1315 #define DMASWREQ_I2CMTX_BBA (*(volatile unsigned long *) 0x42200298)
1316 #define DMASWREQ_I2CMTX_MSK (0x1 << 6 )
1317 #define DMASWREQ_I2CMTX (0x1 << 6 )
1318 #define DMASWREQ_I2CMTX_DIS (0x0 << 6 ) /* DIS. Does not create a DMA request for I2CMTX. */
1319 #define DMASWREQ_I2CMTX_EN (0x1 << 6 ) /* EN. Generates a DMA request for I2CMTX. */
1320 
1321 /* DMASWREQ[I2CSRX] - DMA I2C Slave RX. */
1322 #define DMASWREQ_I2CSRX_BBA (*(volatile unsigned long *) 0x42200294)
1323 #define DMASWREQ_I2CSRX_MSK (0x1 << 5 )
1324 #define DMASWREQ_I2CSRX (0x1 << 5 )
1325 #define DMASWREQ_I2CSRX_DIS (0x0 << 5 ) /* DIS. Does not create a DMA request for I2CSRX. */
1326 #define DMASWREQ_I2CSRX_EN (0x1 << 5 ) /* EN. Generates a DMA request for I2CSRX. */
1327 
1328 /* DMASWREQ[I2CSTX] - DMA I2C Slave TX. */
1329 #define DMASWREQ_I2CSTX_BBA (*(volatile unsigned long *) 0x42200290)
1330 #define DMASWREQ_I2CSTX_MSK (0x1 << 4 )
1331 #define DMASWREQ_I2CSTX (0x1 << 4 )
1332 #define DMASWREQ_I2CSTX_DIS (0x0 << 4 ) /* DIS. Does not create a DMA request for I2CSTX. */
1333 #define DMASWREQ_I2CSTX_EN (0x1 << 4 ) /* EN. Generates a DMA request for I2CSTX. */
1334 
1335 /* DMASWREQ[UARTRX] - DMA UART RX. */
1336 #define DMASWREQ_UARTRX_BBA (*(volatile unsigned long *) 0x4220028C)
1337 #define DMASWREQ_UARTRX_MSK (0x1 << 3 )
1338 #define DMASWREQ_UARTRX (0x1 << 3 )
1339 #define DMASWREQ_UARTRX_DIS (0x0 << 3 ) /* DIS. Does not create a DMA request for UARTRX. */
1340 #define DMASWREQ_UARTRX_EN (0x1 << 3 ) /* EN. Generates a DMA request for UARTRX. */
1341 
1342 /* DMASWREQ[UARTTX] - DMA UART TX. */
1343 #define DMASWREQ_UARTTX_BBA (*(volatile unsigned long *) 0x42200288)
1344 #define DMASWREQ_UARTTX_MSK (0x1 << 2 )
1345 #define DMASWREQ_UARTTX (0x1 << 2 )
1346 #define DMASWREQ_UARTTX_DIS (0x0 << 2 ) /* DIS. Does not create a DMA request for UARTTX. */
1347 #define DMASWREQ_UARTTX_EN (0x1 << 2 ) /* EN. Generates a DMA request for UARTTX. */
1348 
1349 /* DMASWREQ[SPI1RX] - DMA SPI 1 RX. */
1350 #define DMASWREQ_SPI1RX_BBA (*(volatile unsigned long *) 0x42200284)
1351 #define DMASWREQ_SPI1RX_MSK (0x1 << 1 )
1352 #define DMASWREQ_SPI1RX (0x1 << 1 )
1353 #define DMASWREQ_SPI1RX_DIS (0x0 << 1 ) /* DIS. Does not create a DMA request for SPI1RX. */
1354 #define DMASWREQ_SPI1RX_EN (0x1 << 1 ) /* EN. Generates a DMA request for SPI1RX. */
1355 
1356 /* DMASWREQ[SPI1TX] - DMA SPI 1 TX. */
1357 #define DMASWREQ_SPI1TX_BBA (*(volatile unsigned long *) 0x42200280)
1358 #define DMASWREQ_SPI1TX_MSK (0x1 << 0 )
1359 #define DMASWREQ_SPI1TX (0x1 << 0 )
1360 #define DMASWREQ_SPI1TX_DIS (0x0 << 0 ) /* DIS. Does not create a DMA request for SPI1TX. */
1361 #define DMASWREQ_SPI1TX_EN (0x1 << 0 ) /* EN. Generates a DMA request for SPI1TX. */
1362 
1363 /* Reset Value for DMARMSKSET*/
1364 #define DMARMSKSET_RVAL 0x0
1365 
1366 /* DMARMSKSET[SPI0RX] - DMA SPI0 RX. */
1367 #define DMARMSKSET_SPI0RX_BBA (*(volatile unsigned long *) 0x42200434)
1368 #define DMARMSKSET_SPI0RX_MSK (0x1 << 13 )
1369 #define DMARMSKSET_SPI0RX (0x1 << 13 )
1370 #define DMARMSKSET_SPI0RX_DIS (0x0 << 13 ) /* DIS. When read: Requests are enabled for SPI0RX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1371 #define DMARMSKSET_SPI0RX_EN (0x1 << 13 ) /* EN. When read: Requests are disabled for SPI0RX. When written: Disables peripheral associated with SPI0RX from generating DMA requests. */
1372 
1373 /* DMARMSKSET[SPI0TX] - DMA SPI0 TX. */
1374 #define DMARMSKSET_SPI0TX_BBA (*(volatile unsigned long *) 0x42200430)
1375 #define DMARMSKSET_SPI0TX_MSK (0x1 << 12 )
1376 #define DMARMSKSET_SPI0TX (0x1 << 12 )
1377 #define DMARMSKSET_SPI0TX_DIS (0x0 << 12 ) /* DIS. When read: Requests are enabled for SPI0TX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1378 #define DMARMSKSET_SPI0TX_EN (0x1 << 12 ) /* EN. When read: Requests are disabled for SPI0TX. When written: Disables peripheral associated with SPI0TX from generating DMA requests. */
1379 
1380 /* DMARMSKSET[ADC] - DMA ADC. */
1381 #define DMARMSKSET_ADC_BBA (*(volatile unsigned long *) 0x4220042C)
1382 #define DMARMSKSET_ADC_MSK (0x1 << 11 )
1383 #define DMARMSKSET_ADC (0x1 << 11 )
1384 #define DMARMSKSET_ADC_DIS (0x0 << 11 ) /* DIS. When read: Requests are enabled for ADC. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1385 #define DMARMSKSET_ADC_EN (0x1 << 11 ) /* EN. When read: Requests are disabled for ADC. When written: Disables peripheral associated with ADC from generating DMA requests. */
1386 
1387 /* DMARMSKSET[I2CMRX] - DMA I2C Master RX. */
1388 #define DMARMSKSET_I2CMRX_BBA (*(volatile unsigned long *) 0x4220041C)
1389 #define DMARMSKSET_I2CMRX_MSK (0x1 << 7 )
1390 #define DMARMSKSET_I2CMRX (0x1 << 7 )
1391 #define DMARMSKSET_I2CMRX_DIS (0x0 << 7 ) /* DIS. When read: Requests are enabled for I2CMRX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1392 #define DMARMSKSET_I2CMRX_EN (0x1 << 7 ) /* EN. When read: Requests are disabled for I2CMRX. When written: Disables peripheral associated with I2CMRX from generating DMA requests. */
1393 
1394 /* DMARMSKSET[I2CMTX] - DMA I2C Master TX. */
1395 #define DMARMSKSET_I2CMTX_BBA (*(volatile unsigned long *) 0x42200418)
1396 #define DMARMSKSET_I2CMTX_MSK (0x1 << 6 )
1397 #define DMARMSKSET_I2CMTX (0x1 << 6 )
1398 #define DMARMSKSET_I2CMTX_DIS (0x0 << 6 ) /* DIS. When read: Requests are enabled for I2CMTX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1399 #define DMARMSKSET_I2CMTX_EN (0x1 << 6 ) /* EN. When read: Requests are disabled for I2CMTX. When written: Disables peripheral associated with I2CMTX from generating DMA requests. */
1400 
1401 /* DMARMSKSET[I2CSRX] - DMA I2C Slave RX. */
1402 #define DMARMSKSET_I2CSRX_BBA (*(volatile unsigned long *) 0x42200414)
1403 #define DMARMSKSET_I2CSRX_MSK (0x1 << 5 )
1404 #define DMARMSKSET_I2CSRX (0x1 << 5 )
1405 #define DMARMSKSET_I2CSRX_DIS (0x0 << 5 ) /* DIS. When read: Requests are enabled for I2CSRX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1406 #define DMARMSKSET_I2CSRX_EN (0x1 << 5 ) /* EN. When read: Requests are disabled for I2CSRX. When written: Disables peripheral associated with I2CSRX from generating DMA requests. */
1407 
1408 /* DMARMSKSET[I2CSTX] - DMA I2C Slave TX. */
1409 #define DMARMSKSET_I2CSTX_BBA (*(volatile unsigned long *) 0x42200410)
1410 #define DMARMSKSET_I2CSTX_MSK (0x1 << 4 )
1411 #define DMARMSKSET_I2CSTX (0x1 << 4 )
1412 #define DMARMSKSET_I2CSTX_DIS (0x0 << 4 ) /* DIS. When read: Requests are enabled forI2CSTX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1413 #define DMARMSKSET_I2CSTX_EN (0x1 << 4 ) /* EN. When read: Requests are disabled for I2CSTX. When written: Disables peripheral associated with I2CSTX from generating DMA requests. */
1414 
1415 /* DMARMSKSET[UARTRX] - DMA UART RX. */
1416 #define DMARMSKSET_UARTRX_BBA (*(volatile unsigned long *) 0x4220040C)
1417 #define DMARMSKSET_UARTRX_MSK (0x1 << 3 )
1418 #define DMARMSKSET_UARTRX (0x1 << 3 )
1419 #define DMARMSKSET_UARTRX_DIS (0x0 << 3 ) /* DIS. When read: Requests are enabled for UARTRX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1420 #define DMARMSKSET_UARTRX_EN (0x1 << 3 ) /* EN. When read: Requests are disabled for UARTRX. When written: Disables peripheral associated with UARTRX from generating DMA requests. */
1421 
1422 /* DMARMSKSET[UARTTX] - DMA UART TX. */
1423 #define DMARMSKSET_UARTTX_BBA (*(volatile unsigned long *) 0x42200408)
1424 #define DMARMSKSET_UARTTX_MSK (0x1 << 2 )
1425 #define DMARMSKSET_UARTTX (0x1 << 2 )
1426 #define DMARMSKSET_UARTTX_DIS (0x0 << 2 ) /* DIS. When read: Requests are enabled for UARTTX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1427 #define DMARMSKSET_UARTTX_EN (0x1 << 2 ) /* EN. When read: Requests are disabled for UARTTX. When written: Disables peripheral associated with UARTTX from generating DMA requests. */
1428 
1429 /* DMARMSKSET[SPI1RX] - DMA SPI 1 RX. */
1430 #define DMARMSKSET_SPI1RX_BBA (*(volatile unsigned long *) 0x42200404)
1431 #define DMARMSKSET_SPI1RX_MSK (0x1 << 1 )
1432 #define DMARMSKSET_SPI1RX (0x1 << 1 )
1433 #define DMARMSKSET_SPI1RX_DIS (0x0 << 1 ) /* DIS. When read: Requests are enabled for SPI1RX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1434 #define DMARMSKSET_SPI1RX_EN (0x1 << 1 ) /* EN. When read: Requests are disabled for SPI1RX. When written: Disables peripheral associated with SPI1RX from generating DMA requests. */
1435 
1436 /* DMARMSKSET[SPI1TX] - DMA SPI 1 TX. */
1437 #define DMARMSKSET_SPI1TX_BBA (*(volatile unsigned long *) 0x42200400)
1438 #define DMARMSKSET_SPI1TX_MSK (0x1 << 0 )
1439 #define DMARMSKSET_SPI1TX (0x1 << 0 )
1440 #define DMARMSKSET_SPI1TX_DIS (0x0 << 0 ) /* DIS. When read: Requests are enabled for SPI1TX. When written: No effect. Use the DMARMSKCLR register to enable DMA requests. */
1441 #define DMARMSKSET_SPI1TX_EN (0x1 << 0 ) /* EN. When read: Requests are disabled for SPI1TX When written: Disables peripheral associated with SPI1TX from generating DMA requests. */
1442 
1443 /* Reset Value for DMARMSKCLR*/
1444 #define DMARMSKCLR_RVAL 0x0
1445 
1446 /* DMARMSKCLR[SPI0RX] - DMA SPI0 RX. */
1447 #define DMARMSKCLR_SPI0RX_BBA (*(volatile unsigned long *) 0x422004B4)
1448 #define DMARMSKCLR_SPI0RX_MSK (0x1 << 13 )
1449 #define DMARMSKCLR_SPI0RX (0x1 << 13 )
1450 #define DMARMSKCLR_SPI0RX_DIS (0x0 << 13 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1451 #define DMARMSKCLR_SPI0RX_EN (0x1 << 13 ) /* EN. Enables peripheral associated with SPI0RX to generate DMA requests. */
1452 
1453 /* DMARMSKCLR[SPI0TX] - DMA SPI0 TX. */
1454 #define DMARMSKCLR_SPI0TX_BBA (*(volatile unsigned long *) 0x422004B0)
1455 #define DMARMSKCLR_SPI0TX_MSK (0x1 << 12 )
1456 #define DMARMSKCLR_SPI0TX (0x1 << 12 )
1457 #define DMARMSKCLR_SPI0TX_DIS (0x0 << 12 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1458 #define DMARMSKCLR_SPI0TX_EN (0x1 << 12 ) /* EN. Enables peripheral associated with SPI0TX to generate DMA requests. */
1459 
1460 /* DMARMSKCLR[ADC] - DMA ADC. */
1461 #define DMARMSKCLR_ADC_BBA (*(volatile unsigned long *) 0x422004AC)
1462 #define DMARMSKCLR_ADC_MSK (0x1 << 11 )
1463 #define DMARMSKCLR_ADC (0x1 << 11 )
1464 #define DMARMSKCLR_ADC_DIS (0x0 << 11 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1465 #define DMARMSKCLR_ADC_EN (0x1 << 11 ) /* EN. Enables peripheral associated with ADC to generate DMA requests. */
1466 
1467 /* DMARMSKCLR[I2CMRX] - DMA I2C Master RX. */
1468 #define DMARMSKCLR_I2CMRX_BBA (*(volatile unsigned long *) 0x4220049C)
1469 #define DMARMSKCLR_I2CMRX_MSK (0x1 << 7 )
1470 #define DMARMSKCLR_I2CMRX (0x1 << 7 )
1471 #define DMARMSKCLR_I2CMRX_DIS (0x0 << 7 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1472 #define DMARMSKCLR_I2CMRX_EN (0x1 << 7 ) /* EN. Enables peripheral associated with I2CMRX to generate DMA requests. */
1473 
1474 /* DMARMSKCLR[I2CMTX] - DMA I2C Master TX. */
1475 #define DMARMSKCLR_I2CMTX_BBA (*(volatile unsigned long *) 0x42200498)
1476 #define DMARMSKCLR_I2CMTX_MSK (0x1 << 6 )
1477 #define DMARMSKCLR_I2CMTX (0x1 << 6 )
1478 #define DMARMSKCLR_I2CMTX_DIS (0x0 << 6 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1479 #define DMARMSKCLR_I2CMTX_EN (0x1 << 6 ) /* EN. Enables peripheral associated with I2CMTX to generate DMA requests. */
1480 
1481 /* DMARMSKCLR[I2CSRX] - DMA I2C Slave RX. */
1482 #define DMARMSKCLR_I2CSRX_BBA (*(volatile unsigned long *) 0x42200494)
1483 #define DMARMSKCLR_I2CSRX_MSK (0x1 << 5 )
1484 #define DMARMSKCLR_I2CSRX (0x1 << 5 )
1485 #define DMARMSKCLR_I2CSRX_DIS (0x0 << 5 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1486 #define DMARMSKCLR_I2CSRX_EN (0x1 << 5 ) /* EN. Enables peripheral associated with I2CSRX to generate DMA requests. */
1487 
1488 /* DMARMSKCLR[I2CSTX] - DMA I2C Slave TX. */
1489 #define DMARMSKCLR_I2CSTX_BBA (*(volatile unsigned long *) 0x42200490)
1490 #define DMARMSKCLR_I2CSTX_MSK (0x1 << 4 )
1491 #define DMARMSKCLR_I2CSTX (0x1 << 4 )
1492 #define DMARMSKCLR_I2CSTX_DIS (0x0 << 4 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1493 #define DMARMSKCLR_I2CSTX_EN (0x1 << 4 ) /* EN. Enables peripheral associated with I2CSTX to generate DMA requests. */
1494 
1495 /* DMARMSKCLR[UARTRX] - DMA UART RX. */
1496 #define DMARMSKCLR_UARTRX_BBA (*(volatile unsigned long *) 0x4220048C)
1497 #define DMARMSKCLR_UARTRX_MSK (0x1 << 3 )
1498 #define DMARMSKCLR_UARTRX (0x1 << 3 )
1499 #define DMARMSKCLR_UARTRX_DIS (0x0 << 3 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1500 #define DMARMSKCLR_UARTRX_EN (0x1 << 3 ) /* EN. Enables peripheral associated with UARTRX to generate DMA requests. */
1501 
1502 /* DMARMSKCLR[UARTTX] - DMA UART TX. */
1503 #define DMARMSKCLR_UARTTX_BBA (*(volatile unsigned long *) 0x42200488)
1504 #define DMARMSKCLR_UARTTX_MSK (0x1 << 2 )
1505 #define DMARMSKCLR_UARTTX (0x1 << 2 )
1506 #define DMARMSKCLR_UARTTX_DIS (0x0 << 2 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1507 #define DMARMSKCLR_UARTTX_EN (0x1 << 2 ) /* EN. Enables peripheral associated with UARTTX to generate DMA requests. */
1508 
1509 /* DMARMSKCLR[SPI1RX] - DMA SPI 1 RX. */
1510 #define DMARMSKCLR_SPI1RX_BBA (*(volatile unsigned long *) 0x42200484)
1511 #define DMARMSKCLR_SPI1RX_MSK (0x1 << 1 )
1512 #define DMARMSKCLR_SPI1RX (0x1 << 1 )
1513 #define DMARMSKCLR_SPI1RX_DIS (0x0 << 1 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1514 #define DMARMSKCLR_SPI1RX_EN (0x1 << 1 ) /* EN. Enables peripheral associated with SPI1RX to generate DMA requests. */
1515 
1516 /* DMARMSKCLR[SPI1TX] - DMA SPI 1 TX. */
1517 #define DMARMSKCLR_SPI1TX_BBA (*(volatile unsigned long *) 0x42200480)
1518 #define DMARMSKCLR_SPI1TX_MSK (0x1 << 0 )
1519 #define DMARMSKCLR_SPI1TX (0x1 << 0 )
1520 #define DMARMSKCLR_SPI1TX_DIS (0x0 << 0 ) /* DIS. No effect. Use the DMARMSKSET register to disable DMA requests. */
1521 #define DMARMSKCLR_SPI1TX_EN (0x1 << 0 ) /* EN. Enables peripheral associated with SPI1TX to generate DMA requests. */
1522 
1523 /* Reset Value for DMAENSET*/
1524 #define DMAENSET_RVAL 0x0
1525 
1526 /* DMAENSET[SPI0RX] - DMA SPI0 RX */
1527 #define DMAENSET_SPI0RX_BBA (*(volatile unsigned long *) 0x42200534)
1528 #define DMAENSET_SPI0RX_MSK (0x1 << 13 )
1529 #define DMAENSET_SPI0RX (0x1 << 13 )
1530 #define DMAENSET_SPI0RX_DIS (0x0 << 13 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1531 #define DMAENSET_SPI0RX_EN (0x1 << 13 ) /* EN. Enables SPI0RX. */
1532 
1533 /* DMAENSET[SPI0TX] - DMA SPI0 TX. */
1534 #define DMAENSET_SPI0TX_BBA (*(volatile unsigned long *) 0x42200530)
1535 #define DMAENSET_SPI0TX_MSK (0x1 << 12 )
1536 #define DMAENSET_SPI0TX (0x1 << 12 )
1537 #define DMAENSET_SPI0TX_DIS (0x0 << 12 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1538 #define DMAENSET_SPI0TX_EN (0x1 << 12 ) /* EN. Enables SPI0TX. */
1539 
1540 /* DMAENSET[ADC] - DMA ADC. */
1541 #define DMAENSET_ADC_BBA (*(volatile unsigned long *) 0x4220052C)
1542 #define DMAENSET_ADC_MSK (0x1 << 11 )
1543 #define DMAENSET_ADC (0x1 << 11 )
1544 #define DMAENSET_ADC_DIS (0x0 << 11 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1545 #define DMAENSET_ADC_EN (0x1 << 11 ) /* EN. Enables ADC. */
1546 
1547 /* DMAENSET[I2CMRX] - DMA I2C Master RX. */
1548 #define DMAENSET_I2CMRX_BBA (*(volatile unsigned long *) 0x4220051C)
1549 #define DMAENSET_I2CMRX_MSK (0x1 << 7 )
1550 #define DMAENSET_I2CMRX (0x1 << 7 )
1551 #define DMAENSET_I2CMRX_DIS (0x0 << 7 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1552 #define DMAENSET_I2CMRX_EN (0x1 << 7 ) /* EN. . Enables I2CMRX. */
1553 
1554 /* DMAENSET[I2CMTX] - DMA I2C Master TX. */
1555 #define DMAENSET_I2CMTX_BBA (*(volatile unsigned long *) 0x42200518)
1556 #define DMAENSET_I2CMTX_MSK (0x1 << 6 )
1557 #define DMAENSET_I2CMTX (0x1 << 6 )
1558 #define DMAENSET_I2CMTX_DIS (0x0 << 6 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1559 #define DMAENSET_I2CMTX_EN (0x1 << 6 ) /* EN. . Enables I2CMTX. */
1560 
1561 /* DMAENSET[I2CSRX] - DMA I2C Slave RX. */
1562 #define DMAENSET_I2CSRX_BBA (*(volatile unsigned long *) 0x42200514)
1563 #define DMAENSET_I2CSRX_MSK (0x1 << 5 )
1564 #define DMAENSET_I2CSRX (0x1 << 5 )
1565 #define DMAENSET_I2CSRX_DIS (0x0 << 5 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1566 #define DMAENSET_I2CSRX_EN (0x1 << 5 ) /* EN. Enables I2CSRX. */
1567 
1568 /* DMAENSET[I2CSTX] - DMA I2C Slave TX. */
1569 #define DMAENSET_I2CSTX_BBA (*(volatile unsigned long *) 0x42200510)
1570 #define DMAENSET_I2CSTX_MSK (0x1 << 4 )
1571 #define DMAENSET_I2CSTX (0x1 << 4 )
1572 #define DMAENSET_I2CSTX_DIS (0x0 << 4 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1573 #define DMAENSET_I2CSTX_EN (0x1 << 4 ) /* EN. Enables I2CSTX. */
1574 
1575 /* DMAENSET[UARTRX] - DMA UART RX. */
1576 #define DMAENSET_UARTRX_BBA (*(volatile unsigned long *) 0x4220050C)
1577 #define DMAENSET_UARTRX_MSK (0x1 << 3 )
1578 #define DMAENSET_UARTRX (0x1 << 3 )
1579 #define DMAENSET_UARTRX_DIS (0x0 << 3 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1580 #define DMAENSET_UARTRX_EN (0x1 << 3 ) /* EN. Enables UARTRX. */
1581 
1582 /* DMAENSET[UARTTX] - DMA UART TX. */
1583 #define DMAENSET_UARTTX_BBA (*(volatile unsigned long *) 0x42200508)
1584 #define DMAENSET_UARTTX_MSK (0x1 << 2 )
1585 #define DMAENSET_UARTTX (0x1 << 2 )
1586 #define DMAENSET_UARTTX_DIS (0x0 << 2 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1587 #define DMAENSET_UARTTX_EN (0x1 << 2 ) /* EN. Enables UARTTX. */
1588 
1589 /* DMAENSET[SPI1RX] - DMA SPI 1 RX. */
1590 #define DMAENSET_SPI1RX_BBA (*(volatile unsigned long *) 0x42200504)
1591 #define DMAENSET_SPI1RX_MSK (0x1 << 1 )
1592 #define DMAENSET_SPI1RX (0x1 << 1 )
1593 #define DMAENSET_SPI1RX_DIS (0x0 << 1 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1594 #define DMAENSET_SPI1RX_EN (0x1 << 1 ) /* EN. Enables SPI1RX. */
1595 
1596 /* DMAENSET[SPI1TX] - DMA SPI 1 TX. */
1597 #define DMAENSET_SPI1TX_BBA (*(volatile unsigned long *) 0x42200500)
1598 #define DMAENSET_SPI1TX_MSK (0x1 << 0 )
1599 #define DMAENSET_SPI1TX (0x1 << 0 )
1600 #define DMAENSET_SPI1TX_DIS (0x0 << 0 ) /* DIS. No effect. Use the DMAENCLR register to disable the channel. */
1601 #define DMAENSET_SPI1TX_EN (0x1 << 0 ) /* EN. Enables SPI1TX. */
1602 
1603 /* Reset Value for DMAENCLR*/
1604 #define DMAENCLR_RVAL 0x0
1605 
1606 /* DMAENCLR[SPI0RX] - DMA SPI0 RX */
1607 #define DMAENCLR_SPI0RX_BBA (*(volatile unsigned long *) 0x422005B4)
1608 #define DMAENCLR_SPI0RX_MSK (0x1 << 13 )
1609 #define DMAENCLR_SPI0RX (0x1 << 13 )
1610 #define DMAENCLR_SPI0RX_DIS (0x0 << 13 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1611 #define DMAENCLR_SPI0RX_EN (0x1 << 13 ) /* EN. Disables SPI0RX. */
1612 
1613 /* DMAENCLR[SPI0TX] - DMA SPI0 TX */
1614 #define DMAENCLR_SPI0TX_BBA (*(volatile unsigned long *) 0x422005B0)
1615 #define DMAENCLR_SPI0TX_MSK (0x1 << 12 )
1616 #define DMAENCLR_SPI0TX (0x1 << 12 )
1617 #define DMAENCLR_SPI0TX_DIS (0x0 << 12 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1618 #define DMAENCLR_SPI0TX_EN (0x1 << 12 ) /* EN. Disables SPI0TX. */
1619 
1620 /* DMAENCLR[ADC] - DMA ADC. */
1621 #define DMAENCLR_ADC_BBA (*(volatile unsigned long *) 0x422005AC)
1622 #define DMAENCLR_ADC_MSK (0x1 << 11 )
1623 #define DMAENCLR_ADC (0x1 << 11 )
1624 #define DMAENCLR_ADC_DIS (0x0 << 11 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1625 #define DMAENCLR_ADC_EN (0x1 << 11 ) /* EN. Disables ADC. */
1626 
1627 /* DMAENCLR[I2CMRX] - DMA I2C Master RX. */
1628 #define DMAENCLR_I2CMRX_BBA (*(volatile unsigned long *) 0x4220059C)
1629 #define DMAENCLR_I2CMRX_MSK (0x1 << 7 )
1630 #define DMAENCLR_I2CMRX (0x1 << 7 )
1631 #define DMAENCLR_I2CMRX_DIS (0x0 << 7 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1632 #define DMAENCLR_I2CMRX_EN (0x1 << 7 ) /* EN. Disables I2CMRX. */
1633 
1634 /* DMAENCLR[I2CMTX] - DMA I2C Master TX. */
1635 #define DMAENCLR_I2CMTX_BBA (*(volatile unsigned long *) 0x42200598)
1636 #define DMAENCLR_I2CMTX_MSK (0x1 << 6 )
1637 #define DMAENCLR_I2CMTX (0x1 << 6 )
1638 #define DMAENCLR_I2CMTX_DIS (0x0 << 6 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1639 #define DMAENCLR_I2CMTX_EN (0x1 << 6 ) /* EN. Disables I2CMTX. */
1640 
1641 /* DMAENCLR[I2CSRX] - DMA I2C Slave RX. */
1642 #define DMAENCLR_I2CSRX_BBA (*(volatile unsigned long *) 0x42200594)
1643 #define DMAENCLR_I2CSRX_MSK (0x1 << 5 )
1644 #define DMAENCLR_I2CSRX (0x1 << 5 )
1645 #define DMAENCLR_I2CSRX_DIS (0x0 << 5 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1646 #define DMAENCLR_I2CSRX_EN (0x1 << 5 ) /* EN. Disables I2CSRX. */
1647 
1648 /* DMAENCLR[I2CSTX] - DMA I2C Slave TX. */
1649 #define DMAENCLR_I2CSTX_BBA (*(volatile unsigned long *) 0x42200590)
1650 #define DMAENCLR_I2CSTX_MSK (0x1 << 4 )
1651 #define DMAENCLR_I2CSTX (0x1 << 4 )
1652 #define DMAENCLR_I2CSTX_DIS (0x0 << 4 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1653 #define DMAENCLR_I2CSTX_EN (0x1 << 4 ) /* EN. Disables I2CSTX. */
1654 
1655 /* DMAENCLR[UARTRX] - DMA UART RX. */
1656 #define DMAENCLR_UARTRX_BBA (*(volatile unsigned long *) 0x4220058C)
1657 #define DMAENCLR_UARTRX_MSK (0x1 << 3 )
1658 #define DMAENCLR_UARTRX (0x1 << 3 )
1659 #define DMAENCLR_UARTRX_DIS (0x0 << 3 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1660 #define DMAENCLR_UARTRX_EN (0x1 << 3 ) /* EN. Disables UARTRX. */
1661 
1662 /* DMAENCLR[UARTTX] - DMA UART TX. */
1663 #define DMAENCLR_UARTTX_BBA (*(volatile unsigned long *) 0x42200588)
1664 #define DMAENCLR_UARTTX_MSK (0x1 << 2 )
1665 #define DMAENCLR_UARTTX (0x1 << 2 )
1666 #define DMAENCLR_UARTTX_DIS (0x0 << 2 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1667 #define DMAENCLR_UARTTX_EN (0x1 << 2 ) /* EN. Disables UARTTX. */
1668 
1669 /* DMAENCLR[SPI1RX] - DMA SPI 1 RX. */
1670 #define DMAENCLR_SPI1RX_BBA (*(volatile unsigned long *) 0x42200584)
1671 #define DMAENCLR_SPI1RX_MSK (0x1 << 1 )
1672 #define DMAENCLR_SPI1RX (0x1 << 1 )
1673 #define DMAENCLR_SPI1RX_DIS (0x0 << 1 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1674 #define DMAENCLR_SPI1RX_EN (0x1 << 1 ) /* EN. Disables SPI1RX. */
1675 
1676 /* DMAENCLR[SPI1TX] - DMA SPI 1 TX. */
1677 #define DMAENCLR_SPI1TX_BBA (*(volatile unsigned long *) 0x42200580)
1678 #define DMAENCLR_SPI1TX_MSK (0x1 << 0 )
1679 #define DMAENCLR_SPI1TX (0x1 << 0 )
1680 #define DMAENCLR_SPI1TX_DIS (0x0 << 0 ) /* DIS. No effect. Use the DMAENSET register to enable the channel. */
1681 #define DMAENCLR_SPI1TX_EN (0x1 << 0 ) /* EN. Disables SPI1TX. */
1682 
1683 /* Reset Value for DMAALTSET*/
1684 #define DMAALTSET_RVAL 0x0
1685 
1686 /* DMAALTSET[SPI0RX] - DMA SPI0 RX. */
1687 #define DMAALTSET_SPI0RX_BBA (*(volatile unsigned long *) 0x42200634)
1688 #define DMAALTSET_SPI0RX_MSK (0x1 << 13 )
1689 #define DMAALTSET_SPI0RX (0x1 << 13 )
1690 #define DMAALTSET_SPI0RX_DIS (0x0 << 13 ) /* DIS. When read: DMA SPI0RX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set SPI0RX to 0. */
1691 #define DMAALTSET_SPI0RX_EN (0x1 << 13 ) /* EN. When read: DMA SPI0RX is using the alternate data structure. When written: Selects the alternate data structure for SPI0RX. */
1692 
1693 /* DMAALTSET[SPI0TX] - DMA SPI0 TX. */
1694 #define DMAALTSET_SPI0TX_BBA (*(volatile unsigned long *) 0x42200630)
1695 #define DMAALTSET_SPI0TX_MSK (0x1 << 12 )
1696 #define DMAALTSET_SPI0TX (0x1 << 12 )
1697 #define DMAALTSET_SPI0TX_DIS (0x0 << 12 ) /* DIS. When read: DMA SPI0TX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set SPI0TX to 0. */
1698 #define DMAALTSET_SPI0TX_EN (0x1 << 12 ) /* EN. When read: DMA SPI0TX is using the alternate data structure. When written: Selects the alternate data structure for SPI0TX. */
1699 
1700 /* DMAALTSET[ADC] - DMA ADC. */
1701 #define DMAALTSET_ADC_BBA (*(volatile unsigned long *) 0x4220062C)
1702 #define DMAALTSET_ADC_MSK (0x1 << 11 )
1703 #define DMAALTSET_ADC (0x1 << 11 )
1704 #define DMAALTSET_ADC_DIS (0x0 << 11 ) /* DIS. When read: DMA ADC is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set ADC to 0. */
1705 #define DMAALTSET_ADC_EN (0x1 << 11 ) /* EN. When read: DMA ADC is using the alternate data structure. When written: Selects the alternate data structure for ADC. */
1706 
1707 /* DMAALTSET[I2CMRX] - DMA I2C Master RX. */
1708 #define DMAALTSET_I2CMRX_BBA (*(volatile unsigned long *) 0x4220061C)
1709 #define DMAALTSET_I2CMRX_MSK (0x1 << 7 )
1710 #define DMAALTSET_I2CMRX (0x1 << 7 )
1711 #define DMAALTSET_I2CMRX_DIS (0x0 << 7 ) /* DIS. When read: DMA I2CMRX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set I2CMRX to 0. */
1712 #define DMAALTSET_I2CMRX_EN (0x1 << 7 ) /* EN. When read: DMA I2CMRX is using the alternate data structure. When written: Selects the alternate data structure for I2CMRX. */
1713 
1714 /* DMAALTSET[I2CMTX] - DMA I2C Master TX. */
1715 #define DMAALTSET_I2CMTX_BBA (*(volatile unsigned long *) 0x42200618)
1716 #define DMAALTSET_I2CMTX_MSK (0x1 << 6 )
1717 #define DMAALTSET_I2CMTX (0x1 << 6 )
1718 #define DMAALTSET_I2CMTX_DIS (0x0 << 6 ) /* DIS. When read: DMA I2CMTX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set I2CMTX to 0. */
1719 #define DMAALTSET_I2CMTX_EN (0x1 << 6 ) /* EN. When read: DMA I2CMTX is using the alternate data structure. When written: Selects the alternate data structure forI2CMTX. */
1720 
1721 /* DMAALTSET[I2CSRX] - DMA I2C Slave RX. */
1722 #define DMAALTSET_I2CSRX_BBA (*(volatile unsigned long *) 0x42200614)
1723 #define DMAALTSET_I2CSRX_MSK (0x1 << 5 )
1724 #define DMAALTSET_I2CSRX (0x1 << 5 )
1725 #define DMAALTSET_I2CSRX_DIS (0x0 << 5 ) /* DIS. When read: DMA I2CSRX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set I2CSRX to 0. */
1726 #define DMAALTSET_I2CSRX_EN (0x1 << 5 ) /* EN. When read: DMA I2CSRX is using the alternate data structure. When written: Selects the alternate data structure for I2CSRX. */
1727 
1728 /* DMAALTSET[I2CSTX] - DMA I2C Slave TX. */
1729 #define DMAALTSET_I2CSTX_BBA (*(volatile unsigned long *) 0x42200610)
1730 #define DMAALTSET_I2CSTX_MSK (0x1 << 4 )
1731 #define DMAALTSET_I2CSTX (0x1 << 4 )
1732 #define DMAALTSET_I2CSTX_DIS (0x0 << 4 ) /* DIS. When read: DMA I2CSTX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set I2CSTX to 0. */
1733 #define DMAALTSET_I2CSTX_EN (0x1 << 4 ) /* EN. When read: DMA I2CSTX is using the alternate data structure. When written: Selects the alternate data structure for I2CSTX. */
1734 
1735 /* DMAALTSET[UARTRX] - DMA UART RX. */
1736 #define DMAALTSET_UARTRX_BBA (*(volatile unsigned long *) 0x4220060C)
1737 #define DMAALTSET_UARTRX_MSK (0x1 << 3 )
1738 #define DMAALTSET_UARTRX (0x1 << 3 )
1739 #define DMAALTSET_UARTRX_DIS (0x0 << 3 ) /* DIS. When read: DMA UARTRX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set UARTRX to 0. */
1740 #define DMAALTSET_UARTRX_EN (0x1 << 3 ) /* EN. When read: DMA UARTRX is using the alternate data structure. When written: Selects the alternate data structure for UARTRX. */
1741 
1742 /* DMAALTSET[UARTTX] - DMA UART TX. */
1743 #define DMAALTSET_UARTTX_BBA (*(volatile unsigned long *) 0x42200608)
1744 #define DMAALTSET_UARTTX_MSK (0x1 << 2 )
1745 #define DMAALTSET_UARTTX (0x1 << 2 )
1746 #define DMAALTSET_UARTTX_DIS (0x0 << 2 ) /* DIS. When read: DMA UARTTX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set UARTTX to 0. */
1747 #define DMAALTSET_UARTTX_EN (0x1 << 2 ) /* EN. When read: DMA UARTTX is using the alternate data structure. When written: Selects the alternate data structure for UARTTX. */
1748 
1749 /* DMAALTSET[SPI1RX] - DMA SPI 1 RX. */
1750 #define DMAALTSET_SPI1RX_BBA (*(volatile unsigned long *) 0x42200604)
1751 #define DMAALTSET_SPI1RX_MSK (0x1 << 1 )
1752 #define DMAALTSET_SPI1RX (0x1 << 1 )
1753 #define DMAALTSET_SPI1RX_DIS (0x0 << 1 ) /* DIS. When read: DMA SPI1RX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set SPI1RX to 0. */
1754 #define DMAALTSET_SPI1RX_EN (0x1 << 1 ) /* EN. When read: DMA SPI1RX is using the alternate data structure. When written: Selects the alternate data structure for SPI1RX. */
1755 
1756 /* DMAALTSET[SPI1TX] - DMA SPI 1 TX. */
1757 #define DMAALTSET_SPI1TX_BBA (*(volatile unsigned long *) 0x42200600)
1758 #define DMAALTSET_SPI1TX_MSK (0x1 << 0 )
1759 #define DMAALTSET_SPI1TX (0x1 << 0 )
1760 #define DMAALTSET_SPI1TX_DIS (0x0 << 0 ) /* DIS. When read: DMA SPI1TX is using the primary data structure. When written: No effect. Use the DMAALTCLR register to set SPI1TX to 0. */
1761 #define DMAALTSET_SPI1TX_EN (0x1 << 0 ) /* EN. When read: DMA SPI1TX is using the alternate data structure. When written: Selects the alternate data structure for SPI1TX. */
1762 
1763 /* Reset Value for DMAALTCLR*/
1764 #define DMAALTCLR_RVAL 0x0
1765 
1766 /* DMAALTCLR[SPI0RX] - DMA SPI0 RX. */
1767 #define DMAALTCLR_SPI0RX_BBA (*(volatile unsigned long *) 0x422006B4)
1768 #define DMAALTCLR_SPI0RX_MSK (0x1 << 13 )
1769 #define DMAALTCLR_SPI0RX (0x1 << 13 )
1770 #define DMAALTCLR_SPI0RX_DIS (0x0 << 13 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1771 #define DMAALTCLR_SPI0RX_EN (0x1 << 13 ) /* EN. Selects the primary data structure for SPI0RX. */
1772 
1773 /* DMAALTCLR[SPI0TX] - DMA SPI0 TX. */
1774 #define DMAALTCLR_SPI0TX_BBA (*(volatile unsigned long *) 0x422006B0)
1775 #define DMAALTCLR_SPI0TX_MSK (0x1 << 12 )
1776 #define DMAALTCLR_SPI0TX (0x1 << 12 )
1777 #define DMAALTCLR_SPI0TX_DIS (0x0 << 12 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1778 #define DMAALTCLR_SPI0TX_EN (0x1 << 12 ) /* EN. Selects the primary data structure for SPI0TX. */
1779 
1780 /* DMAALTCLR[ADC] - DMA ADC. */
1781 #define DMAALTCLR_ADC_BBA (*(volatile unsigned long *) 0x422006AC)
1782 #define DMAALTCLR_ADC_MSK (0x1 << 11 )
1783 #define DMAALTCLR_ADC (0x1 << 11 )
1784 #define DMAALTCLR_ADC_DIS (0x0 << 11 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1785 #define DMAALTCLR_ADC_EN (0x1 << 11 ) /* EN. Selects the primary data structure for ADC. */
1786 
1787 /* DMAALTCLR[I2CMRX] - DMA I2C Master RX. */
1788 #define DMAALTCLR_I2CMRX_BBA (*(volatile unsigned long *) 0x4220069C)
1789 #define DMAALTCLR_I2CMRX_MSK (0x1 << 7 )
1790 #define DMAALTCLR_I2CMRX (0x1 << 7 )
1791 #define DMAALTCLR_I2CMRX_DIS (0x0 << 7 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1792 #define DMAALTCLR_I2CMRX_EN (0x1 << 7 ) /* EN. Selects the primary data structure for I2CMRX. */
1793 
1794 /* DMAALTCLR[I2CMTX] - DMA I2C Master TX. */
1795 #define DMAALTCLR_I2CMTX_BBA (*(volatile unsigned long *) 0x42200698)
1796 #define DMAALTCLR_I2CMTX_MSK (0x1 << 6 )
1797 #define DMAALTCLR_I2CMTX (0x1 << 6 )
1798 #define DMAALTCLR_I2CMTX_DIS (0x0 << 6 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1799 #define DMAALTCLR_I2CMTX_EN (0x1 << 6 ) /* EN. Selects the primary data structure for I2CMTX. */
1800 
1801 /* DMAALTCLR[I2CSRX] - DMA I2C Slave RX. */
1802 #define DMAALTCLR_I2CSRX_BBA (*(volatile unsigned long *) 0x42200694)
1803 #define DMAALTCLR_I2CSRX_MSK (0x1 << 5 )
1804 #define DMAALTCLR_I2CSRX (0x1 << 5 )
1805 #define DMAALTCLR_I2CSRX_DIS (0x0 << 5 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1806 #define DMAALTCLR_I2CSRX_EN (0x1 << 5 ) /* EN. Selects the primary data structure for I2CSRX. */
1807 
1808 /* DMAALTCLR[I2CSTX] - DMA I2C Slave TX. */
1809 #define DMAALTCLR_I2CSTX_BBA (*(volatile unsigned long *) 0x42200690)
1810 #define DMAALTCLR_I2CSTX_MSK (0x1 << 4 )
1811 #define DMAALTCLR_I2CSTX (0x1 << 4 )
1812 #define DMAALTCLR_I2CSTX_DIS (0x0 << 4 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1813 #define DMAALTCLR_I2CSTX_EN (0x1 << 4 ) /* EN. Selects the primary data structure for I2CSTX. */
1814 
1815 /* DMAALTCLR[UARTRX] - DMA UART RX. */
1816 #define DMAALTCLR_UARTRX_BBA (*(volatile unsigned long *) 0x4220068C)
1817 #define DMAALTCLR_UARTRX_MSK (0x1 << 3 )
1818 #define DMAALTCLR_UARTRX (0x1 << 3 )
1819 #define DMAALTCLR_UARTRX_DIS (0x0 << 3 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1820 #define DMAALTCLR_UARTRX_EN (0x1 << 3 ) /* EN. Selects the primary data structure for UARTRX. */
1821 
1822 /* DMAALTCLR[UARTTX] - DMA UART TX. */
1823 #define DMAALTCLR_UARTTX_BBA (*(volatile unsigned long *) 0x42200688)
1824 #define DMAALTCLR_UARTTX_MSK (0x1 << 2 )
1825 #define DMAALTCLR_UARTTX (0x1 << 2 )
1826 #define DMAALTCLR_UARTTX_DIS (0x0 << 2 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1827 #define DMAALTCLR_UARTTX_EN (0x1 << 2 ) /* EN. Selects the primary data structure for UARTTX. */
1828 
1829 /* DMAALTCLR[SPI1RX] - DMA SPI 1 RX. */
1830 #define DMAALTCLR_SPI1RX_BBA (*(volatile unsigned long *) 0x42200684)
1831 #define DMAALTCLR_SPI1RX_MSK (0x1 << 1 )
1832 #define DMAALTCLR_SPI1RX (0x1 << 1 )
1833 #define DMAALTCLR_SPI1RX_DIS (0x0 << 1 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1834 #define DMAALTCLR_SPI1RX_EN (0x1 << 1 ) /* EN. Selects the primary data structure for SPI1RX. */
1835 
1836 /* DMAALTCLR[SPI1TX] - DMA SPI 1 TX. */
1837 #define DMAALTCLR_SPI1TX_BBA (*(volatile unsigned long *) 0x42200680)
1838 #define DMAALTCLR_SPI1TX_MSK (0x1 << 0 )
1839 #define DMAALTCLR_SPI1TX (0x1 << 0 )
1840 #define DMAALTCLR_SPI1TX_DIS (0x0 << 0 ) /* DIS. No effect. Use the DMAALTSET register to select the alternate data structure. */
1841 #define DMAALTCLR_SPI1TX_EN (0x1 << 0 ) /* EN. Selects the primary data structure for SPI1TX. */
1842 
1843 /* Reset Value for DMAPRISET*/
1844 #define DMAPRISET_RVAL 0x0
1845 
1846 /* DMAPRISET[SPI0RX] - DMA SPI0 RX. */
1847 #define DMAPRISET_SPI0RX_BBA (*(volatile unsigned long *) 0x42200734)
1848 #define DMAPRISET_SPI0RX_MSK (0x1 << 13 )
1849 #define DMAPRISET_SPI0RX (0x1 << 13 )
1850 #define DMAPRISET_SPI0RX_DIS (0x0 << 13 ) /* DIS. When read: DMA SPI0RX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set SPI0RX to the default priority level. */
1851 #define DMAPRISET_SPI0RX_EN (0x1 << 13 ) /* EN. When read: DMA SPI0RX is using a high priority level. When written: SPI0RX uses the high priority level. */
1852 
1853 /* DMAPRISET[SPI0TX] - DMA SPI0 TX. */
1854 #define DMAPRISET_SPI0TX_BBA (*(volatile unsigned long *) 0x42200730)
1855 #define DMAPRISET_SPI0TX_MSK (0x1 << 12 )
1856 #define DMAPRISET_SPI0TX (0x1 << 12 )
1857 #define DMAPRISET_SPI0TX_DIS (0x0 << 12 ) /* DIS. When read: DMA SPI0TX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set SPI0TX to the default priority level. */
1858 #define DMAPRISET_SPI0TX_EN (0x1 << 12 ) /* EN. When read: DMA SPI0TX is using a high priority level. When written: SPI0TX uses the high priority level. */
1859 
1860 /* DMAPRISET[ADC] - DMA ADC. */
1861 #define DMAPRISET_ADC_BBA (*(volatile unsigned long *) 0x4220072C)
1862 #define DMAPRISET_ADC_MSK (0x1 << 11 )
1863 #define DMAPRISET_ADC (0x1 << 11 )
1864 #define DMAPRISET_ADC_DIS (0x0 << 11 ) /* DIS. When read: DMA ADC is using the default priority level. When written: No effect. Use the DMAPRICLR register to set ADC to the default priority level. */
1865 #define DMAPRISET_ADC_EN (0x1 << 11 ) /* EN. When read: DMA ADCs using a high priority level. When written: ADC uses the high priority level. */
1866 
1867 /* DMAPRISET[I2CMRX] - DMA I2C Master RX. */
1868 #define DMAPRISET_I2CMRX_BBA (*(volatile unsigned long *) 0x4220071C)
1869 #define DMAPRISET_I2CMRX_MSK (0x1 << 7 )
1870 #define DMAPRISET_I2CMRX (0x1 << 7 )
1871 #define DMAPRISET_I2CMRX_DIS (0x0 << 7 ) /* DIS. When read: DMA I2CMRX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set I2CMRX to the default priority level. */
1872 #define DMAPRISET_I2CMRX_EN (0x1 << 7 ) /* EN. When read: DMA I2CMRX is using a high priority level. When written: I2CMRX uses the high priority level. */
1873 
1874 /* DMAPRISET[I2CMTX] - DMA I2C Master TX. */
1875 #define DMAPRISET_I2CMTX_BBA (*(volatile unsigned long *) 0x42200718)
1876 #define DMAPRISET_I2CMTX_MSK (0x1 << 6 )
1877 #define DMAPRISET_I2CMTX (0x1 << 6 )
1878 #define DMAPRISET_I2CMTX_DIS (0x0 << 6 ) /* DIS. When read: DMA I2CMTX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set I2CMTX to the default priority level. */
1879 #define DMAPRISET_I2CMTX_EN (0x1 << 6 ) /* EN. When read: DMA I2CMTX is using a high priority level. When written: I2CMTX uses the high priority level. */
1880 
1881 /* DMAPRISET[I2CSRX] - DMA I2C Slave RX. */
1882 #define DMAPRISET_I2CSRX_BBA (*(volatile unsigned long *) 0x42200714)
1883 #define DMAPRISET_I2CSRX_MSK (0x1 << 5 )
1884 #define DMAPRISET_I2CSRX (0x1 << 5 )
1885 #define DMAPRISET_I2CSRX_DIS (0x0 << 5 ) /* DIS. When read: DMA I2CSRX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set I2CSRX to the default priority level. */
1886 #define DMAPRISET_I2CSRX_EN (0x1 << 5 ) /* EN. When read: DMA I2CSRX is using a high priority level. When written: I2CSRX uses the high priority level. */
1887 
1888 /* DMAPRISET[I2CSTX] - DMA I2C Slave TX. */
1889 #define DMAPRISET_I2CSTX_BBA (*(volatile unsigned long *) 0x42200710)
1890 #define DMAPRISET_I2CSTX_MSK (0x1 << 4 )
1891 #define DMAPRISET_I2CSTX (0x1 << 4 )
1892 #define DMAPRISET_I2CSTX_DIS (0x0 << 4 ) /* DIS. When read: DMA I2CSTX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set I2CSTX to the default priority level. */
1893 #define DMAPRISET_I2CSTX_EN (0x1 << 4 ) /* EN. When read: DMA I2CSTX is using a high priority level. When written: I2CSTX uses the high priority level. */
1894 
1895 /* DMAPRISET[UARTRX] - DMA UART RX. */
1896 #define DMAPRISET_UARTRX_BBA (*(volatile unsigned long *) 0x4220070C)
1897 #define DMAPRISET_UARTRX_MSK (0x1 << 3 )
1898 #define DMAPRISET_UARTRX (0x1 << 3 )
1899 #define DMAPRISET_UARTRX_DIS (0x0 << 3 ) /* DIS. When read: DMA UARTRX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set UARTRX to the default priority level. */
1900 #define DMAPRISET_UARTRX_EN (0x1 << 3 ) /* EN. When read: DMA UARTRX is using a high priority level. When written: UARTRX uses the high priority level. */
1901 
1902 /* DMAPRISET[UARTTX] - DMA UART TX. */
1903 #define DMAPRISET_UARTTX_BBA (*(volatile unsigned long *) 0x42200708)
1904 #define DMAPRISET_UARTTX_MSK (0x1 << 2 )
1905 #define DMAPRISET_UARTTX (0x1 << 2 )
1906 #define DMAPRISET_UARTTX_DIS (0x0 << 2 ) /* DIS. When read: DMA UARTTX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set UARTTX to the default priority level. */
1907 #define DMAPRISET_UARTTX_EN (0x1 << 2 ) /* EN. When read: DMA UARTTX is using a high priority level. When written: UARTTX uses the high priority level. */
1908 
1909 /* DMAPRISET[SPI1RX] - DMA SPI 1 RX. */
1910 #define DMAPRISET_SPI1RX_BBA (*(volatile unsigned long *) 0x42200704)
1911 #define DMAPRISET_SPI1RX_MSK (0x1 << 1 )
1912 #define DMAPRISET_SPI1RX (0x1 << 1 )
1913 #define DMAPRISET_SPI1RX_DIS (0x0 << 1 ) /* DIS. When read: DMA SPI1RX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set SPI1RX to the default priority level. */
1914 #define DMAPRISET_SPI1RX_EN (0x1 << 1 ) /* EN. When read: DMA SPI1RX is using a high priority level. When written: SPI1RX uses the high priority level. */
1915 
1916 /* DMAPRISET[SPI1TX] - DMA SPI 1 TX. */
1917 #define DMAPRISET_SPI1TX_BBA (*(volatile unsigned long *) 0x42200700)
1918 #define DMAPRISET_SPI1TX_MSK (0x1 << 0 )
1919 #define DMAPRISET_SPI1TX (0x1 << 0 )
1920 #define DMAPRISET_SPI1TX_DIS (0x0 << 0 ) /* DIS. When read: DMA SPI1TX is using the default priority level. When written: No effect. Use the DMAPRICLR register to set SPI1TX to the default priority level. */
1921 #define DMAPRISET_SPI1TX_EN (0x1 << 0 ) /* EN. When read: DMA SPI1TX is using a high priority level. When written: SPI1TX uses the high priority level. */
1922 
1923 /* Reset Value for DMAPRICLR*/
1924 #define DMAPRICLR_RVAL 0x0
1925 
1926 /* DMAPRICLR[SPI0RX] - DMA SPI0 RX. */
1927 #define DMAPRICLR_SPI0RX_BBA (*(volatile unsigned long *) 0x422007B4)
1928 #define DMAPRICLR_SPI0RX_MSK (0x1 << 13 )
1929 #define DMAPRICLR_SPI0RX (0x1 << 13 )
1930 #define DMAPRICLR_SPI0RX_DIS (0x0 << 13 ) /* DIS. No effect. Use the DMAPRISET register to set SPI0RX to the high priority level. */
1931 #define DMAPRICLR_SPI0RX_EN (0x1 << 13 ) /* EN. SPI0RX uses the default priority level. */
1932 
1933 /* DMAPRICLR[SPI0TX] - DMA SPI0 TX. */
1934 #define DMAPRICLR_SPI0TX_BBA (*(volatile unsigned long *) 0x422007B0)
1935 #define DMAPRICLR_SPI0TX_MSK (0x1 << 12 )
1936 #define DMAPRICLR_SPI0TX (0x1 << 12 )
1937 #define DMAPRICLR_SPI0TX_DIS (0x0 << 12 ) /* DIS. No effect. Use the DMAPRISET register to set SPI0TX to the high priority level. */
1938 #define DMAPRICLR_SPI0TX_EN (0x1 << 12 ) /* EN. SPI0TX uses the default priority level. */
1939 
1940 /* DMAPRICLR[ADC] - DMA ADC. */
1941 #define DMAPRICLR_ADC_BBA (*(volatile unsigned long *) 0x422007AC)
1942 #define DMAPRICLR_ADC_MSK (0x1 << 11 )
1943 #define DMAPRICLR_ADC (0x1 << 11 )
1944 #define DMAPRICLR_ADC_DIS (0x0 << 11 ) /* DIS. No effect. Use the DMAPRISET register to set ADC to the high priority level. */
1945 #define DMAPRICLR_ADC_EN (0x1 << 11 ) /* EN. ADC uses the default priority level. */
1946 
1947 /* DMAPRICLR[I2CMRX] - DMA I2C Master RX. */
1948 #define DMAPRICLR_I2CMRX_BBA (*(volatile unsigned long *) 0x4220079C)
1949 #define DMAPRICLR_I2CMRX_MSK (0x1 << 7 )
1950 #define DMAPRICLR_I2CMRX (0x1 << 7 )
1951 #define DMAPRICLR_I2CMRX_DIS (0x0 << 7 ) /* DIS. No effect. Use the DMAPRISET register to set I2CMRX to the high priority level. */
1952 #define DMAPRICLR_I2CMRX_EN (0x1 << 7 ) /* EN. I2CMRX uses the default priority level. */
1953 
1954 /* DMAPRICLR[I2CMTX] - DMA I2C Master TX. */
1955 #define DMAPRICLR_I2CMTX_BBA (*(volatile unsigned long *) 0x42200798)
1956 #define DMAPRICLR_I2CMTX_MSK (0x1 << 6 )
1957 #define DMAPRICLR_I2CMTX (0x1 << 6 )
1958 #define DMAPRICLR_I2CMTX_DIS (0x0 << 6 ) /* DIS. No effect. Use the DMAPRISET register to set I2CMTX to the high priority level. */
1959 #define DMAPRICLR_I2CMTX_EN (0x1 << 6 ) /* EN. I2CMTX uses the default priority level. */
1960 
1961 /* DMAPRICLR[I2CSRX] - DMA I2C Slave RX. */
1962 #define DMAPRICLR_I2CSRX_BBA (*(volatile unsigned long *) 0x42200794)
1963 #define DMAPRICLR_I2CSRX_MSK (0x1 << 5 )
1964 #define DMAPRICLR_I2CSRX (0x1 << 5 )
1965 #define DMAPRICLR_I2CSRX_DIS (0x0 << 5 ) /* DIS. No effect. Use the DMAPRISET register to set I2CSRX to the high priority level. */
1966 #define DMAPRICLR_I2CSRX_EN (0x1 << 5 ) /* EN. I2CSRX uses the default priority level. */
1967 
1968 /* DMAPRICLR[I2CSTX] - DMA I2C Slave TX. */
1969 #define DMAPRICLR_I2CSTX_BBA (*(volatile unsigned long *) 0x42200790)
1970 #define DMAPRICLR_I2CSTX_MSK (0x1 << 4 )
1971 #define DMAPRICLR_I2CSTX (0x1 << 4 )
1972 #define DMAPRICLR_I2CSTX_DIS (0x0 << 4 ) /* DIS. No effect. Use the DMAPRISET register to set I2CSTX to the high priority level. */
1973 #define DMAPRICLR_I2CSTX_EN (0x1 << 4 ) /* EN. I2CSTX uses the default priority level. */
1974 
1975 /* DMAPRICLR[UARTRX] - DMA UART RX. */
1976 #define DMAPRICLR_UARTRX_BBA (*(volatile unsigned long *) 0x4220078C)
1977 #define DMAPRICLR_UARTRX_MSK (0x1 << 3 )
1978 #define DMAPRICLR_UARTRX (0x1 << 3 )
1979 #define DMAPRICLR_UARTRX_DIS (0x0 << 3 ) /* DIS. No effect. Use the DMAPRISET register to set UARTRX to the high priority level. */
1980 #define DMAPRICLR_UARTRX_EN (0x1 << 3 ) /* EN. UARTRX uses the default priority level. */
1981 
1982 /* DMAPRICLR[UARTTX] - DMA UART TX. */
1983 #define DMAPRICLR_UARTTX_BBA (*(volatile unsigned long *) 0x42200788)
1984 #define DMAPRICLR_UARTTX_MSK (0x1 << 2 )
1985 #define DMAPRICLR_UARTTX (0x1 << 2 )
1986 #define DMAPRICLR_UARTTX_DIS (0x0 << 2 ) /* DIS. No effect. Use the DMAPRISET register to set UARTTX to the high priority level. */
1987 #define DMAPRICLR_UARTTX_EN (0x1 << 2 ) /* EN. UARTTX uses the default priority level. */
1988 
1989 /* DMAPRICLR[SPI1RX] - DMA SPI 1 RX. */
1990 #define DMAPRICLR_SPI1RX_BBA (*(volatile unsigned long *) 0x42200784)
1991 #define DMAPRICLR_SPI1RX_MSK (0x1 << 1 )
1992 #define DMAPRICLR_SPI1RX (0x1 << 1 )
1993 #define DMAPRICLR_SPI1RX_DIS (0x0 << 1 ) /* DIS. No effect. Use the DMAPRISET register to set SPI1RX to the high priority level. */
1994 #define DMAPRICLR_SPI1RX_EN (0x1 << 1 ) /* EN. SPI1RX uses the default priority level. */
1995 
1996 /* DMAPRICLR[SPI1TX] - DMA SPI 1 TX. */
1997 #define DMAPRICLR_SPI1TX_BBA (*(volatile unsigned long *) 0x42200780)
1998 #define DMAPRICLR_SPI1TX_MSK (0x1 << 0 )
1999 #define DMAPRICLR_SPI1TX (0x1 << 0 )
2000 #define DMAPRICLR_SPI1TX_DIS (0x0 << 0 ) /* DIS. No effect. Use the DMAPRISET register to set SPI1TX to the high priority level. */
2001 #define DMAPRICLR_SPI1TX_EN (0x1 << 0 ) /* EN. SPI1TX uses the default priority level. */
2002 
2003 /* Reset Value for DMAERRCLR*/
2004 #define DMAERRCLR_RVAL 0x0
2005 
2006 /* DMAERRCLR[ERROR] - DMA Bus Error status. */
2007 #define DMAERRCLR_ERROR_BBA (*(volatile unsigned long *) 0x42200980)
2008 #define DMAERRCLR_ERROR_MSK (0x1 << 0 )
2009 #define DMAERRCLR_ERROR (0x1 << 0 )
2010 #define DMAERRCLR_ERROR_DIS (0x0 << 0 ) /* DIS. When Read: No bus error occurred. When Written: No effect. */
2011 #define DMAERRCLR_ERROR_EN (0x1 << 0 ) /* EN. When Read: A bus error is pending. When Written: Bit is cleared. */
2012 // ------------------------------------------------------------------------------------------------
2013 // ----- FEE -----
2014 // ------------------------------------------------------------------------------------------------
2015 
2016 
2017 /**
2018  * @brief Flash Controller (pADI_FEE)
2019  */
2020 
2021 #if (__NO_MMR_STRUCTS__==0)
2022 typedef struct { /*!< pADI_FEE Structure */
2023  __IO uint16_t FEESTA; /*!< Status Register */
2024  __I uint16_t RESERVED0;
2025  __IO uint16_t FEECON0; /*!< Command Control Register */
2026  __I uint16_t RESERVED1;
2027  __IO uint16_t FEECMD; /*!< Command Register */
2028  __I uint16_t RESERVED2[3];
2029  __IO uint16_t FEEADR0L; /*!< Address 0 LSB */
2030  __I uint16_t RESERVED3;
2031  __IO uint16_t FEEADR0H; /*!< Address 0 MSB */
2032  __I uint16_t RESERVED4;
2033  __IO uint16_t FEEADR1L; /*!< Address1 LSB */
2034  __I uint16_t RESERVED5;
2035  __IO uint16_t FEEADR1H; /*!< Address1 MSB */
2036  __I uint16_t RESERVED6;
2037  __IO uint16_t FEEKEY; /*!< Key Register */
2038  __I uint16_t RESERVED7[3];
2039  __IO uint16_t FEEPROL; /*!< Write Protection Register LSB */
2040  __I uint16_t RESERVED8;
2041  __IO uint16_t FEEPROH; /*!< Write Protection Register MSB */
2042  __I uint16_t RESERVED9;
2043  __IO uint16_t FEESIGL; /*!< Signature LSB */
2044  __I uint16_t RESERVED10;
2045  __IO uint16_t FEESIGH; /*!< Signature MSB */
2046  __I uint16_t RESERVED11;
2047  __IO uint16_t FEECON1; /*!< User Setup Register */
2048  __I uint16_t RESERVED12[7];
2049  __IO uint16_t FEEADRAL; /*!< Abort Address Register LSB */
2050  __I uint16_t RESERVED13;
2051  __IO uint16_t FEEADRAH; /*!< Abort Address Register MSB */
2052  __I uint16_t RESERVED14[21];
2053  __IO uint16_t FEEAEN0; /*!< Interrupt Abort Register (Interrupt 15 to Interrupt 0) */
2054  __I uint16_t RESERVED15;
2055  __IO uint16_t FEEAEN1; /*!< Interrupt Abort Register (Interrupt 31 to Interrupt 16) */
2056  __I uint16_t RESERVED16;
2057  __IO uint16_t FEEAEN2; /*!< Interrupt Abort Register (Interrupt 42 to Interrupt 32) */
2058 } ADI_FEE_TypeDef;
2059 #else // (__NO_MMR_STRUCTS__==0)
2060 #define FEESTA (*(volatile unsigned short int *) 0x40002800)
2061 #define FEECON0 (*(volatile unsigned short int *) 0x40002804)
2062 #define FEECMD (*(volatile unsigned short int *) 0x40002808)
2063 #define FEEADR0L (*(volatile unsigned short int *) 0x40002810)
2064 #define FEEADR0H (*(volatile unsigned short int *) 0x40002814)
2065 #define FEEADR1L (*(volatile unsigned short int *) 0x40002818)
2066 #define FEEADR1H (*(volatile unsigned short int *) 0x4000281C)
2067 #define FEEKEY (*(volatile unsigned short int *) 0x40002820)
2068 #define FEEPROL (*(volatile unsigned short int *) 0x40002828)
2069 #define FEEPROH (*(volatile unsigned short int *) 0x4000282C)
2070 #define FEESIGL (*(volatile unsigned short int *) 0x40002830)
2071 #define FEESIGH (*(volatile unsigned short int *) 0x40002834)
2072 #define FEECON1 (*(volatile unsigned short int *) 0x40002838)
2073 #define FEEADRAL (*(volatile unsigned short int *) 0x40002848)
2074 #define FEEADRAH (*(volatile unsigned short int *) 0x4000284C)
2075 #define FEEAEN0 (*(volatile unsigned short int *) 0x40002878)
2076 #define FEEAEN1 (*(volatile unsigned short int *) 0x4000287C)
2077 #define FEEAEN2 (*(volatile unsigned short int *) 0x40002880)
2078 #endif // (__NO_MMR_STRUCTS__==0)
2079 
2080 /* Reset Value for FEESTA*/
2081 #define FEESTA_RVAL 0x0
2082 
2083 /* FEESTA[SIGNERR] - Kernel space signature check on reset error */
2084 #define FEESTA_SIGNERR_BBA (*(volatile unsigned long *) 0x42050018)
2085 #define FEESTA_SIGNERR_MSK (0x1 << 6 )
2086 #define FEESTA_SIGNERR (0x1 << 6 )
2087 #define FEESTA_SIGNERR_CLR (0x0 << 6 ) /* CLR. Cleared, if the signature check of the kernel passes. */
2088 #define FEESTA_SIGNERR_SET (0x1 << 6 ) /* SET. Set, if the signature check of the kernel fails. User code does not execute. */
2089 
2090 /* FEESTA[CMDRES] - These two bits indicate the status of a command on completion or the status of a write. If multiple commands are executed or there are multiple writes via the AHB bus without a read of the status register, then the first error encountered is stored. */
2091 #define FEESTA_CMDRES_MSK (0x3 << 4 )
2092 #define FEESTA_CMDRES_SUCCESS (0x0 << 4 ) /* SUCCESS. Indicates a successful completion of a command or a write. Also cleared after a read of FEESTA. */
2093 #define FEESTA_CMDRES_PROTECTED (0x1 << 4 ) /* PROTECTED. Indicates an attempted erase of a protected location. */
2094 #define FEESTA_CMDRES_VERIFYERR (0x2 << 4 ) /* VERIFYERR. Indicates a read verify error. After an erase the controller reads the corresponding word(s) to verify that the transaction completed successfully. If data read is not all 'F's this is the resulting status. If the Sign command is executed and the resulting signature does not match the data in the upper 4 bytes of the upper page in a block then this is the resulting status. */
2095 #define FEESTA_CMDRES_ABORT (0x3 << 4 ) /* ABORT. Indicates that a command or a write was aborted by an abort command or a system interrupt has caused an abort. */
2096 
2097 /* FEESTA[WRDONE] - Write complete. */
2098 #define FEESTA_WRDONE_BBA (*(volatile unsigned long *) 0x4205000C)
2099 #define FEESTA_WRDONE_MSK (0x1 << 3 )
2100 #define FEESTA_WRDONE (0x1 << 3 )
2101 #define FEESTA_WRDONE_CLR (0x0 << 3 ) /* CLR. Cleared after a read of FEESTA. */
2102 #define FEESTA_WRDONE_SET (0x1 << 3 ) /* SET. Set when a write completes. If there are multiple writes or a burst write, this status bit asserts after the first long word written and stays asserted until read. If there is a burst write to flash, then this bit asserts after every long word written, assuming that user code read FEESTA after every long word written. */
2103 
2104 /* FEESTA[CMDDONE] - Command complete. */
2105 #define FEESTA_CMDDONE_BBA (*(volatile unsigned long *) 0x42050008)
2106 #define FEESTA_CMDDONE_MSK (0x1 << 2 )
2107 #define FEESTA_CMDDONE (0x1 << 2 )
2108 #define FEESTA_CMDDONE_CLR (0x0 << 2 ) /* CLR. Cleared after a read of FEESTA. */
2109 #define FEESTA_CMDDONE_SET (0x1 << 2 ) /* SET. Set when a command completes. If there are multiple commands, this status bit asserts after the first command completes and stays asserted until read. */
2110 
2111 /* FEESTA[WRBUSY] - Write busy. */
2112 #define FEESTA_WRBUSY_BBA (*(volatile unsigned long *) 0x42050004)
2113 #define FEESTA_WRBUSY_MSK (0x1 << 1 )
2114 #define FEESTA_WRBUSY (0x1 << 1 )
2115 #define FEESTA_WRBUSY_CLR (0x0 << 1 ) /* CLR. Cleared after a read of FEESTA. */
2116 #define FEESTA_WRBUSY_SET (0x1 << 1 ) /* SET. Set when the flash block is executing a write. */
2117 
2118 /* FEESTA[CMDBUSY] - Command busy. */
2119 #define FEESTA_CMDBUSY_BBA (*(volatile unsigned long *) 0x42050000)
2120 #define FEESTA_CMDBUSY_MSK (0x1 << 0 )
2121 #define FEESTA_CMDBUSY (0x1 << 0 )
2122 #define FEESTA_CMDBUSY_CLR (0x0 << 0 ) /* CLR. Cleared after a read of FEESTA. */
2123 #define FEESTA_CMDBUSY_SET (0x1 << 0 ) /* SET. Set when the flash block is executing any command entered via the command register. */
2124 
2125 /* Reset Value for FEECON0*/
2126 #define FEECON0_RVAL 0x0
2127 
2128 /* FEECON0[WREN] - Write enable bit. */
2129 #define FEECON0_WREN_BBA (*(volatile unsigned long *) 0x42050088)
2130 #define FEECON0_WREN_MSK (0x1 << 2 )
2131 #define FEECON0_WREN (0x1 << 2 )
2132 #define FEECON0_WREN_DIS (0x0 << 2 ) /* DIS. Disables Flash writes. A flash write when this bit is 0 results in a hard fault system exception error and the write does not take place. */
2133 #define FEECON0_WREN_EN (0x1 << 2 ) /* EN. Enables Flash writes. */
2134 
2135 /* FEECON0[IENERR] - Error interrupt enable bit. */
2136 #define FEECON0_IENERR_BBA (*(volatile unsigned long *) 0x42050084)
2137 #define FEECON0_IENERR_MSK (0x1 << 1 )
2138 #define FEECON0_IENERR (0x1 << 1 )
2139 #define FEECON0_IENERR_DIS (0x0 << 1 ) /* DIS. Disables the Flash error interrupt. */
2140 #define FEECON0_IENERR_EN (0x1 << 1 ) /* EN. An interrupt is generated when a command or flash write completes with an error status. */
2141 
2142 /* FEECON0[IENCMD] - Command complete interrupt enable bit. */
2143 #define FEECON0_IENCMD_BBA (*(volatile unsigned long *) 0x42050080)
2144 #define FEECON0_IENCMD_MSK (0x1 << 0 )
2145 #define FEECON0_IENCMD (0x1 << 0 )
2146 #define FEECON0_IENCMD_DIS (0x0 << 0 ) /* DIS. Disables the Flash command complete interrupt. */
2147 #define FEECON0_IENCMD_EN (0x1 << 0 ) /* EN. An interrupt is generated when a command or flash write completes. */
2148 
2149 /* Reset Value for FEECMD*/
2150 #define FEECMD_RVAL 0x0
2151 
2152 /* FEECMD[CMD] - Commands supported by the flash controller. */
2153 #define FEECMD_CMD_MSK (0xF << 0 )
2154 #define FEECMD_CMD_IDLE (0x0 << 0 ) /* IDLE. No command executed. */
2155 #define FEECMD_CMD_ERASEPAGE (0x1 << 0 ) /* ERASEPAGE. Write the address of the page to be erased to FEEADR0L/H, then write this code to the FEECMD register and the flash will erase the page. When the erase has completed, the flash reads every location in the page to verify that all words in the page are erased. If there is a read verify error, this is indicated in FEESTA. To erase multiple pages, wait until a previous page erase has completed. Check the status, and then issue a command to start the next page erase. Before entering this command, 0xF456 followed by 0xF123 must be written to the key register. */
2156 #define FEECMD_CMD_SIGN (0x2 << 0 ) /* SIGN. Use this command to generate a signature for a block of data. The signature is generated on a page-by-page basis. To generate a signature, the address of the first page of the block is entered in FEEADR0L/FEEADR0H. The address of the last page is written to FEEADR1L/FEEADR1H. Then write this code to the FEECMD register. When the command has completed, the signature is available for reading in FEESIGL/FEESIGH. The last four bytes of the last page in a block is reserved for storing the signature. Before entering this command, 0xF456 followed 0xF123 must be written to the key register. */
2157 #define FEECMD_CMD_MASSERASE (0x3 << 0 ) /* MASSERASE. Erase all of user space. To enable this operation, 0xF456 followed by 0xF123 must first be written to FEEKEY (this is to prevent accidental erases). When the mass erase has completed, the controller reads every location to verify that all locations are 0xFFFFFFFF. If there is a read verify error this is indicated in FEESTA. */
2158 #define FEECMD_CMD_ABORT (0x4 << 0 ) /* ABORT. If this command is issued, then any command currently in progress is stopped. The status indicates command completed with an error status in FEESTA[5:4]. Note that this is the only command that can be issued while another command is already in progress. This command can also be used to stop a write that may be in progress. If a write is aborted, the address of the location being written can be read via the FEEADRAL/FEEADRAH register. While the flash controller is writing one longword, another longword write may be in the pipeline from the Cortex-M3 or DMA engine (depending on how the software implements writes). Therefore, both writes may need to be aborted. If a write or erase is aborted, then the flash timing is violated and it is not possible to determine if the write or erase completed successfully. To enable this operation, 0xF456 followed by 0xF123 must first be written to FEEKEY (this is to prevent accidental aborts). */
2159 
2160 /* Reset Value for FEEADR0L*/
2161 #define FEEADR0L_RVAL 0x0
2162 
2163 /* FEEADR0L[VALUE] - Used in conjunction with FEEADR0H, to indicate the page to be erased, or the start of a section to be signed. The address of a memory location inside the page should be stored in FEEADR0L/H, bits[15:0] in FEEADR0L, and bits[17:16] in FEEADR0H. The 9 LSBs of the address are ignored. */
2164 #define FEEADR0L_VALUE_MSK (0xFFFF << 0 )
2165 
2166 /* Reset Value for FEEADR0H*/
2167 #define FEEADR0H_RVAL 0x0
2168 
2169 /* FEEADR0H[VALUE] - Used in conjunction with FEEADR0L, to indicate the page to be erased, or the start of a section to be signed. The address of a memory location inside the page should be stored in FEEADR0L/H, bits[15:0] in FEEADR0L, and bits[17:16] in FEEADR0H. */
2170 #define FEEADR0H_VALUE_MSK (0x3 << 0 )
2171 
2172 /* Reset Value for FEEADR1L*/
2173 #define FEEADR1L_RVAL 0x0
2174 
2175 /* FEEADR1L[VALUE] - Used in conjunction with FEEADR1H, to identify the last page used by the Sign command. The address of a memory location inside the page should be stored in FEEADR1L/H, bits[15:0] in FEEADR1L, and bits[17:16] in FEEADR1H. The 9 LSBs of the address are ignored. */
2176 #define FEEADR1L_VALUE_MSK (0xFFFF << 0 )
2177 
2178 /* Reset Value for FEEADR1H*/
2179 #define FEEADR1H_RVAL 0x0
2180 
2181 /* FEEADR1H[VALUE] - Used in conjunction with FEEADR1L, to identify the last page used by the Sign command. The address of a memory location inside the page should be stored in FEEADR1L/H, bits[15:0] in FEEADR1L, and bits[17:16] in FEEADR1H. */
2182 #define FEEADR1H_VALUE_MSK (0x3 << 0 )
2183 
2184 /* Reset Value for FEEKEY*/
2185 #define FEEKEY_RVAL 0x0
2186 
2187 /* FEEKEY[VALUE] - Enter 0xF456 followed by 0xF123. Returns 0x0 if read. */
2188 #define FEEKEY_VALUE_MSK (0xFFFF << 0 )
2189 #define FEEKEY_VALUE_USERKEY1 (0xF456 << 0 ) /* USERKEY1 */
2190 #define FEEKEY_VALUE_USERKEY2 (0xF123 << 0 ) /* USERKEY2 */
2191 
2192 /* Reset Value for FEEPROL*/
2193 #define FEEPROL_RVAL 0xFFFF
2194 
2195 /* FEEPROL[VALUE] - Lower 16 bits of the write protection. This register is read only if the write protection in flash has been programmed, i.e. FEEPROH/L have previously been configured to protect pages. */
2196 #define FEEPROL_VALUE_MSK (0xFFFF << 0 )
2197 
2198 /* Reset Value for FEEPROH*/
2199 #define FEEPROH_RVAL 0xFFFF
2200 
2201 /* FEEPROH[VALUE] - Upper 16 bits of the write protection. This register is read only if the write protection in flash has been programmed, i.e. FEEPROH/L have previously been configured to protect pages. */
2202 #define FEEPROH_VALUE_MSK (0xFFFF << 0 )
2203 
2204 /* Reset Value for FEESIGL*/
2205 #define FEESIGL_RVAL 0xFFFF
2206 
2207 /* FEESIGL[VALUE] - Lower 16 bits of the signature. Signature[15:0]. */
2208 #define FEESIGL_VALUE_MSK (0xFFFF << 0 )
2209 
2210 /* Reset Value for FEESIGH*/
2211 #define FEESIGH_RVAL 0xFFFF
2212 
2213 /* FEESIGH[VALUE] - Upper eight bits of the signature. Signature[23:16]. */
2214 #define FEESIGH_VALUE_MSK (0xFF << 0 )
2215 
2216 /* Reset Value for FEECON1*/
2217 #define FEECON1_RVAL 0x1
2218 
2219 /* FEECON1[DBG] - Serial Wire debug enable. */
2220 #define FEECON1_DBG_BBA (*(volatile unsigned long *) 0x42050700)
2221 #define FEECON1_DBG_MSK (0x1 << 0 )
2222 #define FEECON1_DBG (0x1 << 0 )
2223 #define FEECON1_DBG_DIS (0x0 << 0 ) /* DIS. Disable access via the serial wire debug interface. */
2224 #define FEECON1_DBG_EN (0x1 << 0 ) /* EN. Enable access via the serial wire debug interface. */
2225 
2226 /* Reset Value for FEEADRAL*/
2227 #define FEEADRAL_RVAL 0x800
2228 
2229 /* FEEADRAL[VALUE] - Lower 16 bits of the FEEADRA register. If a write is aborted then this will contain the address of the location been written when the write was aborted. */
2230 #define FEEADRAL_VALUE_MSK (0xFFFF << 0 )
2231 
2232 /* Reset Value for FEEADRAH*/
2233 #define FEEADRAH_RVAL 0x2
2234 
2235 /* FEEADRAH[VALUE] - Upper 16 bits of the FEEADRA register. */
2236 #define FEEADRAH_VALUE_MSK (0xFFFF << 0 )
2237 
2238 /* Reset Value for FEEAEN0*/
2239 #define FEEAEN0_RVAL 0x0
2240 
2241 /* FEEAEN0[FEE] - Flash controller interrupt abort enable bit */
2242 #define FEEAEN0_FEE_BBA (*(volatile unsigned long *) 0x42050F3C)
2243 #define FEEAEN0_FEE_MSK (0x1 << 15 )
2244 #define FEEAEN0_FEE (0x1 << 15 )
2245 #define FEEAEN0_FEE_DIS (0x0 << 15 ) /* DIS. Flash controller interrupt abort disabled. */
2246 #define FEEAEN0_FEE_EN (0x1 << 15 ) /* EN. Flash controller interrupt abort enabled. */
2247 
2248 /* FEEAEN0[ADC] - ADC interrupt abort enable bit */
2249 #define FEEAEN0_ADC_BBA (*(volatile unsigned long *) 0x42050F38)
2250 #define FEEAEN0_ADC_MSK (0x1 << 14 )
2251 #define FEEAEN0_ADC (0x1 << 14 )
2252 #define FEEAEN0_ADC_DIS (0x0 << 14 ) /* DIS. ADC interrupt abort disabled. */
2253 #define FEEAEN0_ADC_EN (0x1 << 14 ) /* EN. ADC interrupt abort enabled. */
2254 
2255 /* FEEAEN0[T1] - Timer1 interrupt abort enable bit */
2256 #define FEEAEN0_T1_BBA (*(volatile unsigned long *) 0x42050F34)
2257 #define FEEAEN0_T1_MSK (0x1 << 13 )
2258 #define FEEAEN0_T1 (0x1 << 13 )
2259 #define FEEAEN0_T1_DIS (0x0 << 13 ) /* DIS. Timer1 interrupt abort disabled. */
2260 #define FEEAEN0_T1_EN (0x1 << 13 ) /* EN. Timer1 interrupt abort enabled. */
2261 
2262 /* FEEAEN0[T0] - Timer0 interrupt abort enable bit */
2263 #define FEEAEN0_T0_BBA (*(volatile unsigned long *) 0x42050F30)
2264 #define FEEAEN0_T0_MSK (0x1 << 12 )
2265 #define FEEAEN0_T0 (0x1 << 12 )
2266 #define FEEAEN0_T0_DIS (0x0 << 12 ) /* DIS. Timer0 interrupt abort disabled. */
2267 #define FEEAEN0_T0_EN (0x1 << 12 ) /* EN. Timer0 interrupt abort enabled. */
2268 
2269 /* FEEAEN0[T3] - Timer3 interrupt abort enable bit */
2270 #define FEEAEN0_T3_BBA (*(volatile unsigned long *) 0x42050F28)
2271 #define FEEAEN0_T3_MSK (0x1 << 10 )
2272 #define FEEAEN0_T3 (0x1 << 10 )
2273 #define FEEAEN0_T3_DIS (0x0 << 10 ) /* DIS. Timer3 interrupt abort disabled. */
2274 #define FEEAEN0_T3_EN (0x1 << 10 ) /* EN. Timer3 interrupt abort enabled. */
2275 
2276 /* FEEAEN0[EXTINT8] - External interrupt 8 abort enable bit */
2277 #define FEEAEN0_EXTINT8_BBA (*(volatile unsigned long *) 0x42050F24)
2278 #define FEEAEN0_EXTINT8_MSK (0x1 << 9 )
2279 #define FEEAEN0_EXTINT8 (0x1 << 9 )
2280 #define FEEAEN0_EXTINT8_DIS (0x0 << 9 ) /* DIS. External interrupt 8 abort disabled. */
2281 #define FEEAEN0_EXTINT8_EN (0x1 << 9 ) /* EN. External interrupt 8 abort enabled. */
2282 
2283 /* FEEAEN0[EXTINT7] - External interrupt 7 abort enable bit */
2284 #define FEEAEN0_EXTINT7_BBA (*(volatile unsigned long *) 0x42050F20)
2285 #define FEEAEN0_EXTINT7_MSK (0x1 << 8 )
2286 #define FEEAEN0_EXTINT7 (0x1 << 8 )
2287 #define FEEAEN0_EXTINT7_DIS (0x0 << 8 ) /* DIS. External interrupt 7 abort disabled. */
2288 #define FEEAEN0_EXTINT7_EN (0x1 << 8 ) /* EN. External interrupt 7 abort enabled. */
2289 
2290 /* FEEAEN0[EXTINT6] - External interrupt 6 abort enable bit */
2291 #define FEEAEN0_EXTINT6_BBA (*(volatile unsigned long *) 0x42050F1C)
2292 #define FEEAEN0_EXTINT6_MSK (0x1 << 7 )
2293 #define FEEAEN0_EXTINT6 (0x1 << 7 )
2294 #define FEEAEN0_EXTINT6_DIS (0x0 << 7 ) /* DIS. External interrupt 6 abort disabled. */
2295 #define FEEAEN0_EXTINT6_EN (0x1 << 7 ) /* EN. External interrupt 6 abort enabled. */
2296 
2297 /* FEEAEN0[EXTINT5] - External interrupt 5 abort enable bit */
2298 #define FEEAEN0_EXTINT5_BBA (*(volatile unsigned long *) 0x42050F18)
2299 #define FEEAEN0_EXTINT5_MSK (0x1 << 6 )
2300 #define FEEAEN0_EXTINT5 (0x1 << 6 )
2301 #define FEEAEN0_EXTINT5_DIS (0x0 << 6 ) /* DIS. External interrupt 5 abort disabled. */
2302 #define FEEAEN0_EXTINT5_EN (0x1 << 6 ) /* EN. External interrupt 5 abort enabled. */
2303 
2304 /* FEEAEN0[EXTINT4] - External interrupt 4 abort enable bit */
2305 #define FEEAEN0_EXTINT4_BBA (*(volatile unsigned long *) 0x42050F14)
2306 #define FEEAEN0_EXTINT4_MSK (0x1 << 5 )
2307 #define FEEAEN0_EXTINT4 (0x1 << 5 )
2308 #define FEEAEN0_EXTINT4_DIS (0x0 << 5 ) /* DIS. External interrupt 4 abort disabled. */
2309 #define FEEAEN0_EXTINT4_EN (0x1 << 5 ) /* EN. External interrupt 4 abort enabled. */
2310 
2311 /* FEEAEN0[EXTINT3] - External interrupt 3 abort enable bit */
2312 #define FEEAEN0_EXTINT3_BBA (*(volatile unsigned long *) 0x42050F10)
2313 #define FEEAEN0_EXTINT3_MSK (0x1 << 4 )
2314 #define FEEAEN0_EXTINT3 (0x1 << 4 )
2315 #define FEEAEN0_EXTINT3_DIS (0x0 << 4 ) /* DIS. External interrupt 3 abort disabled. */
2316 #define FEEAEN0_EXTINT3_EN (0x1 << 4 ) /* EN. External interrupt 3 abort enabled. */
2317 
2318 /* FEEAEN0[EXTINT2] - External interrupt 2 abort enable bit */
2319 #define FEEAEN0_EXTINT2_BBA (*(volatile unsigned long *) 0x42050F0C)
2320 #define FEEAEN0_EXTINT2_MSK (0x1 << 3 )
2321 #define FEEAEN0_EXTINT2 (0x1 << 3 )
2322 #define FEEAEN0_EXTINT2_DIS (0x0 << 3 ) /* DIS. External interrupt 2 abort disabled. */
2323 #define FEEAEN0_EXTINT2_EN (0x1 << 3 ) /* EN. External interrupt 2 abort enabled. */
2324 
2325 /* FEEAEN0[EXTINT1] - External interrupt 1 abort enable bit */
2326 #define FEEAEN0_EXTINT1_BBA (*(volatile unsigned long *) 0x42050F08)
2327 #define FEEAEN0_EXTINT1_MSK (0x1 << 2 )
2328 #define FEEAEN0_EXTINT1 (0x1 << 2 )
2329 #define FEEAEN0_EXTINT1_DIS (0x0 << 2 ) /* DIS. External interrupt 1 abort disabled. */
2330 #define FEEAEN0_EXTINT1_EN (0x1 << 2 ) /* EN. External interrupt 1 abort enabled. */
2331 
2332 /* FEEAEN0[EXTINT0] - External interrupt 0 abort enable bit */
2333 #define FEEAEN0_EXTINT0_BBA (*(volatile unsigned long *) 0x42050F04)
2334 #define FEEAEN0_EXTINT0_MSK (0x1 << 1 )
2335 #define FEEAEN0_EXTINT0 (0x1 << 1 )
2336 #define FEEAEN0_EXTINT0_DIS (0x0 << 1 ) /* DIS. External interrupt 0 abort disabled. */
2337 #define FEEAEN0_EXTINT0_EN (0x1 << 1 ) /* EN. External interrupt 0 abort enabled. */
2338 
2339 /* FEEAEN0[T2] - Timer2 interrupt abort enable bit */
2340 #define FEEAEN0_T2_BBA (*(volatile unsigned long *) 0x42050F00)
2341 #define FEEAEN0_T2_MSK (0x1 << 0 )
2342 #define FEEAEN0_T2 (0x1 << 0 )
2343 #define FEEAEN0_T2_DIS (0x0 << 0 ) /* DIS. Timer2 interrupt abort disabled. */
2344 #define FEEAEN0_T2_EN (0x1 << 0 ) /* EN. Timer2 interrupt abort enabled */
2345 
2346 /* Reset Value for FEEAEN1*/
2347 #define FEEAEN1_RVAL 0x0
2348 
2349 /* FEEAEN1[DMAI2CMRX] - I2C master RX DMA interrupt abort enable bit */
2350 #define FEEAEN1_DMAI2CMRX_BBA (*(volatile unsigned long *) 0x42050FBC)
2351 #define FEEAEN1_DMAI2CMRX_MSK (0x1 << 15 )
2352 #define FEEAEN1_DMAI2CMRX (0x1 << 15 )
2353 #define FEEAEN1_DMAI2CMRX_DIS (0x0 << 15 ) /* DIS. I2C master RX DMA interrupt abort disabled. */
2354 #define FEEAEN1_DMAI2CMRX_EN (0x1 << 15 ) /* EN. I2C master RX DMA interrupt abort enabled. */
2355 
2356 /* FEEAEN1[DMAI2CMTX] - I2C master TX DMA interrupt abort enable bit */
2357 #define FEEAEN1_DMAI2CMTX_BBA (*(volatile unsigned long *) 0x42050FB8)
2358 #define FEEAEN1_DMAI2CMTX_MSK (0x1 << 14 )
2359 #define FEEAEN1_DMAI2CMTX (0x1 << 14 )
2360 #define FEEAEN1_DMAI2CMTX_DIS (0x0 << 14 ) /* DIS. I2C master TX DMA interrupt abort disabled. */
2361 #define FEEAEN1_DMAI2CMTX_EN (0x1 << 14 ) /* EN. I2C master TX DMA interrupt abort enabled. */
2362 
2363 /* FEEAEN1[DMAI2CSRX] - I2C slave RX DMA interrupt abort enable bit */
2364 #define FEEAEN1_DMAI2CSRX_BBA (*(volatile unsigned long *) 0x42050FB4)
2365 #define FEEAEN1_DMAI2CSRX_MSK (0x1 << 13 )
2366 #define FEEAEN1_DMAI2CSRX (0x1 << 13 )
2367 #define FEEAEN1_DMAI2CSRX_DIS (0x0 << 13 ) /* DIS. I2C slave RX DMA interrupt abort disabled. */
2368 #define FEEAEN1_DMAI2CSRX_EN (0x1 << 13 ) /* EN. I2C slave RX DMA interrupt abort enabled. */
2369 
2370 /* FEEAEN1[DMAI2CSTX] - I2C slave TX DMA interrupt abort enable bit */
2371 #define FEEAEN1_DMAI2CSTX_BBA (*(volatile unsigned long *) 0x42050FB0)
2372 #define FEEAEN1_DMAI2CSTX_MSK (0x1 << 12 )
2373 #define FEEAEN1_DMAI2CSTX (0x1 << 12 )
2374 #define FEEAEN1_DMAI2CSTX_DIS (0x0 << 12 ) /* DIS. I2C slave TX DMA interrupt abort disabled. */
2375 #define FEEAEN1_DMAI2CSTX_EN (0x1 << 12 ) /* EN. I2C slave TX DMA interrupt abort enabled. */
2376 
2377 /* FEEAEN1[DMAUARTRX] - UARTRX DMA interrupt abort enable bit */
2378 #define FEEAEN1_DMAUARTRX_BBA (*(volatile unsigned long *) 0x42050FAC)
2379 #define FEEAEN1_DMAUARTRX_MSK (0x1 << 11 )
2380 #define FEEAEN1_DMAUARTRX (0x1 << 11 )
2381 #define FEEAEN1_DMAUARTRX_DIS (0x0 << 11 ) /* DIS. UARTRX DMA interrupt abort disabled. */
2382 #define FEEAEN1_DMAUARTRX_EN (0x1 << 11 ) /* EN. UARTRX DMA interrupt abort enabled. */
2383 
2384 /* FEEAEN1[DMAUARTTX] - UARTTX DMA interrupt abort enable bit */
2385 #define FEEAEN1_DMAUARTTX_BBA (*(volatile unsigned long *) 0x42050FA8)
2386 #define FEEAEN1_DMAUARTTX_MSK (0x1 << 10 )
2387 #define FEEAEN1_DMAUARTTX (0x1 << 10 )
2388 #define FEEAEN1_DMAUARTTX_DIS (0x0 << 10 ) /* DIS. UARTTX DMA interrupt abort disabled. */
2389 #define FEEAEN1_DMAUARTTX_EN (0x1 << 10 ) /* EN. UARTTX DMA interrupt abort enabled. */
2390 
2391 /* FEEAEN1[DMASPI1RX] - SPI1RX DMA interrupt abort enable bit */
2392 #define FEEAEN1_DMASPI1RX_BBA (*(volatile unsigned long *) 0x42050FA4)
2393 #define FEEAEN1_DMASPI1RX_MSK (0x1 << 9 )
2394 #define FEEAEN1_DMASPI1RX (0x1 << 9 )
2395 #define FEEAEN1_DMASPI1RX_DIS (0x0 << 9 ) /* DIS. SPI1RX DMA interrupt abort disabled. */
2396 #define FEEAEN1_DMASPI1RX_EN (0x1 << 9 ) /* EN. SPI1RX DMA interrupt abort enabled. */
2397 
2398 /* FEEAEN1[DMASPI1TX] - SPI1TX DMA interrupt abort enable bit */
2399 #define FEEAEN1_DMASPI1TX_BBA (*(volatile unsigned long *) 0x42050FA0)
2400 #define FEEAEN1_DMASPI1TX_MSK (0x1 << 8 )
2401 #define FEEAEN1_DMASPI1TX (0x1 << 8 )
2402 #define FEEAEN1_DMASPI1TX_DIS (0x0 << 8 ) /* DIS. SPI1TX DMA interrupt abort disabled. */
2403 #define FEEAEN1_DMASPI1TX_EN (0x1 << 8 ) /* EN. SPI1TX DMA interrupt abort enabled. */
2404 
2405 /* FEEAEN1[DMAERROR] - DMA error interrupt abort enable bit */
2406 #define FEEAEN1_DMAERROR_BBA (*(volatile unsigned long *) 0x42050F9C)
2407 #define FEEAEN1_DMAERROR_MSK (0x1 << 7 )
2408 #define FEEAEN1_DMAERROR (0x1 << 7 )
2409 #define FEEAEN1_DMAERROR_DIS (0x0 << 7 ) /* DIS. DMA error interrupt abort disabled. */
2410 #define FEEAEN1_DMAERROR_EN (0x1 << 7 ) /* EN. DMA error interrupt abort enabled. */
2411 
2412 /* FEEAEN1[I2CM] - I2C master interrupt abort enable bit */
2413 #define FEEAEN1_I2CM_BBA (*(volatile unsigned long *) 0x42050F90)
2414 #define FEEAEN1_I2CM_MSK (0x1 << 4 )
2415 #define FEEAEN1_I2CM (0x1 << 4 )
2416 #define FEEAEN1_I2CM_DIS (0x0 << 4 ) /* DIS. I2C slave interrupt abort disabled. */
2417 #define FEEAEN1_I2CM_EN (0x1 << 4 ) /* EN. I2C master interrupt abort enabled. */
2418 
2419 /* FEEAEN1[I2CS] - I2C slave interrupt abort enable bit */
2420 #define FEEAEN1_I2CS_BBA (*(volatile unsigned long *) 0x42050F8C)
2421 #define FEEAEN1_I2CS_MSK (0x1 << 3 )
2422 #define FEEAEN1_I2CS (0x1 << 3 )
2423 #define FEEAEN1_I2CS_DIS (0x0 << 3 ) /* DIS. I2C slave interrupt abort disabled. */
2424 #define FEEAEN1_I2CS_EN (0x1 << 3 ) /* EN. I2C slave interrupt abort enabled. */
2425 
2426 /* FEEAEN1[SPI1] - SPI1 interrupt abort enable bit */
2427 #define FEEAEN1_SPI1_BBA (*(volatile unsigned long *) 0x42050F88)
2428 #define FEEAEN1_SPI1_MSK (0x1 << 2 )
2429 #define FEEAEN1_SPI1 (0x1 << 2 )
2430 #define FEEAEN1_SPI1_DIS (0x0 << 2 ) /* DIS. SPI1 interrupt abort disabled. */
2431 #define FEEAEN1_SPI1_EN (0x1 << 2 ) /* EN. SPI1 interrupt abort enabled. */
2432 
2433 /* FEEAEN1[SPI0] - SPI0 interrupt abort enable bit */
2434 #define FEEAEN1_SPI0_BBA (*(volatile unsigned long *) 0x42050F84)
2435 #define FEEAEN1_SPI0_MSK (0x1 << 1 )
2436 #define FEEAEN1_SPI0 (0x1 << 1 )
2437 #define FEEAEN1_SPI0_DIS (0x0 << 1 ) /* DIS. SPI0 interrupt abort disabled. */
2438 #define FEEAEN1_SPI0_EN (0x1 << 1 ) /* EN. SPI0 interrupt abort enabled. */
2439 
2440 /* FEEAEN1[UART] - UART interrupt abort enable bit */
2441 #define FEEAEN1_UART_BBA (*(volatile unsigned long *) 0x42050F80)
2442 #define FEEAEN1_UART_MSK (0x1 << 0 )
2443 #define FEEAEN1_UART (0x1 << 0 )
2444 #define FEEAEN1_UART_DIS (0x0 << 0 ) /* DIS. UART interrupt abort disabled. */
2445 #define FEEAEN1_UART_EN (0x1 << 0 ) /* EN. UART interrupt abort enabled. */
2446 
2447 /* Reset Value for FEEAEN2*/
2448 #define FEEAEN2_RVAL 0x0
2449 
2450 /* FEEAEN2[PWM3] - PWM3 interrupt abort enable bit */
2451 #define FEEAEN2_PWM3_BBA (*(volatile unsigned long *) 0x42051028)
2452 #define FEEAEN2_PWM3_MSK (0x1 << 10 )
2453 #define FEEAEN2_PWM3 (0x1 << 10 )
2454 #define FEEAEN2_PWM3_DIS (0x0 << 10 ) /* DIS. PWM3 interrupt abort disabled. */
2455 #define FEEAEN2_PWM3_EN (0x1 << 10 ) /* EN. PWM3 interrupt abort enabled. */
2456 
2457 /* FEEAEN2[PWM2] - PWM2 interrupt abort enable bit */
2458 #define FEEAEN2_PWM2_BBA (*(volatile unsigned long *) 0x42051024)
2459 #define FEEAEN2_PWM2_MSK (0x1 << 9 )
2460 #define FEEAEN2_PWM2 (0x1 << 9 )
2461 #define FEEAEN2_PWM2_DIS (0x0 << 9 ) /* DIS. PWM2 interrupt abort disabled. */
2462 #define FEEAEN2_PWM2_EN (0x1 << 9 ) /* EN. PWM2 interrupt abort enabled. */
2463 
2464 /* FEEAEN2[PWM1] - PWM1 interrupt abort enable bit */
2465 #define FEEAEN2_PWM1_BBA (*(volatile unsigned long *) 0x42051020)
2466 #define FEEAEN2_PWM1_MSK (0x1 << 8 )
2467 #define FEEAEN2_PWM1 (0x1 << 8 )
2468 #define FEEAEN2_PWM1_DIS (0x0 << 8 ) /* DIS. PWM1 interrupt abort disabled. */
2469 #define FEEAEN2_PWM1_EN (0x1 << 8 ) /* EN. PWM1 interrupt abort enabled. */
2470 
2471 /* FEEAEN2[PWM0] - PWM0 interrupt abort enable bit */
2472 #define FEEAEN2_PWM0_BBA (*(volatile unsigned long *) 0x4205101C)
2473 #define FEEAEN2_PWM0_MSK (0x1 << 7 )
2474 #define FEEAEN2_PWM0 (0x1 << 7 )
2475 #define FEEAEN2_PWM0_DIS (0x0 << 7 ) /* DIS. PWM0 interrupt abort disabled. */
2476 #define FEEAEN2_PWM0_EN (0x1 << 7 ) /* EN. PWM0 interrupt abort enabled. */
2477 
2478 /* FEEAEN2[PWMTRIP] - PWMTRIP interrupt abort enable bit */
2479 #define FEEAEN2_PWMTRIP_BBA (*(volatile unsigned long *) 0x42051018)
2480 #define FEEAEN2_PWMTRIP_MSK (0x1 << 6 )
2481 #define FEEAEN2_PWMTRIP (0x1 << 6 )
2482 #define FEEAEN2_PWMTRIP_DIS (0x0 << 6 ) /* DIS. PWMTRIP interrupt abort disabled. */
2483 #define FEEAEN2_PWMTRIP_EN (0x1 << 6 ) /* EN. PWMTRIP interrupt abort enabled. */
2484 
2485 /* FEEAEN2[DMASPI0RX] - SPI0RX DMA interrupt abort enable bit */
2486 #define FEEAEN2_DMASPI0RX_BBA (*(volatile unsigned long *) 0x42051014)
2487 #define FEEAEN2_DMASPI0RX_MSK (0x1 << 5 )
2488 #define FEEAEN2_DMASPI0RX (0x1 << 5 )
2489 #define FEEAEN2_DMASPI0RX_DIS (0x0 << 5 ) /* DIS. SPI0RX DMA interrupt abort disabled. */
2490 #define FEEAEN2_DMASPI0RX_EN (0x1 << 5 ) /* EN. SPI0RX DMA interrupt abort enabled. */
2491 
2492 /* FEEAEN2[DMASPI0TX] - SPI0TX DMA interrupt abort enable bit */
2493 #define FEEAEN2_DMASPI0TX_BBA (*(volatile unsigned long *) 0x42051010)
2494 #define FEEAEN2_DMASPI0TX_MSK (0x1 << 4 )
2495 #define FEEAEN2_DMASPI0TX (0x1 << 4 )
2496 #define FEEAEN2_DMASPI0TX_DIS (0x0 << 4 ) /* DIS. SPI0TX DMA interrupt abort disabled. */
2497 #define FEEAEN2_DMASPI0TX_EN (0x1 << 4 ) /* EN. SPI0TX DMA interrupt abort enabled. */
2498 
2499 /* FEEAEN2[DMAADC] - ADC DMA interrupt abort enable bit */
2500 #define FEEAEN2_DMAADC_BBA (*(volatile unsigned long *) 0x4205100C)
2501 #define FEEAEN2_DMAADC_MSK (0x1 << 3 )
2502 #define FEEAEN2_DMAADC (0x1 << 3 )
2503 #define FEEAEN2_DMAADC_DIS (0x0 << 3 ) /* DIS. ADC DMA interrupt abort disabled. */
2504 #define FEEAEN2_DMAADC_EN (0x1 << 3 ) /* EN. ADC DMA interrupt abort enabled. */
2505 // ------------------------------------------------------------------------------------------------
2506 // ----- GPIO0 -----
2507 // ------------------------------------------------------------------------------------------------
2508 
2509 
2510 /**
2511  * @brief General Purpose Input Output (pADI_GP0)
2512  */
2513 
2514 #if (__NO_MMR_STRUCTS__==0)
2515 typedef struct { /*!< pADI_GP0 Structure */
2516  __IO uint16_t GPCON; /*!< GPIO Port 0 Configuration */
2517  __I uint16_t RESERVED0;
2518  __IO uint8_t GPOEN; /*!< GPIO Port 0 Output Enable */
2519  __I uint8_t RESERVED1[3];
2520  __IO uint8_t GPPUL; /*!< GPIO Port 0 Pull Up Enable */
2521  __I uint8_t RESERVED2[3];
2522  __IO uint8_t GPOCE; /*!< GPIO Port 0 Tri State */
2523  __I uint8_t RESERVED3[7];
2524  __IO uint8_t GPIN; /*!< GPIO Port 0 Data Input */
2525  __I uint8_t RESERVED4[3];
2526  __IO uint8_t GPOUT; /*!< GPIO Port 0 Data Out */
2527  __I uint8_t RESERVED5[3];
2528  __IO uint8_t GPSET; /*!< GPIO Port 0 Data Out Set */
2529  __I uint8_t RESERVED6[3];
2530  __IO uint8_t GPCLR; /*!< GPIO Port 0 Data Out Clear */
2531  __I uint8_t RESERVED7[3];
2532  __IO uint8_t GPTGL; /*!< GPIO Port 0 Pin Toggle */
2534 #else // (__NO_MMR_STRUCTS__==0)
2535 #define GP0CON (*(volatile unsigned short int *) 0x40006000)
2536 #define GP0OEN (*(volatile unsigned char *) 0x40006004)
2537 #define GP0PUL (*(volatile unsigned char *) 0x40006008)
2538 #define GP0OCE (*(volatile unsigned char *) 0x4000600C)
2539 #define GP0IN (*(volatile unsigned char *) 0x40006014)
2540 #define GP0OUT (*(volatile unsigned char *) 0x40006018)
2541 #define GP0SET (*(volatile unsigned char *) 0x4000601C)
2542 #define GP0CLR (*(volatile unsigned char *) 0x40006020)
2543 #define GP0TGL (*(volatile unsigned char *) 0x40006024)
2544 #endif // (__NO_MMR_STRUCTS__==0)
2545 
2546 /* Reset Value for GP0CON*/
2547 #define GP0CON_RVAL 0x0
2548 
2549 /* GP0CON[CON7] - Configuration bits for Px.7 (not available for port 1). */
2550 #define GP0CON_CON7_MSK (0x3 << 14 )
2551 #define GP0CON_CON7_GPIOIRQ3 (0x0 << 14 ) /* GPIOIRQ3. GPIO/IRQ3. */
2552 #define GP0CON_CON7_SPI1CS4 (0x1 << 14 ) /* SPI1CS4. SPI1 CS4 (SPI1). */
2553 #define GP0CON_CON7_UARTCTS (0x2 << 14 ) /* UARTCTS. UART CTS. */
2554 
2555 /* GP0CON[CON6] - Configuration bits for Px.6 (not available for port 1). */
2556 #define GP0CON_CON6_MSK (0x3 << 12 )
2557 #define GP0CON_CON6_GPIOIRQ2 (0x0 << 12 ) /* GPIOIRQ2. GPIO/IRQ2. */
2558 #define GP0CON_CON6_SPI1CS3 (0x1 << 12 ) /* SPI1CS3. SPI1 CS3 (SPI1). */
2559 #define GP0CON_CON6_UARTRTS (0x2 << 12 ) /* UARTRTS. UART RTS. */
2560 #define GP0CON_CON6_PWM0 (0x3 << 12 ) /* PWM0. PWM0. */
2561 
2562 /* GP0CON[CON5] - Configuration bits for Px.5. */
2563 #define GP0CON_CON5_MSK (0x3 << 10 )
2564 #define GP0CON_CON5_GPIO (0x0 << 10 ) /* GPIO. GPIO. */
2565 #define GP0CON_CON5_SPI1CS2 (0x1 << 10 ) /* SPI1CS2. SPI1 CS2 (SPI1). */
2566 #define GP0CON_CON5_ECLKIN (0x2 << 10 ) /* ECLKIN. ECLKIN. */
2567 
2568 /* GP0CON[CON4] - Configuration bits for Px.4. */
2569 #define GP0CON_CON4_MSK (0x3 << 8 )
2570 #define GP0CON_CON4_GPIO (0x0 << 8 ) /* GPIO. GPIO */
2571 #define GP0CON_CON4_SPI1CS1 (0x1 << 8 ) /* SPI1CS1. SPI1 CS1 (SPI1). */
2572 #define GP0CON_CON4_ECLKOUT (0x2 << 8 ) /* ECLKOUT. ECLK OUT. */
2573 
2574 /* GP0CON[CON3] - Configuration bits for Px.3. */
2575 #define GP0CON_CON3_MSK (0x3 << 6 )
2576 #define GP0CON_CON3_GPIOIRQ1 (0x0 << 6 ) /* GPIOIRQ1. GPIO/IRQ1. */
2577 #define GP0CON_CON3_SPI1CS0 (0x1 << 6 ) /* SPI1CS0. SPI1 CS0 (SPI1). */
2578 #define GP0CON_CON3_ADCCONVST (0x2 << 6 ) /* ADCCONVST. ADCCONVST. */
2579 #define GP0CON_CON3_PWM1 (0x3 << 6 ) /* PWM1. PWM1. */
2580 
2581 /* GP0CON[CON2] - Configuration bits for Px.2. */
2582 #define GP0CON_CON2_MSK (0x3 << 4 )
2583 #define GP0CON_CON2_GPIO (0x0 << 4 ) /* GPIO. GPIO */
2584 #define GP0CON_CON2_SPI1MOSI (0x1 << 4 ) /* SPI1MOSI. SPI MOSI (SPI1). */
2585 #define GP0CON_CON2_PWM0 (0x3 << 4 ) /* PWM0. PWM0 */
2586 
2587 /* GP0CON[CON1] - Configuration bits for Px.1. */
2588 #define GP0CON_CON1_MSK (0x3 << 2 )
2589 #define GP0CON_CON1_GPIO (0x0 << 2 ) /* GPIO. GPIO. */
2590 #define GP0CON_CON1_SPI1SCLK (0x1 << 2 ) /* SPI1SCLK. SPI SCLK (SPI1). */
2591 
2592 /* GP0CON[CON0] - Configuration bits for Px.0. */
2593 #define GP0CON_CON0_MSK (0x3 << 0 )
2594 #define GP0CON_CON0_GPIO (0x0 << 0 ) /* GPIO. GPIO */
2595 #define GP0CON_CON0_SPI1MISO (0x1 << 0 ) /* SPI1MISO. SPI MISO (SPI1) */
2596 
2597 /* Reset Value for GP0OEN*/
2598 #define GP0OEN_RVAL 0x0
2599 
2600 /* GP0OEN[OEN7] - Port pin direction. */
2601 #define GP0OEN_OEN7_BBA (*(volatile unsigned long *) 0x420C009C)
2602 #define GP0OEN_OEN7_MSK (0x1 << 7 )
2603 #define GP0OEN_OEN7 (0x1 << 7 )
2604 #define GP0OEN_OEN7_IN (0x0 << 7 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2605 #define GP0OEN_OEN7_OUT (0x1 << 7 ) /* OUT. Enables the output on corresponding port pin. */
2606 
2607 /* GP0OEN[OEN6] - Port pin direction. */
2608 #define GP0OEN_OEN6_BBA (*(volatile unsigned long *) 0x420C0098)
2609 #define GP0OEN_OEN6_MSK (0x1 << 6 )
2610 #define GP0OEN_OEN6 (0x1 << 6 )
2611 #define GP0OEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2612 #define GP0OEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
2613 
2614 /* GP0OEN[OEN5] - Port pin direction. */
2615 #define GP0OEN_OEN5_BBA (*(volatile unsigned long *) 0x420C0094)
2616 #define GP0OEN_OEN5_MSK (0x1 << 5 )
2617 #define GP0OEN_OEN5 (0x1 << 5 )
2618 #define GP0OEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2619 #define GP0OEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
2620 
2621 /* GP0OEN[OEN4] - Port pin direction. */
2622 #define GP0OEN_OEN4_BBA (*(volatile unsigned long *) 0x420C0090)
2623 #define GP0OEN_OEN4_MSK (0x1 << 4 )
2624 #define GP0OEN_OEN4 (0x1 << 4 )
2625 #define GP0OEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2626 #define GP0OEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
2627 
2628 /* GP0OEN[OEN3] - Port pin direction. */
2629 #define GP0OEN_OEN3_BBA (*(volatile unsigned long *) 0x420C008C)
2630 #define GP0OEN_OEN3_MSK (0x1 << 3 )
2631 #define GP0OEN_OEN3 (0x1 << 3 )
2632 #define GP0OEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2633 #define GP0OEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
2634 
2635 /* GP0OEN[OEN2] - Port pin direction. */
2636 #define GP0OEN_OEN2_BBA (*(volatile unsigned long *) 0x420C0088)
2637 #define GP0OEN_OEN2_MSK (0x1 << 2 )
2638 #define GP0OEN_OEN2 (0x1 << 2 )
2639 #define GP0OEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2640 #define GP0OEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
2641 
2642 /* GP0OEN[OEN1] - Port pin direction. */
2643 #define GP0OEN_OEN1_BBA (*(volatile unsigned long *) 0x420C0084)
2644 #define GP0OEN_OEN1_MSK (0x1 << 1 )
2645 #define GP0OEN_OEN1 (0x1 << 1 )
2646 #define GP0OEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2647 #define GP0OEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
2648 
2649 /* GP0OEN[OEN0] - Port pin direction. */
2650 #define GP0OEN_OEN0_BBA (*(volatile unsigned long *) 0x420C0080)
2651 #define GP0OEN_OEN0_MSK (0x1 << 0 )
2652 #define GP0OEN_OEN0 (0x1 << 0 )
2653 #define GP0OEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
2654 #define GP0OEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin.. */
2655 
2656 /* Reset Value for GP0PUL*/
2657 #define GP0PUL_RVAL 0xFF
2658 
2659 /* GP0PUL[PUL7] - Pull Up Enable for port pin. */
2660 #define GP0PUL_PUL7_BBA (*(volatile unsigned long *) 0x420C011C)
2661 #define GP0PUL_PUL7_MSK (0x1 << 7 )
2662 #define GP0PUL_PUL7 (0x1 << 7 )
2663 #define GP0PUL_PUL7_DIS (0x0 << 7 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2664 #define GP0PUL_PUL7_EN (0x1 << 7 ) /* EN. Enables the internal pull up on corresponding port pin. */
2665 
2666 /* GP0PUL[PUL6] - Pull Up Enable for port pin. */
2667 #define GP0PUL_PUL6_BBA (*(volatile unsigned long *) 0x420C0118)
2668 #define GP0PUL_PUL6_MSK (0x1 << 6 )
2669 #define GP0PUL_PUL6 (0x1 << 6 )
2670 #define GP0PUL_PUL6_DIS (0x0 << 6 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2671 #define GP0PUL_PUL6_EN (0x1 << 6 ) /* EN. Enables the internal pull up on corresponding port pin. */
2672 
2673 /* GP0PUL[PUL5] - Pull Up Enable for port pin. */
2674 #define GP0PUL_PUL5_BBA (*(volatile unsigned long *) 0x420C0114)
2675 #define GP0PUL_PUL5_MSK (0x1 << 5 )
2676 #define GP0PUL_PUL5 (0x1 << 5 )
2677 #define GP0PUL_PUL5_DIS (0x0 << 5 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2678 #define GP0PUL_PUL5_EN (0x1 << 5 ) /* EN. Enables the internal pull up on corresponding port pin. */
2679 
2680 /* GP0PUL[PUL4] - Pull Up Enable for port pin. */
2681 #define GP0PUL_PUL4_BBA (*(volatile unsigned long *) 0x420C0110)
2682 #define GP0PUL_PUL4_MSK (0x1 << 4 )
2683 #define GP0PUL_PUL4 (0x1 << 4 )
2684 #define GP0PUL_PUL4_DIS (0x0 << 4 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2685 #define GP0PUL_PUL4_EN (0x1 << 4 ) /* EN. Enables the internal pull up on corresponding port pin. */
2686 
2687 /* GP0PUL[PUL3] - Pull Up Enable for port pin. */
2688 #define GP0PUL_PUL3_BBA (*(volatile unsigned long *) 0x420C010C)
2689 #define GP0PUL_PUL3_MSK (0x1 << 3 )
2690 #define GP0PUL_PUL3 (0x1 << 3 )
2691 #define GP0PUL_PUL3_DIS (0x0 << 3 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2692 #define GP0PUL_PUL3_EN (0x1 << 3 ) /* EN. Enables the internal pull up on corresponding port pin. */
2693 
2694 /* GP0PUL[PUL2] - Pull Up Enable for port pin. */
2695 #define GP0PUL_PUL2_BBA (*(volatile unsigned long *) 0x420C0108)
2696 #define GP0PUL_PUL2_MSK (0x1 << 2 )
2697 #define GP0PUL_PUL2 (0x1 << 2 )
2698 #define GP0PUL_PUL2_DIS (0x0 << 2 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2699 #define GP0PUL_PUL2_EN (0x1 << 2 ) /* EN. Enables the internal pull up on corresponding port pin. */
2700 
2701 /* GP0PUL[PUL1] - Pull Up Enable for port pin. */
2702 #define GP0PUL_PUL1_BBA (*(volatile unsigned long *) 0x420C0104)
2703 #define GP0PUL_PUL1_MSK (0x1 << 1 )
2704 #define GP0PUL_PUL1 (0x1 << 1 )
2705 #define GP0PUL_PUL1_DIS (0x0 << 1 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2706 #define GP0PUL_PUL1_EN (0x1 << 1 ) /* EN. Enables the internal pull up on corresponding port pin. */
2707 
2708 /* GP0PUL[PUL0] - Pull Up Enable for port pin. */
2709 #define GP0PUL_PUL0_BBA (*(volatile unsigned long *) 0x420C0100)
2710 #define GP0PUL_PUL0_MSK (0x1 << 0 )
2711 #define GP0PUL_PUL0 (0x1 << 0 )
2712 #define GP0PUL_PUL0_DIS (0x0 << 0 ) /* DIS. Disables the internal pull up on corresponding port pin. */
2713 #define GP0PUL_PUL0_EN (0x1 << 0 ) /* EN. Enables the internal pull up on corresponding port pin. */
2714 
2715 /* Reset Value for GP0OCE*/
2716 #define GP0OCE_RVAL 0x0
2717 
2718 /* GP0OCE[OCE7] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2719 #define GP0OCE_OCE7_BBA (*(volatile unsigned long *) 0x420C019C)
2720 #define GP0OCE_OCE7_MSK (0x1 << 7 )
2721 #define GP0OCE_OCE7 (0x1 << 7 )
2722 #define GP0OCE_OCE7_DIS (0x0 << 7 ) /* DIS */
2723 #define GP0OCE_OCE7_EN (0x1 << 7 ) /* EN */
2724 
2725 /* GP0OCE[OCE6] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2726 #define GP0OCE_OCE6_BBA (*(volatile unsigned long *) 0x420C0198)
2727 #define GP0OCE_OCE6_MSK (0x1 << 6 )
2728 #define GP0OCE_OCE6 (0x1 << 6 )
2729 #define GP0OCE_OCE6_DIS (0x0 << 6 ) /* DIS */
2730 #define GP0OCE_OCE6_EN (0x1 << 6 ) /* EN */
2731 
2732 /* GP0OCE[OCE5] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2733 #define GP0OCE_OCE5_BBA (*(volatile unsigned long *) 0x420C0194)
2734 #define GP0OCE_OCE5_MSK (0x1 << 5 )
2735 #define GP0OCE_OCE5 (0x1 << 5 )
2736 #define GP0OCE_OCE5_DIS (0x0 << 5 ) /* DIS */
2737 #define GP0OCE_OCE5_EN (0x1 << 5 ) /* EN */
2738 
2739 /* GP0OCE[OCE4] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2740 #define GP0OCE_OCE4_BBA (*(volatile unsigned long *) 0x420C0190)
2741 #define GP0OCE_OCE4_MSK (0x1 << 4 )
2742 #define GP0OCE_OCE4 (0x1 << 4 )
2743 #define GP0OCE_OCE4_DIS (0x0 << 4 ) /* DIS */
2744 #define GP0OCE_OCE4_EN (0x1 << 4 ) /* EN */
2745 
2746 /* GP0OCE[OCE3] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2747 #define GP0OCE_OCE3_BBA (*(volatile unsigned long *) 0x420C018C)
2748 #define GP0OCE_OCE3_MSK (0x1 << 3 )
2749 #define GP0OCE_OCE3 (0x1 << 3 )
2750 #define GP0OCE_OCE3_DIS (0x0 << 3 ) /* DIS */
2751 #define GP0OCE_OCE3_EN (0x1 << 3 ) /* EN */
2752 
2753 /* GP0OCE[OCE2] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2754 #define GP0OCE_OCE2_BBA (*(volatile unsigned long *) 0x420C0188)
2755 #define GP0OCE_OCE2_MSK (0x1 << 2 )
2756 #define GP0OCE_OCE2 (0x1 << 2 )
2757 #define GP0OCE_OCE2_DIS (0x0 << 2 ) /* DIS */
2758 #define GP0OCE_OCE2_EN (0x1 << 2 ) /* EN */
2759 
2760 /* GP0OCE[OCE1] - Output enable. Sets the GPIO pads oncorresponding port to open circuit mode. */
2761 #define GP0OCE_OCE1_BBA (*(volatile unsigned long *) 0x420C0184)
2762 #define GP0OCE_OCE1_MSK (0x1 << 1 )
2763 #define GP0OCE_OCE1 (0x1 << 1 )
2764 #define GP0OCE_OCE1_DIS (0x0 << 1 ) /* DIS */
2765 #define GP0OCE_OCE1_EN (0x1 << 1 ) /* EN */
2766 
2767 /* GP0OCE[OCE0] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
2768 #define GP0OCE_OCE0_BBA (*(volatile unsigned long *) 0x420C0180)
2769 #define GP0OCE_OCE0_MSK (0x1 << 0 )
2770 #define GP0OCE_OCE0 (0x1 << 0 )
2771 #define GP0OCE_OCE0_DIS (0x0 << 0 ) /* DIS */
2772 #define GP0OCE_OCE0_EN (0x1 << 0 ) /* EN */
2773 
2774 /* Reset Value for GP0IN*/
2775 #define GP0IN_RVAL 0xFF
2776 
2777 /* GP0IN[IN7] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2778 #define GP0IN_IN7_BBA (*(volatile unsigned long *) 0x420C029C)
2779 #define GP0IN_IN7_MSK (0x1 << 7 )
2780 #define GP0IN_IN7 (0x1 << 7 )
2781 #define GP0IN_IN7_LOW (0x0 << 7 ) /* LOW */
2782 #define GP0IN_IN7_HIGH (0x1 << 7 ) /* HIGH */
2783 
2784 /* GP0IN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2785 #define GP0IN_IN6_BBA (*(volatile unsigned long *) 0x420C0298)
2786 #define GP0IN_IN6_MSK (0x1 << 6 )
2787 #define GP0IN_IN6 (0x1 << 6 )
2788 #define GP0IN_IN6_LOW (0x0 << 6 ) /* LOW */
2789 #define GP0IN_IN6_HIGH (0x1 << 6 ) /* HIGH */
2790 
2791 /* GP0IN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2792 #define GP0IN_IN5_BBA (*(volatile unsigned long *) 0x420C0294)
2793 #define GP0IN_IN5_MSK (0x1 << 5 )
2794 #define GP0IN_IN5 (0x1 << 5 )
2795 #define GP0IN_IN5_LOW (0x0 << 5 ) /* LOW */
2796 #define GP0IN_IN5_HIGH (0x1 << 5 ) /* HIGH */
2797 
2798 /* GP0IN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2799 #define GP0IN_IN4_BBA (*(volatile unsigned long *) 0x420C0290)
2800 #define GP0IN_IN4_MSK (0x1 << 4 )
2801 #define GP0IN_IN4 (0x1 << 4 )
2802 #define GP0IN_IN4_LOW (0x0 << 4 ) /* LOW */
2803 #define GP0IN_IN4_HIGH (0x1 << 4 ) /* HIGH */
2804 
2805 /* GP0IN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2806 #define GP0IN_IN3_BBA (*(volatile unsigned long *) 0x420C028C)
2807 #define GP0IN_IN3_MSK (0x1 << 3 )
2808 #define GP0IN_IN3 (0x1 << 3 )
2809 #define GP0IN_IN3_LOW (0x0 << 3 ) /* LOW */
2810 #define GP0IN_IN3_HIGH (0x1 << 3 ) /* HIGH */
2811 
2812 /* GP0IN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2813 #define GP0IN_IN2_BBA (*(volatile unsigned long *) 0x420C0288)
2814 #define GP0IN_IN2_MSK (0x1 << 2 )
2815 #define GP0IN_IN2 (0x1 << 2 )
2816 #define GP0IN_IN2_LOW (0x0 << 2 ) /* LOW */
2817 #define GP0IN_IN2_HIGH (0x1 << 2 ) /* HIGH */
2818 
2819 /* GP0IN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2820 #define GP0IN_IN1_BBA (*(volatile unsigned long *) 0x420C0284)
2821 #define GP0IN_IN1_MSK (0x1 << 1 )
2822 #define GP0IN_IN1 (0x1 << 1 )
2823 #define GP0IN_IN1_LOW (0x0 << 1 ) /* LOW */
2824 #define GP0IN_IN1_HIGH (0x1 << 1 ) /* HIGH */
2825 
2826 /* GP0IN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
2827 #define GP0IN_IN0_BBA (*(volatile unsigned long *) 0x420C0280)
2828 #define GP0IN_IN0_MSK (0x1 << 0 )
2829 #define GP0IN_IN0 (0x1 << 0 )
2830 #define GP0IN_IN0_LOW (0x0 << 0 ) /* LOW */
2831 #define GP0IN_IN0_HIGH (0x1 << 0 ) /* HIGH */
2832 
2833 /* Reset Value for GP0OUT*/
2834 #define GP0OUT_RVAL 0x0
2835 
2836 /* GP0OUT[OUT7] - Data out register. */
2837 #define GP0OUT_OUT7_BBA (*(volatile unsigned long *) 0x420C031C)
2838 #define GP0OUT_OUT7_MSK (0x1 << 7 )
2839 #define GP0OUT_OUT7 (0x1 << 7 )
2840 #define GP0OUT_OUT7_LOW (0x0 << 7 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2841 #define GP0OUT_OUT7_HIGH (0x1 << 7 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2842 
2843 /* GP0OUT[OUT6] - Data out register. */
2844 #define GP0OUT_OUT6_BBA (*(volatile unsigned long *) 0x420C0318)
2845 #define GP0OUT_OUT6_MSK (0x1 << 6 )
2846 #define GP0OUT_OUT6 (0x1 << 6 )
2847 #define GP0OUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2848 #define GP0OUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2849 
2850 /* GP0OUT[OUT5] - Data out register. */
2851 #define GP0OUT_OUT5_BBA (*(volatile unsigned long *) 0x420C0314)
2852 #define GP0OUT_OUT5_MSK (0x1 << 5 )
2853 #define GP0OUT_OUT5 (0x1 << 5 )
2854 #define GP0OUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2855 #define GP0OUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2856 
2857 /* GP0OUT[OUT4] - Data out register. */
2858 #define GP0OUT_OUT4_BBA (*(volatile unsigned long *) 0x420C0310)
2859 #define GP0OUT_OUT4_MSK (0x1 << 4 )
2860 #define GP0OUT_OUT4 (0x1 << 4 )
2861 #define GP0OUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2862 #define GP0OUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2863 
2864 /* GP0OUT[OUT3] - Data out register. */
2865 #define GP0OUT_OUT3_BBA (*(volatile unsigned long *) 0x420C030C)
2866 #define GP0OUT_OUT3_MSK (0x1 << 3 )
2867 #define GP0OUT_OUT3 (0x1 << 3 )
2868 #define GP0OUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2869 #define GP0OUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2870 
2871 /* GP0OUT[OUT2] - Data out register. */
2872 #define GP0OUT_OUT2_BBA (*(volatile unsigned long *) 0x420C0308)
2873 #define GP0OUT_OUT2_MSK (0x1 << 2 )
2874 #define GP0OUT_OUT2 (0x1 << 2 )
2875 #define GP0OUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2876 #define GP0OUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2877 
2878 /* GP0OUT[OUT1] - Data out register. */
2879 #define GP0OUT_OUT1_BBA (*(volatile unsigned long *) 0x420C0304)
2880 #define GP0OUT_OUT1_MSK (0x1 << 1 )
2881 #define GP0OUT_OUT1 (0x1 << 1 )
2882 #define GP0OUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2883 #define GP0OUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2884 
2885 /* GP0OUT[OUT0] - Data out register. */
2886 #define GP0OUT_OUT0_BBA (*(volatile unsigned long *) 0x420C0300)
2887 #define GP0OUT_OUT0_MSK (0x1 << 0 )
2888 #define GP0OUT_OUT0 (0x1 << 0 )
2889 #define GP0OUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
2890 #define GP0OUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
2891 
2892 /* Reset Value for GP0SET*/
2893 #define GP0SET_RVAL 0x0
2894 
2895 /* GP0SET[SET7] - Set output high for corresponding port pin. */
2896 #define GP0SET_SET7_BBA (*(volatile unsigned long *) 0x420C039C)
2897 #define GP0SET_SET7_MSK (0x1 << 7 )
2898 #define GP0SET_SET7 (0x1 << 7 )
2899 #define GP0SET_SET7_SET (0x1 << 7 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2900 
2901 /* GP0SET[SET6] - Set output high for corresponding port pin. */
2902 #define GP0SET_SET6_BBA (*(volatile unsigned long *) 0x420C0398)
2903 #define GP0SET_SET6_MSK (0x1 << 6 )
2904 #define GP0SET_SET6 (0x1 << 6 )
2905 #define GP0SET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2906 
2907 /* GP0SET[SET5] - Set output high for corresponding port pin. */
2908 #define GP0SET_SET5_BBA (*(volatile unsigned long *) 0x420C0394)
2909 #define GP0SET_SET5_MSK (0x1 << 5 )
2910 #define GP0SET_SET5 (0x1 << 5 )
2911 #define GP0SET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2912 
2913 /* GP0SET[SET4] - Set output high for corresponding port pin. */
2914 #define GP0SET_SET4_BBA (*(volatile unsigned long *) 0x420C0390)
2915 #define GP0SET_SET4_MSK (0x1 << 4 )
2916 #define GP0SET_SET4 (0x1 << 4 )
2917 #define GP0SET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2918 
2919 /* GP0SET[SET3] - Set output high for corresponding port pin. */
2920 #define GP0SET_SET3_BBA (*(volatile unsigned long *) 0x420C038C)
2921 #define GP0SET_SET3_MSK (0x1 << 3 )
2922 #define GP0SET_SET3 (0x1 << 3 )
2923 #define GP0SET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2924 
2925 /* GP0SET[SET2] - Set output high for corresponding port pin. */
2926 #define GP0SET_SET2_BBA (*(volatile unsigned long *) 0x420C0388)
2927 #define GP0SET_SET2_MSK (0x1 << 2 )
2928 #define GP0SET_SET2 (0x1 << 2 )
2929 #define GP0SET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2930 
2931 /* GP0SET[SET1] - Set output high for corresponding port pin. */
2932 #define GP0SET_SET1_BBA (*(volatile unsigned long *) 0x420C0384)
2933 #define GP0SET_SET1_MSK (0x1 << 1 )
2934 #define GP0SET_SET1 (0x1 << 1 )
2935 #define GP0SET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2936 
2937 /* GP0SET[SET0] - Set output high for corresponding port pin. */
2938 #define GP0SET_SET0_BBA (*(volatile unsigned long *) 0x420C0380)
2939 #define GP0SET_SET0_MSK (0x1 << 0 )
2940 #define GP0SET_SET0 (0x1 << 0 )
2941 #define GP0SET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
2942 
2943 /* Reset Value for GP0CLR*/
2944 #define GP0CLR_RVAL 0x0
2945 
2946 /* GP0CLR[CLR7] - Set by user code to drive the corresponding GPIO low. */
2947 #define GP0CLR_CLR7_BBA (*(volatile unsigned long *) 0x420C041C)
2948 #define GP0CLR_CLR7_MSK (0x1 << 7 )
2949 #define GP0CLR_CLR7 (0x1 << 7 )
2950 #define GP0CLR_CLR7_CLR (0x1 << 7 ) /* CLR */
2951 
2952 /* GP0CLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
2953 #define GP0CLR_CLR6_BBA (*(volatile unsigned long *) 0x420C0418)
2954 #define GP0CLR_CLR6_MSK (0x1 << 6 )
2955 #define GP0CLR_CLR6 (0x1 << 6 )
2956 #define GP0CLR_CLR6_CLR (0x1 << 6 ) /* CLR */
2957 
2958 /* GP0CLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
2959 #define GP0CLR_CLR5_BBA (*(volatile unsigned long *) 0x420C0414)
2960 #define GP0CLR_CLR5_MSK (0x1 << 5 )
2961 #define GP0CLR_CLR5 (0x1 << 5 )
2962 #define GP0CLR_CLR5_CLR (0x1 << 5 ) /* CLR */
2963 
2964 /* GP0CLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
2965 #define GP0CLR_CLR4_BBA (*(volatile unsigned long *) 0x420C0410)
2966 #define GP0CLR_CLR4_MSK (0x1 << 4 )
2967 #define GP0CLR_CLR4 (0x1 << 4 )
2968 #define GP0CLR_CLR4_CLR (0x1 << 4 ) /* CLR */
2969 
2970 /* GP0CLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
2971 #define GP0CLR_CLR3_BBA (*(volatile unsigned long *) 0x420C040C)
2972 #define GP0CLR_CLR3_MSK (0x1 << 3 )
2973 #define GP0CLR_CLR3 (0x1 << 3 )
2974 #define GP0CLR_CLR3_CLR (0x1 << 3 ) /* CLR */
2975 
2976 /* GP0CLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
2977 #define GP0CLR_CLR2_BBA (*(volatile unsigned long *) 0x420C0408)
2978 #define GP0CLR_CLR2_MSK (0x1 << 2 )
2979 #define GP0CLR_CLR2 (0x1 << 2 )
2980 #define GP0CLR_CLR2_CLR (0x1 << 2 ) /* CLR */
2981 
2982 /* GP0CLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
2983 #define GP0CLR_CLR1_BBA (*(volatile unsigned long *) 0x420C0404)
2984 #define GP0CLR_CLR1_MSK (0x1 << 1 )
2985 #define GP0CLR_CLR1 (0x1 << 1 )
2986 #define GP0CLR_CLR1_CLR (0x1 << 1 ) /* CLR */
2987 
2988 /* GP0CLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
2989 #define GP0CLR_CLR0_BBA (*(volatile unsigned long *) 0x420C0400)
2990 #define GP0CLR_CLR0_MSK (0x1 << 0 )
2991 #define GP0CLR_CLR0 (0x1 << 0 )
2992 #define GP0CLR_CLR0_CLR (0x1 << 0 ) /* CLR */
2993 
2994 /* Reset Value for GP0TGL*/
2995 #define GP0TGL_RVAL 0x0
2996 
2997 /* GP0TGL[TGL7] - Toggle for corresponding port pin. */
2998 #define GP0TGL_TGL7_BBA (*(volatile unsigned long *) 0x420C049C)
2999 #define GP0TGL_TGL7_MSK (0x1 << 7 )
3000 #define GP0TGL_TGL7 (0x1 << 7 )
3001 #define GP0TGL_TGL7_TGL (0x1 << 7 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3002 
3003 /* GP0TGL[TGL6] - Toggle for corresponding port pin. */
3004 #define GP0TGL_TGL6_BBA (*(volatile unsigned long *) 0x420C0498)
3005 #define GP0TGL_TGL6_MSK (0x1 << 6 )
3006 #define GP0TGL_TGL6 (0x1 << 6 )
3007 #define GP0TGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3008 
3009 /* GP0TGL[TGL5] - Toggle for corresponding port pin. */
3010 #define GP0TGL_TGL5_BBA (*(volatile unsigned long *) 0x420C0494)
3011 #define GP0TGL_TGL5_MSK (0x1 << 5 )
3012 #define GP0TGL_TGL5 (0x1 << 5 )
3013 #define GP0TGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3014 
3015 /* GP0TGL[TGL4] - Toggle for corresponding port pin. */
3016 #define GP0TGL_TGL4_BBA (*(volatile unsigned long *) 0x420C0490)
3017 #define GP0TGL_TGL4_MSK (0x1 << 4 )
3018 #define GP0TGL_TGL4 (0x1 << 4 )
3019 #define GP0TGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3020 
3021 /* GP0TGL[TGL3] - Toggle for corresponding port pin. */
3022 #define GP0TGL_TGL3_BBA (*(volatile unsigned long *) 0x420C048C)
3023 #define GP0TGL_TGL3_MSK (0x1 << 3 )
3024 #define GP0TGL_TGL3 (0x1 << 3 )
3025 #define GP0TGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3026 
3027 /* GP0TGL[TGL2] - Toggle for corresponding port pin. */
3028 #define GP0TGL_TGL2_BBA (*(volatile unsigned long *) 0x420C0488)
3029 #define GP0TGL_TGL2_MSK (0x1 << 2 )
3030 #define GP0TGL_TGL2 (0x1 << 2 )
3031 #define GP0TGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3032 
3033 /* GP0TGL[TGL1] - Toggle for corresponding port pin. */
3034 #define GP0TGL_TGL1_BBA (*(volatile unsigned long *) 0x420C0484)
3035 #define GP0TGL_TGL1_MSK (0x1 << 1 )
3036 #define GP0TGL_TGL1 (0x1 << 1 )
3037 #define GP0TGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3038 
3039 /* GP0TGL[TGL0] - Toggle for corresponding port pin. */
3040 #define GP0TGL_TGL0_BBA (*(volatile unsigned long *) 0x420C0480)
3041 #define GP0TGL_TGL0_MSK (0x1 << 0 )
3042 #define GP0TGL_TGL0 (0x1 << 0 )
3043 #define GP0TGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3044 #if (__NO_MMR_STRUCTS__==1)
3045 
3046 #define GP1CON (*(volatile unsigned short int *) 0x40006030)
3047 #define GP1OEN (*(volatile unsigned char *) 0x40006034)
3048 #define GP1PUL (*(volatile unsigned char *) 0x40006038)
3049 #define GP1OCE (*(volatile unsigned char *) 0x4000603C)
3050 #define GP1IN (*(volatile unsigned char *) 0x40006044)
3051 #define GP1OUT (*(volatile unsigned char *) 0x40006048)
3052 #define GP1SET (*(volatile unsigned char *) 0x4000604C)
3053 #define GP1CLR (*(volatile unsigned char *) 0x40006050)
3054 #define GP1TGL (*(volatile unsigned char *) 0x40006054)
3055 #endif // (__NO_MMR_STRUCTS__==1)
3056 
3057 /* Reset Value for GP1CON*/
3058 #define GP1CON_RVAL 0x0
3059 
3060 /* GP1CON[CON6] - Configuration bits for P1.6 */
3061 #define GP1CON_CON6_MSK (0x3 << 12 )
3062 #define GP1CON_CON6_GPIO (0x0 << 12 ) /* GPIO */
3063 #define GP1CON_CON6_ADCCONVST (0x1 << 12 ) /* ADCCONVST */
3064 #define GP1CON_CON6_PWMSYNC (0x3 << 12 ) /* PWMSYNC */
3065 
3066 /* GP1CON[CON5] - Configuration bits for P1.5 */
3067 #define GP1CON_CON5_MSK (0x3 << 10 )
3068 #define GP1CON_CON5_GPIOIRQ6 (0x0 << 10 ) /* GPIOIRQ6 */
3069 #define GP1CON_CON5_I2C0SDA (0x1 << 10 ) /* I2C0SDA */
3070 #define GP1CON_CON5_PWM7 (0x2 << 10 ) /* PWM7 */
3071 
3072 /* GP1CON[CON4] - Configuration bits for P1.4 */
3073 #define GP1CON_CON4_MSK (0x3 << 8 )
3074 #define GP1CON_CON4_GPIOIRQ5 (0x0 << 8 ) /* GPIOIRQ5 */
3075 #define GP1CON_CON4_I2C0SCL (0x1 << 8 ) /* I2C0SCL */
3076 #define GP1CON_CON4_PWM6 (0x2 << 8 ) /* PWM6 */
3077 
3078 /* GP1CON[CON3] - Configuration bits for P1.3 */
3079 #define GP1CON_CON3_MSK (0x3 << 6 )
3080 #define GP1CON_CON3_GPIO (0x1 << 6 ) /* GPIO */
3081 #define GP1CON_CON3_PWM5 (0x3 << 6 ) /* PWM5 */
3082 
3083 /* GP1CON[CON2] - Configuration bits for P1.2 */
3084 #define GP1CON_CON2_MSK (0x3 << 4 )
3085 #define GP1CON_CON2_GPIO (0x1 << 4 ) /* GPIO */
3086 #define GP1CON_CON2_PWM4 (0x3 << 4 ) /* PWM4 */
3087 
3088 /* GP1CON[CON1] - Configuration bits for P1.1 */
3089 #define GP1CON_CON1_MSK (0x3 << 2 )
3090 #define GP1CON_CON1_PORB (0x0 << 2 ) /* PORB */
3091 #define GP1CON_CON1_GPIO (0x1 << 2 ) /* GPIO */
3092 #define GP1CON_CON1_UART0TXD (0x2 << 2 ) /* UART0TXD */
3093 #define GP1CON_CON1_PWM3 (0x3 << 2 ) /* PWM3 */
3094 
3095 /* GP1CON[CON0] - Configuration bits for P1.0 */
3096 #define GP1CON_CON0_MSK (0x3 << 0 )
3097 #define GP1CON_CON0_GPIOIRQ4 (0x0 << 0 ) /* GPIOIRQ4 */
3098 #define GP1CON_CON0_UART0RXD (0x1 << 0 ) /* UART0RXD */
3099 #define GP1CON_CON0_SPI1MOSI (0x2 << 0 ) /* SPI1MOSI */
3100 #define GP1CON_CON0_PWM2 (0x3 << 0 ) /* PWM2 */
3101 
3102 /* Reset Value for GP1OEN*/
3103 #define GP1OEN_RVAL 0x0
3104 
3105 /* GP1OEN[OEN6] - Port pin direction. */
3106 #define GP1OEN_OEN6_BBA (*(volatile unsigned long *) 0x420C0698)
3107 #define GP1OEN_OEN6_MSK (0x1 << 6 )
3108 #define GP1OEN_OEN6 (0x1 << 6 )
3109 #define GP1OEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3110 #define GP1OEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
3111 
3112 /* GP1OEN[OEN5] - Port pin direction. */
3113 #define GP1OEN_OEN5_BBA (*(volatile unsigned long *) 0x420C0694)
3114 #define GP1OEN_OEN5_MSK (0x1 << 5 )
3115 #define GP1OEN_OEN5 (0x1 << 5 )
3116 #define GP1OEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3117 #define GP1OEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
3118 
3119 /* GP1OEN[OEN4] - Port pin direction. */
3120 #define GP1OEN_OEN4_BBA (*(volatile unsigned long *) 0x420C0690)
3121 #define GP1OEN_OEN4_MSK (0x1 << 4 )
3122 #define GP1OEN_OEN4 (0x1 << 4 )
3123 #define GP1OEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3124 #define GP1OEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
3125 
3126 /* GP1OEN[OEN3] - Port pin direction. */
3127 #define GP1OEN_OEN3_BBA (*(volatile unsigned long *) 0x420C068C)
3128 #define GP1OEN_OEN3_MSK (0x1 << 3 )
3129 #define GP1OEN_OEN3 (0x1 << 3 )
3130 #define GP1OEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3131 #define GP1OEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
3132 
3133 /* GP1OEN[OEN2] - Port pin direction. */
3134 #define GP1OEN_OEN2_BBA (*(volatile unsigned long *) 0x420C0688)
3135 #define GP1OEN_OEN2_MSK (0x1 << 2 )
3136 #define GP1OEN_OEN2 (0x1 << 2 )
3137 #define GP1OEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3138 #define GP1OEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
3139 
3140 /* GP1OEN[OEN1] - Port pin direction. */
3141 #define GP1OEN_OEN1_BBA (*(volatile unsigned long *) 0x420C0684)
3142 #define GP1OEN_OEN1_MSK (0x1 << 1 )
3143 #define GP1OEN_OEN1 (0x1 << 1 )
3144 #define GP1OEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3145 #define GP1OEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
3146 
3147 /* GP1OEN[OEN0] - Port pin direction. */
3148 #define GP1OEN_OEN0_BBA (*(volatile unsigned long *) 0x420C0680)
3149 #define GP1OEN_OEN0_MSK (0x1 << 0 )
3150 #define GP1OEN_OEN0 (0x1 << 0 )
3151 #define GP1OEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3152 #define GP1OEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin.. */
3153 
3154 /* Reset Value for GP1PUL*/
3155 #define GP1PUL_RVAL 0x7F
3156 
3157 /* GP1PUL[PUL6] - Pull Up Enable for port pin. */
3158 #define GP1PUL_PUL6_BBA (*(volatile unsigned long *) 0x420C0718)
3159 #define GP1PUL_PUL6_MSK (0x1 << 6 )
3160 #define GP1PUL_PUL6 (0x1 << 6 )
3161 #define GP1PUL_PUL6_DIS (0x0 << 6 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3162 #define GP1PUL_PUL6_EN (0x1 << 6 ) /* EN. Enables the internal pull up on corresponding port pin. */
3163 
3164 /* GP1PUL[PUL5] - Pull Up Enable for port pin. */
3165 #define GP1PUL_PUL5_BBA (*(volatile unsigned long *) 0x420C0714)
3166 #define GP1PUL_PUL5_MSK (0x1 << 5 )
3167 #define GP1PUL_PUL5 (0x1 << 5 )
3168 #define GP1PUL_PUL5_DIS (0x0 << 5 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3169 #define GP1PUL_PUL5_EN (0x1 << 5 ) /* EN. Enables the internal pull up on corresponding port pin. */
3170 
3171 /* GP1PUL[PUL4] - Pull Up Enable for port pin. */
3172 #define GP1PUL_PUL4_BBA (*(volatile unsigned long *) 0x420C0710)
3173 #define GP1PUL_PUL4_MSK (0x1 << 4 )
3174 #define GP1PUL_PUL4 (0x1 << 4 )
3175 #define GP1PUL_PUL4_DIS (0x0 << 4 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3176 #define GP1PUL_PUL4_EN (0x1 << 4 ) /* EN. Enables the internal pull up on corresponding port pin. */
3177 
3178 /* GP1PUL[PUL3] - Pull Up Enable for port pin. */
3179 #define GP1PUL_PUL3_BBA (*(volatile unsigned long *) 0x420C070C)
3180 #define GP1PUL_PUL3_MSK (0x1 << 3 )
3181 #define GP1PUL_PUL3 (0x1 << 3 )
3182 #define GP1PUL_PUL3_DIS (0x0 << 3 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3183 #define GP1PUL_PUL3_EN (0x1 << 3 ) /* EN. Enables the internal pull up on corresponding port pin. */
3184 
3185 /* GP1PUL[PUL2] - Pull Up Enable for port pin. */
3186 #define GP1PUL_PUL2_BBA (*(volatile unsigned long *) 0x420C0708)
3187 #define GP1PUL_PUL2_MSK (0x1 << 2 )
3188 #define GP1PUL_PUL2 (0x1 << 2 )
3189 #define GP1PUL_PUL2_DIS (0x0 << 2 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3190 #define GP1PUL_PUL2_EN (0x1 << 2 ) /* EN. Enables the internal pull up on corresponding port pin. */
3191 
3192 /* GP1PUL[PUL1] - Pull Up Enable for port pin. */
3193 #define GP1PUL_PUL1_BBA (*(volatile unsigned long *) 0x420C0704)
3194 #define GP1PUL_PUL1_MSK (0x1 << 1 )
3195 #define GP1PUL_PUL1 (0x1 << 1 )
3196 #define GP1PUL_PUL1_DIS (0x0 << 1 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3197 #define GP1PUL_PUL1_EN (0x1 << 1 ) /* EN. Enables the internal pull up on corresponding port pin. */
3198 
3199 /* GP1PUL[PUL0] - Pull Up Enable for port pin. */
3200 #define GP1PUL_PUL0_BBA (*(volatile unsigned long *) 0x420C0700)
3201 #define GP1PUL_PUL0_MSK (0x1 << 0 )
3202 #define GP1PUL_PUL0 (0x1 << 0 )
3203 #define GP1PUL_PUL0_DIS (0x0 << 0 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3204 #define GP1PUL_PUL0_EN (0x1 << 0 ) /* EN. Enables the internal pull up on corresponding port pin. */
3205 
3206 /* Reset Value for GP1OCE*/
3207 #define GP1OCE_RVAL 0x0
3208 
3209 /* GP1OCE[OCE6] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3210 #define GP1OCE_OCE6_BBA (*(volatile unsigned long *) 0x420C0798)
3211 #define GP1OCE_OCE6_MSK (0x1 << 6 )
3212 #define GP1OCE_OCE6 (0x1 << 6 )
3213 #define GP1OCE_OCE6_DIS (0x0 << 6 ) /* DIS */
3214 #define GP1OCE_OCE6_EN (0x1 << 6 ) /* EN */
3215 
3216 /* GP1OCE[OCE5] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3217 #define GP1OCE_OCE5_BBA (*(volatile unsigned long *) 0x420C0794)
3218 #define GP1OCE_OCE5_MSK (0x1 << 5 )
3219 #define GP1OCE_OCE5 (0x1 << 5 )
3220 #define GP1OCE_OCE5_DIS (0x0 << 5 ) /* DIS */
3221 #define GP1OCE_OCE5_EN (0x1 << 5 ) /* EN */
3222 
3223 /* GP1OCE[OCE4] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3224 #define GP1OCE_OCE4_BBA (*(volatile unsigned long *) 0x420C0790)
3225 #define GP1OCE_OCE4_MSK (0x1 << 4 )
3226 #define GP1OCE_OCE4 (0x1 << 4 )
3227 #define GP1OCE_OCE4_DIS (0x0 << 4 ) /* DIS */
3228 #define GP1OCE_OCE4_EN (0x1 << 4 ) /* EN */
3229 
3230 /* GP1OCE[OCE3] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3231 #define GP1OCE_OCE3_BBA (*(volatile unsigned long *) 0x420C078C)
3232 #define GP1OCE_OCE3_MSK (0x1 << 3 )
3233 #define GP1OCE_OCE3 (0x1 << 3 )
3234 #define GP1OCE_OCE3_DIS (0x0 << 3 ) /* DIS */
3235 #define GP1OCE_OCE3_EN (0x1 << 3 ) /* EN */
3236 
3237 /* GP1OCE[OCE2] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3238 #define GP1OCE_OCE2_BBA (*(volatile unsigned long *) 0x420C0788)
3239 #define GP1OCE_OCE2_MSK (0x1 << 2 )
3240 #define GP1OCE_OCE2 (0x1 << 2 )
3241 #define GP1OCE_OCE2_DIS (0x0 << 2 ) /* DIS */
3242 #define GP1OCE_OCE2_EN (0x1 << 2 ) /* EN */
3243 
3244 /* GP1OCE[OCE1] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3245 #define GP1OCE_OCE1_BBA (*(volatile unsigned long *) 0x420C0784)
3246 #define GP1OCE_OCE1_MSK (0x1 << 1 )
3247 #define GP1OCE_OCE1 (0x1 << 1 )
3248 #define GP1OCE_OCE1_DIS (0x0 << 1 ) /* DIS */
3249 #define GP1OCE_OCE1_EN (0x1 << 1 ) /* EN */
3250 
3251 /* GP1OCE[OCE0] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3252 #define GP1OCE_OCE0_BBA (*(volatile unsigned long *) 0x420C0780)
3253 #define GP1OCE_OCE0_MSK (0x1 << 0 )
3254 #define GP1OCE_OCE0 (0x1 << 0 )
3255 #define GP1OCE_OCE0_DIS (0x0 << 0 ) /* DIS */
3256 #define GP1OCE_OCE0_EN (0x1 << 0 ) /* EN */
3257 
3258 /* Reset Value for GP1IN*/
3259 #define GP1IN_RVAL 0x7F
3260 
3261 /* GP1IN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3262 #define GP1IN_IN6_BBA (*(volatile unsigned long *) 0x420C0898)
3263 #define GP1IN_IN6_MSK (0x1 << 6 )
3264 #define GP1IN_IN6 (0x1 << 6 )
3265 #define GP1IN_IN6_LOW (0x0 << 6 ) /* LOW */
3266 #define GP1IN_IN6_HIGH (0x1 << 6 ) /* HIGH */
3267 
3268 /* GP1IN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3269 #define GP1IN_IN5_BBA (*(volatile unsigned long *) 0x420C0894)
3270 #define GP1IN_IN5_MSK (0x1 << 5 )
3271 #define GP1IN_IN5 (0x1 << 5 )
3272 #define GP1IN_IN5_LOW (0x0 << 5 ) /* LOW */
3273 #define GP1IN_IN5_HIGH (0x1 << 5 ) /* HIGH */
3274 
3275 /* GP1IN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3276 #define GP1IN_IN4_BBA (*(volatile unsigned long *) 0x420C0890)
3277 #define GP1IN_IN4_MSK (0x1 << 4 )
3278 #define GP1IN_IN4 (0x1 << 4 )
3279 #define GP1IN_IN4_LOW (0x0 << 4 ) /* LOW */
3280 #define GP1IN_IN4_HIGH (0x1 << 4 ) /* HIGH */
3281 
3282 /* GP1IN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3283 #define GP1IN_IN3_BBA (*(volatile unsigned long *) 0x420C088C)
3284 #define GP1IN_IN3_MSK (0x1 << 3 )
3285 #define GP1IN_IN3 (0x1 << 3 )
3286 #define GP1IN_IN3_LOW (0x0 << 3 ) /* LOW */
3287 #define GP1IN_IN3_HIGH (0x1 << 3 ) /* HIGH */
3288 
3289 /* GP1IN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3290 #define GP1IN_IN2_BBA (*(volatile unsigned long *) 0x420C0888)
3291 #define GP1IN_IN2_MSK (0x1 << 2 )
3292 #define GP1IN_IN2 (0x1 << 2 )
3293 #define GP1IN_IN2_LOW (0x0 << 2 ) /* LOW */
3294 #define GP1IN_IN2_HIGH (0x1 << 2 ) /* HIGH */
3295 
3296 /* GP1IN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3297 #define GP1IN_IN1_BBA (*(volatile unsigned long *) 0x420C0884)
3298 #define GP1IN_IN1_MSK (0x1 << 1 )
3299 #define GP1IN_IN1 (0x1 << 1 )
3300 #define GP1IN_IN1_LOW (0x0 << 1 ) /* LOW */
3301 #define GP1IN_IN1_HIGH (0x1 << 1 ) /* HIGH */
3302 
3303 /* GP1IN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3304 #define GP1IN_IN0_BBA (*(volatile unsigned long *) 0x420C0880)
3305 #define GP1IN_IN0_MSK (0x1 << 0 )
3306 #define GP1IN_IN0 (0x1 << 0 )
3307 #define GP1IN_IN0_LOW (0x0 << 0 ) /* LOW */
3308 #define GP1IN_IN0_HIGH (0x1 << 0 ) /* HIGH */
3309 
3310 /* Reset Value for GP1OUT*/
3311 #define GP1OUT_RVAL 0x0
3312 
3313 /* GP1OUT[OUT6] - Output for port pin. */
3314 #define GP1OUT_OUT6_BBA (*(volatile unsigned long *) 0x420C0918)
3315 #define GP1OUT_OUT6_MSK (0x1 << 6 )
3316 #define GP1OUT_OUT6 (0x1 << 6 )
3317 #define GP1OUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3318 #define GP1OUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3319 
3320 /* GP1OUT[OUT5] - Output for port pin. */
3321 #define GP1OUT_OUT5_BBA (*(volatile unsigned long *) 0x420C0914)
3322 #define GP1OUT_OUT5_MSK (0x1 << 5 )
3323 #define GP1OUT_OUT5 (0x1 << 5 )
3324 #define GP1OUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3325 #define GP1OUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3326 
3327 /* GP1OUT[OUT4] - Output for port pin. */
3328 #define GP1OUT_OUT4_BBA (*(volatile unsigned long *) 0x420C0910)
3329 #define GP1OUT_OUT4_MSK (0x1 << 4 )
3330 #define GP1OUT_OUT4 (0x1 << 4 )
3331 #define GP1OUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3332 #define GP1OUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3333 
3334 /* GP1OUT[OUT3] - Output for port pin. */
3335 #define GP1OUT_OUT3_BBA (*(volatile unsigned long *) 0x420C090C)
3336 #define GP1OUT_OUT3_MSK (0x1 << 3 )
3337 #define GP1OUT_OUT3 (0x1 << 3 )
3338 #define GP1OUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3339 #define GP1OUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3340 
3341 /* GP1OUT[OUT2] - Output for port pin. */
3342 #define GP1OUT_OUT2_BBA (*(volatile unsigned long *) 0x420C0908)
3343 #define GP1OUT_OUT2_MSK (0x1 << 2 )
3344 #define GP1OUT_OUT2 (0x1 << 2 )
3345 #define GP1OUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3346 #define GP1OUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3347 
3348 /* GP1OUT[OUT1] - Output for port pin. */
3349 #define GP1OUT_OUT1_BBA (*(volatile unsigned long *) 0x420C0904)
3350 #define GP1OUT_OUT1_MSK (0x1 << 1 )
3351 #define GP1OUT_OUT1 (0x1 << 1 )
3352 #define GP1OUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3353 #define GP1OUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3354 
3355 /* GP1OUT[OUT0] - Output for port pin. */
3356 #define GP1OUT_OUT0_BBA (*(volatile unsigned long *) 0x420C0900)
3357 #define GP1OUT_OUT0_MSK (0x1 << 0 )
3358 #define GP1OUT_OUT0 (0x1 << 0 )
3359 #define GP1OUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3360 #define GP1OUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3361 
3362 /* Reset Value for GP1SET*/
3363 #define GP1SET_RVAL 0x0
3364 
3365 /* GP1SET[SET6] - Set output high for corresponding port pin. */
3366 #define GP1SET_SET6_BBA (*(volatile unsigned long *) 0x420C0998)
3367 #define GP1SET_SET6_MSK (0x1 << 6 )
3368 #define GP1SET_SET6 (0x1 << 6 )
3369 #define GP1SET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3370 
3371 /* GP1SET[SET5] - Set output high for corresponding port pin. */
3372 #define GP1SET_SET5_BBA (*(volatile unsigned long *) 0x420C0994)
3373 #define GP1SET_SET5_MSK (0x1 << 5 )
3374 #define GP1SET_SET5 (0x1 << 5 )
3375 #define GP1SET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3376 
3377 /* GP1SET[SET4] - Set output high for corresponding port pin. */
3378 #define GP1SET_SET4_BBA (*(volatile unsigned long *) 0x420C0990)
3379 #define GP1SET_SET4_MSK (0x1 << 4 )
3380 #define GP1SET_SET4 (0x1 << 4 )
3381 #define GP1SET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3382 
3383 /* GP1SET[SET3] - Set output high for corresponding port pin. */
3384 #define GP1SET_SET3_BBA (*(volatile unsigned long *) 0x420C098C)
3385 #define GP1SET_SET3_MSK (0x1 << 3 )
3386 #define GP1SET_SET3 (0x1 << 3 )
3387 #define GP1SET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3388 
3389 /* GP1SET[SET2] - Set output high for corresponding port pin. */
3390 #define GP1SET_SET2_BBA (*(volatile unsigned long *) 0x420C0988)
3391 #define GP1SET_SET2_MSK (0x1 << 2 )
3392 #define GP1SET_SET2 (0x1 << 2 )
3393 #define GP1SET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3394 
3395 /* GP1SET[SET1] - Set output high for corresponding port pin. */
3396 #define GP1SET_SET1_BBA (*(volatile unsigned long *) 0x420C0984)
3397 #define GP1SET_SET1_MSK (0x1 << 1 )
3398 #define GP1SET_SET1 (0x1 << 1 )
3399 #define GP1SET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3400 
3401 /* GP1SET[SET0] - Set output high for corresponding port pin. */
3402 #define GP1SET_SET0_BBA (*(volatile unsigned long *) 0x420C0980)
3403 #define GP1SET_SET0_MSK (0x1 << 0 )
3404 #define GP1SET_SET0 (0x1 << 0 )
3405 #define GP1SET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3406 
3407 /* Reset Value for GP1CLR*/
3408 #define GP1CLR_RVAL 0x0
3409 
3410 /* GP1CLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
3411 #define GP1CLR_CLR6_BBA (*(volatile unsigned long *) 0x420C0A18)
3412 #define GP1CLR_CLR6_MSK (0x1 << 6 )
3413 #define GP1CLR_CLR6 (0x1 << 6 )
3414 #define GP1CLR_CLR6_CLR (0x1 << 6 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3415 
3416 /* GP1CLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
3417 #define GP1CLR_CLR5_BBA (*(volatile unsigned long *) 0x420C0A14)
3418 #define GP1CLR_CLR5_MSK (0x1 << 5 )
3419 #define GP1CLR_CLR5 (0x1 << 5 )
3420 #define GP1CLR_CLR5_CLR (0x1 << 5 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3421 
3422 /* GP1CLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
3423 #define GP1CLR_CLR4_BBA (*(volatile unsigned long *) 0x420C0A10)
3424 #define GP1CLR_CLR4_MSK (0x1 << 4 )
3425 #define GP1CLR_CLR4 (0x1 << 4 )
3426 #define GP1CLR_CLR4_CLR (0x1 << 4 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3427 
3428 /* GP1CLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
3429 #define GP1CLR_CLR3_BBA (*(volatile unsigned long *) 0x420C0A0C)
3430 #define GP1CLR_CLR3_MSK (0x1 << 3 )
3431 #define GP1CLR_CLR3 (0x1 << 3 )
3432 #define GP1CLR_CLR3_CLR (0x1 << 3 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3433 
3434 /* GP1CLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
3435 #define GP1CLR_CLR2_BBA (*(volatile unsigned long *) 0x420C0A08)
3436 #define GP1CLR_CLR2_MSK (0x1 << 2 )
3437 #define GP1CLR_CLR2 (0x1 << 2 )
3438 #define GP1CLR_CLR2_CLR (0x1 << 2 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3439 
3440 /* GP1CLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
3441 #define GP1CLR_CLR1_BBA (*(volatile unsigned long *) 0x420C0A04)
3442 #define GP1CLR_CLR1_MSK (0x1 << 1 )
3443 #define GP1CLR_CLR1 (0x1 << 1 )
3444 #define GP1CLR_CLR1_CLR (0x1 << 1 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3445 
3446 /* GP1CLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
3447 #define GP1CLR_CLR0_BBA (*(volatile unsigned long *) 0x420C0A00)
3448 #define GP1CLR_CLR0_MSK (0x1 << 0 )
3449 #define GP1CLR_CLR0 (0x1 << 0 )
3450 #define GP1CLR_CLR0_CLR (0x1 << 0 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3451 
3452 /* Reset Value for GP1TGL*/
3453 #define GP1TGL_RVAL 0x0
3454 
3455 /* GP1TGL[TGL6] - Toggle for corresponding port pin. */
3456 #define GP1TGL_TGL6_BBA (*(volatile unsigned long *) 0x420C0A98)
3457 #define GP1TGL_TGL6_MSK (0x1 << 6 )
3458 #define GP1TGL_TGL6 (0x1 << 6 )
3459 #define GP1TGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3460 
3461 /* GP1TGL[TGL5] - Toggle for corresponding port pin. */
3462 #define GP1TGL_TGL5_BBA (*(volatile unsigned long *) 0x420C0A94)
3463 #define GP1TGL_TGL5_MSK (0x1 << 5 )
3464 #define GP1TGL_TGL5 (0x1 << 5 )
3465 #define GP1TGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3466 
3467 /* GP1TGL[TGL4] - Toggle for corresponding port pin. */
3468 #define GP1TGL_TGL4_BBA (*(volatile unsigned long *) 0x420C0A90)
3469 #define GP1TGL_TGL4_MSK (0x1 << 4 )
3470 #define GP1TGL_TGL4 (0x1 << 4 )
3471 #define GP1TGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3472 
3473 /* GP1TGL[TGL3] - Toggle for corresponding port pin. */
3474 #define GP1TGL_TGL3_BBA (*(volatile unsigned long *) 0x420C0A8C)
3475 #define GP1TGL_TGL3_MSK (0x1 << 3 )
3476 #define GP1TGL_TGL3 (0x1 << 3 )
3477 #define GP1TGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3478 
3479 /* GP1TGL[TGL2] - Toggle for corresponding port pin. */
3480 #define GP1TGL_TGL2_BBA (*(volatile unsigned long *) 0x420C0A88)
3481 #define GP1TGL_TGL2_MSK (0x1 << 2 )
3482 #define GP1TGL_TGL2 (0x1 << 2 )
3483 #define GP1TGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3484 
3485 /* GP1TGL[TGL1] - Toggle for corresponding port pin. */
3486 #define GP1TGL_TGL1_BBA (*(volatile unsigned long *) 0x420C0A84)
3487 #define GP1TGL_TGL1_MSK (0x1 << 1 )
3488 #define GP1TGL_TGL1 (0x1 << 1 )
3489 #define GP1TGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3490 
3491 /* GP1TGL[TGL0] - Toggle for corresponding port pin. */
3492 #define GP1TGL_TGL0_BBA (*(volatile unsigned long *) 0x420C0A80)
3493 #define GP1TGL_TGL0_MSK (0x1 << 0 )
3494 #define GP1TGL_TGL0 (0x1 << 0 )
3495 #define GP1TGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3496 #if (__NO_MMR_STRUCTS__==1)
3497 
3498 #define GP2CON (*(volatile unsigned short int *) 0x40006060)
3499 #define GP2OEN (*(volatile unsigned char *) 0x40006064)
3500 #define GP2PUL (*(volatile unsigned char *) 0x40006068)
3501 #define GP2OCE (*(volatile unsigned char *) 0x4000606C)
3502 #define GP2IN (*(volatile unsigned char *) 0x40006074)
3503 #define GP2OUT (*(volatile unsigned char *) 0x40006078)
3504 #define GP2SET (*(volatile unsigned char *) 0x4000607C)
3505 #define GP2CLR (*(volatile unsigned char *) 0x40006080)
3506 #define GP2TGL (*(volatile unsigned char *) 0x40006084)
3507 #endif // (__NO_MMR_STRUCTS__==1)
3508 
3509 /* Reset Value for GP2CON*/
3510 #define GP2CON_RVAL 0x0
3511 
3512 /* GP2CON[CON7] - Configuration bits for P2.7 */
3513 #define GP2CON_CON7_MSK (0x3 << 14 )
3514 #define GP2CON_CON7_GPIOIRQ7 (0x0 << 14 ) /* GPIOIRQ7 */
3515 
3516 /* GP2CON[CON6] - Configuration bits for P2.6 */
3517 #define GP2CON_CON6_MSK (0x3 << 12 )
3518 #define GP2CON_CON6_GPIO (0x1 << 12 ) /* GPIO */
3519 
3520 /* GP2CON[CON5] - Configuration bits for P2.5 */
3521 #define GP2CON_CON5_MSK (0x3 << 10 )
3522 #define GP2CON_CON5_GPIO (0x2 << 10 ) /* GPIO */
3523 #define GP2CON_CON5_RF32KHZCLK (0x3 << 10 ) /* RF32KHZCLK */
3524 
3525 /* GP2CON[CON4] - Configuration bits for P2.4 */
3526 #define GP2CON_CON4_MSK (0x3 << 8 )
3527 #define GP2CON_CON4_IRQ8 (0x0 << 8 ) /* IRQ8 */
3528 #define GP2CON_CON4_GPIO (0x1 << 8 ) /* GPIO */
3529 
3530 /* GP2CON[CON3] - Configuration bits for P2.3 */
3531 #define GP2CON_CON3_MSK (0x3 << 6 )
3532 #define GP2CON_CON3_SPI0CS (0x0 << 6 ) /* SPI0CS */
3533 #define GP2CON_CON3_GPIO (0x1 << 6 ) /* GPIO */
3534 
3535 /* GP2CON[CON2] - Configuration bits for P2.2 */
3536 #define GP2CON_CON2_MSK (0x3 << 4 )
3537 #define GP2CON_CON2_SPI0MOSI (0x0 << 4 ) /* SPI0MOSI */
3538 #define GP2CON_CON2_GPIO (0x1 << 4 ) /* GPIO */
3539 
3540 /* GP2CON[CON1] - Configuration bits for P2.1 */
3541 #define GP2CON_CON1_MSK (0x3 << 2 )
3542 #define GP2CON_CON1_SPI0SCLK (0x0 << 2 ) /* SPI0SCLK */
3543 #define GP2CON_CON1_GPIO (0x1 << 2 ) /* GPIO */
3544 
3545 /* GP2CON[CON0] - Configuration bits for P2.0 */
3546 #define GP2CON_CON0_MSK (0x3 << 0 )
3547 #define GP2CON_CON0_SPI0MISO (0x0 << 0 ) /* SPI0MISO */
3548 #define GP2CON_CON0_GPIO (0x1 << 0 ) /* GPIO */
3549 
3550 /* Reset Value for GP2OEN*/
3551 #define GP2OEN_RVAL 0x0
3552 
3553 /* GP2OEN[OEN7] - Port pin direction. */
3554 #define GP2OEN_OEN7_BBA (*(volatile unsigned long *) 0x420C0C9C)
3555 #define GP2OEN_OEN7_MSK (0x1 << 7 )
3556 #define GP2OEN_OEN7 (0x1 << 7 )
3557 #define GP2OEN_OEN7_IN (0x0 << 7 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3558 #define GP2OEN_OEN7_OUT (0x1 << 7 ) /* OUT. Enables the output on corresponding port pin. */
3559 
3560 /* GP2OEN[OEN6] - Port pin direction. */
3561 #define GP2OEN_OEN6_BBA (*(volatile unsigned long *) 0x420C0C98)
3562 #define GP2OEN_OEN6_MSK (0x1 << 6 )
3563 #define GP2OEN_OEN6 (0x1 << 6 )
3564 #define GP2OEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3565 #define GP2OEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
3566 
3567 /* GP2OEN[OEN5] - Port pin direction. */
3568 #define GP2OEN_OEN5_BBA (*(volatile unsigned long *) 0x420C0C94)
3569 #define GP2OEN_OEN5_MSK (0x1 << 5 )
3570 #define GP2OEN_OEN5 (0x1 << 5 )
3571 #define GP2OEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3572 #define GP2OEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
3573 
3574 /* GP2OEN[OEN4] - Port pin direction. */
3575 #define GP2OEN_OEN4_BBA (*(volatile unsigned long *) 0x420C0C90)
3576 #define GP2OEN_OEN4_MSK (0x1 << 4 )
3577 #define GP2OEN_OEN4 (0x1 << 4 )
3578 #define GP2OEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3579 #define GP2OEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
3580 
3581 /* GP2OEN[OEN3] - Port pin direction. */
3582 #define GP2OEN_OEN3_BBA (*(volatile unsigned long *) 0x420C0C8C)
3583 #define GP2OEN_OEN3_MSK (0x1 << 3 )
3584 #define GP2OEN_OEN3 (0x1 << 3 )
3585 #define GP2OEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3586 #define GP2OEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
3587 
3588 /* GP2OEN[OEN2] - Port pin direction. */
3589 #define GP2OEN_OEN2_BBA (*(volatile unsigned long *) 0x420C0C88)
3590 #define GP2OEN_OEN2_MSK (0x1 << 2 )
3591 #define GP2OEN_OEN2 (0x1 << 2 )
3592 #define GP2OEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3593 #define GP2OEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
3594 
3595 /* GP2OEN[OEN1] - Port pin direction. */
3596 #define GP2OEN_OEN1_BBA (*(volatile unsigned long *) 0x420C0C84)
3597 #define GP2OEN_OEN1_MSK (0x1 << 1 )
3598 #define GP2OEN_OEN1 (0x1 << 1 )
3599 #define GP2OEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3600 #define GP2OEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
3601 
3602 /* GP2OEN[OEN0] - Port pin direction. */
3603 #define GP2OEN_OEN0_BBA (*(volatile unsigned long *) 0x420C0C80)
3604 #define GP2OEN_OEN0_MSK (0x1 << 0 )
3605 #define GP2OEN_OEN0 (0x1 << 0 )
3606 #define GP2OEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
3607 #define GP2OEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin. */
3608 
3609 /* Reset Value for GP2PUL*/
3610 #define GP2PUL_RVAL 0xFF
3611 
3612 /* GP2PUL[PUL7] - Pull Up Enable for port pin. */
3613 #define GP2PUL_PUL7_BBA (*(volatile unsigned long *) 0x420C0D1C)
3614 #define GP2PUL_PUL7_MSK (0x1 << 7 )
3615 #define GP2PUL_PUL7 (0x1 << 7 )
3616 #define GP2PUL_PUL7_DIS (0x0 << 7 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3617 #define GP2PUL_PUL7_EN (0x1 << 7 ) /* EN. Enables the internal pull up on corresponding port pin. */
3618 
3619 /* GP2PUL[PUL6] - Pull Up Enable for port pin. */
3620 #define GP2PUL_PUL6_BBA (*(volatile unsigned long *) 0x420C0D18)
3621 #define GP2PUL_PUL6_MSK (0x1 << 6 )
3622 #define GP2PUL_PUL6 (0x1 << 6 )
3623 #define GP2PUL_PUL6_DIS (0x0 << 6 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3624 #define GP2PUL_PUL6_EN (0x1 << 6 ) /* EN. Enables the internal pull up on corresponding port pin. */
3625 
3626 /* GP2PUL[PUL5] - Pull Up Enable for port pin. */
3627 #define GP2PUL_PUL5_BBA (*(volatile unsigned long *) 0x420C0D14)
3628 #define GP2PUL_PUL5_MSK (0x1 << 5 )
3629 #define GP2PUL_PUL5 (0x1 << 5 )
3630 #define GP2PUL_PUL5_DIS (0x0 << 5 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3631 #define GP2PUL_PUL5_EN (0x1 << 5 ) /* EN. Enables the internal pull up on corresponding port pin. */
3632 
3633 /* GP2PUL[PUL4] - Pull Up Enable for port pin. */
3634 #define GP2PUL_PUL4_BBA (*(volatile unsigned long *) 0x420C0D10)
3635 #define GP2PUL_PUL4_MSK (0x1 << 4 )
3636 #define GP2PUL_PUL4 (0x1 << 4 )
3637 #define GP2PUL_PUL4_DIS (0x0 << 4 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3638 #define GP2PUL_PUL4_EN (0x1 << 4 ) /* EN. Enables the internal pull up on corresponding port pin. */
3639 
3640 /* GP2PUL[PUL3] - Pull Up Enable for port pin. */
3641 #define GP2PUL_PUL3_BBA (*(volatile unsigned long *) 0x420C0D0C)
3642 #define GP2PUL_PUL3_MSK (0x1 << 3 )
3643 #define GP2PUL_PUL3 (0x1 << 3 )
3644 #define GP2PUL_PUL3_DIS (0x0 << 3 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3645 #define GP2PUL_PUL3_EN (0x1 << 3 ) /* EN. Enables the internal pull up on corresponding port pin. */
3646 
3647 /* GP2PUL[PUL2] - Pull Up Enable for port pin. */
3648 #define GP2PUL_PUL2_BBA (*(volatile unsigned long *) 0x420C0D08)
3649 #define GP2PUL_PUL2_MSK (0x1 << 2 )
3650 #define GP2PUL_PUL2 (0x1 << 2 )
3651 #define GP2PUL_PUL2_DIS (0x0 << 2 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3652 #define GP2PUL_PUL2_EN (0x1 << 2 ) /* EN. Enables the internal pull up on corresponding port pin. */
3653 
3654 /* GP2PUL[PUL1] - Pull Up Enable for port pin. */
3655 #define GP2PUL_PUL1_BBA (*(volatile unsigned long *) 0x420C0D04)
3656 #define GP2PUL_PUL1_MSK (0x1 << 1 )
3657 #define GP2PUL_PUL1 (0x1 << 1 )
3658 #define GP2PUL_PUL1_DIS (0x0 << 1 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3659 #define GP2PUL_PUL1_EN (0x1 << 1 ) /* EN. Enables the internal pull up on corresponding port pin. */
3660 
3661 /* GP2PUL[PUL0] - Pull Up Enable for port pin. */
3662 #define GP2PUL_PUL0_BBA (*(volatile unsigned long *) 0x420C0D00)
3663 #define GP2PUL_PUL0_MSK (0x1 << 0 )
3664 #define GP2PUL_PUL0 (0x1 << 0 )
3665 #define GP2PUL_PUL0_DIS (0x0 << 0 ) /* DIS. Disables the internal pull up on corresponding port pin. */
3666 #define GP2PUL_PUL0_EN (0x1 << 0 ) /* EN. Enables the internal pull up on corresponding port pin. */
3667 
3668 /* Reset Value for GP2OCE*/
3669 #define GP2OCE_RVAL 0x0
3670 
3671 /* GP2OCE[OCE7] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3672 #define GP2OCE_OCE7_BBA (*(volatile unsigned long *) 0x420C0D9C)
3673 #define GP2OCE_OCE7_MSK (0x1 << 7 )
3674 #define GP2OCE_OCE7 (0x1 << 7 )
3675 #define GP2OCE_OCE7_DIS (0x0 << 7 ) /* DIS */
3676 #define GP2OCE_OCE7_EN (0x1 << 7 ) /* EN */
3677 
3678 /* GP2OCE[OCE6] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3679 #define GP2OCE_OCE6_BBA (*(volatile unsigned long *) 0x420C0D98)
3680 #define GP2OCE_OCE6_MSK (0x1 << 6 )
3681 #define GP2OCE_OCE6 (0x1 << 6 )
3682 #define GP2OCE_OCE6_DIS (0x0 << 6 ) /* DIS */
3683 #define GP2OCE_OCE6_EN (0x1 << 6 ) /* EN */
3684 
3685 /* GP2OCE[OCE5] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3686 #define GP2OCE_OCE5_BBA (*(volatile unsigned long *) 0x420C0D94)
3687 #define GP2OCE_OCE5_MSK (0x1 << 5 )
3688 #define GP2OCE_OCE5 (0x1 << 5 )
3689 #define GP2OCE_OCE5_DIS (0x0 << 5 ) /* DIS */
3690 #define GP2OCE_OCE5_EN (0x1 << 5 ) /* EN */
3691 
3692 /* GP2OCE[OCE4] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3693 #define GP2OCE_OCE4_BBA (*(volatile unsigned long *) 0x420C0D90)
3694 #define GP2OCE_OCE4_MSK (0x1 << 4 )
3695 #define GP2OCE_OCE4 (0x1 << 4 )
3696 #define GP2OCE_OCE4_DIS (0x0 << 4 ) /* DIS */
3697 #define GP2OCE_OCE4_EN (0x1 << 4 ) /* EN */
3698 
3699 /* GP2OCE[OCE3] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3700 #define GP2OCE_OCE3_BBA (*(volatile unsigned long *) 0x420C0D8C)
3701 #define GP2OCE_OCE3_MSK (0x1 << 3 )
3702 #define GP2OCE_OCE3 (0x1 << 3 )
3703 #define GP2OCE_OCE3_DIS (0x0 << 3 ) /* DIS */
3704 #define GP2OCE_OCE3_EN (0x1 << 3 ) /* EN */
3705 
3706 /* GP2OCE[OCE2] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3707 #define GP2OCE_OCE2_BBA (*(volatile unsigned long *) 0x420C0D88)
3708 #define GP2OCE_OCE2_MSK (0x1 << 2 )
3709 #define GP2OCE_OCE2 (0x1 << 2 )
3710 #define GP2OCE_OCE2_DIS (0x0 << 2 ) /* DIS */
3711 #define GP2OCE_OCE2_EN (0x1 << 2 ) /* EN */
3712 
3713 /* GP2OCE[OCE1] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3714 #define GP2OCE_OCE1_BBA (*(volatile unsigned long *) 0x420C0D84)
3715 #define GP2OCE_OCE1_MSK (0x1 << 1 )
3716 #define GP2OCE_OCE1 (0x1 << 1 )
3717 #define GP2OCE_OCE1_DIS (0x0 << 1 ) /* DIS */
3718 #define GP2OCE_OCE1_EN (0x1 << 1 ) /* EN */
3719 
3720 /* GP2OCE[OCE0] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
3721 #define GP2OCE_OCE0_BBA (*(volatile unsigned long *) 0x420C0D80)
3722 #define GP2OCE_OCE0_MSK (0x1 << 0 )
3723 #define GP2OCE_OCE0 (0x1 << 0 )
3724 #define GP2OCE_OCE0_DIS (0x0 << 0 ) /* DIS */
3725 #define GP2OCE_OCE0_EN (0x1 << 0 ) /* EN */
3726 
3727 /* Reset Value for GP2IN*/
3728 #define GP2IN_RVAL 0xFF
3729 
3730 /* GP2IN[IN7] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3731 #define GP2IN_IN7_BBA (*(volatile unsigned long *) 0x420C0E9C)
3732 #define GP2IN_IN7_MSK (0x1 << 7 )
3733 #define GP2IN_IN7 (0x1 << 7 )
3734 #define GP2IN_IN7_LOW (0x0 << 7 ) /* LOW */
3735 #define GP2IN_IN7_HIGH (0x1 << 7 ) /* HIGH */
3736 
3737 /* GP2IN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3738 #define GP2IN_IN6_BBA (*(volatile unsigned long *) 0x420C0E98)
3739 #define GP2IN_IN6_MSK (0x1 << 6 )
3740 #define GP2IN_IN6 (0x1 << 6 )
3741 #define GP2IN_IN6_LOW (0x0 << 6 ) /* LOW */
3742 #define GP2IN_IN6_HIGH (0x1 << 6 ) /* HIGH */
3743 
3744 /* GP2IN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3745 #define GP2IN_IN5_BBA (*(volatile unsigned long *) 0x420C0E94)
3746 #define GP2IN_IN5_MSK (0x1 << 5 )
3747 #define GP2IN_IN5 (0x1 << 5 )
3748 #define GP2IN_IN5_LOW (0x0 << 5 ) /* LOW */
3749 #define GP2IN_IN5_HIGH (0x1 << 5 ) /* HIGH */
3750 
3751 /* GP2IN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3752 #define GP2IN_IN4_BBA (*(volatile unsigned long *) 0x420C0E90)
3753 #define GP2IN_IN4_MSK (0x1 << 4 )
3754 #define GP2IN_IN4 (0x1 << 4 )
3755 #define GP2IN_IN4_LOW (0x0 << 4 ) /* LOW */
3756 #define GP2IN_IN4_HIGH (0x1 << 4 ) /* HIGH */
3757 
3758 /* GP2IN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3759 #define GP2IN_IN3_BBA (*(volatile unsigned long *) 0x420C0E8C)
3760 #define GP2IN_IN3_MSK (0x1 << 3 )
3761 #define GP2IN_IN3 (0x1 << 3 )
3762 #define GP2IN_IN3_LOW (0x0 << 3 ) /* LOW */
3763 #define GP2IN_IN3_HIGH (0x1 << 3 ) /* HIGH */
3764 
3765 /* GP2IN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3766 #define GP2IN_IN2_BBA (*(volatile unsigned long *) 0x420C0E88)
3767 #define GP2IN_IN2_MSK (0x1 << 2 )
3768 #define GP2IN_IN2 (0x1 << 2 )
3769 #define GP2IN_IN2_LOW (0x0 << 2 ) /* LOW */
3770 #define GP2IN_IN2_HIGH (0x1 << 2 ) /* HIGH */
3771 
3772 /* GP2IN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3773 #define GP2IN_IN1_BBA (*(volatile unsigned long *) 0x420C0E84)
3774 #define GP2IN_IN1_MSK (0x1 << 1 )
3775 #define GP2IN_IN1 (0x1 << 1 )
3776 #define GP2IN_IN1_LOW (0x0 << 1 ) /* LOW */
3777 #define GP2IN_IN1_HIGH (0x1 << 1 ) /* HIGH */
3778 
3779 /* GP2IN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
3780 #define GP2IN_IN0_BBA (*(volatile unsigned long *) 0x420C0E80)
3781 #define GP2IN_IN0_MSK (0x1 << 0 )
3782 #define GP2IN_IN0 (0x1 << 0 )
3783 #define GP2IN_IN0_LOW (0x0 << 0 ) /* LOW */
3784 #define GP2IN_IN0_HIGH (0x1 << 0 ) /* HIGH */
3785 
3786 /* Reset Value for GP2OUT*/
3787 #define GP2OUT_RVAL 0x0
3788 
3789 /* GP2OUT[OUT7] - Output for port pin. */
3790 #define GP2OUT_OUT7_BBA (*(volatile unsigned long *) 0x420C0F1C)
3791 #define GP2OUT_OUT7_MSK (0x1 << 7 )
3792 #define GP2OUT_OUT7 (0x1 << 7 )
3793 #define GP2OUT_OUT7_LOW (0x0 << 7 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3794 #define GP2OUT_OUT7_HIGH (0x1 << 7 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3795 
3796 /* GP2OUT[OUT6] - Output for port pin. */
3797 #define GP2OUT_OUT6_BBA (*(volatile unsigned long *) 0x420C0F18)
3798 #define GP2OUT_OUT6_MSK (0x1 << 6 )
3799 #define GP2OUT_OUT6 (0x1 << 6 )
3800 #define GP2OUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3801 #define GP2OUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3802 
3803 /* GP2OUT[OUT5] - Output for port pin. */
3804 #define GP2OUT_OUT5_BBA (*(volatile unsigned long *) 0x420C0F14)
3805 #define GP2OUT_OUT5_MSK (0x1 << 5 )
3806 #define GP2OUT_OUT5 (0x1 << 5 )
3807 #define GP2OUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3808 #define GP2OUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3809 
3810 /* GP2OUT[OUT4] - Output for port pin. */
3811 #define GP2OUT_OUT4_BBA (*(volatile unsigned long *) 0x420C0F10)
3812 #define GP2OUT_OUT4_MSK (0x1 << 4 )
3813 #define GP2OUT_OUT4 (0x1 << 4 )
3814 #define GP2OUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3815 #define GP2OUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3816 
3817 /* GP2OUT[OUT3] - Output for port pin. */
3818 #define GP2OUT_OUT3_BBA (*(volatile unsigned long *) 0x420C0F0C)
3819 #define GP2OUT_OUT3_MSK (0x1 << 3 )
3820 #define GP2OUT_OUT3 (0x1 << 3 )
3821 #define GP2OUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3822 #define GP2OUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3823 
3824 /* GP2OUT[OUT2] - Output for port pin. */
3825 #define GP2OUT_OUT2_BBA (*(volatile unsigned long *) 0x420C0F08)
3826 #define GP2OUT_OUT2_MSK (0x1 << 2 )
3827 #define GP2OUT_OUT2 (0x1 << 2 )
3828 #define GP2OUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3829 #define GP2OUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3830 
3831 /* GP2OUT[OUT1] - Output for port pin. */
3832 #define GP2OUT_OUT1_BBA (*(volatile unsigned long *) 0x420C0F04)
3833 #define GP2OUT_OUT1_MSK (0x1 << 1 )
3834 #define GP2OUT_OUT1 (0x1 << 1 )
3835 #define GP2OUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3836 #define GP2OUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3837 
3838 /* GP2OUT[OUT0] - Output for port pin. */
3839 #define GP2OUT_OUT0_BBA (*(volatile unsigned long *) 0x420C0F00)
3840 #define GP2OUT_OUT0_MSK (0x1 << 0 )
3841 #define GP2OUT_OUT0 (0x1 << 0 )
3842 #define GP2OUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
3843 #define GP2OUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
3844 
3845 /* Reset Value for GP2SET*/
3846 #define GP2SET_RVAL 0x0
3847 
3848 /* GP2SET[SET7] - Set output high for corresponding port pin. */
3849 #define GP2SET_SET7_BBA (*(volatile unsigned long *) 0x420C0F9C)
3850 #define GP2SET_SET7_MSK (0x1 << 7 )
3851 #define GP2SET_SET7 (0x1 << 7 )
3852 #define GP2SET_SET7_SET (0x1 << 7 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3853 
3854 /* GP2SET[SET6] - Set output high for corresponding port pin. */
3855 #define GP2SET_SET6_BBA (*(volatile unsigned long *) 0x420C0F98)
3856 #define GP2SET_SET6_MSK (0x1 << 6 )
3857 #define GP2SET_SET6 (0x1 << 6 )
3858 #define GP2SET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3859 
3860 /* GP2SET[SET5] - Set output high for corresponding port pin. */
3861 #define GP2SET_SET5_BBA (*(volatile unsigned long *) 0x420C0F94)
3862 #define GP2SET_SET5_MSK (0x1 << 5 )
3863 #define GP2SET_SET5 (0x1 << 5 )
3864 #define GP2SET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3865 
3866 /* GP2SET[SET4] - Set output high for corresponding port pin. */
3867 #define GP2SET_SET4_BBA (*(volatile unsigned long *) 0x420C0F90)
3868 #define GP2SET_SET4_MSK (0x1 << 4 )
3869 #define GP2SET_SET4 (0x1 << 4 )
3870 #define GP2SET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3871 
3872 /* GP2SET[SET3] - Set output high for corresponding port pin. */
3873 #define GP2SET_SET3_BBA (*(volatile unsigned long *) 0x420C0F8C)
3874 #define GP2SET_SET3_MSK (0x1 << 3 )
3875 #define GP2SET_SET3 (0x1 << 3 )
3876 #define GP2SET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3877 
3878 /* GP2SET[SET2] - Set output high for corresponding port pin. */
3879 #define GP2SET_SET2_BBA (*(volatile unsigned long *) 0x420C0F88)
3880 #define GP2SET_SET2_MSK (0x1 << 2 )
3881 #define GP2SET_SET2 (0x1 << 2 )
3882 #define GP2SET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3883 
3884 /* GP2SET[SET1] - Set output high for corresponding port pin. */
3885 #define GP2SET_SET1_BBA (*(volatile unsigned long *) 0x420C0F84)
3886 #define GP2SET_SET1_MSK (0x1 << 1 )
3887 #define GP2SET_SET1 (0x1 << 1 )
3888 #define GP2SET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3889 
3890 /* GP2SET[SET0] - Set output high for corresponding port pin. */
3891 #define GP2SET_SET0_BBA (*(volatile unsigned long *) 0x420C0F80)
3892 #define GP2SET_SET0_MSK (0x1 << 0 )
3893 #define GP2SET_SET0 (0x1 << 0 )
3894 #define GP2SET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
3895 
3896 /* Reset Value for GP2CLR*/
3897 #define GP2CLR_RVAL 0x0
3898 
3899 /* GP2CLR[CLR7] - Set by user code to drive the corresponding GPIO low. */
3900 #define GP2CLR_CLR7_BBA (*(volatile unsigned long *) 0x420C101C)
3901 #define GP2CLR_CLR7_MSK (0x1 << 7 )
3902 #define GP2CLR_CLR7 (0x1 << 7 )
3903 #define GP2CLR_CLR7_CLR (0x1 << 7 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3904 
3905 /* GP2CLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
3906 #define GP2CLR_CLR6_BBA (*(volatile unsigned long *) 0x420C1018)
3907 #define GP2CLR_CLR6_MSK (0x1 << 6 )
3908 #define GP2CLR_CLR6 (0x1 << 6 )
3909 #define GP2CLR_CLR6_CLR (0x1 << 6 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3910 
3911 /* GP2CLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
3912 #define GP2CLR_CLR5_BBA (*(volatile unsigned long *) 0x420C1014)
3913 #define GP2CLR_CLR5_MSK (0x1 << 5 )
3914 #define GP2CLR_CLR5 (0x1 << 5 )
3915 #define GP2CLR_CLR5_CLR (0x1 << 5 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3916 
3917 /* GP2CLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
3918 #define GP2CLR_CLR4_BBA (*(volatile unsigned long *) 0x420C1010)
3919 #define GP2CLR_CLR4_MSK (0x1 << 4 )
3920 #define GP2CLR_CLR4 (0x1 << 4 )
3921 #define GP2CLR_CLR4_CLR (0x1 << 4 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3922 
3923 /* GP2CLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
3924 #define GP2CLR_CLR3_BBA (*(volatile unsigned long *) 0x420C100C)
3925 #define GP2CLR_CLR3_MSK (0x1 << 3 )
3926 #define GP2CLR_CLR3 (0x1 << 3 )
3927 #define GP2CLR_CLR3_CLR (0x1 << 3 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3928 
3929 /* GP2CLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
3930 #define GP2CLR_CLR2_BBA (*(volatile unsigned long *) 0x420C1008)
3931 #define GP2CLR_CLR2_MSK (0x1 << 2 )
3932 #define GP2CLR_CLR2 (0x1 << 2 )
3933 #define GP2CLR_CLR2_CLR (0x1 << 2 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3934 
3935 /* GP2CLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
3936 #define GP2CLR_CLR1_BBA (*(volatile unsigned long *) 0x420C1004)
3937 #define GP2CLR_CLR1_MSK (0x1 << 1 )
3938 #define GP2CLR_CLR1 (0x1 << 1 )
3939 #define GP2CLR_CLR1_CLR (0x1 << 1 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3940 
3941 /* GP2CLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
3942 #define GP2CLR_CLR0_BBA (*(volatile unsigned long *) 0x420C1000)
3943 #define GP2CLR_CLR0_MSK (0x1 << 0 )
3944 #define GP2CLR_CLR0 (0x1 << 0 )
3945 #define GP2CLR_CLR0_CLR (0x1 << 0 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
3946 
3947 /* Reset Value for GP2TGL*/
3948 #define GP2TGL_RVAL 0x0
3949 
3950 /* GP2TGL[TGL7] - Toggle for corresponding port pin. */
3951 #define GP2TGL_TGL7_BBA (*(volatile unsigned long *) 0x420C109C)
3952 #define GP2TGL_TGL7_MSK (0x1 << 7 )
3953 #define GP2TGL_TGL7 (0x1 << 7 )
3954 #define GP2TGL_TGL7_TGL (0x1 << 7 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3955 
3956 /* GP2TGL[TGL6] - Toggle for corresponding port pin. */
3957 #define GP2TGL_TGL6_BBA (*(volatile unsigned long *) 0x420C1098)
3958 #define GP2TGL_TGL6_MSK (0x1 << 6 )
3959 #define GP2TGL_TGL6 (0x1 << 6 )
3960 #define GP2TGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3961 
3962 /* GP2TGL[TGL5] - Toggle for corresponding port pin. */
3963 #define GP2TGL_TGL5_BBA (*(volatile unsigned long *) 0x420C1094)
3964 #define GP2TGL_TGL5_MSK (0x1 << 5 )
3965 #define GP2TGL_TGL5 (0x1 << 5 )
3966 #define GP2TGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3967 
3968 /* GP2TGL[TGL4] - Toggle for corresponding port pin. */
3969 #define GP2TGL_TGL4_BBA (*(volatile unsigned long *) 0x420C1090)
3970 #define GP2TGL_TGL4_MSK (0x1 << 4 )
3971 #define GP2TGL_TGL4 (0x1 << 4 )
3972 #define GP2TGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3973 
3974 /* GP2TGL[TGL3] - Toggle for corresponding port pin. */
3975 #define GP2TGL_TGL3_BBA (*(volatile unsigned long *) 0x420C108C)
3976 #define GP2TGL_TGL3_MSK (0x1 << 3 )
3977 #define GP2TGL_TGL3 (0x1 << 3 )
3978 #define GP2TGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3979 
3980 /* GP2TGL[TGL2] - Toggle for corresponding port pin. */
3981 #define GP2TGL_TGL2_BBA (*(volatile unsigned long *) 0x420C1088)
3982 #define GP2TGL_TGL2_MSK (0x1 << 2 )
3983 #define GP2TGL_TGL2 (0x1 << 2 )
3984 #define GP2TGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3985 
3986 /* GP2TGL[TGL1] - Toggle for corresponding port pin. */
3987 #define GP2TGL_TGL1_BBA (*(volatile unsigned long *) 0x420C1084)
3988 #define GP2TGL_TGL1_MSK (0x1 << 1 )
3989 #define GP2TGL_TGL1 (0x1 << 1 )
3990 #define GP2TGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3991 
3992 /* GP2TGL[TGL0] - Toggle for corresponding port pin. */
3993 #define GP2TGL_TGL0_BBA (*(volatile unsigned long *) 0x420C1080)
3994 #define GP2TGL_TGL0_MSK (0x1 << 0 )
3995 #define GP2TGL_TGL0 (0x1 << 0 )
3996 #define GP2TGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
3997 #if (__NO_MMR_STRUCTS__==1)
3998 
3999 #define GP3CON (*(volatile unsigned short int *) 0x40006090)
4000 #define GP3OEN (*(volatile unsigned char *) 0x40006094)
4001 #define GP3PUL (*(volatile unsigned char *) 0x40006098)
4002 #define GP3OCE (*(volatile unsigned char *) 0x4000609C)
4003 #define GP3IN (*(volatile unsigned char *) 0x400060A4)
4004 #define GP3OUT (*(volatile unsigned char *) 0x400060A8)
4005 #define GP3SET (*(volatile unsigned char *) 0x400060AC)
4006 #define GP3CLR (*(volatile unsigned char *) 0x400060B0)
4007 #define GP3TGL (*(volatile unsigned char *) 0x400060B4)
4008 #endif // (__NO_MMR_STRUCTS__==1)
4009 
4010 /* Reset Value for GP3CON*/
4011 #define GP3CON_RVAL 0x0
4012 
4013 /* GP3CON[CON7] - Configuration bits for P3.7 */
4014 #define GP3CON_CON7_MSK (0x3 << 14 )
4015 #define GP3CON_CON7_GPIOIRQ0 (0x1 << 14 ) /* GPIOIRQ0 */
4016 
4017 /* GP3CON[CON6] - Configuration bits for P3.6 */
4018 #define GP3CON_CON6_MSK (0x3 << 12 )
4019 #define GP3CON_CON6_GPIO (0x1 << 12 ) /* GPIO */
4020 
4021 /* GP3CON[CON5] - Configuration bits for P3.5 */
4022 #define GP3CON_CON5_MSK (0x3 << 10 )
4023 #define GP3CON_CON5_GPIO (0x1 << 10 ) /* GPIO */
4024 #define GP3CON_CON5_SPI0MOSI (0x3 << 10 ) /* SPI0MOSI */
4025 
4026 /* GP3CON[CON4] - Configuration bits for P3.4 */
4027 #define GP3CON_CON4_MSK (0x3 << 8 )
4028 #define GP3CON_CON4_GPIO (0x1 << 8 ) /* GPIO */
4029 
4030 /* GP3CON[CON3] - Configuration bits for P3.3 */
4031 #define GP3CON_CON3_MSK (0x3 << 6 )
4032 #define GP3CON_CON3_GPIO (0x1 << 6 ) /* GPIO */
4033 #define GP3CON_CON3_PWMTRIP (0x2 << 6 ) /* PWMTRIP */
4034 #define GP3CON_CON3_SPI0SCLK (0x3 << 6 ) /* SPI0SCLK */
4035 
4036 /* GP3CON[CON2] - Configuration bits for P3.2 */
4037 #define GP3CON_CON2_MSK (0x3 << 4 )
4038 #define GP3CON_CON2_GPIO (0x1 << 4 ) /* GPIO */
4039 #define GP3CON_CON2_PWMSYNC (0x2 << 4 ) /* PWMSYNC */
4040 #define GP3CON_CON2_SPI0MISO (0x3 << 4 ) /* SPI0MISO */
4041 
4042 /* GP3CON[CON1] - Configuration bits for P3.1 */
4043 #define GP3CON_CON1_MSK (0x3 << 2 )
4044 #define GP3CON_CON1_GPIO (0x0 << 2 ) /* GPIO */
4045 
4046 /* GP3CON[CON0] - Configuration bits for P3.0 */
4047 #define GP3CON_CON0_MSK (0x3 << 0 )
4048 #define GP3CON_CON0_GPIO (0x0 << 0 ) /* GPIO */
4049 #define GP3CON_CON0_PWMTRIP (0x3 << 0 ) /* PWMTRIP */
4050 
4051 /* Reset Value for GP3OEN*/
4052 #define GP3OEN_RVAL 0x0
4053 
4054 /* GP3OEN[OEN7] - Port pin direction. */
4055 #define GP3OEN_OEN7_BBA (*(volatile unsigned long *) 0x420C129C)
4056 #define GP3OEN_OEN7_MSK (0x1 << 7 )
4057 #define GP3OEN_OEN7 (0x1 << 7 )
4058 #define GP3OEN_OEN7_IN (0x0 << 7 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4059 #define GP3OEN_OEN7_OUT (0x1 << 7 ) /* OUT. Enables the output on corresponding port pin. */
4060 
4061 /* GP3OEN[OEN6] - Port pin direction. */
4062 #define GP3OEN_OEN6_BBA (*(volatile unsigned long *) 0x420C1298)
4063 #define GP3OEN_OEN6_MSK (0x1 << 6 )
4064 #define GP3OEN_OEN6 (0x1 << 6 )
4065 #define GP3OEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4066 #define GP3OEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
4067 
4068 /* GP3OEN[OEN5] - Port pin direction. */
4069 #define GP3OEN_OEN5_BBA (*(volatile unsigned long *) 0x420C1294)
4070 #define GP3OEN_OEN5_MSK (0x1 << 5 )
4071 #define GP3OEN_OEN5 (0x1 << 5 )
4072 #define GP3OEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4073 #define GP3OEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
4074 
4075 /* GP3OEN[OEN4] - Port pin direction. */
4076 #define GP3OEN_OEN4_BBA (*(volatile unsigned long *) 0x420C1290)
4077 #define GP3OEN_OEN4_MSK (0x1 << 4 )
4078 #define GP3OEN_OEN4 (0x1 << 4 )
4079 #define GP3OEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4080 #define GP3OEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
4081 
4082 /* GP3OEN[OEN3] - Port pin direction. */
4083 #define GP3OEN_OEN3_BBA (*(volatile unsigned long *) 0x420C128C)
4084 #define GP3OEN_OEN3_MSK (0x1 << 3 )
4085 #define GP3OEN_OEN3 (0x1 << 3 )
4086 #define GP3OEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4087 #define GP3OEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
4088 
4089 /* GP3OEN[OEN2] - Port pin direction. */
4090 #define GP3OEN_OEN2_BBA (*(volatile unsigned long *) 0x420C1288)
4091 #define GP3OEN_OEN2_MSK (0x1 << 2 )
4092 #define GP3OEN_OEN2 (0x1 << 2 )
4093 #define GP3OEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4094 #define GP3OEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
4095 
4096 /* GP3OEN[OEN1] - Port pin direction. */
4097 #define GP3OEN_OEN1_BBA (*(volatile unsigned long *) 0x420C1284)
4098 #define GP3OEN_OEN1_MSK (0x1 << 1 )
4099 #define GP3OEN_OEN1 (0x1 << 1 )
4100 #define GP3OEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4101 #define GP3OEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
4102 
4103 /* GP3OEN[OEN0] - Port pin direction. */
4104 #define GP3OEN_OEN0_BBA (*(volatile unsigned long *) 0x420C1280)
4105 #define GP3OEN_OEN0_MSK (0x1 << 0 )
4106 #define GP3OEN_OEN0 (0x1 << 0 )
4107 #define GP3OEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4108 #define GP3OEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin. */
4109 
4110 /* Reset Value for GP3PUL*/
4111 #define GP3PUL_RVAL 0xFF
4112 
4113 /* GP3PUL[PUL7] - Pull Up Enable for port pin. */
4114 #define GP3PUL_PUL7_BBA (*(volatile unsigned long *) 0x420C131C)
4115 #define GP3PUL_PUL7_MSK (0x1 << 7 )
4116 #define GP3PUL_PUL7 (0x1 << 7 )
4117 #define GP3PUL_PUL7_DIS (0x0 << 7 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4118 #define GP3PUL_PUL7_EN (0x1 << 7 ) /* EN. Enables the internal pull up on corresponding port pin. */
4119 
4120 /* GP3PUL[PUL6] - Pull Up Enable for port pin. */
4121 #define GP3PUL_PUL6_BBA (*(volatile unsigned long *) 0x420C1318)
4122 #define GP3PUL_PUL6_MSK (0x1 << 6 )
4123 #define GP3PUL_PUL6 (0x1 << 6 )
4124 #define GP3PUL_PUL6_DIS (0x0 << 6 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4125 #define GP3PUL_PUL6_EN (0x1 << 6 ) /* EN. Enables the internal pull up on corresponding port pin. */
4126 
4127 /* GP3PUL[PUL5] - Pull Up Enable for port pin. */
4128 #define GP3PUL_PUL5_BBA (*(volatile unsigned long *) 0x420C1314)
4129 #define GP3PUL_PUL5_MSK (0x1 << 5 )
4130 #define GP3PUL_PUL5 (0x1 << 5 )
4131 #define GP3PUL_PUL5_DIS (0x0 << 5 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4132 #define GP3PUL_PUL5_EN (0x1 << 5 ) /* EN. Enables the internal pull up on corresponding port pin. */
4133 
4134 /* GP3PUL[PUL4] - Pull Up Enable for port pin. */
4135 #define GP3PUL_PUL4_BBA (*(volatile unsigned long *) 0x420C1310)
4136 #define GP3PUL_PUL4_MSK (0x1 << 4 )
4137 #define GP3PUL_PUL4 (0x1 << 4 )
4138 #define GP3PUL_PUL4_DIS (0x0 << 4 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4139 #define GP3PUL_PUL4_EN (0x1 << 4 ) /* EN. Enables the internal pull up on corresponding port pin. */
4140 
4141 /* GP3PUL[PUL3] - Pull Up Enable for port pin. */
4142 #define GP3PUL_PUL3_BBA (*(volatile unsigned long *) 0x420C130C)
4143 #define GP3PUL_PUL3_MSK (0x1 << 3 )
4144 #define GP3PUL_PUL3 (0x1 << 3 )
4145 #define GP3PUL_PUL3_DIS (0x0 << 3 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4146 #define GP3PUL_PUL3_EN (0x1 << 3 ) /* EN. Enables the internal pull up oncorresponding port pin. */
4147 
4148 /* GP3PUL[PUL2] - Pull Up Enable for port pin. */
4149 #define GP3PUL_PUL2_BBA (*(volatile unsigned long *) 0x420C1308)
4150 #define GP3PUL_PUL2_MSK (0x1 << 2 )
4151 #define GP3PUL_PUL2 (0x1 << 2 )
4152 #define GP3PUL_PUL2_DIS (0x0 << 2 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4153 #define GP3PUL_PUL2_EN (0x1 << 2 ) /* EN. Enables the internal pull up on corresponding port pin. */
4154 
4155 /* GP3PUL[PUL1] - Pull Up Enable for port pin. */
4156 #define GP3PUL_PUL1_BBA (*(volatile unsigned long *) 0x420C1304)
4157 #define GP3PUL_PUL1_MSK (0x1 << 1 )
4158 #define GP3PUL_PUL1 (0x1 << 1 )
4159 #define GP3PUL_PUL1_DIS (0x0 << 1 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4160 #define GP3PUL_PUL1_EN (0x1 << 1 ) /* EN. Enables the internal pull up on corresponding port pin. */
4161 
4162 /* GP3PUL[PUL0] - Pull Up Enable for port pin. */
4163 #define GP3PUL_PUL0_BBA (*(volatile unsigned long *) 0x420C1300)
4164 #define GP3PUL_PUL0_MSK (0x1 << 0 )
4165 #define GP3PUL_PUL0 (0x1 << 0 )
4166 #define GP3PUL_PUL0_DIS (0x0 << 0 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4167 #define GP3PUL_PUL0_EN (0x1 << 0 ) /* EN. Enables the internal pull up on corresponding port pin. */
4168 
4169 /* Reset Value for GP3OCE*/
4170 #define GP3OCE_RVAL 0x0
4171 
4172 /* GP3OCE[OCE7] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4173 #define GP3OCE_OCE7_BBA (*(volatile unsigned long *) 0x420C139C)
4174 #define GP3OCE_OCE7_MSK (0x1 << 7 )
4175 #define GP3OCE_OCE7 (0x1 << 7 )
4176 #define GP3OCE_OCE7_DIS (0x0 << 7 ) /* DIS */
4177 #define GP3OCE_OCE7_EN (0x1 << 7 ) /* EN */
4178 
4179 /* GP3OCE[OCE6] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4180 #define GP3OCE_OCE6_BBA (*(volatile unsigned long *) 0x420C1398)
4181 #define GP3OCE_OCE6_MSK (0x1 << 6 )
4182 #define GP3OCE_OCE6 (0x1 << 6 )
4183 #define GP3OCE_OCE6_DIS (0x0 << 6 ) /* DIS */
4184 #define GP3OCE_OCE6_EN (0x1 << 6 ) /* EN */
4185 
4186 /* GP3OCE[OCE5] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4187 #define GP3OCE_OCE5_BBA (*(volatile unsigned long *) 0x420C1394)
4188 #define GP3OCE_OCE5_MSK (0x1 << 5 )
4189 #define GP3OCE_OCE5 (0x1 << 5 )
4190 #define GP3OCE_OCE5_DIS (0x0 << 5 ) /* DIS */
4191 #define GP3OCE_OCE5_EN (0x1 << 5 ) /* EN */
4192 
4193 /* GP3OCE[OCE4] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4194 #define GP3OCE_OCE4_BBA (*(volatile unsigned long *) 0x420C1390)
4195 #define GP3OCE_OCE4_MSK (0x1 << 4 )
4196 #define GP3OCE_OCE4 (0x1 << 4 )
4197 #define GP3OCE_OCE4_DIS (0x0 << 4 ) /* DIS */
4198 #define GP3OCE_OCE4_EN (0x1 << 4 ) /* EN */
4199 
4200 /* GP3OCE[OCE3] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4201 #define GP3OCE_OCE3_BBA (*(volatile unsigned long *) 0x420C138C)
4202 #define GP3OCE_OCE3_MSK (0x1 << 3 )
4203 #define GP3OCE_OCE3 (0x1 << 3 )
4204 #define GP3OCE_OCE3_DIS (0x0 << 3 ) /* DIS */
4205 #define GP3OCE_OCE3_EN (0x1 << 3 ) /* EN */
4206 
4207 /* GP3OCE[OCE2] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4208 #define GP3OCE_OCE2_BBA (*(volatile unsigned long *) 0x420C1388)
4209 #define GP3OCE_OCE2_MSK (0x1 << 2 )
4210 #define GP3OCE_OCE2 (0x1 << 2 )
4211 #define GP3OCE_OCE2_DIS (0x0 << 2 ) /* DIS */
4212 #define GP3OCE_OCE2_EN (0x1 << 2 ) /* EN */
4213 
4214 /* GP3OCE[OCE1] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4215 #define GP3OCE_OCE1_BBA (*(volatile unsigned long *) 0x420C1384)
4216 #define GP3OCE_OCE1_MSK (0x1 << 1 )
4217 #define GP3OCE_OCE1 (0x1 << 1 )
4218 #define GP3OCE_OCE1_DIS (0x0 << 1 ) /* DIS */
4219 #define GP3OCE_OCE1_EN (0x1 << 1 ) /* EN */
4220 
4221 /* GP3OCE[OCE0] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4222 #define GP3OCE_OCE0_BBA (*(volatile unsigned long *) 0x420C1380)
4223 #define GP3OCE_OCE0_MSK (0x1 << 0 )
4224 #define GP3OCE_OCE0 (0x1 << 0 )
4225 #define GP3OCE_OCE0_DIS (0x0 << 0 ) /* DIS */
4226 #define GP3OCE_OCE0_EN (0x1 << 0 ) /* EN */
4227 
4228 /* Reset Value for GP3IN*/
4229 #define GP3IN_RVAL 0xFF
4230 
4231 /* GP3IN[IN7] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4232 #define GP3IN_IN7_BBA (*(volatile unsigned long *) 0x420C149C)
4233 #define GP3IN_IN7_MSK (0x1 << 7 )
4234 #define GP3IN_IN7 (0x1 << 7 )
4235 #define GP3IN_IN7_LOW (0x0 << 7 ) /* LOW */
4236 #define GP3IN_IN7_HIGH (0x1 << 7 ) /* HIGH */
4237 
4238 /* GP3IN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4239 #define GP3IN_IN6_BBA (*(volatile unsigned long *) 0x420C1498)
4240 #define GP3IN_IN6_MSK (0x1 << 6 )
4241 #define GP3IN_IN6 (0x1 << 6 )
4242 #define GP3IN_IN6_LOW (0x0 << 6 ) /* LOW */
4243 #define GP3IN_IN6_HIGH (0x1 << 6 ) /* HIGH */
4244 
4245 /* GP3IN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4246 #define GP3IN_IN5_BBA (*(volatile unsigned long *) 0x420C1494)
4247 #define GP3IN_IN5_MSK (0x1 << 5 )
4248 #define GP3IN_IN5 (0x1 << 5 )
4249 #define GP3IN_IN5_LOW (0x0 << 5 ) /* LOW */
4250 #define GP3IN_IN5_HIGH (0x1 << 5 ) /* HIGH */
4251 
4252 /* GP3IN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4253 #define GP3IN_IN4_BBA (*(volatile unsigned long *) 0x420C1490)
4254 #define GP3IN_IN4_MSK (0x1 << 4 )
4255 #define GP3IN_IN4 (0x1 << 4 )
4256 #define GP3IN_IN4_LOW (0x0 << 4 ) /* LOW */
4257 #define GP3IN_IN4_HIGH (0x1 << 4 ) /* HIGH */
4258 
4259 /* GP3IN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4260 #define GP3IN_IN3_BBA (*(volatile unsigned long *) 0x420C148C)
4261 #define GP3IN_IN3_MSK (0x1 << 3 )
4262 #define GP3IN_IN3 (0x1 << 3 )
4263 #define GP3IN_IN3_LOW (0x0 << 3 ) /* LOW */
4264 #define GP3IN_IN3_HIGH (0x1 << 3 ) /* HIGH */
4265 
4266 /* GP3IN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4267 #define GP3IN_IN2_BBA (*(volatile unsigned long *) 0x420C1488)
4268 #define GP3IN_IN2_MSK (0x1 << 2 )
4269 #define GP3IN_IN2 (0x1 << 2 )
4270 #define GP3IN_IN2_LOW (0x0 << 2 ) /* LOW */
4271 #define GP3IN_IN2_HIGH (0x1 << 2 ) /* HIGH */
4272 
4273 /* GP3IN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4274 #define GP3IN_IN1_BBA (*(volatile unsigned long *) 0x420C1484)
4275 #define GP3IN_IN1_MSK (0x1 << 1 )
4276 #define GP3IN_IN1 (0x1 << 1 )
4277 #define GP3IN_IN1_LOW (0x0 << 1 ) /* LOW */
4278 #define GP3IN_IN1_HIGH (0x1 << 1 ) /* HIGH */
4279 
4280 /* GP3IN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4281 #define GP3IN_IN0_BBA (*(volatile unsigned long *) 0x420C1480)
4282 #define GP3IN_IN0_MSK (0x1 << 0 )
4283 #define GP3IN_IN0 (0x1 << 0 )
4284 #define GP3IN_IN0_LOW (0x0 << 0 ) /* LOW */
4285 #define GP3IN_IN0_HIGH (0x1 << 0 ) /* HIGH */
4286 
4287 /* Reset Value for GP3OUT*/
4288 #define GP3OUT_RVAL 0x0
4289 
4290 /* GP3OUT[OUT7] - Output for port pin. */
4291 #define GP3OUT_OUT7_BBA (*(volatile unsigned long *) 0x420C151C)
4292 #define GP3OUT_OUT7_MSK (0x1 << 7 )
4293 #define GP3OUT_OUT7 (0x1 << 7 )
4294 #define GP3OUT_OUT7_LOW (0x0 << 7 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4295 #define GP3OUT_OUT7_HIGH (0x1 << 7 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4296 
4297 /* GP3OUT[OUT6] - Output for port pin. */
4298 #define GP3OUT_OUT6_BBA (*(volatile unsigned long *) 0x420C1518)
4299 #define GP3OUT_OUT6_MSK (0x1 << 6 )
4300 #define GP3OUT_OUT6 (0x1 << 6 )
4301 #define GP3OUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4302 #define GP3OUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4303 
4304 /* GP3OUT[OUT5] - Output for port pin. */
4305 #define GP3OUT_OUT5_BBA (*(volatile unsigned long *) 0x420C1514)
4306 #define GP3OUT_OUT5_MSK (0x1 << 5 )
4307 #define GP3OUT_OUT5 (0x1 << 5 )
4308 #define GP3OUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4309 #define GP3OUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4310 
4311 /* GP3OUT[OUT4] - Output for port pin. */
4312 #define GP3OUT_OUT4_BBA (*(volatile unsigned long *) 0x420C1510)
4313 #define GP3OUT_OUT4_MSK (0x1 << 4 )
4314 #define GP3OUT_OUT4 (0x1 << 4 )
4315 #define GP3OUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4316 #define GP3OUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4317 
4318 /* GP3OUT[OUT3] - Output for port pin. */
4319 #define GP3OUT_OUT3_BBA (*(volatile unsigned long *) 0x420C150C)
4320 #define GP3OUT_OUT3_MSK (0x1 << 3 )
4321 #define GP3OUT_OUT3 (0x1 << 3 )
4322 #define GP3OUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4323 #define GP3OUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4324 
4325 /* GP3OUT[OUT2] - Output for port pin. */
4326 #define GP3OUT_OUT2_BBA (*(volatile unsigned long *) 0x420C1508)
4327 #define GP3OUT_OUT2_MSK (0x1 << 2 )
4328 #define GP3OUT_OUT2 (0x1 << 2 )
4329 #define GP3OUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4330 #define GP3OUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4331 
4332 /* GP3OUT[OUT1] - Output for port pin. */
4333 #define GP3OUT_OUT1_BBA (*(volatile unsigned long *) 0x420C1504)
4334 #define GP3OUT_OUT1_MSK (0x1 << 1 )
4335 #define GP3OUT_OUT1 (0x1 << 1 )
4336 #define GP3OUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4337 #define GP3OUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4338 
4339 /* GP3OUT[OUT0] - Output for port pin. */
4340 #define GP3OUT_OUT0_BBA (*(volatile unsigned long *) 0x420C1500)
4341 #define GP3OUT_OUT0_MSK (0x1 << 0 )
4342 #define GP3OUT_OUT0 (0x1 << 0 )
4343 #define GP3OUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4344 #define GP3OUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4345 
4346 /* Reset Value for GP3SET*/
4347 #define GP3SET_RVAL 0x0
4348 
4349 /* GP3SET[SET7] - Set output high for corresponding port pin. */
4350 #define GP3SET_SET7_BBA (*(volatile unsigned long *) 0x420C159C)
4351 #define GP3SET_SET7_MSK (0x1 << 7 )
4352 #define GP3SET_SET7 (0x1 << 7 )
4353 #define GP3SET_SET7_SET (0x1 << 7 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4354 
4355 /* GP3SET[SET6] - Set output high for corresponding port pin. */
4356 #define GP3SET_SET6_BBA (*(volatile unsigned long *) 0x420C1598)
4357 #define GP3SET_SET6_MSK (0x1 << 6 )
4358 #define GP3SET_SET6 (0x1 << 6 )
4359 #define GP3SET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4360 
4361 /* GP3SET[SET5] - Set output high for corresponding port pin. */
4362 #define GP3SET_SET5_BBA (*(volatile unsigned long *) 0x420C1594)
4363 #define GP3SET_SET5_MSK (0x1 << 5 )
4364 #define GP3SET_SET5 (0x1 << 5 )
4365 #define GP3SET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4366 
4367 /* GP3SET[SET4] - Set output high for corresponding port pin. */
4368 #define GP3SET_SET4_BBA (*(volatile unsigned long *) 0x420C1590)
4369 #define GP3SET_SET4_MSK (0x1 << 4 )
4370 #define GP3SET_SET4 (0x1 << 4 )
4371 #define GP3SET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4372 
4373 /* GP3SET[SET3] - Set output high for corresponding port pin. */
4374 #define GP3SET_SET3_BBA (*(volatile unsigned long *) 0x420C158C)
4375 #define GP3SET_SET3_MSK (0x1 << 3 )
4376 #define GP3SET_SET3 (0x1 << 3 )
4377 #define GP3SET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4378 
4379 /* GP3SET[SET2] - Set output high for corresponding port pin. */
4380 #define GP3SET_SET2_BBA (*(volatile unsigned long *) 0x420C1588)
4381 #define GP3SET_SET2_MSK (0x1 << 2 )
4382 #define GP3SET_SET2 (0x1 << 2 )
4383 #define GP3SET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4384 
4385 /* GP3SET[SET1] - Set output high for corresponding port pin. */
4386 #define GP3SET_SET1_BBA (*(volatile unsigned long *) 0x420C1584)
4387 #define GP3SET_SET1_MSK (0x1 << 1 )
4388 #define GP3SET_SET1 (0x1 << 1 )
4389 #define GP3SET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4390 
4391 /* GP3SET[SET0] - Set output high for corresponding port pin. */
4392 #define GP3SET_SET0_BBA (*(volatile unsigned long *) 0x420C1580)
4393 #define GP3SET_SET0_MSK (0x1 << 0 )
4394 #define GP3SET_SET0 (0x1 << 0 )
4395 #define GP3SET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4396 
4397 /* Reset Value for GP3CLR*/
4398 #define GP3CLR_RVAL 0x0
4399 
4400 /* GP3CLR[CLR7] - Set by user code to drive the corresponding GPIO low. */
4401 #define GP3CLR_CLR7_BBA (*(volatile unsigned long *) 0x420C161C)
4402 #define GP3CLR_CLR7_MSK (0x1 << 7 )
4403 #define GP3CLR_CLR7 (0x1 << 7 )
4404 #define GP3CLR_CLR7_CLR (0x1 << 7 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4405 
4406 /* GP3CLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
4407 #define GP3CLR_CLR6_BBA (*(volatile unsigned long *) 0x420C1618)
4408 #define GP3CLR_CLR6_MSK (0x1 << 6 )
4409 #define GP3CLR_CLR6 (0x1 << 6 )
4410 #define GP3CLR_CLR6_CLR (0x1 << 6 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4411 
4412 /* GP3CLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
4413 #define GP3CLR_CLR5_BBA (*(volatile unsigned long *) 0x420C1614)
4414 #define GP3CLR_CLR5_MSK (0x1 << 5 )
4415 #define GP3CLR_CLR5 (0x1 << 5 )
4416 #define GP3CLR_CLR5_CLR (0x1 << 5 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4417 
4418 /* GP3CLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
4419 #define GP3CLR_CLR4_BBA (*(volatile unsigned long *) 0x420C1610)
4420 #define GP3CLR_CLR4_MSK (0x1 << 4 )
4421 #define GP3CLR_CLR4 (0x1 << 4 )
4422 #define GP3CLR_CLR4_CLR (0x1 << 4 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4423 
4424 /* GP3CLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
4425 #define GP3CLR_CLR3_BBA (*(volatile unsigned long *) 0x420C160C)
4426 #define GP3CLR_CLR3_MSK (0x1 << 3 )
4427 #define GP3CLR_CLR3 (0x1 << 3 )
4428 #define GP3CLR_CLR3_CLR (0x1 << 3 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4429 
4430 /* GP3CLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
4431 #define GP3CLR_CLR2_BBA (*(volatile unsigned long *) 0x420C1608)
4432 #define GP3CLR_CLR2_MSK (0x1 << 2 )
4433 #define GP3CLR_CLR2 (0x1 << 2 )
4434 #define GP3CLR_CLR2_CLR (0x1 << 2 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4435 
4436 /* GP3CLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
4437 #define GP3CLR_CLR1_BBA (*(volatile unsigned long *) 0x420C1604)
4438 #define GP3CLR_CLR1_MSK (0x1 << 1 )
4439 #define GP3CLR_CLR1 (0x1 << 1 )
4440 #define GP3CLR_CLR1_CLR (0x1 << 1 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4441 
4442 /* GP3CLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
4443 #define GP3CLR_CLR0_BBA (*(volatile unsigned long *) 0x420C1600)
4444 #define GP3CLR_CLR0_MSK (0x1 << 0 )
4445 #define GP3CLR_CLR0 (0x1 << 0 )
4446 #define GP3CLR_CLR0_CLR (0x1 << 0 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4447 
4448 /* Reset Value for GP3TGL*/
4449 #define GP3TGL_RVAL 0x0
4450 
4451 /* GP3TGL[TGL7] - Toggle for corresponding port pin. */
4452 #define GP3TGL_TGL7_BBA (*(volatile unsigned long *) 0x420C169C)
4453 #define GP3TGL_TGL7_MSK (0x1 << 7 )
4454 #define GP3TGL_TGL7 (0x1 << 7 )
4455 #define GP3TGL_TGL7_TGL (0x1 << 7 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4456 
4457 /* GP3TGL[TGL6] - Toggle for corresponding port pin. */
4458 #define GP3TGL_TGL6_BBA (*(volatile unsigned long *) 0x420C1698)
4459 #define GP3TGL_TGL6_MSK (0x1 << 6 )
4460 #define GP3TGL_TGL6 (0x1 << 6 )
4461 #define GP3TGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4462 
4463 /* GP3TGL[TGL5] - Toggle for corresponding port pin. */
4464 #define GP3TGL_TGL5_BBA (*(volatile unsigned long *) 0x420C1694)
4465 #define GP3TGL_TGL5_MSK (0x1 << 5 )
4466 #define GP3TGL_TGL5 (0x1 << 5 )
4467 #define GP3TGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4468 
4469 /* GP3TGL[TGL4] - Toggle for corresponding port pin. */
4470 #define GP3TGL_TGL4_BBA (*(volatile unsigned long *) 0x420C1690)
4471 #define GP3TGL_TGL4_MSK (0x1 << 4 )
4472 #define GP3TGL_TGL4 (0x1 << 4 )
4473 #define GP3TGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4474 
4475 /* GP3TGL[TGL3] - Toggle for corresponding port pin. */
4476 #define GP3TGL_TGL3_BBA (*(volatile unsigned long *) 0x420C168C)
4477 #define GP3TGL_TGL3_MSK (0x1 << 3 )
4478 #define GP3TGL_TGL3 (0x1 << 3 )
4479 #define GP3TGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4480 
4481 /* GP3TGL[TGL2] - Toggle for corresponding port pin. */
4482 #define GP3TGL_TGL2_BBA (*(volatile unsigned long *) 0x420C1688)
4483 #define GP3TGL_TGL2_MSK (0x1 << 2 )
4484 #define GP3TGL_TGL2 (0x1 << 2 )
4485 #define GP3TGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4486 
4487 /* GP3TGL[TGL1] - Toggle for corresponding port pin. */
4488 #define GP3TGL_TGL1_BBA (*(volatile unsigned long *) 0x420C1684)
4489 #define GP3TGL_TGL1_MSK (0x1 << 1 )
4490 #define GP3TGL_TGL1 (0x1 << 1 )
4491 #define GP3TGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4492 
4493 /* GP3TGL[TGL0] - Toggle for corresponding port pin. */
4494 #define GP3TGL_TGL0_BBA (*(volatile unsigned long *) 0x420C1680)
4495 #define GP3TGL_TGL0_MSK (0x1 << 0 )
4496 #define GP3TGL_TGL0 (0x1 << 0 )
4497 #define GP3TGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4498 #if (__NO_MMR_STRUCTS__==1)
4499 
4500 #define GP4CON (*(volatile unsigned short int *) 0x400060C0)
4501 #define GP4OEN (*(volatile unsigned char *) 0x400060C4)
4502 #define GP4PUL (*(volatile unsigned char *) 0x400060C8)
4503 #define GP4OCE (*(volatile unsigned char *) 0x400060CC)
4504 #define GP4IN (*(volatile unsigned char *) 0x400060D4)
4505 #define GP4OUT (*(volatile unsigned char *) 0x400060D8)
4506 #define GP4SET (*(volatile unsigned char *) 0x400060DC)
4507 #define GP4CLR (*(volatile unsigned char *) 0x400060E0)
4508 #define GP4TGL (*(volatile unsigned char *) 0x400060E4)
4509 #endif // (__NO_MMR_STRUCTS__==1)
4510 
4511 /* Reset Value for GP4CON*/
4512 #define GP4CON_RVAL 0x0
4513 
4514 /* GP4CON[CON7] - Configuration bits for P4.7 */
4515 #define GP4CON_CON7_MSK (0x3 << 14 )
4516 #define GP4CON_CON7_GPIO (0x1 << 14 ) /* GPIO */
4517 #define GP4CON_CON7_PWM7 (0x2 << 14 ) /* PWM7 */
4518 
4519 /* GP4CON[CON6] - Configuration bits for P4.6 */
4520 #define GP4CON_CON6_MSK (0x3 << 12 )
4521 #define GP4CON_CON6_GPIO (0x1 << 12 ) /* GPIO */
4522 #define GP4CON_CON6_PWM6 (0x2 << 12 ) /* PWM6 */
4523 
4524 /* GP4CON[CON5] - Configuration bits for P4.5 */
4525 #define GP4CON_CON5_MSK (0x3 << 10 )
4526 #define GP4CON_CON5_GPIO (0x1 << 10 ) /* GPIO */
4527 #define GP4CON_CON5_PWM5 (0x2 << 10 ) /* PWM5 */
4528 
4529 /* GP4CON[CON4] - Configuration bits for P4.4 */
4530 #define GP4CON_CON4_MSK (0x3 << 8 )
4531 #define GP4CON_CON4_GPIO (0x1 << 8 ) /* GPIO */
4532 #define GP4CON_CON4_PWM4 (0x2 << 8 ) /* PWM4 */
4533 
4534 /* GP4CON[CON3] - Configuration bits for P4.3 */
4535 #define GP4CON_CON3_MSK (0x3 << 6 )
4536 #define GP4CON_CON3_GPIO (0x1 << 6 ) /* GPIO */
4537 #define GP4CON_CON3_PWM3 (0x2 << 6 ) /* PWM3 */
4538 
4539 /* GP4CON[CON2] - Configuration bits for P4.2 */
4540 #define GP4CON_CON2_MSK (0x3 << 4 )
4541 #define GP4CON_CON2_GPIO (0x1 << 4 ) /* GPIO */
4542 #define GP4CON_CON2_PWM2 (0x2 << 4 ) /* PWM2 */
4543 #define GP4CON_CON2_SPI0CS (0x3 << 4 ) /* SPI0CS */
4544 
4545 /* GP4CON[CON1] - Configuration bits for P4.1 */
4546 #define GP4CON_CON1_MSK (0x3 << 2 )
4547 #define GP4CON_CON1_GPIO (0x1 << 2 ) /* GPIO */
4548 #define GP4CON_CON1_PWM1 (0x2 << 2 ) /* PWM1 */
4549 
4550 /* GP4CON[CON0] - Configuration bits for P4.0 */
4551 #define GP4CON_CON0_MSK (0x3 << 0 )
4552 #define GP4CON_CON0_GPIO (0x1 << 0 ) /* GPIO */
4553 #define GP4CON_CON0_PWM0 (0x2 << 0 ) /* PWM0 */
4554 
4555 /* Reset Value for GP4OEN*/
4556 #define GP4OEN_RVAL 0x0
4557 
4558 /* GP4OEN[OEN7] - Port pin direction. */
4559 #define GP4OEN_OEN7_BBA (*(volatile unsigned long *) 0x420C189C)
4560 #define GP4OEN_OEN7_MSK (0x1 << 7 )
4561 #define GP4OEN_OEN7 (0x1 << 7 )
4562 #define GP4OEN_OEN7_IN (0x0 << 7 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4563 #define GP4OEN_OEN7_OUT (0x1 << 7 ) /* OUT. Enables the output on corresponding port pin. */
4564 
4565 /* GP4OEN[OEN6] - Port pin direction. */
4566 #define GP4OEN_OEN6_BBA (*(volatile unsigned long *) 0x420C1898)
4567 #define GP4OEN_OEN6_MSK (0x1 << 6 )
4568 #define GP4OEN_OEN6 (0x1 << 6 )
4569 #define GP4OEN_OEN6_IN (0x0 << 6 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4570 #define GP4OEN_OEN6_OUT (0x1 << 6 ) /* OUT. Enables the output on corresponding port pin. */
4571 
4572 /* GP4OEN[OEN5] - Port pin direction. */
4573 #define GP4OEN_OEN5_BBA (*(volatile unsigned long *) 0x420C1894)
4574 #define GP4OEN_OEN5_MSK (0x1 << 5 )
4575 #define GP4OEN_OEN5 (0x1 << 5 )
4576 #define GP4OEN_OEN5_IN (0x0 << 5 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4577 #define GP4OEN_OEN5_OUT (0x1 << 5 ) /* OUT. Enables the output on corresponding port pin. */
4578 
4579 /* GP4OEN[OEN4] - Port pin direction. */
4580 #define GP4OEN_OEN4_BBA (*(volatile unsigned long *) 0x420C1890)
4581 #define GP4OEN_OEN4_MSK (0x1 << 4 )
4582 #define GP4OEN_OEN4 (0x1 << 4 )
4583 #define GP4OEN_OEN4_IN (0x0 << 4 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4584 #define GP4OEN_OEN4_OUT (0x1 << 4 ) /* OUT. Enables the output on corresponding port pin. */
4585 
4586 /* GP4OEN[OEN3] - Port pin direction. */
4587 #define GP4OEN_OEN3_BBA (*(volatile unsigned long *) 0x420C188C)
4588 #define GP4OEN_OEN3_MSK (0x1 << 3 )
4589 #define GP4OEN_OEN3 (0x1 << 3 )
4590 #define GP4OEN_OEN3_IN (0x0 << 3 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4591 #define GP4OEN_OEN3_OUT (0x1 << 3 ) /* OUT. Enables the output on corresponding port pin. */
4592 
4593 /* GP4OEN[OEN2] - Port pin direction. */
4594 #define GP4OEN_OEN2_BBA (*(volatile unsigned long *) 0x420C1888)
4595 #define GP4OEN_OEN2_MSK (0x1 << 2 )
4596 #define GP4OEN_OEN2 (0x1 << 2 )
4597 #define GP4OEN_OEN2_IN (0x0 << 2 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4598 #define GP4OEN_OEN2_OUT (0x1 << 2 ) /* OUT. Enables the output on corresponding port pin. */
4599 
4600 /* GP4OEN[OEN1] - Port pin direction. */
4601 #define GP4OEN_OEN1_BBA (*(volatile unsigned long *) 0x420C1884)
4602 #define GP4OEN_OEN1_MSK (0x1 << 1 )
4603 #define GP4OEN_OEN1 (0x1 << 1 )
4604 #define GP4OEN_OEN1_IN (0x0 << 1 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4605 #define GP4OEN_OEN1_OUT (0x1 << 1 ) /* OUT. Enables the output on corresponding port pin. */
4606 
4607 /* GP4OEN[OEN0] - Port pin direction. */
4608 #define GP4OEN_OEN0_BBA (*(volatile unsigned long *) 0x420C1880)
4609 #define GP4OEN_OEN0_MSK (0x1 << 0 )
4610 #define GP4OEN_OEN0 (0x1 << 0 )
4611 #define GP4OEN_OEN0_IN (0x0 << 0 ) /* IN. Configures pin as an input. Disables the output on corresponding port pin. */
4612 #define GP4OEN_OEN0_OUT (0x1 << 0 ) /* OUT. Enables the output on corresponding port pin. */
4613 
4614 /* Reset Value for GP4PUL*/
4615 #define GP4PUL_RVAL 0xFF
4616 
4617 /* GP4PUL[PUL7] - Pull Up Enable for port pin. */
4618 #define GP4PUL_PUL7_BBA (*(volatile unsigned long *) 0x420C191C)
4619 #define GP4PUL_PUL7_MSK (0x1 << 7 )
4620 #define GP4PUL_PUL7 (0x1 << 7 )
4621 #define GP4PUL_PUL7_DIS (0x0 << 7 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4622 #define GP4PUL_PUL7_EN (0x1 << 7 ) /* EN. Enables the internal pull up on corresponding port pin. */
4623 
4624 /* GP4PUL[PUL6] - Pull Up Enable for port pin. */
4625 #define GP4PUL_PUL6_BBA (*(volatile unsigned long *) 0x420C1918)
4626 #define GP4PUL_PUL6_MSK (0x1 << 6 )
4627 #define GP4PUL_PUL6 (0x1 << 6 )
4628 #define GP4PUL_PUL6_DIS (0x0 << 6 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4629 #define GP4PUL_PUL6_EN (0x1 << 6 ) /* EN. Enables the internal pull up on corresponding port pin. */
4630 
4631 /* GP4PUL[PUL5] - Pull Up Enable for port pin. */
4632 #define GP4PUL_PUL5_BBA (*(volatile unsigned long *) 0x420C1914)
4633 #define GP4PUL_PUL5_MSK (0x1 << 5 )
4634 #define GP4PUL_PUL5 (0x1 << 5 )
4635 #define GP4PUL_PUL5_DIS (0x0 << 5 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4636 #define GP4PUL_PUL5_EN (0x1 << 5 ) /* EN. Enables the internal pull up on corresponding port pin. */
4637 
4638 /* GP4PUL[PUL4] - Pull Up Enable for port pin. */
4639 #define GP4PUL_PUL4_BBA (*(volatile unsigned long *) 0x420C1910)
4640 #define GP4PUL_PUL4_MSK (0x1 << 4 )
4641 #define GP4PUL_PUL4 (0x1 << 4 )
4642 #define GP4PUL_PUL4_DIS (0x0 << 4 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4643 #define GP4PUL_PUL4_EN (0x1 << 4 ) /* EN. Enables the internal pull up on corresponding port pin. */
4644 
4645 /* GP4PUL[PUL3] - Pull Up Enable for port pin. */
4646 #define GP4PUL_PUL3_BBA (*(volatile unsigned long *) 0x420C190C)
4647 #define GP4PUL_PUL3_MSK (0x1 << 3 )
4648 #define GP4PUL_PUL3 (0x1 << 3 )
4649 #define GP4PUL_PUL3_DIS (0x0 << 3 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4650 #define GP4PUL_PUL3_EN (0x1 << 3 ) /* EN. Enables the internal pull up on corresponding port pin. */
4651 
4652 /* GP4PUL[PUL2] - Pull Up Enable for port pin. */
4653 #define GP4PUL_PUL2_BBA (*(volatile unsigned long *) 0x420C1908)
4654 #define GP4PUL_PUL2_MSK (0x1 << 2 )
4655 #define GP4PUL_PUL2 (0x1 << 2 )
4656 #define GP4PUL_PUL2_DIS (0x0 << 2 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4657 #define GP4PUL_PUL2_EN (0x1 << 2 ) /* EN. Enables the internal pull up on corresponding port pin. */
4658 
4659 /* GP4PUL[PUL1] - Pull Up Enable for port pin. */
4660 #define GP4PUL_PUL1_BBA (*(volatile unsigned long *) 0x420C1904)
4661 #define GP4PUL_PUL1_MSK (0x1 << 1 )
4662 #define GP4PUL_PUL1 (0x1 << 1 )
4663 #define GP4PUL_PUL1_DIS (0x0 << 1 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4664 #define GP4PUL_PUL1_EN (0x1 << 1 ) /* EN. Enables the internal pull up on corresponding port pin. */
4665 
4666 /* GP4PUL[PUL0] - Pull Up Enable for port pin. */
4667 #define GP4PUL_PUL0_BBA (*(volatile unsigned long *) 0x420C1900)
4668 #define GP4PUL_PUL0_MSK (0x1 << 0 )
4669 #define GP4PUL_PUL0 (0x1 << 0 )
4670 #define GP4PUL_PUL0_DIS (0x0 << 0 ) /* DIS. Disables the internal pull up on corresponding port pin. */
4671 #define GP4PUL_PUL0_EN (0x1 << 0 ) /* EN. Enables the internal pull up on corresponding port pin. */
4672 
4673 /* Reset Value for GP4OCE*/
4674 #define GP4OCE_RVAL 0x0
4675 
4676 /* GP4OCE[OCE7] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4677 #define GP4OCE_OCE7_BBA (*(volatile unsigned long *) 0x420C199C)
4678 #define GP4OCE_OCE7_MSK (0x1 << 7 )
4679 #define GP4OCE_OCE7 (0x1 << 7 )
4680 #define GP4OCE_OCE7_DIS (0x0 << 7 ) /* DIS */
4681 #define GP4OCE_OCE7_EN (0x1 << 7 ) /* EN */
4682 
4683 /* GP4OCE[OCE6] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4684 #define GP4OCE_OCE6_BBA (*(volatile unsigned long *) 0x420C1998)
4685 #define GP4OCE_OCE6_MSK (0x1 << 6 )
4686 #define GP4OCE_OCE6 (0x1 << 6 )
4687 #define GP4OCE_OCE6_DIS (0x0 << 6 ) /* DIS */
4688 #define GP4OCE_OCE6_EN (0x1 << 6 ) /* EN */
4689 
4690 /* GP4OCE[OCE5] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4691 #define GP4OCE_OCE5_BBA (*(volatile unsigned long *) 0x420C1994)
4692 #define GP4OCE_OCE5_MSK (0x1 << 5 )
4693 #define GP4OCE_OCE5 (0x1 << 5 )
4694 #define GP4OCE_OCE5_DIS (0x0 << 5 ) /* DIS */
4695 #define GP4OCE_OCE5_EN (0x1 << 5 ) /* EN */
4696 
4697 /* GP4OCE[OCE4] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4698 #define GP4OCE_OCE4_BBA (*(volatile unsigned long *) 0x420C1990)
4699 #define GP4OCE_OCE4_MSK (0x1 << 4 )
4700 #define GP4OCE_OCE4 (0x1 << 4 )
4701 #define GP4OCE_OCE4_DIS (0x0 << 4 ) /* DIS */
4702 #define GP4OCE_OCE4_EN (0x1 << 4 ) /* EN */
4703 
4704 /* GP4OCE[OCE3] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4705 #define GP4OCE_OCE3_BBA (*(volatile unsigned long *) 0x420C198C)
4706 #define GP4OCE_OCE3_MSK (0x1 << 3 )
4707 #define GP4OCE_OCE3 (0x1 << 3 )
4708 #define GP4OCE_OCE3_DIS (0x0 << 3 ) /* DIS */
4709 #define GP4OCE_OCE3_EN (0x1 << 3 ) /* EN */
4710 
4711 /* GP4OCE[OCE2] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4712 #define GP4OCE_OCE2_BBA (*(volatile unsigned long *) 0x420C1988)
4713 #define GP4OCE_OCE2_MSK (0x1 << 2 )
4714 #define GP4OCE_OCE2 (0x1 << 2 )
4715 #define GP4OCE_OCE2_DIS (0x0 << 2 ) /* DIS */
4716 #define GP4OCE_OCE2_EN (0x1 << 2 ) /* EN */
4717 
4718 /* GP4OCE[OCE1] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4719 #define GP4OCE_OCE1_BBA (*(volatile unsigned long *) 0x420C1984)
4720 #define GP4OCE_OCE1_MSK (0x1 << 1 )
4721 #define GP4OCE_OCE1 (0x1 << 1 )
4722 #define GP4OCE_OCE1_DIS (0x0 << 1 ) /* DIS */
4723 #define GP4OCE_OCE1_EN (0x1 << 1 ) /* EN */
4724 
4725 /* GP4OCE[OCE0] - Output enable. Sets the GPIO pads on corresponding port to open circuit mode. */
4726 #define GP4OCE_OCE0_BBA (*(volatile unsigned long *) 0x420C1980)
4727 #define GP4OCE_OCE0_MSK (0x1 << 0 )
4728 #define GP4OCE_OCE0 (0x1 << 0 )
4729 #define GP4OCE_OCE0_DIS (0x0 << 0 ) /* DIS */
4730 #define GP4OCE_OCE0_EN (0x1 << 0 ) /* EN */
4731 
4732 /* Reset Value for GP4IN*/
4733 #define GP4IN_RVAL 0xFF
4734 
4735 /* GP4IN[IN7] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4736 #define GP4IN_IN7_BBA (*(volatile unsigned long *) 0x420C1A9C)
4737 #define GP4IN_IN7_MSK (0x1 << 7 )
4738 #define GP4IN_IN7 (0x1 << 7 )
4739 #define GP4IN_IN7_LOW (0x0 << 7 ) /* LOW */
4740 #define GP4IN_IN7_HIGH (0x1 << 7 ) /* HIGH */
4741 
4742 /* GP4IN[IN6] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4743 #define GP4IN_IN6_BBA (*(volatile unsigned long *) 0x420C1A98)
4744 #define GP4IN_IN6_MSK (0x1 << 6 )
4745 #define GP4IN_IN6 (0x1 << 6 )
4746 #define GP4IN_IN6_LOW (0x0 << 6 ) /* LOW */
4747 #define GP4IN_IN6_HIGH (0x1 << 6 ) /* HIGH */
4748 
4749 /* GP4IN[IN5] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4750 #define GP4IN_IN5_BBA (*(volatile unsigned long *) 0x420C1A94)
4751 #define GP4IN_IN5_MSK (0x1 << 5 )
4752 #define GP4IN_IN5 (0x1 << 5 )
4753 #define GP4IN_IN5_LOW (0x0 << 5 ) /* LOW */
4754 #define GP4IN_IN5_HIGH (0x1 << 5 ) /* HIGH */
4755 
4756 /* GP4IN[IN4] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4757 #define GP4IN_IN4_BBA (*(volatile unsigned long *) 0x420C1A90)
4758 #define GP4IN_IN4_MSK (0x1 << 4 )
4759 #define GP4IN_IN4 (0x1 << 4 )
4760 #define GP4IN_IN4_LOW (0x0 << 4 ) /* LOW */
4761 #define GP4IN_IN4_HIGH (0x1 << 4 ) /* HIGH */
4762 
4763 /* GP4IN[IN3] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4764 #define GP4IN_IN3_BBA (*(volatile unsigned long *) 0x420C1A8C)
4765 #define GP4IN_IN3_MSK (0x1 << 3 )
4766 #define GP4IN_IN3 (0x1 << 3 )
4767 #define GP4IN_IN3_LOW (0x0 << 3 ) /* LOW */
4768 #define GP4IN_IN3_HIGH (0x1 << 3 ) /* HIGH */
4769 
4770 /* GP4IN[IN2] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4771 #define GP4IN_IN2_BBA (*(volatile unsigned long *) 0x420C1A88)
4772 #define GP4IN_IN2_MSK (0x1 << 2 )
4773 #define GP4IN_IN2 (0x1 << 2 )
4774 #define GP4IN_IN2_LOW (0x0 << 2 ) /* LOW */
4775 #define GP4IN_IN2_HIGH (0x1 << 2 ) /* HIGH */
4776 
4777 /* GP4IN[IN1] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4778 #define GP4IN_IN1_BBA (*(volatile unsigned long *) 0x420C1A84)
4779 #define GP4IN_IN1_MSK (0x1 << 1 )
4780 #define GP4IN_IN1 (0x1 << 1 )
4781 #define GP4IN_IN1_LOW (0x0 << 1 ) /* LOW */
4782 #define GP4IN_IN1_HIGH (0x1 << 1 ) /* HIGH */
4783 
4784 /* GP4IN[IN0] - Reflects the level on the corresponding GPIO pins except when in configured in open circuit. */
4785 #define GP4IN_IN0_BBA (*(volatile unsigned long *) 0x420C1A80)
4786 #define GP4IN_IN0_MSK (0x1 << 0 )
4787 #define GP4IN_IN0 (0x1 << 0 )
4788 #define GP4IN_IN0_LOW (0x0 << 0 ) /* LOW */
4789 #define GP4IN_IN0_HIGH (0x1 << 0 ) /* HIGH */
4790 
4791 /* Reset Value for GP4OUT*/
4792 #define GP4OUT_RVAL 0x0
4793 
4794 /* GP4OUT[OUT7] - Output for port pin. */
4795 #define GP4OUT_OUT7_BBA (*(volatile unsigned long *) 0x420C1B1C)
4796 #define GP4OUT_OUT7_MSK (0x1 << 7 )
4797 #define GP4OUT_OUT7 (0x1 << 7 )
4798 #define GP4OUT_OUT7_LOW (0x0 << 7 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4799 #define GP4OUT_OUT7_HIGH (0x1 << 7 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4800 
4801 /* GP4OUT[OUT6] - Output for port pin. */
4802 #define GP4OUT_OUT6_BBA (*(volatile unsigned long *) 0x420C1B18)
4803 #define GP4OUT_OUT6_MSK (0x1 << 6 )
4804 #define GP4OUT_OUT6 (0x1 << 6 )
4805 #define GP4OUT_OUT6_LOW (0x0 << 6 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4806 #define GP4OUT_OUT6_HIGH (0x1 << 6 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4807 
4808 /* GP4OUT[OUT5] - Output for port pin. */
4809 #define GP4OUT_OUT5_BBA (*(volatile unsigned long *) 0x420C1B14)
4810 #define GP4OUT_OUT5_MSK (0x1 << 5 )
4811 #define GP4OUT_OUT5 (0x1 << 5 )
4812 #define GP4OUT_OUT5_LOW (0x0 << 5 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4813 #define GP4OUT_OUT5_HIGH (0x1 << 5 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4814 
4815 /* GP4OUT[OUT4] - Output for port pin. */
4816 #define GP4OUT_OUT4_BBA (*(volatile unsigned long *) 0x420C1B10)
4817 #define GP4OUT_OUT4_MSK (0x1 << 4 )
4818 #define GP4OUT_OUT4 (0x1 << 4 )
4819 #define GP4OUT_OUT4_LOW (0x0 << 4 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4820 #define GP4OUT_OUT4_HIGH (0x1 << 4 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4821 
4822 /* GP4OUT[OUT3] - Output for port pin. */
4823 #define GP4OUT_OUT3_BBA (*(volatile unsigned long *) 0x420C1B0C)
4824 #define GP4OUT_OUT3_MSK (0x1 << 3 )
4825 #define GP4OUT_OUT3 (0x1 << 3 )
4826 #define GP4OUT_OUT3_LOW (0x0 << 3 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4827 #define GP4OUT_OUT3_HIGH (0x1 << 3 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4828 
4829 /* GP4OUT[OUT2] - Output for port pin. */
4830 #define GP4OUT_OUT2_BBA (*(volatile unsigned long *) 0x420C1B08)
4831 #define GP4OUT_OUT2_MSK (0x1 << 2 )
4832 #define GP4OUT_OUT2 (0x1 << 2 )
4833 #define GP4OUT_OUT2_LOW (0x0 << 2 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4834 #define GP4OUT_OUT2_HIGH (0x1 << 2 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4835 
4836 /* GP4OUT[OUT1] - Output for port pin. */
4837 #define GP4OUT_OUT1_BBA (*(volatile unsigned long *) 0x420C1B04)
4838 #define GP4OUT_OUT1_MSK (0x1 << 1 )
4839 #define GP4OUT_OUT1 (0x1 << 1 )
4840 #define GP4OUT_OUT1_LOW (0x0 << 1 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4841 #define GP4OUT_OUT1_HIGH (0x1 << 1 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4842 
4843 /* GP4OUT[OUT0] - Output for port pin. */
4844 #define GP4OUT_OUT0_BBA (*(volatile unsigned long *) 0x420C1B00)
4845 #define GP4OUT_OUT0_MSK (0x1 << 0 )
4846 #define GP4OUT_OUT0 (0x1 << 0 )
4847 #define GP4OUT_OUT0_LOW (0x0 << 0 ) /* LOW. Cleared by user to drive the corresponding GPIO low. */
4848 #define GP4OUT_OUT0_HIGH (0x1 << 0 ) /* HIGH. Set by user code to drive the corresponding GPIO high. */
4849 
4850 /* Reset Value for GP4SET*/
4851 #define GP4SET_RVAL 0x0
4852 
4853 /* GP4SET[SET7] - Set output high for corresponding port pin. */
4854 #define GP4SET_SET7_BBA (*(volatile unsigned long *) 0x420C1B9C)
4855 #define GP4SET_SET7_MSK (0x1 << 7 )
4856 #define GP4SET_SET7 (0x1 << 7 )
4857 #define GP4SET_SET7_SET (0x1 << 7 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4858 
4859 /* GP4SET[SET6] - Set output high for corresponding port pin. */
4860 #define GP4SET_SET6_BBA (*(volatile unsigned long *) 0x420C1B98)
4861 #define GP4SET_SET6_MSK (0x1 << 6 )
4862 #define GP4SET_SET6 (0x1 << 6 )
4863 #define GP4SET_SET6_SET (0x1 << 6 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4864 
4865 /* GP4SET[SET5] - Set output high for corresponding port pin. */
4866 #define GP4SET_SET5_BBA (*(volatile unsigned long *) 0x420C1B94)
4867 #define GP4SET_SET5_MSK (0x1 << 5 )
4868 #define GP4SET_SET5 (0x1 << 5 )
4869 #define GP4SET_SET5_SET (0x1 << 5 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4870 
4871 /* GP4SET[SET4] - Set output high for corresponding port pin. */
4872 #define GP4SET_SET4_BBA (*(volatile unsigned long *) 0x420C1B90)
4873 #define GP4SET_SET4_MSK (0x1 << 4 )
4874 #define GP4SET_SET4 (0x1 << 4 )
4875 #define GP4SET_SET4_SET (0x1 << 4 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4876 
4877 /* GP4SET[SET3] - Set output high for corresponding port pin. */
4878 #define GP4SET_SET3_BBA (*(volatile unsigned long *) 0x420C1B8C)
4879 #define GP4SET_SET3_MSK (0x1 << 3 )
4880 #define GP4SET_SET3 (0x1 << 3 )
4881 #define GP4SET_SET3_SET (0x1 << 3 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4882 
4883 /* GP4SET[SET2] - Set output high for corresponding port pin. */
4884 #define GP4SET_SET2_BBA (*(volatile unsigned long *) 0x420C1B88)
4885 #define GP4SET_SET2_MSK (0x1 << 2 )
4886 #define GP4SET_SET2 (0x1 << 2 )
4887 #define GP4SET_SET2_SET (0x1 << 2 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4888 
4889 /* GP4SET[SET1] - Set output high for corresponding port pin. */
4890 #define GP4SET_SET1_BBA (*(volatile unsigned long *) 0x420C1B84)
4891 #define GP4SET_SET1_MSK (0x1 << 1 )
4892 #define GP4SET_SET1 (0x1 << 1 )
4893 #define GP4SET_SET1_SET (0x1 << 1 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4894 
4895 /* GP4SET[SET0] - Set output high for corresponding port pin. */
4896 #define GP4SET_SET0_BBA (*(volatile unsigned long *) 0x420C1B80)
4897 #define GP4SET_SET0_MSK (0x1 << 0 )
4898 #define GP4SET_SET0 (0x1 << 0 )
4899 #define GP4SET_SET0_SET (0x1 << 0 ) /* SET. Set by user code to drive the corresponding GPIO high. */
4900 
4901 /* Reset Value for GP4CLR*/
4902 #define GP4CLR_RVAL 0x0
4903 
4904 /* GP4CLR[CLR7] - Set by user code to drive the corresponding GPIO low. */
4905 #define GP4CLR_CLR7_BBA (*(volatile unsigned long *) 0x420C1C1C)
4906 #define GP4CLR_CLR7_MSK (0x1 << 7 )
4907 #define GP4CLR_CLR7 (0x1 << 7 )
4908 #define GP4CLR_CLR7_CLR (0x1 << 7 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4909 
4910 /* GP4CLR[CLR6] - Set by user code to drive the corresponding GPIO low. */
4911 #define GP4CLR_CLR6_BBA (*(volatile unsigned long *) 0x420C1C18)
4912 #define GP4CLR_CLR6_MSK (0x1 << 6 )
4913 #define GP4CLR_CLR6 (0x1 << 6 )
4914 #define GP4CLR_CLR6_CLR (0x1 << 6 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4915 
4916 /* GP4CLR[CLR5] - Set by user code to drive the corresponding GPIO low. */
4917 #define GP4CLR_CLR5_BBA (*(volatile unsigned long *) 0x420C1C14)
4918 #define GP4CLR_CLR5_MSK (0x1 << 5 )
4919 #define GP4CLR_CLR5 (0x1 << 5 )
4920 #define GP4CLR_CLR5_CLR (0x1 << 5 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4921 
4922 /* GP4CLR[CLR4] - Set by user code to drive the corresponding GPIO low. */
4923 #define GP4CLR_CLR4_BBA (*(volatile unsigned long *) 0x420C1C10)
4924 #define GP4CLR_CLR4_MSK (0x1 << 4 )
4925 #define GP4CLR_CLR4 (0x1 << 4 )
4926 #define GP4CLR_CLR4_CLR (0x1 << 4 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4927 
4928 /* GP4CLR[CLR3] - Set by user code to drive the corresponding GPIO low. */
4929 #define GP4CLR_CLR3_BBA (*(volatile unsigned long *) 0x420C1C0C)
4930 #define GP4CLR_CLR3_MSK (0x1 << 3 )
4931 #define GP4CLR_CLR3 (0x1 << 3 )
4932 #define GP4CLR_CLR3_CLR (0x1 << 3 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4933 
4934 /* GP4CLR[CLR2] - Set by user code to drive the corresponding GPIO low. */
4935 #define GP4CLR_CLR2_BBA (*(volatile unsigned long *) 0x420C1C08)
4936 #define GP4CLR_CLR2_MSK (0x1 << 2 )
4937 #define GP4CLR_CLR2 (0x1 << 2 )
4938 #define GP4CLR_CLR2_CLR (0x1 << 2 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4939 
4940 /* GP4CLR[CLR1] - Set by user code to drive the corresponding GPIO low. */
4941 #define GP4CLR_CLR1_BBA (*(volatile unsigned long *) 0x420C1C04)
4942 #define GP4CLR_CLR1_MSK (0x1 << 1 )
4943 #define GP4CLR_CLR1 (0x1 << 1 )
4944 #define GP4CLR_CLR1_CLR (0x1 << 1 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4945 
4946 /* GP4CLR[CLR0] - Set by user code to drive the corresponding GPIO low. */
4947 #define GP4CLR_CLR0_BBA (*(volatile unsigned long *) 0x420C1C00)
4948 #define GP4CLR_CLR0_MSK (0x1 << 0 )
4949 #define GP4CLR_CLR0 (0x1 << 0 )
4950 #define GP4CLR_CLR0_CLR (0x1 << 0 ) /* CLR. Set by user code to drive the corresponding GPIO low. */
4951 
4952 /* Reset Value for GP4TGL*/
4953 #define GP4TGL_RVAL 0x0
4954 
4955 /* GP4TGL[TGL7] - Toggle for corresponding port pin. */
4956 #define GP4TGL_TGL7_BBA (*(volatile unsigned long *) 0x420C1C9C)
4957 #define GP4TGL_TGL7_MSK (0x1 << 7 )
4958 #define GP4TGL_TGL7 (0x1 << 7 )
4959 #define GP4TGL_TGL7_TGL (0x1 << 7 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4960 
4961 /* GP4TGL[TGL6] - Toggle for corresponding port pin. */
4962 #define GP4TGL_TGL6_BBA (*(volatile unsigned long *) 0x420C1C98)
4963 #define GP4TGL_TGL6_MSK (0x1 << 6 )
4964 #define GP4TGL_TGL6 (0x1 << 6 )
4965 #define GP4TGL_TGL6_TGL (0x1 << 6 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4966 
4967 /* GP4TGL[TGL5] - Toggle for corresponding port pin. */
4968 #define GP4TGL_TGL5_BBA (*(volatile unsigned long *) 0x420C1C94)
4969 #define GP4TGL_TGL5_MSK (0x1 << 5 )
4970 #define GP4TGL_TGL5 (0x1 << 5 )
4971 #define GP4TGL_TGL5_TGL (0x1 << 5 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4972 
4973 /* GP4TGL[TGL4] - Toggle for corresponding port pin. */
4974 #define GP4TGL_TGL4_BBA (*(volatile unsigned long *) 0x420C1C90)
4975 #define GP4TGL_TGL4_MSK (0x1 << 4 )
4976 #define GP4TGL_TGL4 (0x1 << 4 )
4977 #define GP4TGL_TGL4_TGL (0x1 << 4 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4978 
4979 /* GP4TGL[TGL3] - Toggle for corresponding port pin. */
4980 #define GP4TGL_TGL3_BBA (*(volatile unsigned long *) 0x420C1C8C)
4981 #define GP4TGL_TGL3_MSK (0x1 << 3 )
4982 #define GP4TGL_TGL3 (0x1 << 3 )
4983 #define GP4TGL_TGL3_TGL (0x1 << 3 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4984 
4985 /* GP4TGL[TGL2] - Toggle for corresponding port pin. */
4986 #define GP4TGL_TGL2_BBA (*(volatile unsigned long *) 0x420C1C88)
4987 #define GP4TGL_TGL2_MSK (0x1 << 2 )
4988 #define GP4TGL_TGL2 (0x1 << 2 )
4989 #define GP4TGL_TGL2_TGL (0x1 << 2 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4990 
4991 /* GP4TGL[TGL1] - Toggle for corresponding port pin. */
4992 #define GP4TGL_TGL1_BBA (*(volatile unsigned long *) 0x420C1C84)
4993 #define GP4TGL_TGL1_MSK (0x1 << 1 )
4994 #define GP4TGL_TGL1 (0x1 << 1 )
4995 #define GP4TGL_TGL1_TGL (0x1 << 1 ) /* TGL. Set by user code to invert the corresponding GPIO. */
4996 
4997 /* GP4TGL[TGL0] - Toggle for corresponding port pin. */
4998 #define GP4TGL_TGL0_BBA (*(volatile unsigned long *) 0x420C1C80)
4999 #define GP4TGL_TGL0_MSK (0x1 << 0 )
5000 #define GP4TGL_TGL0 (0x1 << 0 )
5001 #define GP4TGL_TGL0_TGL (0x1 << 0 ) /* TGL. Set by user code to invert the corresponding GPIO. */
5002 // ------------------------------------------------------------------------------------------------
5003 // ----- GPIOCMN -----
5004 // ------------------------------------------------------------------------------------------------
5005 
5006 
5007 /**
5008  * @brief General Purpose Input Output (pADI_GPIOCMN)
5009  */
5010 
5011 #if (__NO_MMR_STRUCTS__==0)
5012 typedef struct { /*!< pADI_GPIOCMN Structure */
5013  __IO uint8_t GPDWN; /*!< GPIO P3.4 Pull Down Control */
5015 #else // (__NO_MMR_STRUCTS__==0)
5016 #define GPDWN (*(volatile unsigned char *) 0x400060F0)
5017 #endif // (__NO_MMR_STRUCTS__==0)
5018 
5019 /* Reset Value for GPDWN*/
5020 #define GPDWN_RVAL 0x1
5021 
5022 /* GPDWN[DWN1] - Pull down resistor control bit */
5023 #define GPDWN_DWN1_BBA (*(volatile unsigned long *) 0x420C1E04)
5024 #define GPDWN_DWN1_MSK (0x1 << 1 )
5025 #define GPDWN_DWN1 (0x1 << 1 )
5026 #define GPDWN_DWN1_EN (0x0 << 1 ) /* EN to enable the pull down resistor on P3.4 by software. The hardware only enables this pull down automatically at power up. */
5027 #define GPDWN_DWN1_DIS (0x1 << 1 ) /* DIS to disable the pull down resistor on P3.4. Disabled automatically by hardware if GP3PUL[4] =1 or if GP3OEN[4]=1. */
5028 // ------------------------------------------------------------------------------------------------
5029 // ----- MISC -----
5030 // ------------------------------------------------------------------------------------------------
5031 
5032 
5033 /**
5034  * @brief General Purpose Input Output (pADI_MISC)
5035  */
5036 
5037 #if (__NO_MMR_STRUCTS__==0)
5038 typedef struct { /*!< pADI_MISC Structure */
5039  __I uint32_t RESERVED0;
5040  __IO uint16_t RFTST; /*!< Internal Radio Test Mode Access */
5041  __I uint16_t RESERVED1[5];
5042  __IO uint8_t SWACT; /*!< Serial Wire Activity Register */
5044 #else // (__NO_MMR_STRUCTS__==0)
5045 #define RFTST (*(volatile unsigned short int *) 0x40008824)
5046 #define SWACT (*(volatile unsigned char *) 0x40008830)
5047 #endif // (__NO_MMR_STRUCTS__==0)
5048 
5049 /* Reset Value for RFTST*/
5050 #define RFTST_RVAL 0x0
5051 
5052 /* RFTST[DIR] - Controls the pin direction in RF test mode. */
5053 #define RFTST_DIR_MSK (0x7FF << 5 )
5054 
5055 /* RFTST[AN1] - Enable RF Analog test 2 mode. */
5056 #define RFTST_AN1_BBA (*(volatile unsigned long *) 0x4211048C)
5057 #define RFTST_AN1_MSK (0x1 << 3 )
5058 #define RFTST_AN1 (0x1 << 3 )
5059 #define RFTST_AN1_DIS (0x0 << 3 ) /* DIS */
5060 #define RFTST_AN1_EN (0x1 << 3 ) /* EN */
5061 
5062 /* RFTST[AN0] - Enable RF Analog test mode. */
5063 #define RFTST_AN0_BBA (*(volatile unsigned long *) 0x42110488)
5064 #define RFTST_AN0_MSK (0x1 << 2 )
5065 #define RFTST_AN0 (0x1 << 2 )
5066 #define RFTST_AN0_DIS (0x0 << 2 ) /* DIS */
5067 #define RFTST_AN0_EN (0x1 << 2 ) /* EN */
5068 
5069 /* RFTST[SPI0] - Enable the internal SPI0 signals to P0.0, P0.1, P0.2 and P0.3. */
5070 #define RFTST_SPI0_BBA (*(volatile unsigned long *) 0x42110484)
5071 #define RFTST_SPI0_MSK (0x1 << 1 )
5072 #define RFTST_SPI0 (0x1 << 1 )
5073 #define RFTST_SPI0_DIS (0x0 << 1 ) /* DIS */
5074 #define RFTST_SPI0_EN (0x1 << 1 ) /* EN */
5075 
5076 /* RFTST[GPX] - Connect the internal GPIOs GP0-GP5 of the RF transceiver to external GPIOs P0.6, P0.7, P1.0, P1.1, P1.4, P1.5. */
5077 #define RFTST_GPX_BBA (*(volatile unsigned long *) 0x42110480)
5078 #define RFTST_GPX_MSK (0x1 << 0 )
5079 #define RFTST_GPX (0x1 << 0 )
5080 #define RFTST_GPX_DIS (0x0 << 0 ) /* DIS */
5081 #define RFTST_GPX_EN (0x1 << 0 ) /* EN */
5082 
5083 /* Reset Value for SWACT*/
5084 #define SWACT_RVAL 0x0
5085 
5086 /* SWACT[ACT] - Serial Wire Activity */
5087 #define SWACT_ACT_BBA (*(volatile unsigned long *) 0x42110600)
5088 #define SWACT_ACT_MSK (0x1 << 0 )
5089 #define SWACT_ACT (0x1 << 0 )
5090 #define SWACT_ACT_DIS (0x0 << 0 ) /* DIS */
5091 #define SWACT_ACT_EN (0x1 << 0 ) /* EN */
5092 // ------------------------------------------------------------------------------------------------
5093 // ----- I2C -----
5094 // ------------------------------------------------------------------------------------------------
5095 
5096 
5097 /**
5098  * @brief I2C (pADI_I2C)
5099  */
5100 
5101 #if (__NO_MMR_STRUCTS__==0)
5102 typedef struct { /*!< pADI_I2C Structure */
5103  __IO uint16_t I2CMCON; /*!< Master Control Register */
5104  __I uint16_t RESERVED0;
5105  __IO uint16_t I2CMSTA; /*!< Master Status Register */
5106  __I uint16_t RESERVED1;
5107  __IO uint16_t I2CMRX; /*!< Master Receive Data Register */
5108  __I uint16_t RESERVED2;
5109  __IO uint16_t I2CMTX; /*!< Master Transmit Data Register */
5110  __I uint16_t RESERVED3;
5111  __IO uint16_t I2CMRXCNT; /*!< Master Receive Data Count Register */
5112  __I uint16_t RESERVED4;
5113  __IO uint16_t I2CMCRXCNT; /*!< Master Current Receive Data Count Register */
5114  __I uint16_t RESERVED5;
5115  __IO uint8_t I2CADR0; /*!< First Master Address Byte Register */
5116  __I uint8_t RESERVED6[3];
5117  __IO uint8_t I2CADR1; /*!< Second Master Address Byte Register */
5118  __I uint8_t RESERVED7[7];
5119  __IO uint16_t I2CDIV; /*!< Serial Clock Period Divisor Register */
5120  __I uint16_t RESERVED8;
5121  __IO uint16_t I2CSCON; /*!< Slave Control Register */
5122  __I uint16_t RESERVED9;
5123  __IO uint16_t I2CSSTA; /*!< Slave I2C Status, Error and Interrupt Register */
5124  __I uint16_t RESERVED10;
5125  __IO uint16_t I2CSRX; /*!< Slave Receive Data Register */
5126  __I uint16_t RESERVED11;
5127  __IO uint16_t I2CSTX; /*!< Slave Transmit Data Register */
5128  __I uint16_t RESERVED12;
5129  __IO uint16_t I2CALT; /*!< Hardware General Call ID Register */
5130  __I uint16_t RESERVED13;
5131  __IO uint16_t I2CID0; /*!< First Slave Address Device ID */
5132  __I uint16_t RESERVED14;
5133  __IO uint16_t I2CID1; /*!< Second Slave Address Device ID */
5134  __I uint16_t RESERVED15;
5135  __IO uint16_t I2CID2; /*!< Third Slave Address Device ID */
5136  __I uint16_t RESERVED16;
5137  __IO uint16_t I2CID3; /*!< Fourth Slave Address Device ID */
5138  __I uint16_t RESERVED17;
5139  __IO uint16_t I2CFSTA; /*!< Master and Slave Rx/Tx FIFO Status Register */
5140 } ADI_I2C_TypeDef;
5141 #else // (__NO_MMR_STRUCTS__==0)
5142 #define I2CMCON (*(volatile unsigned short int *) 0x40003000)
5143 #define I2CMSTA (*(volatile unsigned short int *) 0x40003004)
5144 #define I2CMRX (*(volatile unsigned short int *) 0x40003008)
5145 #define I2CMTX (*(volatile unsigned short int *) 0x4000300C)
5146 #define I2CMRXCNT (*(volatile unsigned short int *) 0x40003010)
5147 #define I2CMCRXCNT (*(volatile unsigned short int *) 0x40003014)
5148 #define I2CADR0 (*(volatile unsigned char *) 0x40003018)
5149 #define I2CADR1 (*(volatile unsigned char *) 0x4000301C)
5150 #define I2CDIV (*(volatile unsigned short int *) 0x40003024)
5151 #define I2CSCON (*(volatile unsigned short int *) 0x40003028)
5152 #define I2CSSTA (*(volatile unsigned short int *) 0x4000302C)
5153 #define I2CSRX (*(volatile unsigned short int *) 0x40003030)
5154 #define I2CSTX (*(volatile unsigned short int *) 0x40003034)
5155 #define I2CALT (*(volatile unsigned short int *) 0x40003038)
5156 #define I2CID0 (*(volatile unsigned short int *) 0x4000303C)
5157 #define I2CID1 (*(volatile unsigned short int *) 0x40003040)
5158 #define I2CID2 (*(volatile unsigned short int *) 0x40003044)
5159 #define I2CID3 (*(volatile unsigned short int *) 0x40003048)
5160 #define I2CFSTA (*(volatile unsigned short int *) 0x4000304C)
5161 #endif // (__NO_MMR_STRUCTS__==0)
5162 
5163 /* Reset Value for I2CMCON*/
5164 #define I2CMCON_RVAL 0x0
5165 
5166 /* I2CMCON[TXDMA] - Enable master Tx DMA request. */
5167 #define I2CMCON_TXDMA_BBA (*(volatile unsigned long *) 0x4206002C)
5168 #define I2CMCON_TXDMA_MSK (0x1 << 11 )
5169 #define I2CMCON_TXDMA (0x1 << 11 )
5170 #define I2CMCON_TXDMA_DIS (0x0 << 11 ) /* DIS. Disable Tx DMA mode. */
5171 #define I2CMCON_TXDMA_EN (0x1 << 11 ) /* EN. Enable I2C master DMA requests. */
5172 
5173 /* I2CMCON[RXDMA] - Enable master Rx DMA request. */
5174 #define I2CMCON_RXDMA_BBA (*(volatile unsigned long *) 0x42060028)
5175 #define I2CMCON_RXDMA_MSK (0x1 << 10 )
5176 #define I2CMCON_RXDMA (0x1 << 10 )
5177 #define I2CMCON_RXDMA_DIS (0x0 << 10 ) /* DIS. Disable Rx DMA mode. */
5178 #define I2CMCON_RXDMA_EN (0x1 << 10 ) /* EN. Enable I2C master DMA requests. */
5179 
5180 /* I2CMCON[IENCMP] - Transaction completed (or stop detected) interrupt enable. */
5181 #define I2CMCON_IENCMP_BBA (*(volatile unsigned long *) 0x42060020)
5182 #define I2CMCON_IENCMP_MSK (0x1 << 8 )
5183 #define I2CMCON_IENCMP (0x1 << 8 )
5184 #define I2CMCON_IENCMP_DIS (0x0 << 8 ) /* DIS. Interrupt disabled. */
5185 #define I2CMCON_IENCMP_EN (0x1 << 8 ) /* EN. Interrupt enabled. A master I2C interrupt is generated when a STOP is detected. Enables TCOMP to geneerate an interrupt. */
5186 
5187 /* I2CMCON[IENNACK] - NACK received interrupt enable. */
5188 #define I2CMCON_IENNACK_BBA (*(volatile unsigned long *) 0x4206001C)
5189 #define I2CMCON_IENNACK_MSK (0x1 << 7 )
5190 #define I2CMCON_IENNACK (0x1 << 7 )
5191 #define I2CMCON_IENNACK_DIS (0x0 << 7 ) /* DIS. Interrupt disabled. */
5192 #define I2CMCON_IENNACK_EN (0x1 << 7 ) /* EN, enables NACKADDR(I2CMSTA[4]) and NACKDATA (I2CMSTA[7]) to generate an interrupt. */
5193 
5194 /* I2CMCON[IENALOST] - Arbitration lost interrupt enable. */
5195 #define I2CMCON_IENALOST_BBA (*(volatile unsigned long *) 0x42060018)
5196 #define I2CMCON_IENALOST_MSK (0x1 << 6 )
5197 #define I2CMCON_IENALOST (0x1 << 6 )
5198 #define I2CMCON_IENALOST_DIS (0x0 << 6 ) /* DIS. Interrupt disabled. */
5199 #define I2CMCON_IENALOST_EN (0x1 << 6 ) /* EN. Interrupt enabled. A master I2C interrupt is generated if the master looses arbitration.Enables ALOST to generate an interrupt. */
5200 
5201 /* I2CMCON[IENTX] - Transmit request interrupt enable. */
5202 #define I2CMCON_IENTX_BBA (*(volatile unsigned long *) 0x42060014)
5203 #define I2CMCON_IENTX_MSK (0x1 << 5 )
5204 #define I2CMCON_IENTX (0x1 << 5 )
5205 #define I2CMCON_IENTX_DIS (0x0 << 5 ) /* DIS. Interrupt disabled. */
5206 #define I2CMCON_IENTX_EN (0x1 << 5 ) /* EN. Interrupt enabled. A master I2C interrupt is generated when the Tx FIFO is not full and the direction bit is 0. */
5207 
5208 /* I2CMCON[IENRX] - Receive request interrupt enable. */
5209 #define I2CMCON_IENRX_BBA (*(volatile unsigned long *) 0x42060010)
5210 #define I2CMCON_IENRX_MSK (0x1 << 4 )
5211 #define I2CMCON_IENRX (0x1 << 4 )
5212 #define I2CMCON_IENRX_DIS (0x0 << 4 ) /* DIS. Interrupt disabled. */
5213 #define I2CMCON_IENRX_EN (0x1 << 4 ) /* EN. Interrupt enabled. A master I2C interrupt is generated when data is in the receive FIFO. */
5214 
5215 /* I2CMCON[STRETCH] - Stretch I2CSCL enable. */
5216 #define I2CMCON_STRETCH_BBA (*(volatile unsigned long *) 0x4206000C)
5217 #define I2CMCON_STRETCH_MSK (0x1 << 3 )
5218 #define I2CMCON_STRETCH (0x1 << 3 )
5219 #define I2CMCON_STRETCH_DIS (0x0 << 3 ) /* DIS. Disable */
5220 #define I2CMCON_STRETCH_EN (0x1 << 3 ) /* EN. Setting this bit instructs the device that if I2CSCL is 0, hold it at 0. Or if I2CSCL is 1, then when it next goes to 0, hold it at 0. */
5221 
5222 /* I2CMCON[LOOPBACK] - Internal loop back enable. */
5223 #define I2CMCON_LOOPBACK_BBA (*(volatile unsigned long *) 0x42060008)
5224 #define I2CMCON_LOOPBACK_MSK (0x1 << 2 )
5225 #define I2CMCON_LOOPBACK (0x1 << 2 )
5226 #define I2CMCON_LOOPBACK_DIS (0x0 << 2 ) /* DIS. Disable. */
5227 #define I2CMCON_LOOPBACK_EN (0x1 << 2 ) /* EN. I2CSCL and I2CSDA out of the device are muxed onto their corresponding inputs. Note that is also possible for the master to loop back a transfer to the slave as long as the device address corresponds, that is, external loopback. */
5228 
5229 /* I2CMCON[COMPETE] - Start back-off disable. */
5230 #define I2CMCON_COMPETE_BBA (*(volatile unsigned long *) 0x42060004)
5231 #define I2CMCON_COMPETE_MSK (0x1 << 1 )
5232 #define I2CMCON_COMPETE (0x1 << 1 )
5233 #define I2CMCON_COMPETE_DIS (0x0 << 1 ) /* DIS. Disable. */
5234 #define I2CMCON_COMPETE_EN (0x1 << 1 ) /* EN. Enables the device to compete for ownership even if another device is currently driving a start condition. */
5235 
5236 /* I2CMCON[MAS] - Master enable bit. */
5237 #define I2CMCON_MAS_BBA (*(volatile unsigned long *) 0x42060000)
5238 #define I2CMCON_MAS_MSK (0x1 << 0 )
5239 #define I2CMCON_MAS (0x1 << 0 )
5240 #define I2CMCON_MAS_DIS (0x0 << 0 ) /* DIS. The master is disabled. The master state machine is reset.The master should be disabled when not in use. This bit should not be cleared until a transaction has completed. TCOMP in I2CMSTA indicates when a transaction is complete. */
5241 #define I2CMCON_MAS_EN (0x1 << 0 ) /* EN. Enable master. */
5242 
5243 /* Reset Value for I2CMSTA*/
5244 #define I2CMSTA_RVAL 0x0
5245 
5246 /* I2CMSTA[TXUR] - Master transmit FIFO underrun. */
5247 #define I2CMSTA_TXUR_BBA (*(volatile unsigned long *) 0x420600B0)
5248 #define I2CMSTA_TXUR_MSK (0x1 << 12 )
5249 #define I2CMSTA_TXUR (0x1 << 12 )
5250 #define I2CMSTA_TXUR_CLR (0x0 << 12 ) /* CLR. Cleared. */
5251 #define I2CMSTA_TXUR_SET (0x1 << 12 ) /* SET. Set when the I2C master ends the transaction due to a Tx FIFO empty condition. This bit is only set when IENTX (I2CSCON[5]) is set. */
5252 
5253 /* I2CMSTA[MSTOP] - STOP driven by the I2C master. */
5254 #define I2CMSTA_MSTOP_BBA (*(volatile unsigned long *) 0x420600AC)
5255 #define I2CMSTA_MSTOP_MSK (0x1 << 11 )
5256 #define I2CMSTA_MSTOP (0x1 << 11 )
5257 #define I2CMSTA_MSTOP_CLR (0x0 << 11 ) /* CLR. Cleared. */
5258 #define I2CMSTA_MSTOP_SET (0x1 << 11 ) /* SET. Set when the I2C master drives a stop condition on the I2C bus, therefore indicating a transaction completion, Tx underrun, Rx overflow, or a NACK by the slave. It is different from TCOMP because it is not set when the stop condition occurs due to any other master on the I2C bus. This bit does not generate an interrupt. See the TCOMP description for available interrupts related to the stop condition. */
5259 
5260 /* I2CMSTA[LINEBUSY] - Line is busy. */
5261 #define I2CMSTA_LINEBUSY_BBA (*(volatile unsigned long *) 0x420600A8)
5262 #define I2CMSTA_LINEBUSY_MSK (0x1 << 10 )
5263 #define I2CMSTA_LINEBUSY (0x1 << 10 )
5264 #define I2CMSTA_LINEBUSY_CLR (0x0 << 10 ) /* CLR. Cleared when a stop is detected on the I2C bus. */
5265 #define I2CMSTA_LINEBUSY_SET (0x1 << 10 ) /* SET. Set when a start is detected on the I2C bus. */
5266 
5267 /* I2CMSTA[RXOF] - Receive FIFO overflow. */
5268 #define I2CMSTA_RXOF_BBA (*(volatile unsigned long *) 0x420600A4)
5269 #define I2CMSTA_RXOF_MSK (0x1 << 9 )
5270 #define I2CMSTA_RXOF (0x1 << 9 )
5271 #define I2CMSTA_RXOF_CLR (0x0 << 9 ) /* CLR. CLeared. */
5272 #define I2CMSTA_RXOF_SET (0x1 << 9 ) /* SET. Set when a byte is written to the receive FIFO when the FIFO is already full. */
5273 
5274 /* I2CMSTA[TCOMP] - Transaction completed (or stop detected). (Can drive an interrupt). */
5275 #define I2CMSTA_TCOMP_BBA (*(volatile unsigned long *) 0x420600A0)
5276 #define I2CMSTA_TCOMP_MSK (0x1 << 8 )
5277 #define I2CMSTA_TCOMP (0x1 << 8 )
5278 #define I2CMSTA_TCOMP_CLR (0x0 << 8 ) /* CLR. Cleared. */
5279 #define I2CMSTA_TCOMP_SET (0x1 << 8 ) /* SET. Set when a STOP condition is detected on the I2C bus. If IENCMP is 1, an interrupt is generated when this bit asserts. This bit only asserts if the master is enabled (MASEN = 1). This bit should be used to determine when it is safe to disable the master. It can also be used to wait for another master's transaction to complete on the I2C bus when this master loses arbitration. */
5280 
5281 /* I2CMSTA[NACKDATA] - NACK received in response to data write. (Can drive an interrupt). */
5282 #define I2CMSTA_NACKDATA_BBA (*(volatile unsigned long *) 0x4206009C)
5283 #define I2CMSTA_NACKDATA_MSK (0x1 << 7 )
5284 #define I2CMSTA_NACKDATA (0x1 << 7 )
5285 #define I2CMSTA_NACKDATA_CLR (0x0 << 7 ) /* CLR. Cleared on a read of the I2CMSTA register. */
5286 #define I2CMSTA_NACKDATA_SET (0x1 << 7 ) /* SET. Set when a NACK is received in response to a data write transfer. If IENNACK is 1, an interrupt is generated when this bit asserts. */
5287 
5288 /* I2CMSTA[BUSY] - Master busy. */
5289 #define I2CMSTA_BUSY_BBA (*(volatile unsigned long *) 0x42060098)
5290 #define I2CMSTA_BUSY_MSK (0x1 << 6 )
5291 #define I2CMSTA_BUSY (0x1 << 6 )
5292 #define I2CMSTA_BUSY_CLR (0x0 << 6 ) /* CLR. Cleared if the state machine is idle or another device has control of the I2C bus. */
5293 #define I2CMSTA_BUSY_SET (0x1 << 6 ) /* SET. Set when the master state machine is servicing a transaction. */
5294 
5295 /* I2CMSTA[ALOST] - Arbitration lost. (Can drive an interrupt). */
5296 #define I2CMSTA_ALOST_BBA (*(volatile unsigned long *) 0x42060094)
5297 #define I2CMSTA_ALOST_MSK (0x1 << 5 )
5298 #define I2CMSTA_ALOST (0x1 << 5 )
5299 #define I2CMSTA_ALOST_CLR (0x0 << 5 ) /* CLR. Cleared on a read of the I2CMSTA register. */
5300 #define I2CMSTA_ALOST_SET (0x1 << 5 ) /* SET. Set if the master looses arbitration. If IENALOST is 1, an interrupt is generated when this bit asserts. */
5301 
5302 /* I2CMSTA[NACKADDR] - NACK received in response to an address. (Can drive an interrupt). */
5303 #define I2CMSTA_NACKADDR_BBA (*(volatile unsigned long *) 0x42060090)
5304 #define I2CMSTA_NACKADDR_MSK (0x1 << 4 )
5305 #define I2CMSTA_NACKADDR (0x1 << 4 )
5306 #define I2CMSTA_NACKADDR_CLR (0x0 << 4 ) /* CLR. Cleared on a read of the I2CMSTA register. */
5307 #define I2CMSTA_NACKADDR_SET (0x1 << 4 ) /* SET. Set if a NACK received in response to an address. If IENNACK is 1, an interrupt is generated when this bit asserts. */
5308 
5309 /* I2CMSTA[RXREQ] - Receive Request. (Can drive an interrupt). */
5310 #define I2CMSTA_RXREQ_BBA (*(volatile unsigned long *) 0x4206008C)
5311 #define I2CMSTA_RXREQ_MSK (0x1 << 3 )
5312 #define I2CMSTA_RXREQ (0x1 << 3 )
5313 #define I2CMSTA_RXREQ_CLR (0x0 << 3 ) /* CLR. Cleared. */
5314 #define I2CMSTA_RXREQ_SET (0x1 << 3 ) /* SET. Set when there is data in the receive FIFO. If IENRX is 1, an interrupt is generated when this bit asserts. */
5315 
5316 /* I2CMSTA[TXREQ] - Transmit Request. (Can drive an interrupt). */
5317 #define I2CMSTA_TXREQ_BBA (*(volatile unsigned long *) 0x42060088)
5318 #define I2CMSTA_TXREQ_MSK (0x1 << 2 )
5319 #define I2CMSTA_TXREQ (0x1 << 2 )
5320 #define I2CMSTA_TXREQ_CLR (0x0 << 2 ) /* CLR. Cleared when the transmit FIFO underrun condition is not met. */
5321 #define I2CMSTA_TXREQ_SET (0x1 << 2 ) /* SET. Set when the direction bit is 0 and the transmit FIFO is either empty or not full. If IENTX is 1, an interrupt is generated when this bit asserts. */
5322 
5323 /* I2CMSTA[TXFSTA] - Transmit FIFO Status. */
5324 #define I2CMSTA_TXFSTA_MSK (0x3 << 0 )
5325 #define I2CMSTA_TXFSTA_EMPTY (0x0 << 0 ) /* EMPTY. FIFO empty. */
5326 #define I2CMSTA_TXFSTA_ONEBYTE (0x2 << 0 ) /* ONEBYTE. 1 byte in FIFO. */
5327 #define I2CMSTA_TXFSTA_FULL (0x3 << 0 ) /* FULL. FIFO full. */
5328 
5329 /* Reset Value for I2CMRX*/
5330 #define I2CMRX_RVAL 0x0
5331 
5332 /* I2CMRX[VALUE] - Receive register. This register allows access to the receive data FIFO. The FIFO can hold two bytes. */
5333 #define I2CMRX_VALUE_MSK (0xFF << 0 )
5334 
5335 /* Reset Value for I2CMTX*/
5336 #define I2CMTX_RVAL 0x0
5337 
5338 /* I2CMTX[VALUE] - Transmit register. This register allows access to the transmit data FIFO. The FIFO can hold two bytes. */
5339 #define I2CMTX_VALUE_MSK (0xFF << 0 )
5340 
5341 /* Reset Value for I2CMRXCNT*/
5342 #define I2CMRXCNT_RVAL 0x0
5343 
5344 /* I2CMRXCNT[EXTEND] - Extended read: Use this bit if greater than 256 bytes are required on a read. For example: To receive 412 bytes, write 0x100 (EXTEND = 1) to this register (I2CMRXCNT). Wait for the first byte to be received, then check the I2CMCRXCNT register for every byte received thereafter. When I2CMCRXCNT returns to 0, 256 bytes have been received. Then, write 0x09C (412 - 256 = 156 decimal (equal to 0x9C) – with the EXTEND bit set to 0) to this register (I2CMRXCNT). */
5345 #define I2CMRXCNT_EXTEND_BBA (*(volatile unsigned long *) 0x42060220)
5346 #define I2CMRXCNT_EXTEND_MSK (0x1 << 8 )
5347 #define I2CMRXCNT_EXTEND (0x1 << 8 )
5348 #define I2CMRXCNT_EXTEND_DIS (0x0 << 8 ) /* DIS */
5349 #define I2CMRXCNT_EXTEND_EN (0x1 << 8 ) /* EN */
5350 
5351 /* I2CMRXCNT[COUNT] - Receive count. Program the number of bytes required minus one to this register. If just one byte is required write 0 to this register. If greater than 256 bytes are required, then use EXTEND. */
5352 #define I2CMRXCNT_COUNT_MSK (0xFF << 0 )
5353 
5354 /* Reset Value for I2CMCRXCNT*/
5355 #define I2CMCRXCNT_RVAL 0x0
5356 
5357 /* I2CMCRXCNT[VALUE] - Current receive count. This register gives the total number of bytes received so far. If 256 bytes are requested, then this register reads 0 when the transaction has completed. */
5358 #define I2CMCRXCNT_VALUE_MSK (0xFF << 0 )
5359 
5360 /* Reset Value for I2CADR0*/
5361 #define I2CADR0_RVAL 0x0
5362 
5363 /* I2CADR0[VALUE] - Address byte. If a 7-bit address is required, then I2CADR0[7:1] is programmed with the address and I2CADR0[0] is programmed with the direction (read or write). If a 10-bit address is required then I2CADR0[7:3] is programmed with '11110', I2CADR0[2:1] is programmed with the two MSBs of the address, and, again, I2CADR0[0] is programmed with the direction bit (read or write). */
5364 #define I2CADR0_VALUE_MSK (0xFF << 0 )
5365 
5366 /* Reset Value for I2CADR1*/
5367 #define I2CADR1_RVAL 0x0
5368 
5369 /* I2CADR1[VALUE] - Address byte. This register is only required when addressing a slave with 10-bit addressing. I2CADR1[7:0] is programmed with the lower eight bits of the address. */
5370 #define I2CADR1_VALUE_MSK (0xFF << 0 )
5371 
5372 /* Reset Value for I2CDIV*/
5373 #define I2CDIV_RVAL 0x1F1F
5374 
5375 /* I2CDIV[HIGH] - Serial clock high time. This register controls the clock high time. See the serial clock generation section for more details. */
5376 #define I2CDIV_HIGH_MSK (0xFF << 8 )
5377 
5378 /* I2CDIV[LOW] - Serial clock low time. This register controls the clock low time. See the serial clock generation section for more details. */
5379 #define I2CDIV_LOW_MSK (0xFF << 0 )
5380 
5381 /* Reset Value for I2CSCON*/
5382 #define I2CSCON_RVAL 0x0
5383 
5384 /* I2CSCON[TXDMA] - Enable slave Tx DMA request. */
5385 #define I2CSCON_TXDMA_BBA (*(volatile unsigned long *) 0x42060538)
5386 #define I2CSCON_TXDMA_MSK (0x1 << 14 )
5387 #define I2CSCON_TXDMA (0x1 << 14 )
5388 #define I2CSCON_TXDMA_DIS (0x0 << 14 ) /* DIS. Disable DMA mode. */
5389 #define I2CSCON_TXDMA_EN (0x1 << 14 ) /* EN. Enable I2C slave DMA requests. */
5390 
5391 /* I2CSCON[RXDMA] - Enable slave Rx DMA request. */
5392 #define I2CSCON_RXDMA_BBA (*(volatile unsigned long *) 0x42060534)
5393 #define I2CSCON_RXDMA_MSK (0x1 << 13 )
5394 #define I2CSCON_RXDMA (0x1 << 13 )
5395 #define I2CSCON_RXDMA_DIS (0x0 << 13 ) /* DIS. Disable DMA mode. */
5396 #define I2CSCON_RXDMA_EN (0x1 << 13 ) /* EN. Enable I2C slave DMA requests. */
5397 
5398 /* I2CSCON[IENREPST] - Repeated start interrupt enable. */
5399 #define I2CSCON_IENREPST_BBA (*(volatile unsigned long *) 0x42060530)
5400 #define I2CSCON_IENREPST_MSK (0x1 << 12 )
5401 #define I2CSCON_IENREPST (0x1 << 12 )
5402 #define I2CSCON_IENREPST_DIS (0x0 << 12 ) /* DIS. Disable an interrupt when the REPSTART status bit asserts. */
5403 #define I2CSCON_IENREPST_EN (0x1 << 12 ) /* EN. Generate an interrupt when the REPSTART status bit asserts. */
5404 
5405 /* I2CSCON[IENTX] - Transmit request interrupt enable. */
5406 #define I2CSCON_IENTX_BBA (*(volatile unsigned long *) 0x42060528)
5407 #define I2CSCON_IENTX_MSK (0x1 << 10 )
5408 #define I2CSCON_IENTX (0x1 << 10 )
5409 #define I2CSCON_IENTX_DIS (0x0 << 10 ) /* DIS. Disable transmit request interrupt. */
5410 #define I2CSCON_IENTX_EN (0x1 << 10 ) /* EN. Enable transmit request interrupt. */
5411 
5412 /* I2CSCON[IENRX] - Receive request interrupt enable. */
5413 #define I2CSCON_IENRX_BBA (*(volatile unsigned long *) 0x42060524)
5414 #define I2CSCON_IENRX_MSK (0x1 << 9 )
5415 #define I2CSCON_IENRX (0x1 << 9 )
5416 #define I2CSCON_IENRX_DIS (0x0 << 9 ) /* DIS. Disable receive request interrupt. */
5417 #define I2CSCON_IENRX_EN (0x1 << 9 ) /* EN. Enable receive request interrupt. */
5418 
5419 /* I2CSCON[IENSTOP] - Stop condition detected interrupt enable. */
5420 #define I2CSCON_IENSTOP_BBA (*(volatile unsigned long *) 0x42060520)
5421 #define I2CSCON_IENSTOP_MSK (0x1 << 8 )
5422 #define I2CSCON_IENSTOP (0x1 << 8 )
5423 #define I2CSCON_IENSTOP_DIS (0x0 << 8 ) /* DIS. Disable stop condition detect interrupt. */
5424 #define I2CSCON_IENSTOP_EN (0x1 << 8 ) /* EN. Enable stop condition detect interrupt. Enables STOP (I2CSSTA[10]) to generate an interrupt */
5425 
5426 /* I2CSCON[NACK] - NACK next communication. */
5427 #define I2CSCON_NACK_BBA (*(volatile unsigned long *) 0x4206051C)
5428 #define I2CSCON_NACK_MSK (0x1 << 7 )
5429 #define I2CSCON_NACK (0x1 << 7 )
5430 #define I2CSCON_NACK_DIS (0x0 << 7 ) /* DIS. Disable. */
5431 #define I2CSCON_NACK_EN (0x1 << 7 ) /* EN. Allow the next communication to be NACK'ed. This can be used for example if during a 24xx I2C serial eeprom style access, an attempt was made to write to a read only or nonexisting location in system memory. That is the indirect address in a 24xx I2C serial eeprom style write pointed to an unwritable memory location. */
5432 
5433 /* I2CSCON[STRETCH] - Stretch I2CSCL enable. */
5434 #define I2CSCON_STRETCH_BBA (*(volatile unsigned long *) 0x42060518)
5435 #define I2CSCON_STRETCH_MSK (0x1 << 6 )
5436 #define I2CSCON_STRETCH (0x1 << 6 )
5437 #define I2CSCON_STRETCH_DIS (0x0 << 6 ) /* DIS. Disable. */
5438 #define I2CSCON_STRETCH_EN (0x1 << 6 ) /* EN. Tell the device that, if I2CSCL is 0, hold it at 0. Or if I2CSCL is 1, then when it next goes to 0 hold it at 0. */
5439 
5440 /* I2CSCON[EARLYTXR] - Early transmit request mode. */
5441 #define I2CSCON_EARLYTXR_BBA (*(volatile unsigned long *) 0x42060514)
5442 #define I2CSCON_EARLYTXR_MSK (0x1 << 5 )
5443 #define I2CSCON_EARLYTXR (0x1 << 5 )
5444 #define I2CSCON_EARLYTXR_DIS (0x0 << 5 ) /* DIS. Disable. */
5445 #define I2CSCON_EARLYTXR_EN (0x1 << 5 ) /* EN. Enable a transmit request just after the positive edge of the direction bit (READ/WRITE) I2CSCL clock pulse. */
5446 
5447 /* I2CSCON[GCSB] - General call status bit clear. */
5448 #define I2CSCON_GCSB_BBA (*(volatile unsigned long *) 0x42060510)
5449 #define I2CSCON_GCSB_MSK (0x1 << 4 )
5450 #define I2CSCON_GCSB (0x1 << 4 )
5451 #define I2CSCON_GCSB_CLR (0x1 << 4 ) /* CLR. Clear the General Call status and General Call ID bits. The General Call status and General Call ID bits are not reset by anything other than a write to this bit or a full reset. */
5452 
5453 /* I2CSCON[HGC] - Hardware general call enable. */
5454 #define I2CSCON_HGC_BBA (*(volatile unsigned long *) 0x4206050C)
5455 #define I2CSCON_HGC_MSK (0x1 << 3 )
5456 #define I2CSCON_HGC (0x1 << 3 )
5457 #define I2CSCON_HGC_DIS (0x0 << 3 ) /* DIS. Disable. */
5458 #define I2CSCON_HGC_EN (0x1 << 3 ) /* EN. When this bit and the General Call enable bit are set the device after receiving a general call, Address 0x00 and a data byte checks the contents of the I2CALT against the receive shift register. If they match, the device has received a hardware general call. This is used if a device needs urgent attention from a master device without knowing which master it needs to turn to. This is a broadcast message to all master devices in the bus. The device that requires attention embeds its own address into the message. The LSB of the I2CALT register should always be written to a 1. */
5459 
5460 /* I2CSCON[GC] - General call enable. */
5461 #define I2CSCON_GC_BBA (*(volatile unsigned long *) 0x42060508)
5462 #define I2CSCON_GC_MSK (0x1 << 2 )
5463 #define I2CSCON_GC (0x1 << 2 )
5464 #define I2CSCON_GC_DIS (0x0 << 2 ) /* DIS. Disable. */
5465 #define I2CSCON_GC_EN (0x1 << 2 ) /* EN. Enable the I2C slave to ACK an I2C general call, Address 0x00 (write). */
5466 
5467 /* I2CSCON[ADR10] - Enable 10 bit addressing. */
5468 #define I2CSCON_ADR10_BBA (*(volatile unsigned long *) 0x42060504)
5469 #define I2CSCON_ADR10_MSK (0x1 << 1 )
5470 #define I2CSCON_ADR10 (0x1 << 1 )
5471 #define I2CSCON_ADR10_DIS (0x0 << 1 ) /* DIS. If this bit is clear, the slave can support four slave addresses, programmed in Registers I2CID0 to I2CID3. */
5472 #define I2CSCON_ADR10_EN (0x1 << 1 ) /* EN. Enable 10-bit addressing. One 10-bit address is supported by the slave and is stored in I2CID0 and I2CID1, where I2CID0 contains the first byte of the address and the upper five bits must be programmed to 11110' I2CID2 and I2CID3 can be programmed with 7-bit addresses at the same time. */
5473 
5474 /* I2CSCON[SLV] - Slave enable. */
5475 #define I2CSCON_SLV_BBA (*(volatile unsigned long *) 0x42060500)
5476 #define I2CSCON_SLV_MSK (0x1 << 0 )
5477 #define I2CSCON_SLV (0x1 << 0 )
5478 #define I2CSCON_SLV_DIS (0x0 << 0 ) /* DIS. Disable the slave and all slave state machine flops are held in reset. */
5479 #define I2CSCON_SLV_EN (0x1 << 0 ) /* EN. Enable slave. */
5480 
5481 /* Reset Value for I2CSSTA*/
5482 #define I2CSSTA_RVAL 0x1
5483 
5484 /* I2CSSTA[START] - Start and matching address. */
5485 #define I2CSSTA_START_BBA (*(volatile unsigned long *) 0x420605B8)
5486 #define I2CSSTA_START_MSK (0x1 << 14 )
5487 #define I2CSSTA_START (0x1 << 14 )
5488 #define I2CSSTA_START_CLR (0x0 << 14 ) /* CLR. Cleared on receipt of either a stop or start condition. */
5489 #define I2CSSTA_START_SET (0x1 << 14 ) /* SET. Set if a start is detected on I2CSCL/I2CSDA and one of the following is true: The device address is matched. A general call (GC = 0000_0000) code is received and GC is enabled. A high speed (HS = 0000_1XXX) code is received. A start byte (0000_0001) is received. */
5490 
5491 /* I2CSSTA[REPSTART] - Repeated start and matching address. (Can drive an interrupt). */
5492 #define I2CSSTA_REPSTART_BBA (*(volatile unsigned long *) 0x420605B4)
5493 #define I2CSSTA_REPSTART_MSK (0x1 << 13 )
5494 #define I2CSSTA_REPSTART (0x1 << 13 )
5495 #define I2CSSTA_REPSTART_CLR (0x0 << 13 ) /* CLR. Cleared when read or on receipt of a stop condition. */
5496 #define I2CSSTA_REPSTART_SET (0x1 << 13 ) /* SET. Set if START (I2CSSTA[14]) is already asserted and then a repeated start is detected. */
5497 
5498 /* I2CSSTA[IDMAT] - Device ID matched. */
5499 #define I2CSSTA_IDMAT_MSK (0x3 << 11 )
5500 
5501 /* I2CSSTA[STOP] - Stop after start and matching address. (Can drive an interrupt). */
5502 #define I2CSSTA_STOP_BBA (*(volatile unsigned long *) 0x420605A8)
5503 #define I2CSSTA_STOP_MSK (0x1 << 10 )
5504 #define I2CSSTA_STOP (0x1 << 10 )
5505 #define I2CSSTA_STOP_CLR (0x0 << 10 ) /* CLR. Cleared by a read of the status register. */
5506 #define I2CSSTA_STOP_SET (0x1 << 10 ) /* SET. Set if the slave device received a stop condition after a previous start condition and a matching address. */
5507 
5508 /* I2CSSTA[GCID] - General call ID. Cleared when the GCSBCLR (I2CSCON[4]) is written to 1. These status bits are not cleared by a general call reset. */
5509 #define I2CSSTA_GCID_MSK (0x3 << 8 )
5510 
5511 /* I2CSSTA[GCINT] - General call interrupt. (Always drives an interrupt). */
5512 #define I2CSSTA_GCINT_BBA (*(volatile unsigned long *) 0x4206059C)
5513 #define I2CSSTA_GCINT_MSK (0x1 << 7 )
5514 #define I2CSSTA_GCINT (0x1 << 7 )
5515 #define I2CSSTA_GCINT_CLR (0x0 << 7 ) /* CLR. To clear this bit, write 1 to the I2CSCON[4]. If it was a general call reset, all registers are at their default values. If it was a hardware general call, the Rx FIFO holds the second byte of the general call and this can be compared with the ALT register. */
5516 #define I2CSSTA_GCINT_SET (0x1 << 7 ) /* SET. Set if the slave device receives a general call of any type. */
5517 
5518 /* I2CSSTA[BUSY] - Slave busy. */
5519 #define I2CSSTA_BUSY_BBA (*(volatile unsigned long *) 0x42060598)
5520 #define I2CSSTA_BUSY_MSK (0x1 << 6 )
5521 #define I2CSSTA_BUSY (0x1 << 6 )
5522 #define I2CSSTA_BUSY_CLR (0x0 << 6 ) /* CLR. Cleared by hardware on any of the following conditions: The address does not match an ID register, the slave device receives a I2C stop condition or if a repeated start address doesn’t match. */
5523 #define I2CSSTA_BUSY_SET (0x1 << 6 ) /* SET. Set if the slave device receives an I2C start condition. */
5524 
5525 /* I2CSSTA[NOACK] - NACK generated by the slave. */
5526 #define I2CSSTA_NOACK_BBA (*(volatile unsigned long *) 0x42060594)
5527 #define I2CSSTA_NOACK_MSK (0x1 << 5 )
5528 #define I2CSSTA_NOACK (0x1 << 5 )
5529 #define I2CSSTA_NOACK_CLR (0x0 << 5 ) /* CLR. Cleared on a read of the I2CSSTA register. */
5530 #define I2CSSTA_NOACK_SET (0x1 << 5 ) /* SET. Set to indicate that the slave responded to its device address with a NACK. Set under any of the following conditions: If there was no data to transmit and sequence was a slave read, the device address is NACK'ed or if the NACK bit was set in the slave control register and the device was addressed. */
5531 
5532 /* I2CSSTA[RXOF] - Receive FIFO overflow. */
5533 #define I2CSSTA_RXOF_BBA (*(volatile unsigned long *) 0x42060590)
5534 #define I2CSSTA_RXOF_MSK (0x1 << 4 )
5535 #define I2CSSTA_RXOF (0x1 << 4 )
5536 #define I2CSSTA_RXOF_CLR (0x0 << 4 ) /* CLR. Cleared. */
5537 #define I2CSSTA_RXOF_SET (0x1 << 4 ) /* SET. Set when a byte is written to the receive FIFO when the FIFO is already full. */
5538 
5539 /* I2CSSTA[RXREQ] - Receive request. (Can drive an interrupt). */
5540 #define I2CSSTA_RXREQ_BBA (*(volatile unsigned long *) 0x4206058C)
5541 #define I2CSSTA_RXREQ_MSK (0x1 << 3 )
5542 #define I2CSSTA_RXREQ (0x1 << 3 )
5543 #define I2CSSTA_RXREQ_CLR (0x0 << 3 ) /* CLR. Cleared when the receive FIFO is read or flushed. */
5544 #define I2CSSTA_RXREQ_SET (0x1 << 3 ) /* SET. Set when the receive FIFO is not empty. Set on the falling edge of the I2CSCL clock pulse that clocks in the last data bit of a byte. */
5545 
5546 /* I2CSSTA[TXREQ] - Transmit request. (Can drive an interrupt). */
5547 #define I2CSSTA_TXREQ_BBA (*(volatile unsigned long *) 0x42060588)
5548 #define I2CSSTA_TXREQ_MSK (0x1 << 2 )
5549 #define I2CSSTA_TXREQ (0x1 << 2 )
5550 #define I2CSSTA_TXREQ_CLR (0x0 << 2 ) /* CLR. This bit is cleared on a read of the I2CSSTA register. */
5551 #define I2CSSTA_TXREQ_SET (0x1 << 2 ) /* SET. If EARLYTXR = 0, TXREQ is set when the direction bit for a transfer is received high. Thereafter, as long as the transmit FIFO is not full, this bit remains asserted. Initially, it is asserted on the negative edge of the SCL pulse that clocks in the direction bit (if the device address matched also). If EARLYTXR = 1, TXREQ is set when the direction bit for a transfer is received high. Thereafter, as long as the transmit FIFO is not full, this bit will remain asserted. Initially, it is asserted after the positive edge of the SCL pulse that clocks in the direction bit (if the device address matched also). */
5552 
5553 /* I2CSSTA[TXUR] - Transmit FIFO underflow. */
5554 #define I2CSSTA_TXUR_BBA (*(volatile unsigned long *) 0x42060584)
5555 #define I2CSSTA_TXUR_MSK (0x1 << 1 )
5556 #define I2CSSTA_TXUR (0x1 << 1 )
5557 #define I2CSSTA_TXUR_CLR (0x0 << 1 ) /* CLR. Cleared. */
5558 #define I2CSSTA_TXUR_SET (0x1 << 1 ) /* SET. Set to 1 if a master requests data from the device and the Tx FIFO is empty for the rising edge of SCL. */
5559 
5560 /* I2CSSTA[TXFSEREQ] - Tx FIFO status. */
5561 #define I2CSSTA_TXFSEREQ_BBA (*(volatile unsigned long *) 0x42060580)
5562 #define I2CSSTA_TXFSEREQ_MSK (0x1 << 0 )
5563 #define I2CSSTA_TXFSEREQ (0x1 << 0 )
5564 #define I2CSSTA_TXFSEREQ_CLR (0x0 << 0 ) /* CLR. Cleared. */
5565 #define I2CSSTA_TXFSEREQ_SET (0x1 << 0 ) /* SET. Set whenever the slave Tx FIFO is empty. */
5566 
5567 /* Reset Value for I2CSRX*/
5568 #define I2CSRX_RVAL 0x0
5569 
5570 /* I2CSRX[VALUE] - Receive register. */
5571 #define I2CSRX_VALUE_MSK (0xFF << 0 )
5572 
5573 /* Reset Value for I2CSTX*/
5574 #define I2CSTX_RVAL 0x0
5575 
5576 /* I2CSTX[VALUE] - Transmit register. */
5577 #define I2CSTX_VALUE_MSK (0xFF << 0 )
5578 
5579 /* Reset Value for I2CALT*/
5580 #define I2CALT_RVAL 0x0
5581 
5582 /* I2CALT[VALUE] - ALT register.This register is used in conjunction with HGC (I2CSCON[3]) to match a master generating a hardware general call. It is used in the case where a master device cannot be programmed with a slave’s address and, instead, the slave must recognize the master’s address. */
5583 #define I2CALT_VALUE_MSK (0xFF << 0 )
5584 
5585 /* Reset Value for I2CID0*/
5586 #define I2CID0_RVAL 0x0
5587 
5588 /* I2CID0[VALUE] - Slave ID. */
5589 #define I2CID0_VALUE_MSK (0xFF << 0 )
5590 
5591 /* Reset Value for I2CID1*/
5592 #define I2CID1_RVAL 0x0
5593 
5594 /* I2CID1[VALUE] - Slave ID. */
5595 #define I2CID1_VALUE_MSK (0xFF << 0 )
5596 
5597 /* Reset Value for I2CID2*/
5598 #define I2CID2_RVAL 0x0
5599 
5600 /* I2CID2[VALUE] - Slave ID. */
5601 #define I2CID2_VALUE_MSK (0xFF << 0 )
5602 
5603 /* Reset Value for I2CID3*/
5604 #define I2CID3_RVAL 0x0
5605 
5606 /* I2CID3[VALUE] - Slave ID. */
5607 #define I2CID3_VALUE_MSK (0xFF << 0 )
5608 
5609 /* Reset Value for I2CFSTA*/
5610 #define I2CFSTA_RVAL 0x0
5611 
5612 /* I2CFSTA[MFLUSH] - Master Transmit FIFO Flush. */
5613 #define I2CFSTA_MFLUSH_BBA (*(volatile unsigned long *) 0x420609A4)
5614 #define I2CFSTA_MFLUSH_MSK (0x1 << 9 )
5615 #define I2CFSTA_MFLUSH (0x1 << 9 )
5616 #define I2CFSTA_MFLUSH_DIS (0x0 << 9 ) /* DIS. For normal FIFO operation. */
5617 #define I2CFSTA_MFLUSH_EN (0x1 << 9 ) /* EN. FIFO flush enabled, to keep the FIFO empty. */
5618 
5619 /* I2CFSTA[SFLUSH] - Slave Transmit FIFO Flush. */
5620 #define I2CFSTA_SFLUSH_BBA (*(volatile unsigned long *) 0x420609A0)
5621 #define I2CFSTA_SFLUSH_MSK (0x1 << 8 )
5622 #define I2CFSTA_SFLUSH (0x1 << 8 )
5623 #define I2CFSTA_SFLUSH_DIS (0x0 << 8 ) /* DIS. For normal FIFO operation. */
5624 #define I2CFSTA_SFLUSH_EN (0x1 << 8 ) /* EN. FIFO flush enabled, to keep the FIFO empty. */
5625 
5626 /* I2CFSTA[MRXFSTA] - Master Receive FIFO status. */
5627 #define I2CFSTA_MRXFSTA_MSK (0x3 << 6 )
5628 #define I2CFSTA_MRXFSTA_EMPTY (0x0 << 6 ) /* EMPTY */
5629 #define I2CFSTA_MRXFSTA_ONEBYTE (0x1 << 6 ) /* ONEBYTE */
5630 #define I2CFSTA_MRXFSTA_TWOBYTES (0x2 << 6 ) /* TWOBYTES */
5631 
5632 /* I2CFSTA[MTXFSTA] - Master Transmit FIFO status. */
5633 #define I2CFSTA_MTXFSTA_MSK (0x3 << 4 )
5634 #define I2CFSTA_MTXFSTA_EMPTY (0x0 << 4 ) /* EMPTY */
5635 #define I2CFSTA_MTXFSTA_ONEBYTE (0x1 << 4 ) /* ONEBYTE */
5636 #define I2CFSTA_MTXFSTA_TWOBYTES (0x2 << 4 ) /* TWOBYTES */
5637 
5638 /* I2CFSTA[SRXFSTA] - Slave Receive FIFO status. */
5639 #define I2CFSTA_SRXFSTA_MSK (0x3 << 2 )
5640 #define I2CFSTA_SRXFSTA_EMPTY (0x0 << 2 ) /* EMPTY */
5641 #define I2CFSTA_SRXFSTA_ONEBYTE (0x1 << 2 ) /* ONEBYTE */
5642 #define I2CFSTA_SRXFSTA_TWOBYTES (0x2 << 2 ) /* TWOBYTES */
5643 
5644 /* I2CFSTA[STXFSTA] - Slave Transmit FIFO status. */
5645 #define I2CFSTA_STXFSTA_MSK (0x3 << 0 )
5646 #define I2CFSTA_STXFSTA_EMPTY (0x0 << 0 ) /* EMPTY */
5647 #define I2CFSTA_STXFSTA_ONEBYTE (0x1 << 0 ) /* ONEBYTE */
5648 #define I2CFSTA_STXFSTA_TWOBYTES (0x2 << 0 ) /* TWOBYTES */
5649 // ------------------------------------------------------------------------------------------------
5650 // ----- INTERRUPT -----
5651 // ------------------------------------------------------------------------------------------------
5652 
5653 
5654 /**
5655  * @brief Interrupts (pADI_INTERRUPT)
5656  */
5657 
5658 #if (__NO_MMR_STRUCTS__==0)
5659 typedef struct { /*!< pADI_INTERRUPT Structure */
5660  __IO uint16_t EI0CFG; /*!< External Interrupt Configuration Register 0 */
5661  __I uint16_t RESERVED0;
5662  __IO uint16_t EI1CFG; /*!< External Interrupt Configuration Register 1 */
5663  __I uint16_t RESERVED1;
5664  __IO uint16_t EI2CFG; /*!< External Interrupt Configuration Register 2 */
5665  __I uint16_t RESERVED2[3];
5666  __IO uint16_t EICLR; /*!< External Interrupts Clear Register */
5667  __I uint16_t RESERVED3;
5668  __IO uint8_t NMICLR; /*!< NMI Clear Register */
5670 #else // (__NO_MMR_STRUCTS__==0)
5671 #define EI0CFG (*(volatile unsigned short int *) 0x40002420)
5672 #define EI1CFG (*(volatile unsigned short int *) 0x40002424)
5673 #define EI2CFG (*(volatile unsigned short int *) 0x40002428)
5674 #define EICLR (*(volatile unsigned short int *) 0x40002430)
5675 #define NMICLR (*(volatile unsigned char *) 0x40002434)
5676 #endif // (__NO_MMR_STRUCTS__==0)
5677 
5678 /* Reset Value for EI0CFG*/
5679 #define EI0CFG_RVAL 0x0
5680 
5681 /* EI0CFG[IRQ3EN] - External interrupt 3 enable bit. */
5682 #define EI0CFG_IRQ3EN_BBA (*(volatile unsigned long *) 0x4204843C)
5683 #define EI0CFG_IRQ3EN_MSK (0x1 << 15 )
5684 #define EI0CFG_IRQ3EN (0x1 << 15 )
5685 #define EI0CFG_IRQ3EN_DIS (0x0 << 15 ) /* DIS. External interrupt 3 disabled. */
5686 #define EI0CFG_IRQ3EN_EN (0x1 << 15 ) /* EN. External Interrupt 3 enabled. */
5687 
5688 /* EI0CFG[IRQ3MDE] - External interrupt 3 detection mode. */
5689 #define EI0CFG_IRQ3MDE_MSK (0x7 << 12 )
5690 #define EI0CFG_IRQ3MDE_RISE (0x0 << 12 ) /* RISE. Rising edge. */
5691 #define EI0CFG_IRQ3MDE_FALL (0x1 << 12 ) /* FALL. Falling edge. */
5692 #define EI0CFG_IRQ3MDE_RISEORFALL (0x2 << 12 ) /* RISEORFALL. Rising or falling edge. */
5693 #define EI0CFG_IRQ3MDE_HIGHLEVEL (0x3 << 12 ) /* HIGHLEVEL. High level. */
5694 #define EI0CFG_IRQ3MDE_LOWLEVEL (0x4 << 12 ) /* LOWLEVEL. Low level. */
5695 
5696 /* EI0CFG[IRQ2EN] - External interrupt 2 enable bit. */
5697 #define EI0CFG_IRQ2EN_BBA (*(volatile unsigned long *) 0x4204842C)
5698 #define EI0CFG_IRQ2EN_MSK (0x1 << 11 )
5699 #define EI0CFG_IRQ2EN (0x1 << 11 )
5700 #define EI0CFG_IRQ2EN_DIS (0x0 << 11 ) /* DIS. External interrupt 2 disabled. */
5701 #define EI0CFG_IRQ2EN_EN (0x1 << 11 ) /* EN. External Interrupt 2 enabled. */
5702 
5703 /* EI0CFG[IRQ2MDE] - External interrupt 2 detection mode. */
5704 #define EI0CFG_IRQ2MDE_MSK (0x7 << 8 )
5705 #define EI0CFG_IRQ2MDE_RISE (0x0 << 8 ) /* RISE. Rising edge. */
5706 #define EI0CFG_IRQ2MDE_FALL (0x1 << 8 ) /* FALL. Falling edge. */
5707 #define EI0CFG_IRQ2MDE_RISEORFALL (0x2 << 8 ) /* RISEORFALL. Rising or falling edge. */
5708 #define EI0CFG_IRQ2MDE_HIGHLEVEL (0x3 << 8 ) /* HIGHLEVEL. High level. */
5709 #define EI0CFG_IRQ2MDE_LOWLEVEL (0x4 << 8 ) /* LOWLEVEL. Low level. */
5710 
5711 /* EI0CFG[IRQ1EN] - External interrupt 1 enable bit. */
5712 #define EI0CFG_IRQ1EN_BBA (*(volatile unsigned long *) 0x4204841C)
5713 #define EI0CFG_IRQ1EN_MSK (0x1 << 7 )
5714 #define EI0CFG_IRQ1EN (0x1 << 7 )
5715 #define EI0CFG_IRQ1EN_DIS (0x0 << 7 ) /* DIS. External interrupt 1 disabled. */
5716 #define EI0CFG_IRQ1EN_EN (0x1 << 7 ) /* EN. External Interrupt 1 enabled. */
5717 
5718 /* EI0CFG[IRQ1MDE] - External interrupt 1 detection mode. */
5719 #define EI0CFG_IRQ1MDE_MSK (0x7 << 4 )
5720 #define EI0CFG_IRQ1MDE_RISE (0x0 << 4 ) /* RISE. Rising edge. */
5721 #define EI0CFG_IRQ1MDE_FALL (0x1 << 4 ) /* FALL. Falling edge. */
5722 #define EI0CFG_IRQ1MDE_RISEORFALL (0x2 << 4 ) /* RISEORFALL. Rising or falling edge. */
5723 #define EI0CFG_IRQ1MDE_HIGHLEVEL (0x3 << 4 ) /* HIGHLEVEL. High level. */
5724 #define EI0CFG_IRQ1MDE_LOWLEVEL (0x4 << 4 ) /* LOWLEVEL. Low level. */
5725 
5726 /* EI0CFG[IRQ0EN] - RF transceiver clock IRQ enable bit. */
5727 #define EI0CFG_IRQ0EN_BBA (*(volatile unsigned long *) 0x4204840C)
5728 #define EI0CFG_IRQ0EN_MSK (0x1 << 3 )
5729 #define EI0CFG_IRQ0EN (0x1 << 3 )
5730 #define EI0CFG_IRQ0EN_DIS (0x0 << 3 ) /* DIS. RF transceiver clock IRQ disabled. */
5731 #define EI0CFG_IRQ0EN_EN (0x1 << 3 ) /* EN. RF transceiver clock IRQ enabled. */
5732 
5733 /* EI0CFG[IRQ0MDE] - RF transceiver clock detection mode. */
5734 #define EI0CFG_IRQ0MDE_MSK (0x7 << 0 )
5735 #define EI0CFG_IRQ0MDE_RISE (0x0 << 0 ) /* RISE. Rising edge. */
5736 #define EI0CFG_IRQ0MDE_FALL (0x1 << 0 ) /* FALL. Falling edge. */
5737 #define EI0CFG_IRQ0MDE_RISEORFALL (0x2 << 0 ) /* RISEORFALL. Rising or falling edge. */
5738 #define EI0CFG_IRQ0MDE_HIGHLEVEL (0x3 << 0 ) /* HIGHLEVEL. High level. */
5739 #define EI0CFG_IRQ0MDE_LOWLEVEL (0x4 << 0 ) /* LOWLEVEL. Low level. */
5740 
5741 /* Reset Value for EI1CFG*/
5742 #define EI1CFG_RVAL 0x0
5743 
5744 /* EI1CFG[IRQ7EN] - External interrupt 7 enable bit. */
5745 #define EI1CFG_IRQ7EN_BBA (*(volatile unsigned long *) 0x420484BC)
5746 #define EI1CFG_IRQ7EN_MSK (0x1 << 15 )
5747 #define EI1CFG_IRQ7EN (0x1 << 15 )
5748 #define EI1CFG_IRQ7EN_DIS (0x0 << 15 ) /* DIS. External interrupt 7 disabled. */
5749 #define EI1CFG_IRQ7EN_EN (0x1 << 15 ) /* EN. External interrupt 7 enabled. */
5750 
5751 /* EI1CFG[IRQ7MDE] - External interrupt 7 detection mode. */
5752 #define EI1CFG_IRQ7MDE_MSK (0x7 << 12 )
5753 #define EI1CFG_IRQ7MDE_RISE (0x0 << 12 ) /* RISE. Rising edge. */
5754 #define EI1CFG_IRQ7MDE_FALL (0x1 << 12 ) /* FALL. Falling edge. */
5755 #define EI1CFG_IRQ7MDE_RISEORFALL (0x2 << 12 ) /* RISEORFALL. Rising or falling edge. */
5756 #define EI1CFG_IRQ7MDE_HIGHLEVEL (0x3 << 12 ) /* HIGHLEVEL. High level. */
5757 #define EI1CFG_IRQ7MDE_LOWLEVEL (0x4 << 12 ) /* LOWLEVEL. Low level. */
5758 
5759 /* EI1CFG[IRQ6EN] - External interrupt 6 enable bit. */
5760 #define EI1CFG_IRQ6EN_BBA (*(volatile unsigned long *) 0x420484AC)
5761 #define EI1CFG_IRQ6EN_MSK (0x1 << 11 )
5762 #define EI1CFG_IRQ6EN (0x1 << 11 )
5763 #define EI1CFG_IRQ6EN_DIS (0x0 << 11 ) /* DIS. External interrupt 6 disabled. */
5764 #define EI1CFG_IRQ6EN_EN (0x1 << 11 ) /* EN. External Interrupt 6 enabled. */
5765 
5766 /* EI1CFG[IRQ6MDE] - External interrupt 6 detection mode. */
5767 #define EI1CFG_IRQ6MDE_MSK (0x7 << 8 )
5768 #define EI1CFG_IRQ6MDE_RISE (0x0 << 8 ) /* RISE. Rising edge. */
5769 #define EI1CFG_IRQ6MDE_FALL (0x1 << 8 ) /* FALL. Falling edge. */
5770 #define EI1CFG_IRQ6MDE_RISEORFALL (0x2 << 8 ) /* RISEORFALL. Rising or falling edge. */
5771 #define EI1CFG_IRQ6MDE_HIGHLEVEL (0x3 << 8 ) /* HIGHLEVEL. High level. */
5772 #define EI1CFG_IRQ6MDE_LOWLEVEL (0x4 << 8 ) /* LOWLEVEL. Low Level. */
5773 
5774 /* EI1CFG[IRQ5EN] - External interrupt 5 enable bit. */
5775 #define EI1CFG_IRQ5EN_BBA (*(volatile unsigned long *) 0x4204849C)
5776 #define EI1CFG_IRQ5EN_MSK (0x1 << 7 )
5777 #define EI1CFG_IRQ5EN (0x1 << 7 )
5778 #define EI1CFG_IRQ5EN_DIS (0x0 << 7 ) /* DIS. External interrupt 5 disabled. */
5779 #define EI1CFG_IRQ5EN_EN (0x1 << 7 ) /* EN. External Interrupt 5 enabled. */
5780 
5781 /* EI1CFG[IRQ5MDE] - External interrupt 5 detection mode. */
5782 #define EI1CFG_IRQ5MDE_MSK (0x7 << 4 )
5783 #define EI1CFG_IRQ5MDE_RISE (0x0 << 4 ) /* RISE. Rising edge. */
5784 #define EI1CFG_IRQ5MDE_FALL (0x1 << 4 ) /* FALL. Falling edge. */
5785 #define EI1CFG_IRQ5MDE_RISEORFALL (0x2 << 4 ) /* RISEORFALL. Rising or falling edge. */
5786 #define EI1CFG_IRQ5MDE_HIGHLEVEL (0x3 << 4 ) /* HIGHLEVEL. High level. */
5787 #define EI1CFG_IRQ5MDE_LOWLEVEL (0x4 << 4 ) /* LOWLEVEL. Low Level. */
5788 
5789 /* EI1CFG[IRQ4EN] - External interrupt 4 enable bit. */
5790 #define EI1CFG_IRQ4EN_BBA (*(volatile unsigned long *) 0x4204848C)
5791 #define EI1CFG_IRQ4EN_MSK (0x1 << 3 )
5792 #define EI1CFG_IRQ4EN (0x1 << 3 )
5793 #define EI1CFG_IRQ4EN_DIS (0x0 << 3 ) /* DIS. External interrupt 4 disabled. */
5794 #define EI1CFG_IRQ4EN_EN (0x1 << 3 ) /* EN. External Interrupt 4 enabled. */
5795 
5796 /* EI1CFG[IRQ4MDE] - External interrupt 4 detection mode. */
5797 #define EI1CFG_IRQ4MDE_MSK (0x7 << 0 )
5798 #define EI1CFG_IRQ4MDE_RISE (0x0 << 0 ) /* RISE. Rising edge. */
5799 #define EI1CFG_IRQ4MDE_FALL (0x1 << 0 ) /* FALL. Falling edge. */
5800 #define EI1CFG_IRQ4MDE_RISEORFALL (0x2 << 0 ) /* RISEORFALL. Rising or falling edge. */
5801 #define EI1CFG_IRQ4MDE_HIGHLEVEL (0x3 << 0 ) /* HIGHLEVEL. High level. */
5802 #define EI1CFG_IRQ4MDE_LOWLEVEL (0x4 << 0 ) /* LOWLEVEL. Low Level. */
5803 
5804 /* Reset Value for EI2CFG*/
5805 #define EI2CFG_RVAL 0x0
5806 
5807 /* EI2CFG[IRQ8EN] - RF transceiver IRQ enable bit. */
5808 #define EI2CFG_IRQ8EN_BBA (*(volatile unsigned long *) 0x4204850C)
5809 #define EI2CFG_IRQ8EN_MSK (0x1 << 3 )
5810 #define EI2CFG_IRQ8EN (0x1 << 3 )
5811 #define EI2CFG_IRQ8EN_DIS (0x0 << 3 ) /* DIS. RF transceiver IRQ disabled. */
5812 #define EI2CFG_IRQ8EN_EN (0x1 << 3 ) /* EN. RF transceiver IRQ enabled. */
5813 
5814 /* EI2CFG[IRQ8MDE] - RF transceiver IRQ detection mode. */
5815 #define EI2CFG_IRQ8MDE_MSK (0x7 << 0 )
5816 #define EI2CFG_IRQ8MDE_RISE (0x0 << 0 ) /* RISE. Rising edge. */
5817 #define EI2CFG_IRQ8MDE_FALL (0x1 << 0 ) /* FALL. Falling edge. */
5818 #define EI2CFG_IRQ8MDE_RISEORFALL (0x2 << 0 ) /* RISEORFALL. Rising or falling edge. */
5819 #define EI2CFG_IRQ8MDE_HIGHLEVEL (0x3 << 0 ) /* HIGHLEVEL. High level. */
5820 #define EI2CFG_IRQ8MDE_LOWLEVEL (0x4 << 0 ) /* LOWLEVEL. Low level. */
5821 
5822 /* Reset Value for EICLR*/
5823 #define EICLR_RVAL 0x0
5824 
5825 /* EICLR[IRQ8] - External interrupt 8 (RF transceiver) clear bit. */
5826 #define EICLR_IRQ8_BBA (*(volatile unsigned long *) 0x42048620)
5827 #define EICLR_IRQ8_MSK (0x1 << 8 )
5828 #define EICLR_IRQ8 (0x1 << 8 )
5829 #define EICLR_IRQ8_CLR (0x1 << 8 ) /* CLR. Clear an internal interrupt flag. */
5830 
5831 /* EICLR[IRQ7] - External interrupt 7 clear bit. */
5832 #define EICLR_IRQ7_BBA (*(volatile unsigned long *) 0x4204861C)
5833 #define EICLR_IRQ7_MSK (0x1 << 7 )
5834 #define EICLR_IRQ7 (0x1 << 7 )
5835 #define EICLR_IRQ7_CLR (0x1 << 7 ) /* CLR. Clear an internal interrupt flag. */
5836 
5837 /* EICLR[IRQ6] - External interrupt 6 clear bit. */
5838 #define EICLR_IRQ6_BBA (*(volatile unsigned long *) 0x42048618)
5839 #define EICLR_IRQ6_MSK (0x1 << 6 )
5840 #define EICLR_IRQ6 (0x1 << 6 )
5841 #define EICLR_IRQ6_CLR (0x1 << 6 ) /* CLR. Clear an internal interrupt flag. */
5842 
5843 /* EICLR[IRQ5] - External interrupt 5 clear bit. */
5844 #define EICLR_IRQ5_BBA (*(volatile unsigned long *) 0x42048614)
5845 #define EICLR_IRQ5_MSK (0x1 << 5 )
5846 #define EICLR_IRQ5 (0x1 << 5 )
5847 #define EICLR_IRQ5_CLR (0x1 << 5 ) /* CLR. Clear an internal interrupt flag. */
5848 
5849 /* EICLR[IRQ4] - External interrupt 4 clear bit. */
5850 #define EICLR_IRQ4_BBA (*(volatile unsigned long *) 0x42048610)
5851 #define EICLR_IRQ4_MSK (0x1 << 4 )
5852 #define EICLR_IRQ4 (0x1 << 4 )
5853 #define EICLR_IRQ4_CLR (0x1 << 4 ) /* CLR. Clear an internal interrupt flag. */
5854 
5855 /* EICLR[IRQ3] - External interrupt 3 clear bit. */
5856 #define EICLR_IRQ3_BBA (*(volatile unsigned long *) 0x4204860C)
5857 #define EICLR_IRQ3_MSK (0x1 << 3 )
5858 #define EICLR_IRQ3 (0x1 << 3 )
5859 #define EICLR_IRQ3_CLR (0x1 << 3 ) /* CLR. Clear an internal interrupt flag. */
5860 
5861 /* EICLR[IRQ2] - External interrupt 2 clear bit. */
5862 #define EICLR_IRQ2_BBA (*(volatile unsigned long *) 0x42048608)
5863 #define EICLR_IRQ2_MSK (0x1 << 2 )
5864 #define EICLR_IRQ2 (0x1 << 2 )
5865 #define EICLR_IRQ2_CLR (0x1 << 2 ) /* CLR. Clear an internal interrupt flag. */
5866 
5867 /* EICLR[IRQ1] - External interrupt 1 clear bit. */
5868 #define EICLR_IRQ1_BBA (*(volatile unsigned long *) 0x42048604)
5869 #define EICLR_IRQ1_MSK (0x1 << 1 )
5870 #define EICLR_IRQ1 (0x1 << 1 )
5871 #define EICLR_IRQ1_CLR (0x1 << 1 ) /* CLR. Clear an internal interrupt flag. */
5872 
5873 /* EICLR[IRQ0] - External interrupt 0 clear bit. */
5874 #define EICLR_IRQ0_BBA (*(volatile unsigned long *) 0x42048600)
5875 #define EICLR_IRQ0_MSK (0x1 << 0 )
5876 #define EICLR_IRQ0 (0x1 << 0 )
5877 #define EICLR_IRQ0_CLR (0x1 << 0 ) /* CLR. Clear an internal interrupt flag. */
5878 
5879 /* Reset Value for NMICLR*/
5880 #define NMICLR_RVAL 0x0
5881 
5882 /* NMICLR[CLEAR] - NMI clear bit. */
5883 #define NMICLR_CLEAR_BBA (*(volatile unsigned long *) 0x42048680)
5884 #define NMICLR_CLEAR_MSK (0x1 << 0 )
5885 #define NMICLR_CLEAR (0x1 << 0 )
5886 #define NMICLR_CLEAR_EN (0x1 << 0 ) /* EN. Clear an internal interrupt flag when the NMI interrupt is set. */
5887 // ------------------------------------------------------------------------------------------------
5888 // ----- NVIC -----
5889 // ------------------------------------------------------------------------------------------------
5890 
5891 
5892 /**
5893  * @brief Nested Vectored Interrupt Controller (pADI_NVIC)
5894  */
5895 
5896 #if (__NO_MMR_STRUCTS__==0)
5897 #else // (__NO_MMR_STRUCTS__==0)
5898 #define ICTR (*(volatile unsigned long *) 0xE000E004)
5899 #define STCSR (*(volatile unsigned long *) 0xE000E010)
5900 #define STRVR (*(volatile unsigned long *) 0xE000E014)
5901 #define STCVR (*(volatile unsigned long *) 0xE000E018)
5902 #define STCR (*(volatile unsigned long *) 0xE000E01C)
5903 #define ISER0 (*(volatile unsigned long *) 0xE000E100)
5904 #define ISER1 (*(volatile unsigned long *) 0xE000E104)
5905 #define ICER0 (*(volatile unsigned long *) 0xE000E180)
5906 #define ICER1 (*(volatile unsigned long *) 0xE000E184)
5907 #define ISPR0 (*(volatile unsigned long *) 0xE000E200)
5908 #define ISPR1 (*(volatile unsigned long *) 0xE000E204)
5909 #define ICPR0 (*(volatile unsigned long *) 0xE000E280)
5910 #define ICPR1 (*(volatile unsigned long *) 0xE000E284)
5911 #define IABR0 (*(volatile unsigned long *) 0xE000E300)
5912 #define IABR1 (*(volatile unsigned long *) 0xE000E304)
5913 #define IPR0 (*(volatile unsigned long *) 0xE000E400)
5914 #define IPR1 (*(volatile unsigned long *) 0xE000E404)
5915 #define IPR2 (*(volatile unsigned long *) 0xE000E408)
5916 #define IPR3 (*(volatile unsigned long *) 0xE000E40C)
5917 #define IPR4 (*(volatile unsigned long *) 0xE000E410)
5918 #define IPR5 (*(volatile unsigned long *) 0xE000E414)
5919 #define IPR6 (*(volatile unsigned long *) 0xE000E418)
5920 #define IPR7 (*(volatile unsigned long *) 0xE000E41C)
5921 #define IPR8 (*(volatile unsigned long *) 0xE000E420)
5922 #define IPR9 (*(volatile unsigned long *) 0xE000E424)
5923 #define IPR10 (*(volatile unsigned long *) 0xE000E428)
5924 #define CPUID (*(volatile unsigned long *) 0xE000ED00)
5925 #define ICSR (*(volatile unsigned long *) 0xE000ED04)
5926 #define VTOR (*(volatile unsigned long *) 0xE000ED08)
5927 #define AIRCR (*(volatile unsigned long *) 0xE000ED0C)
5928 #define SCR (*(volatile unsigned long *) 0xE000ED10)
5929 #define CCR (*(volatile unsigned long *) 0xE000ED14)
5930 #define SHPR1 (*(volatile unsigned long *) 0xE000ED18)
5931 #define SHPR2 (*(volatile unsigned long *) 0xE000ED1C)
5932 #define SHPR3 (*(volatile unsigned long *) 0xE000ED20)
5933 #define SHCSR (*(volatile unsigned long *) 0xE000ED24)
5934 #define CFSR (*(volatile unsigned long *) 0xE000ED28)
5935 #define HFSR (*(volatile unsigned long *) 0xE000ED2C)
5936 #define MMFAR (*(volatile unsigned long *) 0xE000ED34)
5937 #define BFAR (*(volatile unsigned long *) 0xE000ED38)
5938 #define STIR (*(volatile unsigned long *) 0xE000EF00)
5939 #endif // (__NO_MMR_STRUCTS__==0)
5940 
5941 /* Reset Value for ICTR*/
5942 #define ICTR_RVAL 0x1
5943 
5944 /* ICTR[INTLINESNUM] - Total number of interrupt lines in groups of 32 */
5945 #define ICTR_INTLINESNUM_MSK (0xF << 0 )
5946 
5947 /* Reset Value for STCSR*/
5948 #define STCSR_RVAL 0x0
5949 
5950 /* STCSR[COUNTFLAG] - Returns 1 if timer counted to 0 since last time this register was read */
5951 #define STCSR_COUNTFLAG_MSK (0x1 << 16 )
5952 #define STCSR_COUNTFLAG (0x1 << 16 )
5953 #define STCSR_COUNTFLAG_DIS (0x0 << 16 ) /* DIS */
5954 #define STCSR_COUNTFLAG_EN (0x1 << 16 ) /* EN */
5955 
5956 /* STCSR[CLKSOURCE] - clock source used for SysTick */
5957 #define STCSR_CLKSOURCE_MSK (0x1 << 2 )
5958 #define STCSR_CLKSOURCE (0x1 << 2 )
5959 #define STCSR_CLKSOURCE_DIS (0x0 << 2 ) /* DIS */
5960 #define STCSR_CLKSOURCE_EN (0x1 << 2 ) /* EN */
5961 
5962 /* STCSR[TICKINT] - If 1, counting down to 0 will cause the SysTick exception to pended. */
5963 #define STCSR_TICKINT_MSK (0x1 << 1 )
5964 #define STCSR_TICKINT (0x1 << 1 )
5965 #define STCSR_TICKINT_DIS (0x0 << 1 ) /* DIS */
5966 #define STCSR_TICKINT_EN (0x1 << 1 ) /* EN */
5967 
5968 /* STCSR[ENABLE] - Enable bit */
5969 #define STCSR_ENABLE_MSK (0x1 << 0 )
5970 #define STCSR_ENABLE (0x1 << 0 )
5971 #define STCSR_ENABLE_DIS (0x0 << 0 ) /* DIS */
5972 #define STCSR_ENABLE_EN (0x1 << 0 ) /* EN */
5973 
5974 /* Reset Value for STRVR*/
5975 #define STRVR_RVAL 0x0
5976 
5977 /* STRVR[RELOAD] - Value to load into the Current Value register when the counter reaches 0 */
5978 #define STRVR_RELOAD_MSK (0xFFFFFF << 0 )
5979 
5980 /* Reset Value for STCVR*/
5981 #define STCVR_RVAL 0x0
5982 
5983 /* STCVR[CURRENT] - Current counter value */
5984 #define STCVR_CURRENT_MSK (0xFFFFFFFF << 0 )
5985 
5986 /* Reset Value for STCR*/
5987 #define STCR_RVAL 0x0
5988 
5989 /* STCR[NOREF] - If reads as 1, the Reference clock is not provided */
5990 #define STCR_NOREF_MSK (0x1 << 31 )
5991 #define STCR_NOREF (0x1 << 31 )
5992 #define STCR_NOREF_DIS (0x0 << 31 ) /* DIS */
5993 #define STCR_NOREF_EN (0x1 << 31 ) /* EN */
5994 
5995 /* STCR[SKEW] - If reads as 1, the calibration value for 10ms is inexact */
5996 #define STCR_SKEW_MSK (0x1 << 30 )
5997 #define STCR_SKEW (0x1 << 30 )
5998 #define STCR_SKEW_DIS (0x0 << 30 ) /* DIS */
5999 #define STCR_SKEW_EN (0x1 << 30 ) /* EN */
6000 
6001 /* STCR[TENMS] - An optional Reload value to be used for 10ms (100Hz) timing */
6002 #define STCR_TENMS_MSK (0xFFFFFF << 0 )
6003 
6004 /* Reset Value for ISER0*/
6005 #define ISER0_RVAL 0x0
6006 
6007 /* ISER0[DMAI2CMRX] - */
6008 #define ISER0_DMAI2CMRX_MSK (0x1 << 30 )
6009 #define ISER0_DMAI2CMRX (0x1 << 30 )
6010 #define ISER0_DMAI2CMRX_DIS (0x0 << 30 ) /* DIS */
6011 #define ISER0_DMAI2CMRX_EN (0x1 << 30 ) /* EN */
6012 
6013 /* ISER0[DMAI2CMTX] - */
6014 #define ISER0_DMAI2CMTX_MSK (0x1 << 29 )
6015 #define ISER0_DMAI2CMTX (0x1 << 29 )
6016 #define ISER0_DMAI2CMTX_DIS (0x0 << 29 ) /* DIS */
6017 #define ISER0_DMAI2CMTX_EN (0x1 << 29 ) /* EN */
6018 
6019 /* ISER0[DMAI2CSRX] - */
6020 #define ISER0_DMAI2CSRX_MSK (0x1 << 28 )
6021 #define ISER0_DMAI2CSRX (0x1 << 28 )
6022 #define ISER0_DMAI2CSRX_DIS (0x0 << 28 ) /* DIS */
6023 #define ISER0_DMAI2CSRX_EN (0x1 << 28 ) /* EN */
6024 
6025 /* ISER0[DMAI2CSTX] - */
6026 #define ISER0_DMAI2CSTX_MSK (0x1 << 27 )
6027 #define ISER0_DMAI2CSTX (0x1 << 27 )
6028 #define ISER0_DMAI2CSTX_DIS (0x0 << 27 ) /* DIS */
6029 #define ISER0_DMAI2CSTX_EN (0x1 << 27 ) /* EN */
6030 
6031 /* ISER0[DMAUARTRX] - */
6032 #define ISER0_DMAUARTRX_MSK (0x1 << 26 )
6033 #define ISER0_DMAUARTRX (0x1 << 26 )
6034 #define ISER0_DMAUARTRX_DIS (0x0 << 26 ) /* DIS */
6035 #define ISER0_DMAUARTRX_EN (0x1 << 26 ) /* EN */
6036 
6037 /* ISER0[DMAUARTTX] - */
6038 #define ISER0_DMAUARTTX_MSK (0x1 << 25 )
6039 #define ISER0_DMAUARTTX (0x1 << 25 )
6040 #define ISER0_DMAUARTTX_DIS (0x0 << 25 ) /* DIS */
6041 #define ISER0_DMAUARTTX_EN (0x1 << 25 ) /* EN */
6042 
6043 /* ISER0[DMASPI1RX] - */
6044 #define ISER0_DMASPI1RX_MSK (0x1 << 24 )
6045 #define ISER0_DMASPI1RX (0x1 << 24 )
6046 #define ISER0_DMASPI1RX_DIS (0x0 << 24 ) /* DIS */
6047 #define ISER0_DMASPI1RX_EN (0x1 << 24 ) /* EN */
6048 
6049 /* ISER0[DMASPI1TX] - */
6050 #define ISER0_DMASPI1TX_MSK (0x1 << 23 )
6051 #define ISER0_DMASPI1TX (0x1 << 23 )
6052 #define ISER0_DMASPI1TX_DIS (0x0 << 23 ) /* DIS */
6053 #define ISER0_DMASPI1TX_EN (0x1 << 23 ) /* EN */
6054 
6055 /* ISER0[DMAERROR] - */
6056 #define ISER0_DMAERROR_MSK (0x1 << 22 )
6057 #define ISER0_DMAERROR (0x1 << 22 )
6058 #define ISER0_DMAERROR_DIS (0x0 << 22 ) /* DIS */
6059 #define ISER0_DMAERROR_EN (0x1 << 22 ) /* EN */
6060 
6061 /* ISER0[I2CM] - */
6062 #define ISER0_I2CM_MSK (0x1 << 20 )
6063 #define ISER0_I2CM (0x1 << 20 )
6064 #define ISER0_I2CM_DIS (0x0 << 20 ) /* DIS */
6065 #define ISER0_I2CM_EN (0x1 << 20 ) /* EN */
6066 
6067 /* ISER0[I2CS] - */
6068 #define ISER0_I2CS_MSK (0x1 << 19 )
6069 #define ISER0_I2CS (0x1 << 19 )
6070 #define ISER0_I2CS_DIS (0x0 << 19 ) /* DIS */
6071 #define ISER0_I2CS_EN (0x1 << 19 ) /* EN */
6072 
6073 /* ISER0[SPI1] - */
6074 #define ISER0_SPI1_MSK (0x1 << 18 )
6075 #define ISER0_SPI1 (0x1 << 18 )
6076 #define ISER0_SPI1_DIS (0x0 << 18 ) /* DIS */
6077 #define ISER0_SPI1_EN (0x1 << 18 ) /* EN */
6078 
6079 /* ISER0[SPI0] - */
6080 #define ISER0_SPI0_MSK (0x1 << 17 )
6081 #define ISER0_SPI0 (0x1 << 17 )
6082 #define ISER0_SPI0_DIS (0x0 << 17 ) /* DIS */
6083 #define ISER0_SPI0_EN (0x1 << 17 ) /* EN */
6084 
6085 /* ISER0[UART] - */
6086 #define ISER0_UART_MSK (0x1 << 16 )
6087 #define ISER0_UART (0x1 << 16 )
6088 #define ISER0_UART_DIS (0x0 << 16 ) /* DIS */
6089 #define ISER0_UART_EN (0x1 << 16 ) /* EN */
6090 
6091 /* ISER0[FEE] - */
6092 #define ISER0_FEE_MSK (0x1 << 15 )
6093 #define ISER0_FEE (0x1 << 15 )
6094 #define ISER0_FEE_DIS (0x0 << 15 ) /* DIS */
6095 #define ISER0_FEE_EN (0x1 << 15 ) /* EN */
6096 
6097 /* ISER0[ADC] - */
6098 #define ISER0_ADC_MSK (0x1 << 14 )
6099 #define ISER0_ADC (0x1 << 14 )
6100 #define ISER0_ADC_DIS (0x0 << 14 ) /* DIS */
6101 #define ISER0_ADC_EN (0x1 << 14 ) /* EN */
6102 
6103 /* ISER0[T1] - */
6104 #define ISER0_T1_MSK (0x1 << 13 )
6105 #define ISER0_T1 (0x1 << 13 )
6106 #define ISER0_T1_DIS (0x0 << 13 ) /* DIS */
6107 #define ISER0_T1_EN (0x1 << 13 ) /* EN */
6108 
6109 /* ISER0[T0] - */
6110 #define ISER0_T0_MSK (0x1 << 12 )
6111 #define ISER0_T0 (0x1 << 12 )
6112 #define ISER0_T0_DIS (0x0 << 12 ) /* DIS */
6113 #define ISER0_T0_EN (0x1 << 12 ) /* EN */
6114 
6115 /* ISER0[T3] - */
6116 #define ISER0_T3_MSK (0x1 << 10 )
6117 #define ISER0_T3 (0x1 << 10 )
6118 #define ISER0_T3_DIS (0x0 << 10 ) /* DIS */
6119 #define ISER0_T3_EN (0x1 << 10 ) /* EN */
6120 
6121 /* ISER0[EXTINT8] - */
6122 #define ISER0_EXTINT8_MSK (0x1 << 9 )
6123 #define ISER0_EXTINT8 (0x1 << 9 )
6124 #define ISER0_EXTINT8_DIS (0x0 << 9 ) /* DIS */
6125 #define ISER0_EXTINT8_EN (0x1 << 9 ) /* EN */
6126 
6127 /* ISER0[EXTINT7] - */
6128 #define ISER0_EXTINT7_MSK (0x1 << 8 )
6129 #define ISER0_EXTINT7 (0x1 << 8 )
6130 #define ISER0_EXTINT7_DIS (0x0 << 8 ) /* DIS */
6131 #define ISER0_EXTINT7_EN (0x1 << 8 ) /* EN */
6132 
6133 /* ISER0[EXTINT6] - */
6134 #define ISER0_EXTINT6_MSK (0x1 << 7 )
6135 #define ISER0_EXTINT6 (0x1 << 7 )
6136 #define ISER0_EXTINT6_DIS (0x0 << 7 ) /* DIS */
6137 #define ISER0_EXTINT6_EN (0x1 << 7 ) /* EN */
6138 
6139 /* ISER0[EXTINT5] - */
6140 #define ISER0_EXTINT5_MSK (0x1 << 6 )
6141 #define ISER0_EXTINT5 (0x1 << 6 )
6142 #define ISER0_EXTINT5_DIS (0x0 << 6 ) /* DIS */
6143 #define ISER0_EXTINT5_EN (0x1 << 6 ) /* EN */
6144 
6145 /* ISER0[EXTINT4] - */
6146 #define ISER0_EXTINT4_MSK (0x1 << 5 )
6147 #define ISER0_EXTINT4 (0x1 << 5 )
6148 #define ISER0_EXTINT4_DIS (0x0 << 5 ) /* DIS */
6149 #define ISER0_EXTINT4_EN (0x1 << 5 ) /* EN */
6150 
6151 /* ISER0[EXTINT3] - */
6152 #define ISER0_EXTINT3_MSK (0x1 << 4 )
6153 #define ISER0_EXTINT3 (0x1 << 4 )
6154 #define ISER0_EXTINT3_DIS (0x0 << 4 ) /* DIS */
6155 #define ISER0_EXTINT3_EN (0x1 << 4 ) /* EN */
6156 
6157 /* ISER0[EXTINT2] - */
6158 #define ISER0_EXTINT2_MSK (0x1 << 3 )
6159 #define ISER0_EXTINT2 (0x1 << 3 )
6160 #define ISER0_EXTINT2_DIS (0x0 << 3 ) /* DIS */
6161 #define ISER0_EXTINT2_EN (0x1 << 3 ) /* EN */
6162 
6163 /* ISER0[EXTINT1] - */
6164 #define ISER0_EXTINT1_MSK (0x1 << 2 )
6165 #define ISER0_EXTINT1 (0x1 << 2 )
6166 #define ISER0_EXTINT1_DIS (0x0 << 2 ) /* DIS */
6167 #define ISER0_EXTINT1_EN (0x1 << 2 ) /* EN */
6168 
6169 /* ISER0[EXTINT0] - */
6170 #define ISER0_EXTINT0_MSK (0x1 << 1 )
6171 #define ISER0_EXTINT0 (0x1 << 1 )
6172 #define ISER0_EXTINT0_DIS (0x0 << 1 ) /* DIS */
6173 #define ISER0_EXTINT0_EN (0x1 << 1 ) /* EN */
6174 
6175 /* ISER0[T2] - */
6176 #define ISER0_T2_MSK (0x1 << 0 )
6177 #define ISER0_T2 (0x1 << 0 )
6178 #define ISER0_T2_DIS (0x0 << 0 ) /* DIS */
6179 #define ISER0_T2_EN (0x1 << 0 ) /* EN */
6180 
6181 /* Reset Value for ISER1*/
6182 #define ISER1_RVAL 0x0
6183 
6184 /* ISER1[PWM3] - */
6185 #define ISER1_PWM3_MSK (0x1 << 9 )
6186 #define ISER1_PWM3 (0x1 << 9 )
6187 #define ISER1_PWM3_DIS (0x0 << 9 ) /* DIS */
6188 #define ISER1_PWM3_EN (0x1 << 9 ) /* EN */
6189 
6190 /* ISER1[PWM2] - */
6191 #define ISER1_PWM2_MSK (0x1 << 8 )
6192 #define ISER1_PWM2 (0x1 << 8 )
6193 #define ISER1_PWM2_DIS (0x0 << 8 ) /* DIS */
6194 #define ISER1_PWM2_EN (0x1 << 8 ) /* EN */
6195 
6196 /* ISER1[PWM1] - */
6197 #define ISER1_PWM1_MSK (0x1 << 7 )
6198 #define ISER1_PWM1 (0x1 << 7 )
6199 #define ISER1_PWM1_DIS (0x0 << 7 ) /* DIS */
6200 #define ISER1_PWM1_EN (0x1 << 7 ) /* EN */
6201 
6202 /* ISER1[PWM0] - */
6203 #define ISER1_PWM0_MSK (0x1 << 6 )
6204 #define ISER1_PWM0 (0x1 << 6 )
6205 #define ISER1_PWM0_DIS (0x0 << 6 ) /* DIS */
6206 #define ISER1_PWM0_EN (0x1 << 6 ) /* EN */
6207 
6208 /* ISER1[PWMTRIP] - */
6209 #define ISER1_PWMTRIP_MSK (0x1 << 5 )
6210 #define ISER1_PWMTRIP (0x1 << 5 )
6211 #define ISER1_PWMTRIP_DIS (0x0 << 5 ) /* DIS */
6212 #define ISER1_PWMTRIP_EN (0x1 << 5 ) /* EN */
6213 
6214 /* ISER1[DMASPI0RX] - */
6215 #define ISER1_DMASPI0RX_MSK (0x1 << 4 )
6216 #define ISER1_DMASPI0RX (0x1 << 4 )
6217 #define ISER1_DMASPI0RX_DIS (0x0 << 4 ) /* DIS */
6218 #define ISER1_DMASPI0RX_EN (0x1 << 4 ) /* EN */
6219 
6220 /* ISER1[DMASPI0TX] - */
6221 #define ISER1_DMASPI0TX_MSK (0x1 << 3 )
6222 #define ISER1_DMASPI0TX (0x1 << 3 )
6223 #define ISER1_DMASPI0TX_DIS (0x0 << 3 ) /* DIS */
6224 #define ISER1_DMASPI0TX_EN (0x1 << 3 ) /* EN */
6225 
6226 /* ISER1[DMAADC] - */
6227 #define ISER1_DMAADC_MSK (0x1 << 2 )
6228 #define ISER1_DMAADC (0x1 << 2 )
6229 #define ISER1_DMAADC_DIS (0x0 << 2 ) /* DIS */
6230 #define ISER1_DMAADC_EN (0x1 << 2 ) /* EN */
6231 
6232 /* Reset Value for ICER0*/
6233 #define ICER0_RVAL 0x0
6234 
6235 /* ICER0[DMAI2CMRX] - */
6236 #define ICER0_DMAI2CMRX_MSK (0x1 << 30 )
6237 #define ICER0_DMAI2CMRX (0x1 << 30 )
6238 #define ICER0_DMAI2CMRX_DIS (0x0 << 30 ) /* DIS */
6239 #define ICER0_DMAI2CMRX_EN (0x1 << 30 ) /* EN */
6240 
6241 /* ICER0[DMAI2CMTX] - */
6242 #define ICER0_DMAI2CMTX_MSK (0x1 << 29 )
6243 #define ICER0_DMAI2CMTX (0x1 << 29 )
6244 #define ICER0_DMAI2CMTX_DIS (0x0 << 29 ) /* DIS */
6245 #define ICER0_DMAI2CMTX_EN (0x1 << 29 ) /* EN */
6246 
6247 /* ICER0[DMAI2CSRX] - */
6248 #define ICER0_DMAI2CSRX_MSK (0x1 << 28 )
6249 #define ICER0_DMAI2CSRX (0x1 << 28 )
6250 #define ICER0_DMAI2CSRX_DIS (0x0 << 28 ) /* DIS */
6251 #define ICER0_DMAI2CSRX_EN (0x1 << 28 ) /* EN */
6252 
6253 /* ICER0[DMAI2CSTX] - */
6254 #define ICER0_DMAI2CSTX_MSK (0x1 << 27 )
6255 #define ICER0_DMAI2CSTX (0x1 << 27 )
6256 #define ICER0_DMAI2CSTX_DIS (0x0 << 27 ) /* DIS */
6257 #define ICER0_DMAI2CSTX_EN (0x1 << 27 ) /* EN */
6258 
6259 /* ICER0[DMAUARTRX] - */
6260 #define ICER0_DMAUARTRX_MSK (0x1 << 26 )
6261 #define ICER0_DMAUARTRX (0x1 << 26 )
6262 #define ICER0_DMAUARTRX_DIS (0x0 << 26 ) /* DIS */
6263 #define ICER0_DMAUARTRX_EN (0x1 << 26 ) /* EN */
6264 
6265 /* ICER0[DMAUARTTX] - */
6266 #define ICER0_DMAUARTTX_MSK (0x1 << 25 )
6267 #define ICER0_DMAUARTTX (0x1 << 25 )
6268 #define ICER0_DMAUARTTX_DIS (0x0 << 25 ) /* DIS */
6269 #define ICER0_DMAUARTTX_EN (0x1 << 25 ) /* EN */
6270 
6271 /* ICER0[DMASPI1RX] - */
6272 #define ICER0_DMASPI1RX_MSK (0x1 << 24 )
6273 #define ICER0_DMASPI1RX (0x1 << 24 )
6274 #define ICER0_DMASPI1RX_DIS (0x0 << 24 ) /* DIS */
6275 #define ICER0_DMASPI1RX_EN (0x1 << 24 ) /* EN */
6276 
6277 /* ICER0[DMASPI1TX] - */
6278 #define ICER0_DMASPI1TX_MSK (0x1 << 23 )
6279 #define ICER0_DMASPI1TX (0x1 << 23 )
6280 #define ICER0_DMASPI1TX_DIS (0x0 << 23 ) /* DIS */
6281 #define ICER0_DMASPI1TX_EN (0x1 << 23 ) /* EN */
6282 
6283 /* ICER0[DMAERROR] - */
6284 #define ICER0_DMAERROR_MSK (0x1 << 22 )
6285 #define ICER0_DMAERROR (0x1 << 22 )
6286 #define ICER0_DMAERROR_DIS (0x0 << 22 ) /* DIS */
6287 #define ICER0_DMAERROR_EN (0x1 << 22 ) /* EN */
6288 
6289 /* ICER0[I2CM] - */
6290 #define ICER0_I2CM_MSK (0x1 << 20 )
6291 #define ICER0_I2CM (0x1 << 20 )
6292 #define ICER0_I2CM_DIS (0x0 << 20 ) /* DIS */
6293 #define ICER0_I2CM_EN (0x1 << 20 ) /* EN */
6294 
6295 /* ICER0[I2CS] - */
6296 #define ICER0_I2CS_MSK (0x1 << 19 )
6297 #define ICER0_I2CS (0x1 << 19 )
6298 #define ICER0_I2CS_DIS (0x0 << 19 ) /* DIS */
6299 #define ICER0_I2CS_EN (0x1 << 19 ) /* EN */
6300 
6301 /* ICER0[SPI1] - */
6302 #define ICER0_SPI1_MSK (0x1 << 18 )
6303 #define ICER0_SPI1 (0x1 << 18 )
6304 #define ICER0_SPI1_DIS (0x0 << 18 ) /* DIS */
6305 #define ICER0_SPI1_EN (0x1 << 18 ) /* EN */
6306 
6307 /* ICER0[SPI0] - */
6308 #define ICER0_SPI0_MSK (0x1 << 17 )
6309 #define ICER0_SPI0 (0x1 << 17 )
6310 #define ICER0_SPI0_DIS (0x0 << 17 ) /* DIS */
6311 #define ICER0_SPI0_EN (0x1 << 17 ) /* EN */
6312 
6313 /* ICER0[UART] - */
6314 #define ICER0_UART_MSK (0x1 << 16 )
6315 #define ICER0_UART (0x1 << 16 )
6316 #define ICER0_UART_DIS (0x0 << 16 ) /* DIS */
6317 #define ICER0_UART_EN (0x1 << 16 ) /* EN */
6318 
6319 /* ICER0[FEE] - */
6320 #define ICER0_FEE_MSK (0x1 << 15 )
6321 #define ICER0_FEE (0x1 << 15 )
6322 #define ICER0_FEE_DIS (0x0 << 15 ) /* DIS */
6323 #define ICER0_FEE_EN (0x1 << 15 ) /* EN */
6324 
6325 /* ICER0[ADC] - */
6326 #define ICER0_ADC_MSK (0x1 << 14 )
6327 #define ICER0_ADC (0x1 << 14 )
6328 #define ICER0_ADC_DIS (0x0 << 14 ) /* DIS */
6329 #define ICER0_ADC_EN (0x1 << 14 ) /* EN */
6330 
6331 /* ICER0[T1] - */
6332 #define ICER0_T1_MSK (0x1 << 13 )
6333 #define ICER0_T1 (0x1 << 13 )
6334 #define ICER0_T1_DIS (0x0 << 13 ) /* DIS */
6335 #define ICER0_T1_EN (0x1 << 13 ) /* EN */
6336 
6337 /* ICER0[T0] - */
6338 #define ICER0_T0_MSK (0x1 << 12 )
6339 #define ICER0_T0 (0x1 << 12 )
6340 #define ICER0_T0_DIS (0x0 << 12 ) /* DIS */
6341 #define ICER0_T0_EN (0x1 << 12 ) /* EN */
6342 
6343 /* ICER0[T3] - */
6344 #define ICER0_T3_MSK (0x1 << 10 )
6345 #define ICER0_T3 (0x1 << 10 )
6346 #define ICER0_T3_DIS (0x0 << 10 ) /* DIS */
6347 #define ICER0_T3_EN (0x1 << 10 ) /* EN */
6348 
6349 /* ICER0[EXTINT8] - */
6350 #define ICER0_EXTINT8_MSK (0x1 << 9 )
6351 #define ICER0_EXTINT8 (0x1 << 9 )
6352 #define ICER0_EXTINT8_DIS (0x0 << 9 ) /* DIS */
6353 #define ICER0_EXTINT8_EN (0x1 << 9 ) /* EN */
6354 
6355 /* ICER0[EXTINT7] - */
6356 #define ICER0_EXTINT7_MSK (0x1 << 8 )
6357 #define ICER0_EXTINT7 (0x1 << 8 )
6358 #define ICER0_EXTINT7_DIS (0x0 << 8 ) /* DIS */
6359 #define ICER0_EXTINT7_EN (0x1 << 8 ) /* EN */
6360 
6361 /* ICER0[EXTINT6] - */
6362 #define ICER0_EXTINT6_MSK (0x1 << 7 )
6363 #define ICER0_EXTINT6 (0x1 << 7 )
6364 #define ICER0_EXTINT6_DIS (0x0 << 7 ) /* DIS */
6365 #define ICER0_EXTINT6_EN (0x1 << 7 ) /* EN */
6366 
6367 /* ICER0[EXTINT5] - */
6368 #define ICER0_EXTINT5_MSK (0x1 << 6 )
6369 #define ICER0_EXTINT5 (0x1 << 6 )
6370 #define ICER0_EXTINT5_DIS (0x0 << 6 ) /* DIS */
6371 #define ICER0_EXTINT5_EN (0x1 << 6 ) /* EN */
6372 
6373 /* ICER0[EXTINT4] - */
6374 #define ICER0_EXTINT4_MSK (0x1 << 5 )
6375 #define ICER0_EXTINT4 (0x1 << 5 )
6376 #define ICER0_EXTINT4_DIS (0x0 << 5 ) /* DIS */
6377 #define ICER0_EXTINT4_EN (0x1 << 5 ) /* EN */
6378 
6379 /* ICER0[EXTINT3] - */
6380 #define ICER0_EXTINT3_MSK (0x1 << 4 )
6381 #define ICER0_EXTINT3 (0x1 << 4 )
6382 #define ICER0_EXTINT3_DIS (0x0 << 4 ) /* DIS */
6383 #define ICER0_EXTINT3_EN (0x1 << 4 ) /* EN */
6384 
6385 /* ICER0[EXTINT2] - */
6386 #define ICER0_EXTINT2_MSK (0x1 << 3 )
6387 #define ICER0_EXTINT2 (0x1 << 3 )
6388 #define ICER0_EXTINT2_DIS (0x0 << 3 ) /* DIS */
6389 #define ICER0_EXTINT2_EN (0x1 << 3 ) /* EN */
6390 
6391 /* ICER0[EXTINT1] - */
6392 #define ICER0_EXTINT1_MSK (0x1 << 2 )
6393 #define ICER0_EXTINT1 (0x1 << 2 )
6394 #define ICER0_EXTINT1_DIS (0x0 << 2 ) /* DIS */
6395 #define ICER0_EXTINT1_EN (0x1 << 2 ) /* EN */
6396 
6397 /* ICER0[EXTINT0] - */
6398 #define ICER0_EXTINT0_MSK (0x1 << 1 )
6399 #define ICER0_EXTINT0 (0x1 << 1 )
6400 #define ICER0_EXTINT0_DIS (0x0 << 1 ) /* DIS */
6401 #define ICER0_EXTINT0_EN (0x1 << 1 ) /* EN */
6402 
6403 /* ICER0[T2] - */
6404 #define ICER0_T2_MSK (0x1 << 0 )
6405 #define ICER0_T2 (0x1 << 0 )
6406 #define ICER0_T2_DIS (0x0 << 0 ) /* DIS */
6407 #define ICER0_T2_EN (0x1 << 0 ) /* EN */
6408 
6409 /* Reset Value for ICER1*/
6410 #define ICER1_RVAL 0x0
6411 
6412 /* ICER1[PWM3] - */
6413 #define ICER1_PWM3_MSK (0x1 << 9 )
6414 #define ICER1_PWM3 (0x1 << 9 )
6415 #define ICER1_PWM3_DIS (0x0 << 9 ) /* DIS */
6416 #define ICER1_PWM3_EN (0x1 << 9 ) /* EN */
6417 
6418 /* ICER1[PWM2] - */
6419 #define ICER1_PWM2_MSK (0x1 << 8 )
6420 #define ICER1_PWM2 (0x1 << 8 )
6421 #define ICER1_PWM2_DIS (0x0 << 8 ) /* DIS */
6422 #define ICER1_PWM2_EN (0x1 << 8 ) /* EN */
6423 
6424 /* ICER1[PWM1] - */
6425 #define ICER1_PWM1_MSK (0x1 << 7 )
6426 #define ICER1_PWM1 (0x1 << 7 )
6427 #define ICER1_PWM1_DIS (0x0 << 7 ) /* DIS */
6428 #define ICER1_PWM1_EN (0x1 << 7 ) /* EN */
6429 
6430 /* ICER1[PWM0] - */
6431 #define ICER1_PWM0_MSK (0x1 << 6 )
6432 #define ICER1_PWM0 (0x1 << 6 )
6433 #define ICER1_PWM0_DIS (0x0 << 6 ) /* DIS */
6434 #define ICER1_PWM0_EN (0x1 << 6 ) /* EN */
6435 
6436 /* ICER1[PWMTRIP] - */
6437 #define ICER1_PWMTRIP_MSK (0x1 << 5 )
6438 #define ICER1_PWMTRIP (0x1 << 5 )
6439 #define ICER1_PWMTRIP_DIS (0x0 << 5 ) /* DIS */
6440 #define ICER1_PWMTRIP_EN (0x1 << 5 ) /* EN */
6441 
6442 /* ICER1[DMASPI0RX] - */
6443 #define ICER1_DMASPI0RX_MSK (0x1 << 4 )
6444 #define ICER1_DMASPI0RX (0x1 << 4 )
6445 #define ICER1_DMASPI0RX_DIS (0x0 << 4 ) /* DIS */
6446 #define ICER1_DMASPI0RX_EN (0x1 << 4 ) /* EN */
6447 
6448 /* ICER1[DMASPI0TX] - */
6449 #define ICER1_DMASPI0TX_MSK (0x1 << 3 )
6450 #define ICER1_DMASPI0TX (0x1 << 3 )
6451 #define ICER1_DMASPI0TX_DIS (0x0 << 3 ) /* DIS */
6452 #define ICER1_DMASPI0TX_EN (0x1 << 3 ) /* EN */
6453 
6454 /* ICER1[DMAADC] - */
6455 #define ICER1_DMAADC_MSK (0x1 << 2 )
6456 #define ICER1_DMAADC (0x1 << 2 )
6457 #define ICER1_DMAADC_DIS (0x0 << 2 ) /* DIS */
6458 #define ICER1_DMAADC_EN (0x1 << 2 ) /* EN */
6459 
6460 /* Reset Value for ISPR0*/
6461 #define ISPR0_RVAL 0x0
6462 
6463 /* ISPR0[DMAI2CMRX] - */
6464 #define ISPR0_DMAI2CMRX_MSK (0x1 << 30 )
6465 #define ISPR0_DMAI2CMRX (0x1 << 30 )
6466 #define ISPR0_DMAI2CMRX_DIS (0x0 << 30 ) /* DIS */
6467 #define ISPR0_DMAI2CMRX_EN (0x1 << 30 ) /* EN */
6468 
6469 /* ISPR0[DMAI2CMTX] - */
6470 #define ISPR0_DMAI2CMTX_MSK (0x1 << 29 )
6471 #define ISPR0_DMAI2CMTX (0x1 << 29 )
6472 #define ISPR0_DMAI2CMTX_DIS (0x0 << 29 ) /* DIS */
6473 #define ISPR0_DMAI2CMTX_EN (0x1 << 29 ) /* EN */
6474 
6475 /* ISPR0[DMAI2CSRX] - */
6476 #define ISPR0_DMAI2CSRX_MSK (0x1 << 28 )
6477 #define ISPR0_DMAI2CSRX (0x1 << 28 )
6478 #define ISPR0_DMAI2CSRX_DIS (0x0 << 28 ) /* DIS */
6479 #define ISPR0_DMAI2CSRX_EN (0x1 << 28 ) /* EN */
6480 
6481 /* ISPR0[DMAI2CSTX] - */
6482 #define ISPR0_DMAI2CSTX_MSK (0x1 << 27 )
6483 #define ISPR0_DMAI2CSTX (0x1 << 27 )
6484 #define ISPR0_DMAI2CSTX_DIS (0x0 << 27 ) /* DIS */
6485 #define ISPR0_DMAI2CSTX_EN (0x1 << 27 ) /* EN */
6486 
6487 /* ISPR0[DMAUARTRX] - */
6488 #define ISPR0_DMAUARTRX_MSK (0x1 << 26 )
6489 #define ISPR0_DMAUARTRX (0x1 << 26 )
6490 #define ISPR0_DMAUARTRX_DIS (0x0 << 26 ) /* DIS */
6491 #define ISPR0_DMAUARTRX_EN (0x1 << 26 ) /* EN */
6492 
6493 /* ISPR0[DMAUARTTX] - */
6494 #define ISPR0_DMAUARTTX_MSK (0x1 << 25 )
6495 #define ISPR0_DMAUARTTX (0x1 << 25 )
6496 #define ISPR0_DMAUARTTX_DIS (0x0 << 25 ) /* DIS */
6497 #define ISPR0_DMAUARTTX_EN (0x1 << 25 ) /* EN */
6498 
6499 /* ISPR0[DMASPI1RX] - */
6500 #define ISPR0_DMASPI1RX_MSK (0x1 << 24 )
6501 #define ISPR0_DMASPI1RX (0x1 << 24 )
6502 #define ISPR0_DMASPI1RX_DIS (0x0 << 24 ) /* DIS */
6503 #define ISPR0_DMASPI1RX_EN (0x1 << 24 ) /* EN */
6504 
6505 /* ISPR0[DMASPI1TX] - */
6506 #define ISPR0_DMASPI1TX_MSK (0x1 << 23 )
6507 #define ISPR0_DMASPI1TX (0x1 << 23 )
6508 #define ISPR0_DMASPI1TX_DIS (0x0 << 23 ) /* DIS */
6509 #define ISPR0_DMASPI1TX_EN (0x1 << 23 ) /* EN */
6510 
6511 /* ISPR0[DMAERROR] - */
6512 #define ISPR0_DMAERROR_MSK (0x1 << 22 )
6513 #define ISPR0_DMAERROR (0x1 << 22 )
6514 #define ISPR0_DMAERROR_DIS (0x0 << 22 ) /* DIS */
6515 #define ISPR0_DMAERROR_EN (0x1 << 22 ) /* EN */
6516 
6517 /* ISPR0[I2CM] - */
6518 #define ISPR0_I2CM_MSK (0x1 << 20 )
6519 #define ISPR0_I2CM (0x1 << 20 )
6520 #define ISPR0_I2CM_DIS (0x0 << 20 ) /* DIS */
6521 #define ISPR0_I2CM_EN (0x1 << 20 ) /* EN */
6522 
6523 /* ISPR0[I2CS] - */
6524 #define ISPR0_I2CS_MSK (0x1 << 19 )
6525 #define ISPR0_I2CS (0x1 << 19 )
6526 #define ISPR0_I2CS_DIS (0x0 << 19 ) /* DIS */
6527 #define ISPR0_I2CS_EN (0x1 << 19 ) /* EN */
6528 
6529 /* ISPR0[SPI1] - */
6530 #define ISPR0_SPI1_MSK (0x1 << 18 )
6531 #define ISPR0_SPI1 (0x1 << 18 )
6532 #define ISPR0_SPI1_DIS (0x0 << 18 ) /* DIS */
6533 #define ISPR0_SPI1_EN (0x1 << 18 ) /* EN */
6534 
6535 /* ISPR0[SPI0] - */
6536 #define ISPR0_SPI0_MSK (0x1 << 17 )
6537 #define ISPR0_SPI0 (0x1 << 17 )
6538 #define ISPR0_SPI0_DIS (0x0 << 17 ) /* DIS */
6539 #define ISPR0_SPI0_EN (0x1 << 17 ) /* EN */
6540 
6541 /* ISPR0[UART] - */
6542 #define ISPR0_UART_MSK (0x1 << 16 )
6543 #define ISPR0_UART (0x1 << 16 )
6544 #define ISPR0_UART_DIS (0x0 << 16 ) /* DIS */
6545 #define ISPR0_UART_EN (0x1 << 16 ) /* EN */
6546 
6547 /* ISPR0[FEE] - */
6548 #define ISPR0_FEE_MSK (0x1 << 15 )
6549 #define ISPR0_FEE (0x1 << 15 )
6550 #define ISPR0_FEE_DIS (0x0 << 15 ) /* DIS */
6551 #define ISPR0_FEE_EN (0x1 << 15 ) /* EN */
6552 
6553 /* ISPR0[ADC] - */
6554 #define ISPR0_ADC_MSK (0x1 << 14 )
6555 #define ISPR0_ADC (0x1 << 14 )
6556 #define ISPR0_ADC_DIS (0x0 << 14 ) /* DIS */
6557 #define ISPR0_ADC_EN (0x1 << 14 ) /* EN */
6558 
6559 /* ISPR0[T1] - */
6560 #define ISPR0_T1_MSK (0x1 << 13 )
6561 #define ISPR0_T1 (0x1 << 13 )
6562 #define ISPR0_T1_DIS (0x0 << 13 ) /* DIS */
6563 #define ISPR0_T1_EN (0x1 << 13 ) /* EN */
6564 
6565 /* ISPR0[T0] - */
6566 #define ISPR0_T0_MSK (0x1 << 12 )
6567 #define ISPR0_T0 (0x1 << 12 )
6568 #define ISPR0_T0_DIS (0x0 << 12 ) /* DIS */
6569 #define ISPR0_T0_EN (0x1 << 12 ) /* EN */
6570 
6571 /* ISPR0[T3] - */
6572 #define ISPR0_T3_MSK (0x1 << 10 )
6573 #define ISPR0_T3 (0x1 << 10 )
6574 #define ISPR0_T3_DIS (0x0 << 10 ) /* DIS */
6575 #define ISPR0_T3_EN (0x1 << 10 ) /* EN */
6576 
6577 /* ISPR0[EXTINT8] - */
6578 #define ISPR0_EXTINT8_MSK (0x1 << 9 )
6579 #define ISPR0_EXTINT8 (0x1 << 9 )
6580 #define ISPR0_EXTINT8_DIS (0x0 << 9 ) /* DIS */
6581 #define ISPR0_EXTINT8_EN (0x1 << 9 ) /* EN */
6582 
6583 /* ISPR0[EXTINT7] - */
6584 #define ISPR0_EXTINT7_MSK (0x1 << 8 )
6585 #define ISPR0_EXTINT7 (0x1 << 8 )
6586 #define ISPR0_EXTINT7_DIS (0x0 << 8 ) /* DIS */
6587 #define ISPR0_EXTINT7_EN (0x1 << 8 ) /* EN */
6588 
6589 /* ISPR0[EXTINT6] - */
6590 #define ISPR0_EXTINT6_MSK (0x1 << 7 )
6591 #define ISPR0_EXTINT6 (0x1 << 7 )
6592 #define ISPR0_EXTINT6_DIS (0x0 << 7 ) /* DIS */
6593 #define ISPR0_EXTINT6_EN (0x1 << 7 ) /* EN */
6594 
6595 /* ISPR0[EXTINT5] - */
6596 #define ISPR0_EXTINT5_MSK (0x1 << 6 )
6597 #define ISPR0_EXTINT5 (0x1 << 6 )
6598 #define ISPR0_EXTINT5_DIS (0x0 << 6 ) /* DIS */
6599 #define ISPR0_EXTINT5_EN (0x1 << 6 ) /* EN */
6600 
6601 /* ISPR0[EXTINT4] - */
6602 #define ISPR0_EXTINT4_MSK (0x1 << 5 )
6603 #define ISPR0_EXTINT4 (0x1 << 5 )
6604 #define ISPR0_EXTINT4_DIS (0x0 << 5 ) /* DIS */
6605 #define ISPR0_EXTINT4_EN (0x1 << 5 ) /* EN */
6606 
6607 /* ISPR0[EXTINT3] - */
6608 #define ISPR0_EXTINT3_MSK (0x1 << 4 )
6609 #define ISPR0_EXTINT3 (0x1 << 4 )
6610 #define ISPR0_EXTINT3_DIS (0x0 << 4 ) /* DIS */
6611 #define ISPR0_EXTINT3_EN (0x1 << 4 ) /* EN */
6612 
6613 /* ISPR0[EXTINT2] - */
6614 #define ISPR0_EXTINT2_MSK (0x1 << 3 )
6615 #define ISPR0_EXTINT2 (0x1 << 3 )
6616 #define ISPR0_EXTINT2_DIS (0x0 << 3 ) /* DIS */
6617 #define ISPR0_EXTINT2_EN (0x1 << 3 ) /* EN */
6618 
6619 /* ISPR0[EXTINT1] - */
6620 #define ISPR0_EXTINT1_MSK (0x1 << 2 )
6621 #define ISPR0_EXTINT1 (0x1 << 2 )
6622 #define ISPR0_EXTINT1_DIS (0x0 << 2 ) /* DIS */
6623 #define ISPR0_EXTINT1_EN (0x1 << 2 ) /* EN */
6624 
6625 /* ISPR0[EXTINT0] - */
6626 #define ISPR0_EXTINT0_MSK (0x1 << 1 )
6627 #define ISPR0_EXTINT0 (0x1 << 1 )
6628 #define ISPR0_EXTINT0_DIS (0x0 << 1 ) /* DIS */
6629 #define ISPR0_EXTINT0_EN (0x1 << 1 ) /* EN */
6630 
6631 /* ISPR0[T2] - */
6632 #define ISPR0_T2_MSK (0x1 << 0 )
6633 #define ISPR0_T2 (0x1 << 0 )
6634 #define ISPR0_T2_DIS (0x0 << 0 ) /* DIS */
6635 #define ISPR0_T2_EN (0x1 << 0 ) /* EN */
6636 
6637 /* Reset Value for ISPR1*/
6638 #define ISPR1_RVAL 0x0
6639 
6640 /* ISPR1[PWM3] - */
6641 #define ISPR1_PWM3_MSK (0x1 << 9 )
6642 #define ISPR1_PWM3 (0x1 << 9 )
6643 #define ISPR1_PWM3_DIS (0x0 << 9 ) /* DIS */
6644 #define ISPR1_PWM3_EN (0x1 << 9 ) /* EN */
6645 
6646 /* ISPR1[PWM2] - */
6647 #define ISPR1_PWM2_MSK (0x1 << 8 )
6648 #define ISPR1_PWM2 (0x1 << 8 )
6649 #define ISPR1_PWM2_DIS (0x0 << 8 ) /* DIS */
6650 #define ISPR1_PWM2_EN (0x1 << 8 ) /* EN */
6651 
6652 /* ISPR1[PWM1] - */
6653 #define ISPR1_PWM1_MSK (0x1 << 7 )
6654 #define ISPR1_PWM1 (0x1 << 7 )
6655 #define ISPR1_PWM1_DIS (0x0 << 7 ) /* DIS */
6656 #define ISPR1_PWM1_EN (0x1 << 7 ) /* EN */
6657 
6658 /* ISPR1[PWM0] - */
6659 #define ISPR1_PWM0_MSK (0x1 << 6 )
6660 #define ISPR1_PWM0 (0x1 << 6 )
6661 #define ISPR1_PWM0_DIS (0x0 << 6 ) /* DIS */
6662 #define ISPR1_PWM0_EN (0x1 << 6 ) /* EN */
6663 
6664 /* ISPR1[PWMTRIP] - */
6665 #define ISPR1_PWMTRIP_MSK (0x1 << 5 )
6666 #define ISPR1_PWMTRIP (0x1 << 5 )
6667 #define ISPR1_PWMTRIP_DIS (0x0 << 5 ) /* DIS */
6668 #define ISPR1_PWMTRIP_EN (0x1 << 5 ) /* EN */
6669 
6670 /* ISPR1[DMASPI0RX] - */
6671 #define ISPR1_DMASPI0RX_MSK (0x1 << 4 )
6672 #define ISPR1_DMASPI0RX (0x1 << 4 )
6673 #define ISPR1_DMASPI0RX_DIS (0x0 << 4 ) /* DIS */
6674 #define ISPR1_DMASPI0RX_EN (0x1 << 4 ) /* EN */
6675 
6676 /* ISPR1[DMASPI0TX] - */
6677 #define ISPR1_DMASPI0TX_MSK (0x1 << 3 )
6678 #define ISPR1_DMASPI0TX (0x1 << 3 )
6679 #define ISPR1_DMASPI0TX_DIS (0x0 << 3 ) /* DIS */
6680 #define ISPR1_DMASPI0TX_EN (0x1 << 3 ) /* EN */
6681 
6682 /* ISPR1[DMAADC] - */
6683 #define ISPR1_DMAADC_MSK (0x1 << 2 )
6684 #define ISPR1_DMAADC (0x1 << 2 )
6685 #define ISPR1_DMAADC_DIS (0x0 << 2 ) /* DIS */
6686 #define ISPR1_DMAADC_EN (0x1 << 2 ) /* EN */
6687 
6688 /* Reset Value for ICPR0*/
6689 #define ICPR0_RVAL 0x0
6690 
6691 /* ICPR0[DMAI2CMRX] - */
6692 #define ICPR0_DMAI2CMRX_MSK (0x1 << 30 )
6693 #define ICPR0_DMAI2CMRX (0x1 << 30 )
6694 #define ICPR0_DMAI2CMRX_DIS (0x0 << 30 ) /* DIS */
6695 #define ICPR0_DMAI2CMRX_EN (0x1 << 30 ) /* EN */
6696 
6697 /* ICPR0[DMAI2CMTX] - */
6698 #define ICPR0_DMAI2CMTX_MSK (0x1 << 29 )
6699 #define ICPR0_DMAI2CMTX (0x1 << 29 )
6700 #define ICPR0_DMAI2CMTX_DIS (0x0 << 29 ) /* DIS */
6701 #define ICPR0_DMAI2CMTX_EN (0x1 << 29 ) /* EN */
6702 
6703 /* ICPR0[DMAI2CSRX] - */
6704 #define ICPR0_DMAI2CSRX_MSK (0x1 << 28 )
6705 #define ICPR0_DMAI2CSRX (0x1 << 28 )
6706 #define ICPR0_DMAI2CSRX_DIS (0x0 << 28 ) /* DIS */
6707 #define ICPR0_DMAI2CSRX_EN (0x1 << 28 ) /* EN */
6708 
6709 /* ICPR0[DMAI2CSTX] - */
6710 #define ICPR0_DMAI2CSTX_MSK (0x1 << 27 )
6711 #define ICPR0_DMAI2CSTX (0x1 << 27 )
6712 #define ICPR0_DMAI2CSTX_DIS (0x0 << 27 ) /* DIS */
6713 #define ICPR0_DMAI2CSTX_EN (0x1 << 27 ) /* EN */
6714 
6715 /* ICPR0[DMAUARTRX] - */
6716 #define ICPR0_DMAUARTRX_MSK (0x1 << 26 )
6717 #define ICPR0_DMAUARTRX (0x1 << 26 )
6718 #define ICPR0_DMAUARTRX_DIS (0x0 << 26 ) /* DIS */
6719 #define ICPR0_DMAUARTRX_EN (0x1 << 26 ) /* EN */
6720 
6721 /* ICPR0[DMAUARTTX] - */
6722 #define ICPR0_DMAUARTTX_MSK (0x1 << 25 )
6723 #define ICPR0_DMAUARTTX (0x1 << 25 )
6724 #define ICPR0_DMAUARTTX_DIS (0x0 << 25 ) /* DIS */
6725 #define ICPR0_DMAUARTTX_EN (0x1 << 25 ) /* EN */
6726 
6727 /* ICPR0[DMASPI1RX] - */
6728 #define ICPR0_DMASPI1RX_MSK (0x1 << 24 )
6729 #define ICPR0_DMASPI1RX (0x1 << 24 )
6730 #define ICPR0_DMASPI1RX_DIS (0x0 << 24 ) /* DIS */
6731 #define ICPR0_DMASPI1RX_EN (0x1 << 24 ) /* EN */
6732 
6733 /* ICPR0[DMASPI1TX] - */
6734 #define ICPR0_DMASPI1TX_MSK (0x1 << 23 )
6735 #define ICPR0_DMASPI1TX (0x1 << 23 )
6736 #define ICPR0_DMASPI1TX_DIS (0x0 << 23 ) /* DIS */
6737 #define ICPR0_DMASPI1TX_EN (0x1 << 23 ) /* EN */
6738 
6739 /* ICPR0[DMAERROR] - */
6740 #define ICPR0_DMAERROR_MSK (0x1 << 22 )
6741 #define ICPR0_DMAERROR (0x1 << 22 )
6742 #define ICPR0_DMAERROR_DIS (0x0 << 22 ) /* DIS */
6743 #define ICPR0_DMAERROR_EN (0x1 << 22 ) /* EN */
6744 
6745 /* ICPR0[I2CM] - */
6746 #define ICPR0_I2CM_MSK (0x1 << 20 )
6747 #define ICPR0_I2CM (0x1 << 20 )
6748 #define ICPR0_I2CM_DIS (0x0 << 20 ) /* DIS */
6749 #define ICPR0_I2CM_EN (0x1 << 20 ) /* EN */
6750 
6751 /* ICPR0[I2CS] - */
6752 #define ICPR0_I2CS_MSK (0x1 << 19 )
6753 #define ICPR0_I2CS (0x1 << 19 )
6754 #define ICPR0_I2CS_DIS (0x0 << 19 ) /* DIS */
6755 #define ICPR0_I2CS_EN (0x1 << 19 ) /* EN */
6756 
6757 /* ICPR0[SPI1] - */
6758 #define ICPR0_SPI1_MSK (0x1 << 18 )
6759 #define ICPR0_SPI1 (0x1 << 18 )
6760 #define ICPR0_SPI1_DIS (0x0 << 18 ) /* DIS */
6761 #define ICPR0_SPI1_EN (0x1 << 18 ) /* EN */
6762 
6763 /* ICPR0[SPI0] - */
6764 #define ICPR0_SPI0_MSK (0x1 << 17 )
6765 #define ICPR0_SPI0 (0x1 << 17 )
6766 #define ICPR0_SPI0_DIS (0x0 << 17 ) /* DIS */
6767 #define ICPR0_SPI0_EN (0x1 << 17 ) /* EN */
6768 
6769 /* ICPR0[UART] - */
6770 #define ICPR0_UART_MSK (0x1 << 16 )
6771 #define ICPR0_UART (0x1 << 16 )
6772 #define ICPR0_UART_DIS (0x0 << 16 ) /* DIS */
6773 #define ICPR0_UART_EN (0x1 << 16 ) /* EN */
6774 
6775 /* ICPR0[FEE] - */
6776 #define ICPR0_FEE_MSK (0x1 << 15 )
6777 #define ICPR0_FEE (0x1 << 15 )
6778 #define ICPR0_FEE_DIS (0x0 << 15 ) /* DIS */
6779 #define ICPR0_FEE_EN (0x1 << 15 ) /* EN */
6780 
6781 /* ICPR0[ADC] - */
6782 #define ICPR0_ADC_MSK (0x1 << 14 )
6783 #define ICPR0_ADC (0x1 << 14 )
6784 #define ICPR0_ADC_DIS (0x0 << 14 ) /* DIS */
6785 #define ICPR0_ADC_EN (0x1 << 14 ) /* EN */
6786 
6787 /* ICPR0[T1] - */
6788 #define ICPR0_T1_MSK (0x1 << 13 )
6789 #define ICPR0_T1 (0x1 << 13 )
6790 #define ICPR0_T1_DIS (0x0 << 13 ) /* DIS */
6791 #define ICPR0_T1_EN (0x1 << 13 ) /* EN */
6792 
6793 /* ICPR0[T0] - */
6794 #define ICPR0_T0_MSK (0x1 << 12 )
6795 #define ICPR0_T0 (0x1 << 12 )
6796 #define ICPR0_T0_DIS (0x0 << 12 ) /* DIS */
6797 #define ICPR0_T0_EN (0x1 << 12 ) /* EN */
6798 
6799 /* ICPR0[T3] - */
6800 #define ICPR0_T3_MSK (0x1 << 10 )
6801 #define ICPR0_T3 (0x1 << 10 )
6802 #define ICPR0_T3_DIS (0x0 << 10 ) /* DIS */
6803 #define ICPR0_T3_EN (0x1 << 10 ) /* EN */
6804 
6805 /* ICPR0[EXTINT8] - */
6806 #define ICPR0_EXTINT8_MSK (0x1 << 9 )
6807 #define ICPR0_EXTINT8 (0x1 << 9 )
6808 #define ICPR0_EXTINT8_DIS (0x0 << 9 ) /* DIS */
6809 #define ICPR0_EXTINT8_EN (0x1 << 9 ) /* EN */
6810 
6811 /* ICPR0[EXTINT7] - */
6812 #define ICPR0_EXTINT7_MSK (0x1 << 8 )
6813 #define ICPR0_EXTINT7 (0x1 << 8 )
6814 #define ICPR0_EXTINT7_DIS (0x0 << 8 ) /* DIS */
6815 #define ICPR0_EXTINT7_EN (0x1 << 8 ) /* EN */
6816 
6817 /* ICPR0[EXTINT6] - */
6818 #define ICPR0_EXTINT6_MSK (0x1 << 7 )
6819 #define ICPR0_EXTINT6 (0x1 << 7 )
6820 #define ICPR0_EXTINT6_DIS (0x0 << 7 ) /* DIS */
6821 #define ICPR0_EXTINT6_EN (0x1 << 7 ) /* EN */
6822 
6823 /* ICPR0[EXTINT5] - */
6824 #define ICPR0_EXTINT5_MSK (0x1 << 6 )
6825 #define ICPR0_EXTINT5 (0x1 << 6 )
6826 #define ICPR0_EXTINT5_DIS (0x0 << 6 ) /* DIS */
6827 #define ICPR0_EXTINT5_EN (0x1 << 6 ) /* EN */
6828 
6829 /* ICPR0[EXTINT4] - */
6830 #define ICPR0_EXTINT4_MSK (0x1 << 5 )
6831 #define ICPR0_EXTINT4 (0x1 << 5 )
6832 #define ICPR0_EXTINT4_DIS (0x0 << 5 ) /* DIS */
6833 #define ICPR0_EXTINT4_EN (0x1 << 5 ) /* EN */
6834 
6835 /* ICPR0[EXTINT3] - */
6836 #define ICPR0_EXTINT3_MSK (0x1 << 4 )
6837 #define ICPR0_EXTINT3 (0x1 << 4 )
6838 #define ICPR0_EXTINT3_DIS (0x0 << 4 ) /* DIS */
6839 #define ICPR0_EXTINT3_EN (0x1 << 4 ) /* EN */
6840 
6841 /* ICPR0[EXTINT2] - */
6842 #define ICPR0_EXTINT2_MSK (0x1 << 3 )
6843 #define ICPR0_EXTINT2 (0x1 << 3 )
6844 #define ICPR0_EXTINT2_DIS (0x0 << 3 ) /* DIS */
6845 #define ICPR0_EXTINT2_EN (0x1 << 3 ) /* EN */
6846 
6847 /* ICPR0[EXTINT1] - */
6848 #define ICPR0_EXTINT1_MSK (0x1 << 2 )
6849 #define ICPR0_EXTINT1 (0x1 << 2 )
6850 #define ICPR0_EXTINT1_DIS (0x0 << 2 ) /* DIS */
6851 #define ICPR0_EXTINT1_EN (0x1 << 2 ) /* EN */
6852 
6853 /* ICPR0[EXTINT0] - */
6854 #define ICPR0_EXTINT0_MSK (0x1 << 1 )
6855 #define ICPR0_EXTINT0 (0x1 << 1 )
6856 #define ICPR0_EXTINT0_DIS (0x0 << 1 ) /* DIS */
6857 #define ICPR0_EXTINT0_EN (0x1 << 1 ) /* EN */
6858 
6859 /* ICPR0[T2] - */
6860 #define ICPR0_T2_MSK (0x1 << 0 )
6861 #define ICPR0_T2 (0x1 << 0 )
6862 #define ICPR0_T2_DIS (0x0 << 0 ) /* DIS */
6863 #define ICPR0_T2_EN (0x1 << 0 ) /* EN */
6864 
6865 /* Reset Value for ICPR1*/
6866 #define ICPR1_RVAL 0x0
6867 
6868 /* ICPR1[PWM3] - */
6869 #define ICPR1_PWM3_MSK (0x1 << 9 )
6870 #define ICPR1_PWM3 (0x1 << 9 )
6871 #define ICPR1_PWM3_DIS (0x0 << 9 ) /* DIS */
6872 #define ICPR1_PWM3_EN (0x1 << 9 ) /* EN */
6873 
6874 /* ICPR1[PWM2] - */
6875 #define ICPR1_PWM2_MSK (0x1 << 8 )
6876 #define ICPR1_PWM2 (0x1 << 8 )
6877 #define ICPR1_PWM2_DIS (0x0 << 8 ) /* DIS */
6878 #define ICPR1_PWM2_EN (0x1 << 8 ) /* EN */
6879 
6880 /* ICPR1[PWM1] - */
6881 #define ICPR1_PWM1_MSK (0x1 << 7 )
6882 #define ICPR1_PWM1 (0x1 << 7 )
6883 #define ICPR1_PWM1_DIS (0x0 << 7 ) /* DIS */
6884 #define ICPR1_PWM1_EN (0x1 << 7 ) /* EN */
6885 
6886 /* ICPR1[PWM0] - */
6887 #define ICPR1_PWM0_MSK (0x1 << 6 )
6888 #define ICPR1_PWM0 (0x1 << 6 )
6889 #define ICPR1_PWM0_DIS (0x0 << 6 ) /* DIS */
6890 #define ICPR1_PWM0_EN (0x1 << 6 ) /* EN */
6891 
6892 /* ICPR1[PWMTRIP] - */
6893 #define ICPR1_PWMTRIP_MSK (0x1 << 5 )
6894 #define ICPR1_PWMTRIP (0x1 << 5 )
6895 #define ICPR1_PWMTRIP_DIS (0x0 << 5 ) /* DIS */
6896 #define ICPR1_PWMTRIP_EN (0x1 << 5 ) /* EN */
6897 
6898 /* ICPR1[DMASPI0RX] - */
6899 #define ICPR1_DMASPI0RX_MSK (0x1 << 4 )
6900 #define ICPR1_DMASPI0RX (0x1 << 4 )
6901 #define ICPR1_DMASPI0RX_DIS (0x0 << 4 ) /* DIS */
6902 #define ICPR1_DMASPI0RX_EN (0x1 << 4 ) /* EN */
6903 
6904 /* ICPR1[DMASPI0TX] - */
6905 #define ICPR1_DMASPI0TX_MSK (0x1 << 3 )
6906 #define ICPR1_DMASPI0TX (0x1 << 3 )
6907 #define ICPR1_DMASPI0TX_DIS (0x0 << 3 ) /* DIS */
6908 #define ICPR1_DMASPI0TX_EN (0x1 << 3 ) /* EN */
6909 
6910 /* ICPR1[DMAADC] - */
6911 #define ICPR1_DMAADC_MSK (0x1 << 2 )
6912 #define ICPR1_DMAADC (0x1 << 2 )
6913 #define ICPR1_DMAADC_DIS (0x0 << 2 ) /* DIS */
6914 #define ICPR1_DMAADC_EN (0x1 << 2 ) /* EN */
6915 
6916 /* Reset Value for IABR0*/
6917 #define IABR0_RVAL 0x0
6918 
6919 /* IABR0[DMAI2CMRX] - */
6920 #define IABR0_DMAI2CMRX_MSK (0x1 << 30 )
6921 #define IABR0_DMAI2CMRX (0x1 << 30 )
6922 #define IABR0_DMAI2CMRX_DIS (0x0 << 30 ) /* DIS */
6923 #define IABR0_DMAI2CMRX_EN (0x1 << 30 ) /* EN */
6924 
6925 /* IABR0[DMAI2CMTX] - */
6926 #define IABR0_DMAI2CMTX_MSK (0x1 << 29 )
6927 #define IABR0_DMAI2CMTX (0x1 << 29 )
6928 #define IABR0_DMAI2CMTX_DIS (0x0 << 29 ) /* DIS */
6929 #define IABR0_DMAI2CMTX_EN (0x1 << 29 ) /* EN */
6930 
6931 /* IABR0[DMAI2CSRX] - */
6932 #define IABR0_DMAI2CSRX_MSK (0x1 << 28 )
6933 #define IABR0_DMAI2CSRX (0x1 << 28 )
6934 #define IABR0_DMAI2CSRX_DIS (0x0 << 28 ) /* DIS */
6935 #define IABR0_DMAI2CSRX_EN (0x1 << 28 ) /* EN */
6936 
6937 /* IABR0[DMAI2CSTX] - */
6938 #define IABR0_DMAI2CSTX_MSK (0x1 << 27 )
6939 #define IABR0_DMAI2CSTX (0x1 << 27 )
6940 #define IABR0_DMAI2CSTX_DIS (0x0 << 27 ) /* DIS */
6941 #define IABR0_DMAI2CSTX_EN (0x1 << 27 ) /* EN */
6942 
6943 /* IABR0[DMAUARTRX] - */
6944 #define IABR0_DMAUARTRX_MSK (0x1 << 26 )
6945 #define IABR0_DMAUARTRX (0x1 << 26 )
6946 #define IABR0_DMAUARTRX_DIS (0x0 << 26 ) /* DIS */
6947 #define IABR0_DMAUARTRX_EN (0x1 << 26 ) /* EN */
6948 
6949 /* IABR0[DMAUARTTX] - */
6950 #define IABR0_DMAUARTTX_MSK (0x1 << 25 )
6951 #define IABR0_DMAUARTTX (0x1 << 25 )
6952 #define IABR0_DMAUARTTX_DIS (0x0 << 25 ) /* DIS */
6953 #define IABR0_DMAUARTTX_EN (0x1 << 25 ) /* EN */
6954 
6955 /* IABR0[DMASPI1RX] - */
6956 #define IABR0_DMASPI1RX_MSK (0x1 << 24 )
6957 #define IABR0_DMASPI1RX (0x1 << 24 )
6958 #define IABR0_DMASPI1RX_DIS (0x0 << 24 ) /* DIS */
6959 #define IABR0_DMASPI1RX_EN (0x1 << 24 ) /* EN */
6960 
6961 /* IABR0[DMASPI1TX] - */
6962 #define IABR0_DMASPI1TX_MSK (0x1 << 23 )
6963 #define IABR0_DMASPI1TX (0x1 << 23 )
6964 #define IABR0_DMASPI1TX_DIS (0x0 << 23 ) /* DIS */
6965 #define IABR0_DMASPI1TX_EN (0x1 << 23 ) /* EN */
6966 
6967 /* IABR0[DMAERROR] - */
6968 #define IABR0_DMAERROR_MSK (0x1 << 22 )
6969 #define IABR0_DMAERROR (0x1 << 22 )
6970 #define IABR0_DMAERROR_DIS (0x0 << 22 ) /* DIS */
6971 #define IABR0_DMAERROR_EN (0x1 << 22 ) /* EN */
6972 
6973 /* IABR0[I2CM] - */
6974 #define IABR0_I2CM_MSK (0x1 << 20 )
6975 #define IABR0_I2CM (0x1 << 20 )
6976 #define IABR0_I2CM_DIS (0x0 << 20 ) /* DIS */
6977 #define IABR0_I2CM_EN (0x1 << 20 ) /* EN */
6978 
6979 /* IABR0[I2CS] - */
6980 #define IABR0_I2CS_MSK (0x1 << 19 )
6981 #define IABR0_I2CS (0x1 << 19 )
6982 #define IABR0_I2CS_DIS (0x0 << 19 ) /* DIS */
6983 #define IABR0_I2CS_EN (0x1 << 19 ) /* EN */
6984 
6985 /* IABR0[SPI1] - */
6986 #define IABR0_SPI1_MSK (0x1 << 18 )
6987 #define IABR0_SPI1 (0x1 << 18 )
6988 #define IABR0_SPI1_DIS (0x0 << 18 ) /* DIS */
6989 #define IABR0_SPI1_EN (0x1 << 18 ) /* EN */
6990 
6991 /* IABR0[SPI0] - */
6992 #define IABR0_SPI0_MSK (0x1 << 17 )
6993 #define IABR0_SPI0 (0x1 << 17 )
6994 #define IABR0_SPI0_DIS (0x0 << 17 ) /* DIS */
6995 #define IABR0_SPI0_EN (0x1 << 17 ) /* EN */
6996 
6997 /* IABR0[UART] - */
6998 #define IABR0_UART_MSK (0x1 << 16 )
6999 #define IABR0_UART (0x1 << 16 )
7000 #define IABR0_UART_DIS (0x0 << 16 ) /* DIS */
7001 #define IABR0_UART_EN (0x1 << 16 ) /* EN */
7002 
7003 /* IABR0[FEE] - */
7004 #define IABR0_FEE_MSK (0x1 << 15 )
7005 #define IABR0_FEE (0x1 << 15 )
7006 #define IABR0_FEE_DIS (0x0 << 15 ) /* DIS */
7007 #define IABR0_FEE_EN (0x1 << 15 ) /* EN */
7008 
7009 /* IABR0[ADC] - */
7010 #define IABR0_ADC_MSK (0x1 << 14 )
7011 #define IABR0_ADC (0x1 << 14 )
7012 #define IABR0_ADC_DIS (0x0 << 14 ) /* DIS */
7013 #define IABR0_ADC_EN (0x1 << 14 ) /* EN */
7014 
7015 /* IABR0[T1] - */
7016 #define IABR0_T1_MSK (0x1 << 13 )
7017 #define IABR0_T1 (0x1 << 13 )
7018 #define IABR0_T1_DIS (0x0 << 13 ) /* DIS */
7019 #define IABR0_T1_EN (0x1 << 13 ) /* EN */
7020 
7021 /* IABR0[T0] - */
7022 #define IABR0_T0_MSK (0x1 << 12 )
7023 #define IABR0_T0 (0x1 << 12 )
7024 #define IABR0_T0_DIS (0x0 << 12 ) /* DIS */
7025 #define IABR0_T0_EN (0x1 << 12 ) /* EN */
7026 
7027 /* IABR0[T3] - */
7028 #define IABR0_T3_MSK (0x1 << 10 )
7029 #define IABR0_T3 (0x1 << 10 )
7030 #define IABR0_T3_DIS (0x0 << 10 ) /* DIS */
7031 #define IABR0_T3_EN (0x1 << 10 ) /* EN */
7032 
7033 /* IABR0[EXTINT8] - */
7034 #define IABR0_EXTINT8_MSK (0x1 << 9 )
7035 #define IABR0_EXTINT8 (0x1 << 9 )
7036 #define IABR0_EXTINT8_DIS (0x0 << 9 ) /* DIS */
7037 #define IABR0_EXTINT8_EN (0x1 << 9 ) /* EN */
7038 
7039 /* IABR0[EXTINT7] - */
7040 #define IABR0_EXTINT7_MSK (0x1 << 8 )
7041 #define IABR0_EXTINT7 (0x1 << 8 )
7042 #define IABR0_EXTINT7_DIS (0x0 << 8 ) /* DIS */
7043 #define IABR0_EXTINT7_EN (0x1 << 8 ) /* EN */
7044 
7045 /* IABR0[EXTINT6] - */
7046 #define IABR0_EXTINT6_MSK (0x1 << 7 )
7047 #define IABR0_EXTINT6 (0x1 << 7 )
7048 #define IABR0_EXTINT6_DIS (0x0 << 7 ) /* DIS */
7049 #define IABR0_EXTINT6_EN (0x1 << 7 ) /* EN */
7050 
7051 /* IABR0[EXTINT5] - */
7052 #define IABR0_EXTINT5_MSK (0x1 << 6 )
7053 #define IABR0_EXTINT5 (0x1 << 6 )
7054 #define IABR0_EXTINT5_DIS (0x0 << 6 ) /* DIS */
7055 #define IABR0_EXTINT5_EN (0x1 << 6 ) /* EN */
7056 
7057 /* IABR0[EXTINT4] - */
7058 #define IABR0_EXTINT4_MSK (0x1 << 5 )
7059 #define IABR0_EXTINT4 (0x1 << 5 )
7060 #define IABR0_EXTINT4_DIS (0x0 << 5 ) /* DIS */
7061 #define IABR0_EXTINT4_EN (0x1 << 5 ) /* EN */
7062 
7063 /* IABR0[EXTINT3] - */
7064 #define IABR0_EXTINT3_MSK (0x1 << 4 )
7065 #define IABR0_EXTINT3 (0x1 << 4 )
7066 #define IABR0_EXTINT3_DIS (0x0 << 4 ) /* DIS */
7067 #define IABR0_EXTINT3_EN (0x1 << 4 ) /* EN */
7068 
7069 /* IABR0[EXTINT2] - */
7070 #define IABR0_EXTINT2_MSK (0x1 << 3 )
7071 #define IABR0_EXTINT2 (0x1 << 3 )
7072 #define IABR0_EXTINT2_DIS (0x0 << 3 ) /* DIS */
7073 #define IABR0_EXTINT2_EN (0x1 << 3 ) /* EN */
7074 
7075 /* IABR0[EXTINT1] - */
7076 #define IABR0_EXTINT1_MSK (0x1 << 2 )
7077 #define IABR0_EXTINT1 (0x1 << 2 )
7078 #define IABR0_EXTINT1_DIS (0x0 << 2 ) /* DIS */
7079 #define IABR0_EXTINT1_EN (0x1 << 2 ) /* EN */
7080 
7081 /* IABR0[EXTINT0] - */
7082 #define IABR0_EXTINT0_MSK (0x1 << 1 )
7083 #define IABR0_EXTINT0 (0x1 << 1 )
7084 #define IABR0_EXTINT0_DIS (0x0 << 1 ) /* DIS */
7085 #define IABR0_EXTINT0_EN (0x1 << 1 ) /* EN */
7086 
7087 /* IABR0[T2] - */
7088 #define IABR0_T2_MSK (0x1 << 0 )
7089 #define IABR0_T2 (0x1 << 0 )
7090 #define IABR0_T2_DIS (0x0 << 0 ) /* DIS */
7091 #define IABR0_T2_EN (0x1 << 0 ) /* EN */
7092 
7093 /* Reset Value for IABR1*/
7094 #define IABR1_RVAL 0x0
7095 
7096 /* IABR1[PWM3] - */
7097 #define IABR1_PWM3_MSK (0x1 << 9 )
7098 #define IABR1_PWM3 (0x1 << 9 )
7099 #define IABR1_PWM3_DIS (0x0 << 9 ) /* DIS */
7100 #define IABR1_PWM3_EN (0x1 << 9 ) /* EN */
7101 
7102 /* IABR1[PWM2] - */
7103 #define IABR1_PWM2_MSK (0x1 << 8 )
7104 #define IABR1_PWM2 (0x1 << 8 )
7105 #define IABR1_PWM2_DIS (0x0 << 8 ) /* DIS */
7106 #define IABR1_PWM2_EN (0x1 << 8 ) /* EN */
7107 
7108 /* IABR1[PWM1] - */
7109 #define IABR1_PWM1_MSK (0x1 << 7 )
7110 #define IABR1_PWM1 (0x1 << 7 )
7111 #define IABR1_PWM1_DIS (0x0 << 7 ) /* DIS */
7112 #define IABR1_PWM1_EN (0x1 << 7 ) /* EN */
7113 
7114 /* IABR1[PWM0] - */
7115 #define IABR1_PWM0_MSK (0x1 << 6 )
7116 #define IABR1_PWM0 (0x1 << 6 )
7117 #define IABR1_PWM0_DIS (0x0 << 6 ) /* DIS */
7118 #define IABR1_PWM0_EN (0x1 << 6 ) /* EN */
7119 
7120 /* IABR1[PWMTRIP] - */
7121 #define IABR1_PWMTRIP_MSK (0x1 << 5 )
7122 #define IABR1_PWMTRIP (0x1 << 5 )
7123 #define IABR1_PWMTRIP_DIS (0x0 << 5 ) /* DIS */
7124 #define IABR1_PWMTRIP_EN (0x1 << 5 ) /* EN */
7125 
7126 /* IABR1[DMASPI0RX] - */
7127 #define IABR1_DMASPI0RX_MSK (0x1 << 4 )
7128 #define IABR1_DMASPI0RX (0x1 << 4 )
7129 #define IABR1_DMASPI0RX_DIS (0x0 << 4 ) /* DIS */
7130 #define IABR1_DMASPI0RX_EN (0x1 << 4 ) /* EN */
7131 
7132 /* IABR1[DMASPI0TX] - */
7133 #define IABR1_DMASPI0TX_MSK (0x1 << 3 )
7134 #define IABR1_DMASPI0TX (0x1 << 3 )
7135 #define IABR1_DMASPI0TX_DIS (0x0 << 3 ) /* DIS */
7136 #define IABR1_DMASPI0TX_EN (0x1 << 3 ) /* EN */
7137 
7138 /* IABR1[DMAADC] - */
7139 #define IABR1_DMAADC_MSK (0x1 << 2 )
7140 #define IABR1_DMAADC (0x1 << 2 )
7141 #define IABR1_DMAADC_DIS (0x0 << 2 ) /* DIS */
7142 #define IABR1_DMAADC_EN (0x1 << 2 ) /* EN */
7143 
7144 /* Reset Value for IPR0*/
7145 #define IPR0_RVAL 0x0
7146 
7147 /* IPR0[EXTINT2] - */
7148 #define IPR0_EXTINT2_MSK (0xFF << 24 )
7149 
7150 /* IPR0[EXTINT1] - */
7151 #define IPR0_EXTINT1_MSK (0xFF << 16 )
7152 
7153 /* IPR0[EXTINT0] - Priority of interrupt number 1 */
7154 #define IPR0_EXTINT0_MSK (0xFF << 8 )
7155 
7156 /* IPR0[T2] - Priority of interrupt number 0 */
7157 #define IPR0_T2_MSK (0xFF << 0 )
7158 
7159 /* Reset Value for IPR1*/
7160 #define IPR1_RVAL 0x0
7161 
7162 /* IPR1[EXTINT6] - */
7163 #define IPR1_EXTINT6_MSK (0xFF << 24 )
7164 
7165 /* IPR1[EXTINT5] - */
7166 #define IPR1_EXTINT5_MSK (0xFF << 16 )
7167 
7168 /* IPR1[EXTINT4] - */
7169 #define IPR1_EXTINT4_MSK (0xFF << 8 )
7170 
7171 /* IPR1[EXTINT3] - */
7172 #define IPR1_EXTINT3_MSK (0xFF << 0 )
7173 
7174 /* Reset Value for IPR2*/
7175 #define IPR2_RVAL 0x0
7176 
7177 /* IPR2[T3] - */
7178 #define IPR2_T3_MSK (0xFF << 16 )
7179 
7180 /* IPR2[EXTINT8] - */
7181 #define IPR2_EXTINT8_MSK (0xFF << 8 )
7182 
7183 /* IPR2[EXTINT7] - */
7184 #define IPR2_EXTINT7_MSK (0xFF << 0 )
7185 
7186 /* Reset Value for IPR3*/
7187 #define IPR3_RVAL 0x0
7188 
7189 /* IPR3[FEE] - */
7190 #define IPR3_FEE_MSK (0xFF << 24 )
7191 
7192 /* IPR3[ADC] - */
7193 #define IPR3_ADC_MSK (0xFF << 16 )
7194 
7195 /* IPR3[T1] - */
7196 #define IPR3_T1_MSK (0xFF << 8 )
7197 
7198 /* IPR3[T0] - */
7199 #define IPR3_T0_MSK (0xFF << 0 )
7200 
7201 /* Reset Value for IPR4*/
7202 #define IPR4_RVAL 0x0
7203 
7204 /* IPR4[I2CS] - */
7205 #define IPR4_I2CS_MSK (0xFF << 24 )
7206 
7207 /* IPR4[SPI1] - */
7208 #define IPR4_SPI1_MSK (0xFF << 16 )
7209 
7210 /* IPR4[SPI0] - */
7211 #define IPR4_SPI0_MSK (0xFF << 8 )
7212 
7213 /* IPR4[UART] - */
7214 #define IPR4_UART_MSK (0xFF << 0 )
7215 
7216 /* Reset Value for IPR5*/
7217 #define IPR5_RVAL 0x0
7218 
7219 /* IPR5[DMASPI1TX] - */
7220 #define IPR5_DMASPI1TX_MSK (0xFF << 24 )
7221 
7222 /* IPR5[DMAERROR] - */
7223 #define IPR5_DMAERROR_MSK (0xFF << 16 )
7224 
7225 /* IPR5[I2CM] - I2CM */
7226 #define IPR5_I2CM_MSK (0xFF << 0 )
7227 
7228 /* Reset Value for IPR6*/
7229 #define IPR6_RVAL 0x0
7230 
7231 /* IPR6[DMAI2CSTX] - */
7232 #define IPR6_DMAI2CSTX_MSK (0xFF << 24 )
7233 
7234 /* IPR6[DMAUARTRX] - */
7235 #define IPR6_DMAUARTRX_MSK (0xFF << 16 )
7236 
7237 /* IPR6[DMAUARTTX] - */
7238 #define IPR6_DMAUARTTX_MSK (0xFF << 8 )
7239 
7240 /* IPR6[DMASPI1RX] - */
7241 #define IPR6_DMASPI1RX_MSK (0xFF << 0 )
7242 
7243 /* Reset Value for IPR7*/
7244 #define IPR7_RVAL 0x0
7245 
7246 /* IPR7[DMAI2CMRX] - */
7247 #define IPR7_DMAI2CMRX_MSK (0xFF << 16 )
7248 
7249 /* IPR7[DMAI2CMTX] - */
7250 #define IPR7_DMAI2CMTX_MSK (0xFF << 8 )
7251 
7252 /* IPR7[DMAI2CSRX] - */
7253 #define IPR7_DMAI2CSRX_MSK (0xFF << 0 )
7254 
7255 /* Reset Value for IPR8*/
7256 #define IPR8_RVAL 0x0
7257 
7258 /* IPR8[DMASPI0TX] - */
7259 #define IPR8_DMASPI0TX_MSK (0xFF << 24 )
7260 
7261 /* IPR8[DMAADC] - */
7262 #define IPR8_DMAADC_MSK (0xFF << 16 )
7263 
7264 /* Reset Value for IPR9*/
7265 #define IPR9_RVAL 0x0
7266 
7267 /* IPR9[PWM1] - */
7268 #define IPR9_PWM1_MSK (0xFF << 24 )
7269 
7270 /* IPR9[PWM0] - */
7271 #define IPR9_PWM0_MSK (0xFF << 16 )
7272 
7273 /* IPR9[PWMTRIP] - */
7274 #define IPR9_PWMTRIP_MSK (0xFF << 8 )
7275 
7276 /* IPR9[DMASPI0RX] - */
7277 #define IPR9_DMASPI0RX_MSK (0xFF << 0 )
7278 
7279 /* Reset Value for IPR10*/
7280 #define IPR10_RVAL 0x0
7281 
7282 /* IPR10[PWM3] - */
7283 #define IPR10_PWM3_MSK (0xFF << 8 )
7284 
7285 /* IPR10[PWM2] - */
7286 #define IPR10_PWM2_MSK (0xFF << 0 )
7287 
7288 /* Reset Value for CPUID*/
7289 #define CPUID_RVAL 0x412FC230
7290 
7291 /* CPUID[IMPLEMENTER] - Indicates implementor */
7292 #define CPUID_IMPLEMENTER_MSK (0xFF << 24 )
7293 
7294 /* CPUID[VARIANT] - Indicates processor revision */
7295 #define CPUID_VARIANT_MSK (0xF << 20 )
7296 
7297 /* CPUID[PARTNO] - Indicates part number */
7298 #define CPUID_PARTNO_MSK (0xFFF << 4 )
7299 
7300 /* CPUID[REVISION] - Indicates patch release */
7301 #define CPUID_REVISION_MSK (0xF << 0 )
7302 
7303 /* Reset Value for ICSR*/
7304 #define ICSR_RVAL 0x0
7305 
7306 /* ICSR[NMIPENDSET] - Setting this bit will activate an NMI */
7307 #define ICSR_NMIPENDSET_MSK (0x1 << 31 )
7308 #define ICSR_NMIPENDSET (0x1 << 31 )
7309 #define ICSR_NMIPENDSET_DIS (0x0 << 31 ) /* DIS */
7310 #define ICSR_NMIPENDSET_EN (0x1 << 31 ) /* EN */
7311 
7312 /* ICSR[PENDSVSET] - Set a pending PendSV interrupt */
7313 #define ICSR_PENDSVSET_MSK (0x1 << 28 )
7314 #define ICSR_PENDSVSET (0x1 << 28 )
7315 #define ICSR_PENDSVSET_DIS (0x0 << 28 ) /* DIS */
7316 #define ICSR_PENDSVSET_EN (0x1 << 28 ) /* EN */
7317 
7318 /* ICSR[PENDSVCLR] - Clear a pending PendSV interrupt */
7319 #define ICSR_PENDSVCLR_MSK (0x1 << 27 )
7320 #define ICSR_PENDSVCLR (0x1 << 27 )
7321 #define ICSR_PENDSVCLR_DIS (0x0 << 27 ) /* DIS */
7322 #define ICSR_PENDSVCLR_EN (0x1 << 27 ) /* EN */
7323 
7324 /* ICSR[PENDSTSET] - Set a pending SysTick. Reads back with current state */
7325 #define ICSR_PENDSTSET_MSK (0x1 << 26 )
7326 #define ICSR_PENDSTSET (0x1 << 26 )
7327 #define ICSR_PENDSTSET_DIS (0x0 << 26 ) /* DIS */
7328 #define ICSR_PENDSTSET_EN (0x1 << 26 ) /* EN */
7329 
7330 /* ICSR[PENDSTCLR] - Clear a pending SysTick */
7331 #define ICSR_PENDSTCLR_MSK (0x1 << 25 )
7332 #define ICSR_PENDSTCLR (0x1 << 25 )
7333 #define ICSR_PENDSTCLR_DIS (0x0 << 25 ) /* DIS */
7334 #define ICSR_PENDSTCLR_EN (0x1 << 25 ) /* EN */
7335 
7336 /* ICSR[ISRPREEMPT] - If set, a pending exception will be serviced on exit from the debug halt state */
7337 #define ICSR_ISRPREEMPT_MSK (0x1 << 23 )
7338 #define ICSR_ISRPREEMPT (0x1 << 23 )
7339 #define ICSR_ISRPREEMPT_DIS (0x0 << 23 ) /* DIS */
7340 #define ICSR_ISRPREEMPT_EN (0x1 << 23 ) /* EN */
7341 
7342 /* ICSR[ISRPENDING] - Indicates if an external configurable is pending */
7343 #define ICSR_ISRPENDING_MSK (0x1 << 22 )
7344 #define ICSR_ISRPENDING (0x1 << 22 )
7345 #define ICSR_ISRPENDING_DIS (0x0 << 22 ) /* DIS */
7346 #define ICSR_ISRPENDING_EN (0x1 << 22 ) /* EN */
7347 
7348 /* ICSR[VECTPENDING] - Indicates the exception number for the highest priority pending exception */
7349 #define ICSR_VECTPENDING_MSK (0x1FF << 12 )
7350 
7351 /* ICSR[RETTOBASE] - */
7352 #define ICSR_RETTOBASE_MSK (0x1 << 11 )
7353 #define ICSR_RETTOBASE (0x1 << 11 )
7354 #define ICSR_RETTOBASE_DIS (0x0 << 11 ) /* DIS */
7355 #define ICSR_RETTOBASE_EN (0x1 << 11 ) /* EN */
7356 
7357 /* ICSR[VECTACTIVE] - Thread mode, or exception number */
7358 #define ICSR_VECTACTIVE_MSK (0x1FF << 0 )
7359 
7360 /* Reset Value for VTOR*/
7361 #define VTOR_RVAL 0x0
7362 
7363 /* VTOR[TBLBASE] - */
7364 #define VTOR_TBLBASE_MSK (0x1 << 29 )
7365 #define VTOR_TBLBASE (0x1 << 29 )
7366 #define VTOR_TBLBASE_DIS (0x0 << 29 ) /* DIS */
7367 #define VTOR_TBLBASE_EN (0x1 << 29 ) /* EN */
7368 
7369 /* VTOR[TBLOFF] - */
7370 #define VTOR_TBLOFF_MSK (0x3FFFFF << 7 )
7371 
7372 /* Reset Value for AIRCR*/
7373 #define AIRCR_RVAL 0xFA050000
7374 
7375 /* AIRCR[VECTKEYSTAT] - Reads as 0xFA05 */
7376 #define AIRCR_VECTKEYSTAT_MSK (0xFFFF << 16 )
7377 
7378 /* AIRCR[ENDIANESS] - This bit is static or configured by a hardware input on reset */
7379 #define AIRCR_ENDIANESS_MSK (0x1 << 15 )
7380 #define AIRCR_ENDIANESS (0x1 << 15 )
7381 #define AIRCR_ENDIANESS_DIS (0x0 << 15 ) /* DIS */
7382 #define AIRCR_ENDIANESS_EN (0x1 << 15 ) /* EN */
7383 
7384 /* AIRCR[PRIGROUP] - Priority grouping position */
7385 #define AIRCR_PRIGROUP_MSK (0x7 << 8 )
7386 
7387 /* AIRCR[SYSRESETREQ] - System Reset Request */
7388 #define AIRCR_SYSRESETREQ_MSK (0x1 << 2 )
7389 #define AIRCR_SYSRESETREQ (0x1 << 2 )
7390 #define AIRCR_SYSRESETREQ_DIS (0x0 << 2 ) /* DIS */
7391 #define AIRCR_SYSRESETREQ_EN (0x1 << 2 ) /* EN */
7392 
7393 /* AIRCR[VECTCLRACTIVE] - Clears all active state information for fixed and configurable exceptions */
7394 #define AIRCR_VECTCLRACTIVE_MSK (0x1 << 1 )
7395 #define AIRCR_VECTCLRACTIVE (0x1 << 1 )
7396 #define AIRCR_VECTCLRACTIVE_DIS (0x0 << 1 ) /* DIS */
7397 #define AIRCR_VECTCLRACTIVE_EN (0x1 << 1 ) /* EN */
7398 
7399 /* AIRCR[VECTRESET] - Local system reset */
7400 #define AIRCR_VECTRESET_MSK (0x1 << 0 )
7401 #define AIRCR_VECTRESET (0x1 << 0 )
7402 #define AIRCR_VECTRESET_DIS (0x0 << 0 ) /* DIS */
7403 #define AIRCR_VECTRESET_EN (0x1 << 0 ) /* EN */
7404 
7405 /* Reset Value for SCR*/
7406 #define SCR_RVAL 0x0
7407 
7408 /* SCR[SEVONPEND] - */
7409 #define SCR_SEVONPEND_MSK (0x1 << 4 )
7410 #define SCR_SEVONPEND (0x1 << 4 )
7411 #define SCR_SEVONPEND_DIS (0x0 << 4 ) /* DIS */
7412 #define SCR_SEVONPEND_EN (0x1 << 4 ) /* EN */
7413 
7414 /* SCR[SLEEPDEEP] - Sleep deep bit */
7415 #define SCR_SLEEPDEEP_MSK (0x1 << 2 )
7416 #define SCR_SLEEPDEEP (0x1 << 2 )
7417 #define SCR_SLEEPDEEP_DIS (0x0 << 2 ) /* DIS */
7418 #define SCR_SLEEPDEEP_EN (0x1 << 2 ) /* EN */
7419 
7420 /* SCR[SLEEPONEXIT] - Sleep on exit when returning from handler mode to thread mode */
7421 #define SCR_SLEEPONEXIT_MSK (0x1 << 1 )
7422 #define SCR_SLEEPONEXIT (0x1 << 1 )
7423 #define SCR_SLEEPONEXIT_DIS (0x0 << 1 ) /* DIS */
7424 #define SCR_SLEEPONEXIT_EN (0x1 << 1 ) /* EN */
7425 
7426 /* Reset Value for CCR*/
7427 #define CCR_RVAL 0x200
7428 
7429 /* CCR[STKALIGN] - */
7430 #define CCR_STKALIGN_MSK (0x1 << 9 )
7431 #define CCR_STKALIGN (0x1 << 9 )
7432 #define CCR_STKALIGN_DIS (0x0 << 9 ) /* DIS */
7433 #define CCR_STKALIGN_EN (0x1 << 9 ) /* EN */
7434 
7435 /* CCR[BFHFNMIGN] - */
7436 #define CCR_BFHFNMIGN_MSK (0x1 << 8 )
7437 #define CCR_BFHFNMIGN (0x1 << 8 )
7438 #define CCR_BFHFNMIGN_DIS (0x0 << 8 ) /* DIS */
7439 #define CCR_BFHFNMIGN_EN (0x1 << 8 ) /* EN */
7440 
7441 /* CCR[DIV0TRP] - */
7442 #define CCR_DIV0TRP_MSK (0x1 << 4 )
7443 #define CCR_DIV0TRP (0x1 << 4 )
7444 #define CCR_DIV0TRP_DIS (0x0 << 4 ) /* DIS */
7445 #define CCR_DIV0TRP_EN (0x1 << 4 ) /* EN */
7446 
7447 /* CCR[UNALIGNTRP] - */
7448 #define CCR_UNALIGNTRP_MSK (0x1 << 3 )
7449 #define CCR_UNALIGNTRP (0x1 << 3 )
7450 #define CCR_UNALIGNTRP_DIS (0x0 << 3 ) /* DIS */
7451 #define CCR_UNALIGNTRP_EN (0x1 << 3 ) /* EN */
7452 
7453 /* CCR[USERSETMPEND] - */
7454 #define CCR_USERSETMPEND_MSK (0x1 << 1 )
7455 #define CCR_USERSETMPEND (0x1 << 1 )
7456 #define CCR_USERSETMPEND_DIS (0x0 << 1 ) /* DIS */
7457 #define CCR_USERSETMPEND_EN (0x1 << 1 ) /* EN */
7458 
7459 /* CCR[NONBASETHRDENA] - */
7460 #define CCR_NONBASETHRDENA_MSK (0x1 << 0 )
7461 #define CCR_NONBASETHRDENA (0x1 << 0 )
7462 #define CCR_NONBASETHRDENA_DIS (0x0 << 0 ) /* DIS */
7463 #define CCR_NONBASETHRDENA_EN (0x1 << 0 ) /* EN */
7464 
7465 /* Reset Value for SHPR1*/
7466 #define SHPR1_RVAL 0x0
7467 
7468 /* SHPR1[PRI7] - Priority of system handler 7 - reserved */
7469 #define SHPR1_PRI7_MSK (0xFF << 24 )
7470 
7471 /* SHPR1[PRI6] - Priority of system handler 6 - UsageFault */
7472 #define SHPR1_PRI6_MSK (0xFF << 16 )
7473 
7474 /* SHPR1[PRI5] - Priority of system handler 5 - BusFault */
7475 #define SHPR1_PRI5_MSK (0xFF << 8 )
7476 
7477 /* SHPR1[PRI4] - Priority of system handler 4 - MemManage */
7478 #define SHPR1_PRI4_MSK (0xFF << 0 )
7479 
7480 /* Reset Value for SHPR2*/
7481 #define SHPR2_RVAL 0x0
7482 
7483 /* SHPR2[PRI11] - Priority of system handler 11 - SVCall */
7484 #define SHPR2_PRI11_MSK (0xFF << 24 )
7485 
7486 /* SHPR2[PRI10] - Priority of system handler 10 - reserved */
7487 #define SHPR2_PRI10_MSK (0xFF << 16 )
7488 
7489 /* SHPR2[PRI9] - Priority of system handler 9 - reserved */
7490 #define SHPR2_PRI9_MSK (0xFF << 8 )
7491 
7492 /* SHPR2[PRI8] - Priority of system handler 8 - reserved */
7493 #define SHPR2_PRI8_MSK (0xFF << 0 )
7494 
7495 /* Reset Value for SHPR3*/
7496 #define SHPR3_RVAL 0x0
7497 
7498 /* SHPR3[PRI15] - Priority of system handler 15 - SysTick */
7499 #define SHPR3_PRI15_MSK (0xFF << 24 )
7500 
7501 /* SHPR3[PRI14] - Priority of system handler 14 - PendSV */
7502 #define SHPR3_PRI14_MSK (0xFF << 16 )
7503 
7504 /* SHPR3[PRI13] - Priority of system handler 13 - reserved */
7505 #define SHPR3_PRI13_MSK (0xFF << 8 )
7506 
7507 /* SHPR3[PRI12] - Priority of system handler 12 - DebugMonitor */
7508 #define SHPR3_PRI12_MSK (0xFF << 0 )
7509 
7510 /* Reset Value for SHCSR*/
7511 #define SHCSR_RVAL 0x0
7512 
7513 /* SHCSR[USGFAULTENA] - Enable for UsageFault */
7514 #define SHCSR_USGFAULTENA_MSK (0x1 << 18 )
7515 #define SHCSR_USGFAULTENA (0x1 << 18 )
7516 #define SHCSR_USGFAULTENA_DIS (0x0 << 18 ) /* DIS */
7517 #define SHCSR_USGFAULTENA_EN (0x1 << 18 ) /* EN */
7518 
7519 /* SHCSR[BUSFAULTENA] - Enable for BusFault. */
7520 #define SHCSR_BUSFAULTENA_MSK (0x1 << 17 )
7521 #define SHCSR_BUSFAULTENA (0x1 << 17 )
7522 #define SHCSR_BUSFAULTENA_DIS (0x0 << 17 ) /* DIS */
7523 #define SHCSR_BUSFAULTENA_EN (0x1 << 17 ) /* EN */
7524 
7525 /* SHCSR[MEMFAULTENA] - Enable for MemManage fault. */
7526 #define SHCSR_MEMFAULTENA_MSK (0x1 << 16 )
7527 #define SHCSR_MEMFAULTENA (0x1 << 16 )
7528 #define SHCSR_MEMFAULTENA_DIS (0x0 << 16 ) /* DIS */
7529 #define SHCSR_MEMFAULTENA_EN (0x1 << 16 ) /* EN */
7530 
7531 /* SHCSR[SVCALLPENDED] - Reads as 1 if SVCall is Pending */
7532 #define SHCSR_SVCALLPENDED_MSK (0x1 << 15 )
7533 #define SHCSR_SVCALLPENDED (0x1 << 15 )
7534 #define SHCSR_SVCALLPENDED_DIS (0x0 << 15 ) /* DIS */
7535 #define SHCSR_SVCALLPENDED_EN (0x1 << 15 ) /* EN */
7536 
7537 /* SHCSR[BUSFAULTPENDED] - Reads as 1 if BusFault is Pending */
7538 #define SHCSR_BUSFAULTPENDED_MSK (0x1 << 14 )
7539 #define SHCSR_BUSFAULTPENDED (0x1 << 14 )
7540 #define SHCSR_BUSFAULTPENDED_DIS (0x0 << 14 ) /* DIS */
7541 #define SHCSR_BUSFAULTPENDED_EN (0x1 << 14 ) /* EN */
7542 
7543 /* SHCSR[MEMFAULTPENDED] - Reads as 1 if MemManage is Pending */
7544 #define SHCSR_MEMFAULTPENDED_MSK (0x1 << 13 )
7545 #define SHCSR_MEMFAULTPENDED (0x1 << 13 )
7546 #define SHCSR_MEMFAULTPENDED_DIS (0x0 << 13 ) /* DIS */
7547 #define SHCSR_MEMFAULTPENDED_EN (0x1 << 13 ) /* EN */
7548 
7549 /* SHCSR[USGFAULTPENDED] - Reads as 1 if UsageFault is Pending */
7550 #define SHCSR_USGFAULTPENDED_MSK (0x1 << 12 )
7551 #define SHCSR_USGFAULTPENDED (0x1 << 12 )
7552 #define SHCSR_USGFAULTPENDED_DIS (0x0 << 12 ) /* DIS */
7553 #define SHCSR_USGFAULTPENDED_EN (0x1 << 12 ) /* EN */
7554 
7555 /* SHCSR[SYSTICKACT] - Reads as 1 if SysTick is Active */
7556 #define SHCSR_SYSTICKACT_MSK (0x1 << 11 )
7557 #define SHCSR_SYSTICKACT (0x1 << 11 )
7558 #define SHCSR_SYSTICKACT_DIS (0x0 << 11 ) /* DIS */
7559 #define SHCSR_SYSTICKACT_EN (0x1 << 11 ) /* EN */
7560 
7561 /* SHCSR[PENDSVACT] - Reads as 1 if PendSV is Active */
7562 #define SHCSR_PENDSVACT_MSK (0x1 << 10 )
7563 #define SHCSR_PENDSVACT (0x1 << 10 )
7564 #define SHCSR_PENDSVACT_DIS (0x0 << 10 ) /* DIS */
7565 #define SHCSR_PENDSVACT_EN (0x1 << 10 ) /* EN */
7566 
7567 /* SHCSR[MONITORACT] - Reads as 1 if the Monitor is Active */
7568 #define SHCSR_MONITORACT_MSK (0x1 << 8 )
7569 #define SHCSR_MONITORACT (0x1 << 8 )
7570 #define SHCSR_MONITORACT_DIS (0x0 << 8 ) /* DIS */
7571 #define SHCSR_MONITORACT_EN (0x1 << 8 ) /* EN */
7572 
7573 /* SHCSR[SVCALLACT] - Reads as 1 if SVCall is Active */
7574 #define SHCSR_SVCALLACT_MSK (0x1 << 7 )
7575 #define SHCSR_SVCALLACT (0x1 << 7 )
7576 #define SHCSR_SVCALLACT_DIS (0x0 << 7 ) /* DIS */
7577 #define SHCSR_SVCALLACT_EN (0x1 << 7 ) /* EN */
7578 
7579 /* SHCSR[USGFAULTACT] - Reads as 1 if UsageFault is Active. */
7580 #define SHCSR_USGFAULTACT_MSK (0x1 << 3 )
7581 #define SHCSR_USGFAULTACT (0x1 << 3 )
7582 #define SHCSR_USGFAULTACT_DIS (0x0 << 3 ) /* DIS */
7583 #define SHCSR_USGFAULTACT_EN (0x1 << 3 ) /* EN */
7584 
7585 /* SHCSR[BUSFAULTACT] - Reads as 1 if BusFault is Active. */
7586 #define SHCSR_BUSFAULTACT_MSK (0x1 << 1 )
7587 #define SHCSR_BUSFAULTACT (0x1 << 1 )
7588 #define SHCSR_BUSFAULTACT_DIS (0x0 << 1 ) /* DIS */
7589 #define SHCSR_BUSFAULTACT_EN (0x1 << 1 ) /* EN */
7590 
7591 /* SHCSR[MEMFAULTACT] - Reads as 1 if MemManage is Active */
7592 #define SHCSR_MEMFAULTACT_MSK (0x1 << 0 )
7593 #define SHCSR_MEMFAULTACT (0x1 << 0 )
7594 #define SHCSR_MEMFAULTACT_DIS (0x0 << 0 ) /* DIS */
7595 #define SHCSR_MEMFAULTACT_EN (0x1 << 0 ) /* EN */
7596 
7597 /* Reset Value for CFSR*/
7598 #define CFSR_RVAL 0x0
7599 
7600 /* CFSR[DIVBYZERO] - Divide by zero error */
7601 #define CFSR_DIVBYZERO_MSK (0x1 << 25 )
7602 #define CFSR_DIVBYZERO (0x1 << 25 )
7603 #define CFSR_DIVBYZERO_DIS (0x0 << 25 ) /* DIS */
7604 #define CFSR_DIVBYZERO_EN (0x1 << 25 ) /* EN */
7605 
7606 /* CFSR[UNALIGNED] - Unaligned access error */
7607 #define CFSR_UNALIGNED_MSK (0x1 << 24 )
7608 #define CFSR_UNALIGNED (0x1 << 24 )
7609 #define CFSR_UNALIGNED_DIS (0x0 << 24 ) /* DIS */
7610 #define CFSR_UNALIGNED_EN (0x1 << 24 ) /* EN */
7611 
7612 /* CFSR[NOCP] - Coprocessor access error */
7613 #define CFSR_NOCP_MSK (0x1 << 19 )
7614 #define CFSR_NOCP (0x1 << 19 )
7615 #define CFSR_NOCP_DIS (0x0 << 19 ) /* DIS */
7616 #define CFSR_NOCP_EN (0x1 << 19 ) /* EN */
7617 
7618 /* CFSR[INVPC] - Integrity check error on EXC_RETURN */
7619 #define CFSR_INVPC_MSK (0x1 << 18 )
7620 #define CFSR_INVPC (0x1 << 18 )
7621 #define CFSR_INVPC_DIS (0x0 << 18 ) /* DIS */
7622 #define CFSR_INVPC_EN (0x1 << 18 ) /* EN */
7623 
7624 /* CFSR[INVSTATE] - Invalid EPSR.T bit or illegal EPSR.IT bits for executing */
7625 #define CFSR_INVSTATE_MSK (0x1 << 17 )
7626 #define CFSR_INVSTATE (0x1 << 17 )
7627 #define CFSR_INVSTATE_DIS (0x0 << 17 ) /* DIS */
7628 #define CFSR_INVSTATE_EN (0x1 << 17 ) /* EN */
7629 
7630 /* CFSR[UNDEFINSTR] - Undefined instruction executed */
7631 #define CFSR_UNDEFINSTR_MSK (0x1 << 16 )
7632 #define CFSR_UNDEFINSTR (0x1 << 16 )
7633 #define CFSR_UNDEFINSTR_DIS (0x0 << 16 ) /* DIS */
7634 #define CFSR_UNDEFINSTR_EN (0x1 << 16 ) /* EN */
7635 
7636 /* CFSR[BFARVALID] - This bit is set if the BFAR register has valid contents */
7637 #define CFSR_BFARVALID_MSK (0x1 << 15 )
7638 #define CFSR_BFARVALID (0x1 << 15 )
7639 #define CFSR_BFARVALID_DIS (0x0 << 15 ) /* DIS */
7640 #define CFSR_BFARVALID_EN (0x1 << 15 ) /* EN */
7641 
7642 /* CFSR[STKERR] - This bit indicates a derived bus fault has occurred on exception entry */
7643 #define CFSR_STKERR_MSK (0x1 << 12 )
7644 #define CFSR_STKERR (0x1 << 12 )
7645 #define CFSR_STKERR_DIS (0x0 << 12 ) /* DIS */
7646 #define CFSR_STKERR_EN (0x1 << 12 ) /* EN */
7647 
7648 /* CFSR[UNSTKERR] - This bit indicates a derived bus fault has occurred on exception return */
7649 #define CFSR_UNSTKERR_MSK (0x1 << 11 )
7650 #define CFSR_UNSTKERR (0x1 << 11 )
7651 #define CFSR_UNSTKERR_DIS (0x0 << 11 ) /* DIS */
7652 #define CFSR_UNSTKERR_EN (0x1 << 11 ) /* EN */
7653 
7654 /* CFSR[IMPRECISERR] - Imprecise data access error */
7655 #define CFSR_IMPRECISERR_MSK (0x1 << 10 )
7656 #define CFSR_IMPRECISERR (0x1 << 10 )
7657 #define CFSR_IMPRECISERR_DIS (0x0 << 10 ) /* DIS */
7658 #define CFSR_IMPRECISERR_EN (0x1 << 10 ) /* EN */
7659 
7660 /* CFSR[PRECISERR] - Precise data access error. The BFAR is written with the faulting address */
7661 #define CFSR_PRECISERR_MSK (0x1 << 9 )
7662 #define CFSR_PRECISERR (0x1 << 9 )
7663 #define CFSR_PRECISERR_DIS (0x0 << 9 ) /* DIS */
7664 #define CFSR_PRECISERR_EN (0x1 << 9 ) /* EN */
7665 
7666 /* CFSR[IBUSERR] - This bit indicates a bus fault on an instruction prefetch */
7667 #define CFSR_IBUSERR_MSK (0x1 << 8 )
7668 #define CFSR_IBUSERR (0x1 << 8 )
7669 #define CFSR_IBUSERR_DIS (0x0 << 8 ) /* DIS */
7670 #define CFSR_IBUSERR_EN (0x1 << 8 ) /* EN */
7671 
7672 /* CFSR[MMARVALID] - This bit is set if the MMAR register has valid contents. */
7673 #define CFSR_MMARVALID_MSK (0x1 << 7 )
7674 #define CFSR_MMARVALID (0x1 << 7 )
7675 #define CFSR_MMARVALID_DIS (0x0 << 7 ) /* DIS */
7676 #define CFSR_MMARVALID_EN (0x1 << 7 ) /* EN */
7677 
7678 /* CFSR[MSTKERR] - A derived MemManage fault has occurred on exception entry */
7679 #define CFSR_MSTKERR_MSK (0x1 << 4 )
7680 #define CFSR_MSTKERR (0x1 << 4 )
7681 #define CFSR_MSTKERR_DIS (0x0 << 4 ) /* DIS */
7682 #define CFSR_MSTKERR_EN (0x1 << 4 ) /* EN */
7683 
7684 /* CFSR[MUNSTKERR] - A derived MemManage fault has occurred on exception return */
7685 #define CFSR_MUNSTKERR_MSK (0x1 << 3 )
7686 #define CFSR_MUNSTKERR (0x1 << 3 )
7687 #define CFSR_MUNSTKERR_DIS (0x0 << 3 ) /* DIS */
7688 #define CFSR_MUNSTKERR_EN (0x1 << 3 ) /* EN */
7689 
7690 /* CFSR[DACCVIOL] - Data access violation. The MMAR is set to the data address which the load store tried to access. */
7691 #define CFSR_DACCVIOL_MSK (0x1 << 1 )
7692 #define CFSR_DACCVIOL (0x1 << 1 )
7693 #define CFSR_DACCVIOL_DIS (0x0 << 1 ) /* DIS */
7694 #define CFSR_DACCVIOL_EN (0x1 << 1 ) /* EN */
7695 
7696 /* CFSR[IACCVIOL] - violation on an instruction fetch. */
7697 #define CFSR_IACCVIOL_MSK (0x1 << 0 )
7698 #define CFSR_IACCVIOL (0x1 << 0 )
7699 #define CFSR_IACCVIOL_DIS (0x0 << 0 ) /* DIS */
7700 #define CFSR_IACCVIOL_EN (0x1 << 0 ) /* EN */
7701 
7702 /* Reset Value for HFSR*/
7703 #define HFSR_RVAL 0x0
7704 
7705 /* HFSR[DEBUGEVT] - Debug event, and the Debug Fault Status Register has been updated. */
7706 #define HFSR_DEBUGEVT_MSK (0x1 << 31 )
7707 #define HFSR_DEBUGEVT (0x1 << 31 )
7708 #define HFSR_DEBUGEVT_DIS (0x0 << 31 ) /* DIS */
7709 #define HFSR_DEBUGEVT_EN (0x1 << 31 ) /* EN */
7710 
7711 /* HFSR[FORCED] - Configurable fault cannot be activated due to priority or it was disabled. Priority escalated to a HardFault. */
7712 #define HFSR_FORCED_MSK (0x1 << 30 )
7713 #define HFSR_FORCED (0x1 << 30 )
7714 #define HFSR_FORCED_DIS (0x0 << 30 ) /* DIS */
7715 #define HFSR_FORCED_EN (0x1 << 30 ) /* EN */
7716 
7717 /* HFSR[VECTTBL] - Fault was due to vector table read on exception processing */
7718 #define HFSR_VECTTBL_MSK (0x1 << 1 )
7719 #define HFSR_VECTTBL (0x1 << 1 )
7720 #define HFSR_VECTTBL_DIS (0x0 << 1 ) /* DIS */
7721 #define HFSR_VECTTBL_EN (0x1 << 1 ) /* EN */
7722 
7723 /* Reset Value for MMFAR*/
7724 #define MMFAR_RVAL 0x0
7725 
7726 /* MMFAR[ADDRESS] - Data address MPU faulted. */
7727 #define MMFAR_ADDRESS_MSK (0xFFFFFFFF << 0 )
7728 
7729 /* Reset Value for BFAR*/
7730 #define BFAR_RVAL 0x0
7731 
7732 /* BFAR[ADDRESS] - Updated on precise data access faults */
7733 #define BFAR_ADDRESS_MSK (0xFFFFFFFF << 0 )
7734 
7735 /* Reset Value for STIR*/
7736 #define STIR_RVAL 0x0
7737 
7738 /* STIR[INTID] - The value written in this field is the interrupt to be triggered. */
7739 #define STIR_INTID_MSK (0x3FF << 0 )
7740 // ------------------------------------------------------------------------------------------------
7741 // ----- PWRCTL -----
7742 // ------------------------------------------------------------------------------------------------
7743 
7744 
7745 /**
7746  * @brief Power Management Unit (pADI_PWRCTL)
7747  */
7748 
7749 #if (__NO_MMR_STRUCTS__==0)
7750 typedef struct { /*!< pADI_PWRCTL Structure */
7751  __IO uint16_t PWRMOD; /*!< Power Modes Register */
7752  __I uint16_t RESERVED0;
7753  __IO uint16_t PWRKEY; /*!< Key Protection for the PWRMOD Register. */
7754  __I uint16_t RESERVED1;
7755  __IO uint8_t PSMCON; /*!< Power Supply Monitor Control and Status */
7756  __I uint8_t RESERVED2[111];
7757  __IO uint8_t SRAMRET; /*!< SRAM Retention Register */
7758  __I uint8_t RESERVED3[3];
7759  __IO uint8_t SHUTDOWN; /*!< Shutdown Acknowledge Register */
7761 #else // (__NO_MMR_STRUCTS__==0)
7762 #define PWRMOD (*(volatile unsigned short int *) 0x40002400)
7763 #define PWRKEY (*(volatile unsigned short int *) 0x40002404)
7764 #define PSMCON (*(volatile unsigned char *) 0x40002408)
7765 #define SRAMRET (*(volatile unsigned char *) 0x40002478)
7766 #define SHUTDOWN (*(volatile unsigned char *) 0x4000247C)
7767 #endif // (__NO_MMR_STRUCTS__==0)
7768 
7769 /* Reset Value for PWRMOD*/
7770 #define PWRMOD_RVAL 0x100
7771 
7772 /* PWRMOD[WICENACK] - WIC Acknowledge, for cortex M3 deep sleep mode */
7773 #define PWRMOD_WICENACK_BBA (*(volatile unsigned long *) 0x4204800C)
7774 #define PWRMOD_WICENACK_MSK (0x1 << 3 )
7775 #define PWRMOD_WICENACK (0x1 << 3 )
7776 #define PWRMOD_WICENACK_CLR (0x0 << 3 ) /* CLR. Cleared automatically by hardware when the cortex M3 processor is not ready to enter deep sleep mode including if serial wire activity is detected. */
7777 #define PWRMOD_WICENACK_SET (0x1 << 3 ) /* SET. Set automatically by the cortex M3 processor when ready to enter sleep deep mode. */
7778 
7779 /* PWRMOD[MOD] - Low Power Mode */
7780 #define PWRMOD_MOD_MSK (0x7 << 0 )
7781 #define PWRMOD_MOD_FLEXI (0x0 << 0 ) /* FLEXI. */
7782 #define PWRMOD_MOD_HIBERNATE (0x5 << 0 ) /* HIBERNATE. */
7783 #define PWRMOD_MOD_SHUTDOWN (0x6 << 0 ) /* SHUTDOWN. */
7784 
7785 /* Reset Value for PWRKEY*/
7786 #define PWRKEY_RVAL 0x0
7787 
7788 /* PWRKEY[VALUE] - */
7789 #define PWRKEY_VALUE_MSK (0xFFFF << 0 )
7790 #define PWRKEY_VALUE_KEY1 (0x4859 << 0 ) /* KEY1 */
7791 #define PWRKEY_VALUE_KEY2 (0xF27B << 0 ) /* KEY2 */
7792 
7793 /* Reset Value for PSMCON*/
7794 #define PSMCON_RVAL 0x3
7795 
7796 /* PSMCON[PD] - Power Supply Monitor power down bit. */
7797 #define PSMCON_PD_BBA (*(volatile unsigned long *) 0x42048104)
7798 #define PSMCON_PD_MSK (0x1 << 1 )
7799 #define PSMCON_PD (0x1 << 1 )
7800 #define PSMCON_PD_DIS (0x0 << 1 ) /* DIS. Power up the PSM. */
7801 #define PSMCON_PD_EN (0x1 << 1 ) /* EN. Power down the PSM. */
7802 
7803 /* Reset Value for SRAMRET*/
7804 #define SRAMRET_RVAL 0x1
7805 
7806 /* SRAMRET[RETAIN] - SRAM retention enable bit */
7807 #define SRAMRET_RETAIN_BBA (*(volatile unsigned long *) 0x42048F00)
7808 #define SRAMRET_RETAIN_MSK (0x1 << 0 )
7809 #define SRAMRET_RETAIN (0x1 << 0 )
7810 #define SRAMRET_RETAIN_DIS (0x0 << 0 ) /* DIS. To retain contents of the bottom 8 kB of SRAM only */
7811 #define SRAMRET_RETAIN_EN (0x1 << 0 ) /* EN. To retain contents of the entire 16 kB of SRAM */
7812 
7813 /* Reset Value for SHUTDOWN*/
7814 #define SHUTDOWN_RVAL 0x0
7815 
7816 /* SHUTDOWN[EINT8] - External Interrupt 8 detected during SHUTDOWN mode */
7817 #define SHUTDOWN_EINT8_BBA (*(volatile unsigned long *) 0x42048F88)
7818 #define SHUTDOWN_EINT8_MSK (0x1 << 2 )
7819 #define SHUTDOWN_EINT8 (0x1 << 2 )
7820 #define SHUTDOWN_EINT8_CLR (0x0 << 2 ) /* CLR. Cleared automatically by hardware when clearing IRQ8 in EICLR. */
7821 #define SHUTDOWN_EINT8_SET (0x1 << 2 ) /* SET Indicates the interrupt was detected */
7822 
7823 /* SHUTDOWN[EINT1] - External Interrupt 1 detected during SHUTDOWN mode */
7824 #define SHUTDOWN_EINT1_BBA (*(volatile unsigned long *) 0x42048F84)
7825 #define SHUTDOWN_EINT1_MSK (0x1 << 1 )
7826 #define SHUTDOWN_EINT1 (0x1 << 1 )
7827 #define SHUTDOWN_EINT1_CLR (0x0 << 1 ) /* CLR. Cleared automatically by hardware when clearing IRQ1 in EICLR. */
7828 #define SHUTDOWN_EINT1_SET (0x1 << 1 ) /* SET Indicates the interrupt was detected */
7829 
7830 /* SHUTDOWN[EINT0] - External Interrupt 0 detected during SHUTDOWN mode */
7831 #define SHUTDOWN_EINT0_BBA (*(volatile unsigned long *) 0x42048F80)
7832 #define SHUTDOWN_EINT0_MSK (0x1 << 0 )
7833 #define SHUTDOWN_EINT0 (0x1 << 0 )
7834 #define SHUTDOWN_EINT0_CLR (0x0 << 0 ) /* CLR. Cleared automatically by hardware when clearing IRQ0 in EICLR. */
7835 #define SHUTDOWN_EINT0_SET (0x1 << 0 ) /* SET Indicates the interrupt was detected */
7836 // ------------------------------------------------------------------------------------------------
7837 // ----- PWM -----
7838 // ------------------------------------------------------------------------------------------------
7839 
7840 
7841 /**
7842  * @brief Pulse Width Modulation (pADI_PWM)
7843  */
7844 
7845 #if (__NO_MMR_STRUCTS__==0)
7846 typedef struct { /*!< pADI_PWM Structure */
7847  __IO uint16_t PWMCON0; /*!< PWM Control Register */
7848  __I uint16_t RESERVED0;
7849  __IO uint8_t PWMCON1; /*!< Trip Control Register */
7850  __I uint8_t RESERVED1[3];
7851  __IO uint16_t PWMCLRI; /*!< PWM Interrupt Clear */
7852  __I uint16_t RESERVED2[3];
7853  __IO uint16_t PWM0COM0; /*!< Compare Register 0 for Pair 0 */
7854  __I uint16_t RESERVED3;
7855  __IO uint16_t PWM0COM1; /*!< Compare Register 1 for Pair 0 */
7856  __I uint16_t RESERVED4;
7857  __IO uint16_t PWM0COM2; /*!< Compare Register 2 for Pair 0 */
7858  __I uint16_t RESERVED5;
7859  __IO uint16_t PWM0LEN; /*!< Period Value Register for Pair 0 */
7860  __I uint16_t RESERVED6;
7861  __IO uint16_t PWM1COM0; /*!< Compare Register 0 for Pair 1 */
7862  __I uint16_t RESERVED7;
7863  __IO uint16_t PWM1COM1; /*!< Compare Register 1 for Pair 1 */
7864  __I uint16_t RESERVED8;
7865  __IO uint16_t PWM1COM2; /*!< Compare Register 2 for Pair 1 */
7866  __I uint16_t RESERVED9;
7867  __IO uint16_t PWM1LEN; /*!< Period Value Register for Pair 1 */
7868  __I uint16_t RESERVED10;
7869  __IO uint16_t PWM2COM0; /*!< Compare Register 0 for Pair 2 */
7870  __I uint16_t RESERVED11;
7871  __IO uint16_t PWM2COM1; /*!< Compare Register 1 for Pair 2 */
7872  __I uint16_t RESERVED12;
7873  __IO uint16_t PWM2COM2; /*!< Compare Register 2 for Pair 2 */
7874  __I uint16_t RESERVED13;
7875  __IO uint16_t PWM2LEN; /*!< Period Value Register for Pair 2 */
7876  __I uint16_t RESERVED14;
7877  __IO uint16_t PWM3COM0; /*!< Compare Register 0 for Pair 3 */
7878  __I uint16_t RESERVED15;
7879  __IO uint16_t PWM3COM1; /*!< Compare Register 1 for Pair 3 */
7880  __I uint16_t RESERVED16;
7881  __IO uint16_t PWM3COM2; /*!< Compare Register 2 for Pair 3 */
7882  __I uint16_t RESERVED17;
7883  __IO uint16_t PWM3LEN; /*!< Period Value Register for Pair 3 */
7884 } ADI_PWM_TypeDef;
7885 #else // (__NO_MMR_STRUCTS__==0)
7886 #define PWMCON0 (*(volatile unsigned short int *) 0x40001000)
7887 #define PWMCON1 (*(volatile unsigned char *) 0x40001004)
7888 #define PWMCLRI (*(volatile unsigned short int *) 0x40001008)
7889 #define PWM0COM0 (*(volatile unsigned short int *) 0x40001010)
7890 #define PWM0COM1 (*(volatile unsigned short int *) 0x40001014)
7891 #define PWM0COM2 (*(volatile unsigned short int *) 0x40001018)
7892 #define PWM0LEN (*(volatile unsigned short int *) 0x4000101C)
7893 #define PWM1COM0 (*(volatile unsigned short int *) 0x40001020)
7894 #define PWM1COM1 (*(volatile unsigned short int *) 0x40001024)
7895 #define PWM1COM2 (*(volatile unsigned short int *) 0x40001028)
7896 #define PWM1LEN (*(volatile unsigned short int *) 0x4000102C)
7897 #define PWM2COM0 (*(volatile unsigned short int *) 0x40001030)
7898 #define PWM2COM1 (*(volatile unsigned short int *) 0x40001034)
7899 #define PWM2COM2 (*(volatile unsigned short int *) 0x40001038)
7900 #define PWM2LEN (*(volatile unsigned short int *) 0x4000103C)
7901 #define PWM3COM0 (*(volatile unsigned short int *) 0x40001040)
7902 #define PWM3COM1 (*(volatile unsigned short int *) 0x40001044)
7903 #define PWM3COM2 (*(volatile unsigned short int *) 0x40001048)
7904 #define PWM3LEN (*(volatile unsigned short int *) 0x4000104C)
7905 #endif // (__NO_MMR_STRUCTS__==0)
7906 
7907 /* Reset Value for PWMCON0*/
7908 #define PWMCON0_RVAL 0x12
7909 
7910 /* PWMCON0[SYNC] - PWM Synchronization. */
7911 #define PWMCON0_SYNC_BBA (*(volatile unsigned long *) 0x4202003C)
7912 #define PWMCON0_SYNC_MSK (0x1 << 15 )
7913 #define PWMCON0_SYNC (0x1 << 15 )
7914 #define PWMCON0_SYNC_DIS (0x0 << 15 ) /* DIS. Ignore transitions on the PWMSYNC pin. */
7915 #define PWMCON0_SYNC_EN (0x1 << 15 ) /* EN. All PWM counters are reset on the next clock edge after the detection of a falling edge on the PWMSYNC pin. */
7916 
7917 /* PWMCON0[PWM7INV] - Inversion of PWM output. Available in standard mode only. */
7918 #define PWMCON0_PWM7INV_BBA (*(volatile unsigned long *) 0x42020038)
7919 #define PWMCON0_PWM7INV_MSK (0x1 << 14 )
7920 #define PWMCON0_PWM7INV (0x1 << 14 )
7921 #define PWMCON0_PWM7INV_DIS (0x0 << 14 ) /* DIS. PWM7 is normal. */
7922 #define PWMCON0_PWM7INV_EN (0x1 << 14 ) /* EN. Invert PWM7. */
7923 
7924 /* PWMCON0[PWM5INV] - Inversion of PWM output. Available in standard mode only. */
7925 #define PWMCON0_PWM5INV_BBA (*(volatile unsigned long *) 0x42020034)
7926 #define PWMCON0_PWM5INV_MSK (0x1 << 13 )
7927 #define PWMCON0_PWM5INV (0x1 << 13 )
7928 #define PWMCON0_PWM5INV_DIS (0x0 << 13 ) /* DIS. PWM5 is normal. */
7929 #define PWMCON0_PWM5INV_EN (0x1 << 13 ) /* EN. Invert PWM5. */
7930 
7931 /* PWMCON0[PWM3INV] - Inversion of PWM output. Available in standard mode only. */
7932 #define PWMCON0_PWM3INV_BBA (*(volatile unsigned long *) 0x42020030)
7933 #define PWMCON0_PWM3INV_MSK (0x1 << 12 )
7934 #define PWMCON0_PWM3INV (0x1 << 12 )
7935 #define PWMCON0_PWM3INV_DIS (0x0 << 12 ) /* DIS. PWM3 is normal. */
7936 #define PWMCON0_PWM3INV_EN (0x1 << 12 ) /* EN. Invert PWM3. */
7937 
7938 /* PWMCON0[PWM1INV] - Inversion of PWM output. Available in standard mode only. */
7939 #define PWMCON0_PWM1INV_BBA (*(volatile unsigned long *) 0x4202002C)
7940 #define PWMCON0_PWM1INV_MSK (0x1 << 11 )
7941 #define PWMCON0_PWM1INV (0x1 << 11 )
7942 #define PWMCON0_PWM1INV_DIS (0x0 << 11 ) /* DIS. PWM1 is normal. */
7943 #define PWMCON0_PWM1INV_EN (0x1 << 11 ) /* EN. Invert PWM1. */
7944 
7945 /* PWMCON0[PWMIEN] - Enable PWM interrupts. */
7946 #define PWMCON0_PWMIEN_BBA (*(volatile unsigned long *) 0x42020028)
7947 #define PWMCON0_PWMIEN_MSK (0x1 << 10 )
7948 #define PWMCON0_PWMIEN (0x1 << 10 )
7949 #define PWMCON0_PWMIEN_DIS (0x0 << 10 ) /* DIS. Disable PWM interrupts. */
7950 #define PWMCON0_PWMIEN_EN (0x1 << 10 ) /* EN. Enable PWM interrupts. */
7951 
7952 /* PWMCON0[ENA] - Enable PWM outputs. Available in H-Bridge mode only. */
7953 #define PWMCON0_ENA_BBA (*(volatile unsigned long *) 0x42020024)
7954 #define PWMCON0_ENA_MSK (0x1 << 9 )
7955 #define PWMCON0_ENA (0x1 << 9 )
7956 #define PWMCON0_ENA_DIS (0x0 << 9 ) /* DIS. Disable PWM outputs. */
7957 #define PWMCON0_ENA_EN (0x1 << 9 ) /* EN. Enable PWM outputs. */
7958 
7959 /* PWMCON0[PWMCP] - PWM Clock Prescaler. Sets UCLK divider. */
7960 #define PWMCON0_PWMCP_MSK (0x7 << 6 )
7961 #define PWMCON0_PWMCP_UCLKDIV2 (0x0 << 6 ) /* UCLK/2. */
7962 #define PWMCON0_PWMCP_UCLKDIV4 (0x1 << 6 ) /* UCLK/4. */
7963 #define PWMCON0_PWMCP_UCLKDIV8 (0x2 << 6 ) /* UCLK/8. */
7964 #define PWMCON0_PWMCP_UCLKDIV16 (0x3 << 6 ) /* UCLK/16. */
7965 #define PWMCON0_PWMCP_UCLKDIV32 (0x4 << 6 ) /* UCLK/32. */
7966 #define PWMCON0_PWMCP_UCLKDIV64 (0x5 << 6 ) /* UCLK/64. */
7967 #define PWMCON0_PWMCP_UCLKDIV128 (0x6 << 6 ) /* UCLK/128. */
7968 #define PWMCON0_PWMCP_UCLKDIV256 (0x7 << 6 ) /* UCLK/256. */
7969 
7970 /* PWMCON0[POINV] - Invert all PWM outputs. Available in H-Bridge mode only. */
7971 #define PWMCON0_POINV_BBA (*(volatile unsigned long *) 0x42020014)
7972 #define PWMCON0_POINV_MSK (0x1 << 5 )
7973 #define PWMCON0_POINV (0x1 << 5 )
7974 #define PWMCON0_POINV_DIS (0x0 << 5 ) /* DIS. PWM outputs as normal. */
7975 #define PWMCON0_POINV_EN (0x1 << 5 ) /* EN. Invert all PWM outputs. */
7976 
7977 /* PWMCON0[HOFF] - High Side Off. Available in H-Bridge mode only. */
7978 #define PWMCON0_HOFF_BBA (*(volatile unsigned long *) 0x42020010)
7979 #define PWMCON0_HOFF_MSK (0x1 << 4 )
7980 #define PWMCON0_HOFF (0x1 << 4 )
7981 #define PWMCON0_HOFF_DIS (0x0 << 4 ) /* DIS. PWM outputs as normal. */
7982 #define PWMCON0_HOFF_EN (0x1 << 4 ) /* EN. Force PWM0 and PWM2 outputs high and PWM1 and PWM3 low. */
7983 
7984 /* PWMCON0[LCOMP] - Load Compare Registers. */
7985 #define PWMCON0_LCOMP_BBA (*(volatile unsigned long *) 0x4202000C)
7986 #define PWMCON0_LCOMP_MSK (0x1 << 3 )
7987 #define PWMCON0_LCOMP (0x1 << 3 )
7988 #define PWMCON0_LCOMP_DIS (0x0 << 3 ) /* DIS. Use the values previously stored in the internal compare registers. */
7989 #define PWMCON0_LCOMP_EN (0x1 << 3 ) /* EN. Load the internal compare registers with the values in PWMxCOMx on the next transition of the PWM timer from 0x00 to 0x01. */
7990 
7991 /* PWMCON0[DIR] - Direction Control. Available in H-Bridge mode only. */
7992 #define PWMCON0_DIR_BBA (*(volatile unsigned long *) 0x42020008)
7993 #define PWMCON0_DIR_MSK (0x1 << 2 )
7994 #define PWMCON0_DIR (0x1 << 2 )
7995 #define PWMCON0_DIR_DIS (0x0 << 2 ) /* DIS. Enable PWM2 and PWM3 as the output signals while PWM0 and PWM1 are held low. */
7996 #define PWMCON0_DIR_EN (0x1 << 2 ) /* EN. Enable PWM0 and PWM1 as the output signals while PWM2 and PWM3 are held low. */
7997 
7998 /* PWMCON0[HMODE] - Enable H-Bridge Mode. */
7999 #define PWMCON0_HMODE_BBA (*(volatile unsigned long *) 0x42020004)
8000 #define PWMCON0_HMODE_MSK (0x1 << 1 )
8001 #define PWMCON0_HMODE (0x1 << 1 )
8002 #define PWMCON0_HMODE_DIS (0x0 << 1 ) /* DIS. The PWM operates in standard mode. */
8003 #define PWMCON0_HMODE_EN (0x1 << 1 ) /* EN. The PWM is configured in H-Bridge mode. */
8004 
8005 /* PWMCON0[PWMEN] - Enable all PWM outputs. */
8006 #define PWMCON0_PWMEN_BBA (*(volatile unsigned long *) 0x42020000)
8007 #define PWMCON0_PWMEN_MSK (0x1 << 0 )
8008 #define PWMCON0_PWMEN (0x1 << 0 )
8009 #define PWMCON0_PWMEN_DIS (0x0 << 0 ) /* DIS. Disables all PWM outputs. */
8010 #define PWMCON0_PWMEN_EN (0x1 << 0 ) /* EN. Enables all PWM outputs. */
8011 
8012 /* Reset Value for PWMCON1*/
8013 #define PWMCON1_RVAL 0x0
8014 
8015 /* PWMCON1[TRIPEN] - Enable PWM trip functionality. */
8016 #define PWMCON1_TRIPEN_BBA (*(volatile unsigned long *) 0x42020098)
8017 #define PWMCON1_TRIPEN_MSK (0x1 << 6 )
8018 #define PWMCON1_TRIPEN (0x1 << 6 )
8019 #define PWMCON1_TRIPEN_DIS (0x0 << 6 ) /* DIS. Disable PWM trip functionality. */
8020 #define PWMCON1_TRIPEN_EN (0x1 << 6 ) /* EN. Enable PWM trip functionality. */
8021 
8022 /* Reset Value for PWMCLRI*/
8023 #define PWMCLRI_RVAL 0x0
8024 
8025 /* PWMCLRI[TRIP] - Clear the latched trip interrupt. This bit always reads 0. */
8026 #define PWMCLRI_TRIP_BBA (*(volatile unsigned long *) 0x42020110)
8027 #define PWMCLRI_TRIP_MSK (0x1 << 4 )
8028 #define PWMCLRI_TRIP (0x1 << 4 )
8029 #define PWMCLRI_TRIP_EN (0x1 << 4 ) /* EN. Clear the latched PWMTRIP interrupt. */
8030 
8031 /* PWMCLRI[IRQPWM3] - Clear the latched PWM3 interrupt. This bit always reads 0. */
8032 #define PWMCLRI_IRQPWM3_BBA (*(volatile unsigned long *) 0x4202010C)
8033 #define PWMCLRI_IRQPWM3_MSK (0x1 << 3 )
8034 #define PWMCLRI_IRQPWM3 (0x1 << 3 )
8035 #define PWMCLRI_IRQPWM3_EN (0x1 << 3 ) /* EN. Clear the latched IRQPWM3 interrupt. */
8036 
8037 /* PWMCLRI[IRQPWM2] - Clear the latched PWM2 interrupt. This bit always reads 0. */
8038 #define PWMCLRI_IRQPWM2_BBA (*(volatile unsigned long *) 0x42020108)
8039 #define PWMCLRI_IRQPWM2_MSK (0x1 << 2 )
8040 #define PWMCLRI_IRQPWM2 (0x1 << 2 )
8041 #define PWMCLRI_IRQPWM2_EN (0x1 << 2 ) /* EN. Clear the latched IRQPWM2 interrupt. */
8042 
8043 /* PWMCLRI[IRQPWM1] - Clear the latched PWM1 interrupt. This bit always reads 0. */
8044 #define PWMCLRI_IRQPWM1_BBA (*(volatile unsigned long *) 0x42020104)
8045 #define PWMCLRI_IRQPWM1_MSK (0x1 << 1 )
8046 #define PWMCLRI_IRQPWM1 (0x1 << 1 )
8047 #define PWMCLRI_IRQPWM1_EN (0x1 << 1 ) /* EN. Clear the latched IRQPWM1 interrupt. */
8048 
8049 /* PWMCLRI[IRQPWM0] - Clear the latched PWM0 interrupt. This bit always reads 0. */
8050 #define PWMCLRI_IRQPWM0_BBA (*(volatile unsigned long *) 0x42020100)
8051 #define PWMCLRI_IRQPWM0_MSK (0x1 << 0 )
8052 #define PWMCLRI_IRQPWM0 (0x1 << 0 )
8053 #define PWMCLRI_IRQPWM0_EN (0x1 << 0 ) /* EN. Clear the latched IRQPWM0 interrupt. */
8054 
8055 /* Reset Value for PWM0COM0*/
8056 #define PWM0COM0_RVAL 0x0
8057 
8058 /* PWM0COM0[VALUE] - */
8059 #define PWM0COM0_VALUE_MSK (0xFFFF << 0 )
8060 
8061 /* Reset Value for PWM0COM1*/
8062 #define PWM0COM1_RVAL 0x0
8063 
8064 /* PWM0COM1[VALUE] - */
8065 #define PWM0COM1_VALUE_MSK (0xFFFF << 0 )
8066 
8067 /* Reset Value for PWM0COM2*/
8068 #define PWM0COM2_RVAL 0x0
8069 
8070 /* PWM0COM2[VALUE] - */
8071 #define PWM0COM2_VALUE_MSK (0xFFFF << 0 )
8072 
8073 /* Reset Value for PWM0LEN*/
8074 #define PWM0LEN_RVAL 0x0
8075 
8076 /* PWM0LEN[VALUE] - */
8077 #define PWM0LEN_VALUE_MSK (0xFFFF << 0 )
8078 
8079 /* Reset Value for PWM1COM0*/
8080 #define PWM1COM0_RVAL 0x0
8081 
8082 /* PWM1COM0[VALUE] - */
8083 #define PWM1COM0_VALUE_MSK (0xFFFF << 0 )
8084 
8085 /* Reset Value for PWM1COM1*/
8086 #define PWM1COM1_RVAL 0x0
8087 
8088 /* PWM1COM1[VALUE] - */
8089 #define PWM1COM1_VALUE_MSK (0xFFFF << 0 )
8090 
8091 /* Reset Value for PWM1COM2*/
8092 #define PWM1COM2_RVAL 0x0
8093 
8094 /* PWM1COM2[VALUE] - */
8095 #define PWM1COM2_VALUE_MSK (0xFFFF << 0 )
8096 
8097 /* Reset Value for PWM1LEN*/
8098 #define PWM1LEN_RVAL 0x0
8099 
8100 /* PWM1LEN[VALUE] - */
8101 #define PWM1LEN_VALUE_MSK (0xFFFF << 0 )
8102 
8103 /* Reset Value for PWM2COM0*/
8104 #define PWM2COM0_RVAL 0x0
8105 
8106 /* PWM2COM0[VALUE] - */
8107 #define PWM2COM0_VALUE_MSK (0xFFFF << 0 )
8108 
8109 /* Reset Value for PWM2COM1*/
8110 #define PWM2COM1_RVAL 0x0
8111 
8112 /* PWM2COM1[VALUE] - */
8113 #define PWM2COM1_VALUE_MSK (0xFFFF << 0 )
8114 
8115 /* Reset Value for PWM2COM2*/
8116 #define PWM2COM2_RVAL 0x0
8117 
8118 /* PWM2COM2[VALUE] - */
8119 #define PWM2COM2_VALUE_MSK (0xFFFF << 0 )
8120 
8121 /* Reset Value for PWM2LEN*/
8122 #define PWM2LEN_RVAL 0x0
8123 
8124 /* PWM2LEN[VALUE] - */
8125 #define PWM2LEN_VALUE_MSK (0xFFFF << 0 )
8126 
8127 /* Reset Value for PWM3COM0*/
8128 #define PWM3COM0_RVAL 0x0
8129 
8130 /* PWM3COM0[VALUE] - */
8131 #define PWM3COM0_VALUE_MSK (0xFFFF << 0 )
8132 
8133 /* Reset Value for PWM3COM1*/
8134 #define PWM3COM1_RVAL 0x0
8135 
8136 /* PWM3COM1[VALUE] - */
8137 #define PWM3COM1_VALUE_MSK (0xFFFF << 0 )
8138 
8139 /* Reset Value for PWM3COM2*/
8140 #define PWM3COM2_RVAL 0x0
8141 
8142 /* PWM3COM2[VALUE] - */
8143 #define PWM3COM2_VALUE_MSK (0xFFFF << 0 )
8144 
8145 /* Reset Value for PWM3LEN*/
8146 #define PWM3LEN_RVAL 0x0
8147 
8148 /* PWM3LEN[VALUE] - */
8149 #define PWM3LEN_VALUE_MSK (0xFFFF << 0 )
8150 // ------------------------------------------------------------------------------------------------
8151 // ----- RESET -----
8152 // ------------------------------------------------------------------------------------------------
8153 
8154 
8155 /**
8156  * @brief Reset (pADI_RESET)
8157  */
8158 
8159 #if (__NO_MMR_STRUCTS__==0)
8160 typedef struct { /*!< pADI_RESET Structure */
8161 
8162  union {
8163  __IO uint8_t RSTSTA; /*!< Reset Status */
8164  __IO uint8_t RSTCLR; /*!< Reset Status Clear */
8165  } ;
8167 #else // (__NO_MMR_STRUCTS__==0)
8168 #define RSTSTA (*(volatile unsigned char *) 0x40002440)
8169 #define RSTCLR (*(volatile unsigned char *) 0x40002440)
8170 #endif // (__NO_MMR_STRUCTS__==0)
8171 
8172 /* Reset Value for RSTSTA*/
8173 #define RSTSTA_RVAL 0x3
8174 
8175 /* RSTSTA[SWRST] - Software reset status bit */
8176 #define RSTSTA_SWRST_BBA (*(volatile unsigned long *) 0x42048810)
8177 #define RSTSTA_SWRST_MSK (0x1 << 4 )
8178 #define RSTSTA_SWRST (0x1 << 4 )
8179 #define RSTSTA_SWRST_CLR (0x0 << 4 ) /* CLR. Indicates that no software reset has occurred. */
8180 #define RSTSTA_SWRST_SET (0x1 << 4 ) /* SET. Indicates that a software reset has occurred. */
8181 
8182 /* RSTSTA[WDRST] - Watchdog reset status bit */
8183 #define RSTSTA_WDRST_BBA (*(volatile unsigned long *) 0x4204880C)
8184 #define RSTSTA_WDRST_MSK (0x1 << 3 )
8185 #define RSTSTA_WDRST (0x1 << 3 )
8186 #define RSTSTA_WDRST_CLR (0x0 << 3 ) /* CLR. Indicates that no watchdog reset has occurred. */
8187 #define RSTSTA_WDRST_SET (0x1 << 3 ) /* SET. Indicates that a Watchdog Reset has occurred. */
8188 
8189 /* RSTSTA[EXTRST] - External reset status bit */
8190 #define RSTSTA_EXTRST_BBA (*(volatile unsigned long *) 0x42048808)
8191 #define RSTSTA_EXTRST_MSK (0x1 << 2 )
8192 #define RSTSTA_EXTRST (0x1 << 2 )
8193 #define RSTSTA_EXTRST_CLR (0x0 << 2 ) /* CLR. Indicates that no external reset has occurred. */
8194 #define RSTSTA_EXTRST_SET (0x1 << 2 ) /* SET. Indicates an external reset has occurred. */
8195 
8196 /* RSTSTA[PORHV] - Power-on reset status bit HV */
8197 #define RSTSTA_PORHV_BBA (*(volatile unsigned long *) 0x42048804)
8198 #define RSTSTA_PORHV_MSK (0x1 << 1 )
8199 #define RSTSTA_PORHV (0x1 << 1 )
8200 #define RSTSTA_PORHV_CLR (0x0 << 1 ) /* CLR. Indicates a POR or wake up from SHUTDOWN has not occurred. */
8201 #define RSTSTA_PORHV_SET (0x1 << 1 ) /* SET. This bit indicates that the AVDD supply has dropped below the POR trip point, causing a Power On Reset. It is also set when waking up from SHUTDOWN mode. */
8202 
8203 /* RSTSTA[PORLV] - Power-on reset status bit LV */
8204 #define RSTSTA_PORLV_BBA (*(volatile unsigned long *) 0x42048800)
8205 #define RSTSTA_PORLV_MSK (0x1 << 0 )
8206 #define RSTSTA_PORLV (0x1 << 0 )
8207 #define RSTSTA_PORLV_CLR (0x0 << 0 ) /* CLR. Indicates a POR or wake up from SHUTDOWN has not occurred. */
8208 #define RSTSTA_PORLV_SET (0x1 << 0 ) /* SET. This bit indicates that the AVDD supply has dropped below the POR trip point, causing a Power On Reset. It is also set when waking up from SHUTDOWN mode. */
8209 
8210 /* Reset Value for RSTCLR*/
8211 #define RSTCLR_RVAL 0x3
8212 
8213 /* RSTCLR[SWRST] - Software reset clear status bit */
8214 #define RSTCLR_SWRST_BBA (*(volatile unsigned long *) 0x42048810)
8215 #define RSTCLR_SWRST_MSK (0x1 << 4 )
8216 #define RSTCLR_SWRST (0x1 << 4 )
8217 #define RSTCLR_SWRST_DIS (0x0 << 4 ) /* DIS. Has no effect. */
8218 #define RSTCLR_SWRST_EN (0x1 << 4 ) /* EN. Clears the SWRST status bit in RSTSTA. */
8219 
8220 /* RSTCLR[WDRST] - Watchdog reset clear status bit */
8221 #define RSTCLR_WDRST_BBA (*(volatile unsigned long *) 0x4204880C)
8222 #define RSTCLR_WDRST_MSK (0x1 << 3 )
8223 #define RSTCLR_WDRST (0x1 << 3 )
8224 #define RSTCLR_WDRST_DIS (0x0 << 3 ) /* DIS. Has no effect. */
8225 #define RSTCLR_WDRST_EN (0x1 << 3 ) /* EN. Clears the WDRST status bit in RSTSTA. */
8226 
8227 /* RSTCLR[EXTRST] - External reset clear status bit */
8228 #define RSTCLR_EXTRST_BBA (*(volatile unsigned long *) 0x42048808)
8229 #define RSTCLR_EXTRST_MSK (0x1 << 2 )
8230 #define RSTCLR_EXTRST (0x1 << 2 )
8231 #define RSTCLR_EXTRST_DIS (0x0 << 2 ) /* DIS. Has no effect. */
8232 #define RSTCLR_EXTRST_EN (0x1 << 2 ) /* EN. Clears the EXTRST status bit in RSTSTA. */
8233 
8234 /* RSTCLR[PORHV] - Power on reset clear status bit */
8235 #define RSTCLR_PORHV_BBA (*(volatile unsigned long *) 0x42048804)
8236 #define RSTCLR_PORHV_MSK (0x1 << 1 )
8237 #define RSTCLR_PORHV (0x1 << 1 )
8238 #define RSTCLR_PORHV_DIS (0x0 << 1 ) /* DIS. Has no effect. */
8239 #define RSTCLR_PORHV_EN (0x1 << 1 ) /* EN. Clears PORLV status bit in RSTSTA. */
8240 
8241 /* RSTCLR[PORLV] - Power-on reset clear status bit LV */
8242 #define RSTCLR_PORLV_BBA (*(volatile unsigned long *) 0x42048800)
8243 #define RSTCLR_PORLV_MSK (0x1 << 0 )
8244 #define RSTCLR_PORLV (0x1 << 0 )
8245 #define RSTCLR_PORLV_DIS (0x0 << 0 ) /* DIS. Has no effect. */
8246 #define RSTCLR_PORLV_EN (0x1 << 0 ) /* EN. Clears the PORLV status bit in RSTSTA. */
8247 // ------------------------------------------------------------------------------------------------
8248 // ----- SPI0 -----
8249 // ------------------------------------------------------------------------------------------------
8250 
8251 
8252 /**
8253  * @brief Serial Peripheral Interface (pADI_SPI0)
8254  */
8255 
8256 #if (__NO_MMR_STRUCTS__==0)
8257 typedef struct { /*!< pADI_SPI0 Structure */
8258  __IO uint16_t SPISTA; /*!< SPI0 Status Register */
8259  __I uint16_t RESERVED0;
8260  __IO uint8_t SPIRX; /*!< SPI0 Receive Register */
8261  __I uint8_t RESERVED1[3];
8262  __IO uint8_t SPITX; /*!< SPI0 Transmit Register */
8263  __I uint8_t RESERVED2[3];
8264  __IO uint16_t SPIDIV; /*!< SPI0 Bit Rate Selection Register */
8265  __I uint16_t RESERVED3;
8266  __IO uint16_t SPICON; /*!< SPI0 Configuration Register */
8267  __I uint16_t RESERVED4;
8268  __IO uint16_t SPIDMA; /*!< SPI0 DMA Enable Register */
8269  __I uint16_t RESERVED5;
8270  __IO uint16_t SPICNT; /*!< SPI0 DMA Master Received Byte Count Register */
8271 } ADI_SPI_TypeDef;
8272 #else // (__NO_MMR_STRUCTS__==0)
8273 #define SPI0STA (*(volatile unsigned short int *) 0x40004000)
8274 #define SPI0RX (*(volatile unsigned char *) 0x40004004)
8275 #define SPI0TX (*(volatile unsigned char *) 0x40004008)
8276 #define SPI0DIV (*(volatile unsigned short int *) 0x4000400C)
8277 #define SPI0CON (*(volatile unsigned short int *) 0x40004010)
8278 #define SPI0DMA (*(volatile unsigned short int *) 0x40004014)
8279 #define SPI0CNT (*(volatile unsigned short int *) 0x40004018)
8280 #endif // (__NO_MMR_STRUCTS__==0)
8281 
8282 /* Reset Value for SPI0STA*/
8283 #define SPI0STA_RVAL 0x0
8284 
8285 /* SPI0STA[CSERR] - CS error status bit. This bit generates an interrupt when detecting an abrupt CS desassertion before the full byte of data is transmitted completely. */
8286 #define SPI0STA_CSERR_BBA (*(volatile unsigned long *) 0x42080030)
8287 #define SPI0STA_CSERR_MSK (0x1 << 12 )
8288 #define SPI0STA_CSERR (0x1 << 12 )
8289 #define SPI0STA_CSERR_CLR (0x0 << 12 ) /* CLR: Cleared when no CS error is detected. Cleared to 0 on a read of SPI0STA register. */
8290 #define SPI0STA_CSERR_SET (0x1 << 12 ) /* SET: Set when the CS line is deasserted abruptly. */
8291 
8292 /* SPI0STA[RXS] - Rx FIFO excess bytes present. */
8293 #define SPI0STA_RXS_BBA (*(volatile unsigned long *) 0x4208002C)
8294 #define SPI0STA_RXS_MSK (0x1 << 11 )
8295 #define SPI0STA_RXS (0x1 << 11 )
8296 #define SPI0STA_RXS_CLR (0x0 << 11 ) /* CLR. When the number of bytes in the FIFO is equal or less than the number in SPI0CON[15:14]. This bit is not cleared on a read of SPI0STA register. */
8297 #define SPI0STA_RXS_SET (0x1 << 11 ) /* SET. When there are more bytes in the Rx FIFO than configured in MOD (SPI0CON[15:14]). For example if MOD = TX1RX1, RXS is set when there are 2 or more bytes in the Rx FIFO. This bit does not dependent on SPI0CON[6] and does not cause an interrupt. */
8298 
8299 /* SPI0STA[RXFSTA] - Rx FIFO status bits, indicates how many valid bytes are in the Rx FIFO. */
8300 #define SPI0STA_RXFSTA_MSK (0x7 << 8 )
8301 #define SPI0STA_RXFSTA_EMPTY (0x0 << 8 ) /* EMPTY. When Rx FIFO is empty. */
8302 #define SPI0STA_RXFSTA_ONEBYTE (0x1 << 8 ) /* ONEBYTE. When 1 valid byte is in the FIFO. */
8303 #define SPI0STA_RXFSTA_TWOBYTES (0x2 << 8 ) /* TWOBYTES. When 2 valid bytes are in the FIFO. */
8304 #define SPI0STA_RXFSTA_THREEBYTES (0x3 << 8 ) /* THREEBYTES. When 3 valid bytes are in the FIFO. */
8305 #define SPI0STA_RXFSTA_FOURBYTES (0x4 << 8 ) /* FOURBYTES. When 4 valid bytes are in the FIFO. */
8306 
8307 /* SPI0STA[RXOF] - Rx FIFO overflow status bit. This bit generates an interrupt. */
8308 #define SPI0STA_RXOF_BBA (*(volatile unsigned long *) 0x4208001C)
8309 #define SPI0STA_RXOF_MSK (0x1 << 7 )
8310 #define SPI0STA_RXOF (0x1 << 7 )
8311 #define SPI0STA_RXOF_CLR (0x0 << 7 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
8312 #define SPI0STA_RXOF_SET (0x1 << 7 ) /* SET. Set when the Rx FIFO is already full when new data is loaded to the FIFO. This bit generates an interrupt except when RFLUSH is set. (SPI0CON[12]). */
8313 
8314 /* SPI0STA[RX] - Rx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
8315 #define SPI0STA_RX_BBA (*(volatile unsigned long *) 0x42080018)
8316 #define SPI0STA_RX_MSK (0x1 << 6 )
8317 #define SPI0STA_RX (0x1 << 6 )
8318 #define SPI0STA_RX_CLR (0x0 << 6 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
8319 #define SPI0STA_RX_SET (0x1 << 6 ) /* SET. Set when a receive interrupt occurs. This bit is set when TIM (SPI0CON[6]) is cleared and the required number of bytes have been received. */
8320 
8321 /* SPI0STA[TX] - Tx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
8322 #define SPI0STA_TX_BBA (*(volatile unsigned long *) 0x42080014)
8323 #define SPI0STA_TX_MSK (0x1 << 5 )
8324 #define SPI0STA_TX (0x1 << 5 )
8325 #define SPI0STA_TX_CLR (0x0 << 5 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
8326 #define SPI0STA_TX_SET (0x1 << 5 ) /* SET. Set when a transmit interrupt occurs. This bit is set when TIM (SPI0CON[6]) set and the required number of bytes have been transmitted. */
8327 
8328 /* SPI0STA[TXUR] - Tx FIFO Underrun. This bit generates an interrupt. */
8329 #define SPI0STA_TXUR_BBA (*(volatile unsigned long *) 0x42080010)
8330 #define SPI0STA_TXUR_MSK (0x1 << 4 )
8331 #define SPI0STA_TXUR (0x1 << 4 )
8332 #define SPI0STA_TXUR_CLR (0x0 << 4 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
8333 #define SPI0STA_TXUR_SET (0x1 << 4 ) /* SET. Set when a transmit is initiated without any valid data in the Tx FIFO. This bit generates an interrupt except when TFLUSH is set in SPI0CON. */
8334 
8335 /* SPI0STA[TXFSTA] - Tx FIFO status bits, indicates how many valid bytes are in the Tx FIFO. */
8336 #define SPI0STA_TXFSTA_MSK (0x7 << 1 )
8337 #define SPI0STA_TXFSTA_EMPTY (0x0 << 1 ) /* EMPTY. Tx FIFO is empty. */
8338 #define SPI0STA_TXFSTA_ONEBYTE (0x1 << 1 ) /* ONEBYTE. 1 valid byte is in the FIFO. */
8339 #define SPI0STA_TXFSTA_TWOBYTES (0x2 << 1 ) /* TWOBYTES. 2 valid bytes are in the FIFO. */
8340 #define SPI0STA_TXFSTA_THREEBYTES (0x3 << 1 ) /* THREEBYTES. 3 valid bytes are in the FIFO. */
8341 #define SPI0STA_TXFSTA_FOURBYTES (0x4 << 1 ) /* FOURBYTES . 4 valid bytes are in the FIFO. */
8342 
8343 /* SPI0STA[IRQ] - Interrupt status bit. */
8344 #define SPI0STA_IRQ_BBA (*(volatile unsigned long *) 0x42080000)
8345 #define SPI0STA_IRQ_MSK (0x1 << 0 )
8346 #define SPI0STA_IRQ (0x1 << 0 )
8347 #define SPI0STA_IRQ_CLR (0x0 << 0 ) /* CLR. Cleared to 0 on a read of SPI0STA register. */
8348 #define SPI0STA_IRQ_SET (0x1 << 0 ) /* SET. Set to 1 when an SPI0 based interrupt occurs. */
8349 
8350 /* Reset Value for SPI0RX*/
8351 #define SPI0RX_RVAL 0x0
8352 
8353 /* SPI0RX[VALUE] - 8-bit receive register. A read of the RX FIFO returns the next byte to be read from the FIFO. A read of the FIFO when it is empty returns zero. */
8354 #define SPI0RX_VALUE_MSK (0xFF << 0 )
8355 
8356 /* Reset Value for SPI0TX*/
8357 #define SPI0TX_RVAL 0x0
8358 
8359 /* SPI0TX[VALUE] - 8-bit transmit register. A write to the Tx FIFO address space writes data to the next available location in the Tx FIFO. If the FIFO is full, the oldest byte of data in the FIFO is overwritten. A read from this address location return zero. */
8360 #define SPI0TX_VALUE_MSK (0xFF << 0 )
8361 
8362 /* Reset Value for SPI0DIV*/
8363 #define SPI0DIV_RVAL 0x0
8364 
8365 /* SPI0DIV[BCRST] - Configures the behavior of SPI communication after an abrupt deassertion of CS. This bit should be set in slave and master mode. */
8366 #define SPI0DIV_BCRST_BBA (*(volatile unsigned long *) 0x4208019C)
8367 #define SPI0DIV_BCRST_MSK (0x1 << 7 )
8368 #define SPI0DIV_BCRST (0x1 << 7 )
8369 #define SPI0DIV_BCRST_DIS (0x0 << 7 ) /* DIS. Resumes communication from where it stopped when the CS is deasserted. The rest of the bits are then received/ transmitted when CS returns low. User code should ignore the CSERR interrupt. */
8370 #define SPI0DIV_BCRST_EN (0x1 << 7 ) /* EN. Enabled for a clean restart of SPI transfer after a CSERR condition. User code must also clear the SPI enable bit in SPI0CON during the CSERR interrupt. */
8371 
8372 /* SPI0DIV[DIV] - Factor used to divide UCLK in the generation of the master mode serial clock. */
8373 #define SPI0DIV_DIV_MSK (0x3F << 0 )
8374 
8375 /* Reset Value for SPI0CON*/
8376 #define SPI0CON_RVAL 0x0
8377 
8378 /* SPI0CON[MOD] - IRQ mode bits. When TIM is set these bits configure when the Tx/Rx interrupts occur in a transfer. For a DMA Rx transfer, these bits should be 00. */
8379 #define SPI0CON_MOD_MSK (0x3 << 14 )
8380 #define SPI0CON_MOD_TX1RX1 (0x0 << 14 ) /* TX1RX1. Tx/Rx interrupt occurs when 1 byte has been transmitted/received from/into the FIFO. */
8381 #define SPI0CON_MOD_TX2RX2 (0x1 << 14 ) /* TX2RX2. Tx/Rx interrupt occurs when 2 bytes have been transmitted/received from/into the FIFO. */
8382 #define SPI0CON_MOD_TX3RX3 (0x2 << 14 ) /* TX3RX3. Tx/Rx interrupt occurs when 3 bytes have been transmitted/received from/into the FIFO. */
8383 #define SPI0CON_MOD_TX4RX4 (0x3 << 14 ) /* TX4RX4. Tx/Rx interrupt occurs when 4 bytes have been transmitted/received from/into the FIFO. */
8384 
8385 /* SPI0CON[TFLUSH] - Tx FIFO flush enable bit. */
8386 #define SPI0CON_TFLUSH_BBA (*(volatile unsigned long *) 0x42080234)
8387 #define SPI0CON_TFLUSH_MSK (0x1 << 13 )
8388 #define SPI0CON_TFLUSH (0x1 << 13 )
8389 #define SPI0CON_TFLUSH_DIS (0x0 << 13 ) /* DIS. Disable Tx FIFO flushing. */
8390 #define SPI0CON_TFLUSH_EN (0x1 << 13 ) /* EN. Flush the Tx FIFO. This bit does not clear itself and should be toggled if a single flush is required. If this bit is left high, then either the last transmitted value or 0x00 is transmitted depending on the ZEN bit (SPI0CON[7]). Any writes to the Tx FIFO are ignored while this bit is set. */
8391 
8392 /* SPI0CON[RFLUSH] - Rx FIFO flush enable bit. */
8393 #define SPI0CON_RFLUSH_BBA (*(volatile unsigned long *) 0x42080230)
8394 #define SPI0CON_RFLUSH_MSK (0x1 << 12 )
8395 #define SPI0CON_RFLUSH (0x1 << 12 )
8396 #define SPI0CON_RFLUSH_DIS (0x0 << 12 ) /* DIS. Disable Rx FIFO flushing. */
8397 #define SPI0CON_RFLUSH_EN (0x1 << 12 ) /* EN. If this bit is set, all incoming data is ignored and no interrupts are generated. If set and TIM = 0 (SPI0CON[6]), a read of the Rx FIFO initiates a transfer. */
8398 
8399 /* SPI0CON[CON] - Continuous transfer enable bit. */
8400 #define SPI0CON_CON_BBA (*(volatile unsigned long *) 0x4208022C)
8401 #define SPI0CON_CON_MSK (0x1 << 11 )
8402 #define SPI0CON_CON (0x1 << 11 )
8403 #define SPI0CON_CON_DIS (0x0 << 11 ) /* DIS. Disable continuous transfer. Each transfer consists of a single 8-bit serial transfer. If valid data exists in the SPIxTX register, then a new transfer is initiated after a stall period of one serial clock cycle. The CS line is deactivated for this one serial clock cycle. */
8404 #define SPI0CON_CON_EN (0x1 << 11 ) /* EN. Enable continuous transfer. In master mode, the transfer continues until no valid data is available in the Tx register. CS is asserted and remains asserted for the duration of each 8-bit serial transfer until Tx is empty. */
8405 
8406 /* SPI0CON[LOOPBACK] - Loopback enable bit. */
8407 #define SPI0CON_LOOPBACK_BBA (*(volatile unsigned long *) 0x42080228)
8408 #define SPI0CON_LOOPBACK_MSK (0x1 << 10 )
8409 #define SPI0CON_LOOPBACK (0x1 << 10 )
8410 #define SPI0CON_LOOPBACK_DIS (0x0 << 10 ) /* DIS. Normal mode. */
8411 #define SPI0CON_LOOPBACK_EN (0x1 << 10 ) /* EN. Connect MISO to MOSI, thus, data transmitted from Tx register is looped back to the Rx register. SPI must be configured in master mode. */
8412 
8413 /* SPI0CON[SOEN] - Slave output enable bit. */
8414 #define SPI0CON_SOEN_BBA (*(volatile unsigned long *) 0x42080224)
8415 #define SPI0CON_SOEN_MSK (0x1 << 9 )
8416 #define SPI0CON_SOEN (0x1 << 9 )
8417 #define SPI0CON_SOEN_DIS (0x0 << 9 ) /* DIS. Disable the output driver on the MISO pin. The MISO pin is open-circuit when this bit is clear. */
8418 #define SPI0CON_SOEN_EN (0x1 << 9 ) /* EN. MISO operates as normal. */
8419 
8420 /* SPI0CON[RXOF] - RX overflow overwrite enable bit. */
8421 #define SPI0CON_RXOF_BBA (*(volatile unsigned long *) 0x42080220)
8422 #define SPI0CON_RXOF_MSK (0x1 << 8 )
8423 #define SPI0CON_RXOF (0x1 << 8 )
8424 #define SPI0CON_RXOF_DIS (0x0 << 8 ) /* DIS. The new serial byte received is discarded when there is no space left in the FIFO */
8425 #define SPI0CON_RXOF_EN (0x1 << 8 ) /* EN. The valid data in the Rx register is overwritten by the new serial byte received when there is no space left in the FIFO. */
8426 
8427 /* SPI0CON[ZEN] - Transmit underrun: Transmit 0s when the Tx FIFO is empty */
8428 #define SPI0CON_ZEN_BBA (*(volatile unsigned long *) 0x4208021C)
8429 #define SPI0CON_ZEN_MSK (0x1 << 7 )
8430 #define SPI0CON_ZEN (0x1 << 7 )
8431 #define SPI0CON_ZEN_DIS (0x0 << 7 ) /* DIS. The last byte from the previous transmission is shifted out when a transfer is initiated with no valid data in the FIFO. */
8432 #define SPI0CON_ZEN_EN (0x1 << 7 ) /* EN. Transmit 0x00 when a transfer is initiated with no valid data in the FIFO. */
8433 
8434 /* SPI0CON[TIM] - Transfer and interrupt mode bit. */
8435 #define SPI0CON_TIM_BBA (*(volatile unsigned long *) 0x42080218)
8436 #define SPI0CON_TIM_MSK (0x1 << 6 )
8437 #define SPI0CON_TIM (0x1 << 6 )
8438 #define SPI0CON_TIM_TXWR (0x1 << 6 ) /* TXWR. Initiate transfer with a write to the SPIxTX register. Interrupt only occurs when Tx is empty. */
8439 #define SPI0CON_TIM_RXRD (0x0 << 6 ) /* RXRD. Initiate transfer with a read of the SPIxRX register. The read must be done while the SPI interface is idle. Interrupt only occurs when Rx is full. */
8440 
8441 /* SPI0CON[LSB] - LSB first transfer enable bit. */
8442 #define SPI0CON_LSB_BBA (*(volatile unsigned long *) 0x42080214)
8443 #define SPI0CON_LSB_MSK (0x1 << 5 )
8444 #define SPI0CON_LSB (0x1 << 5 )
8445 #define SPI0CON_LSB_DIS (0x0 << 5 ) /* DIS. MSB is transmitted first. */
8446 #define SPI0CON_LSB_EN (0x1 << 5 ) /* EN. LSB is transmitted first. */
8447 
8448 /* SPI0CON[WOM] - Wired OR enable bit. */
8449 #define SPI0CON_WOM_BBA (*(volatile unsigned long *) 0x42080210)
8450 #define SPI0CON_WOM_MSK (0x1 << 4 )
8451 #define SPI0CON_WOM (0x1 << 4 )
8452 #define SPI0CON_WOM_DIS (0x0 << 4 ) /* DIS. Normal driver output operation. */
8453 #define SPI0CON_WOM_EN (0x1 << 4 ) /* EN. Enable open circuit data output for multimaster/multislave configuration. */
8454 
8455 /* SPI0CON[CPOL] - Serial clock polarity mode bit. */
8456 #define SPI0CON_CPOL_BBA (*(volatile unsigned long *) 0x4208020C)
8457 #define SPI0CON_CPOL_MSK (0x1 << 3 )
8458 #define SPI0CON_CPOL (0x1 << 3 )
8459 #define SPI0CON_CPOL_LOW (0x0 << 3 ) /* LOW. Serial clock idles low. */
8460 #define SPI0CON_CPOL_HIGH (0x1 << 3 ) /* HIGH. Serial clock idles high. */
8461 
8462 /* SPI0CON[CPHA] - Serial clock phase mode bit. */
8463 #define SPI0CON_CPHA_BBA (*(volatile unsigned long *) 0x42080208)
8464 #define SPI0CON_CPHA_MSK (0x1 << 2 )
8465 #define SPI0CON_CPHA (0x1 << 2 )
8466 #define SPI0CON_CPHA_SAMPLELEADING (0x0 << 2 ) /* SAMPLELEADING. Serial clock pulses at the middle of the first data bit transfer. */
8467 #define SPI0CON_CPHA_SAMPLETRAILING (0x1 << 2 ) /* SAMPLETRAILING. Serial clock pulses at the start of the first data bit. */
8468 
8469 /* SPI0CON[MASEN] - Master mode enable bit. */
8470 #define SPI0CON_MASEN_BBA (*(volatile unsigned long *) 0x42080204)
8471 #define SPI0CON_MASEN_MSK (0x1 << 1 )
8472 #define SPI0CON_MASEN (0x1 << 1 )
8473 #define SPI0CON_MASEN_DIS (0x0 << 1 ) /* DIS. Configure in slave mode. */
8474 #define SPI0CON_MASEN_EN (0x1 << 1 ) /* EN. Configure in master mode. */
8475 
8476 /* SPI0CON[ENABLE] - SPI enable bit. */
8477 #define SPI0CON_ENABLE_BBA (*(volatile unsigned long *) 0x42080200)
8478 #define SPI0CON_ENABLE_MSK (0x1 << 0 )
8479 #define SPI0CON_ENABLE (0x1 << 0 )
8480 #define SPI0CON_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable the SPI. Clearing this bit will also reset all the FIFO related logic to enable a clean start. */
8481 #define SPI0CON_ENABLE_EN (0x1 << 0 ) /* EN. Enable the SPI. */
8482 
8483 /* Reset Value for SPI0DMA*/
8484 #define SPI0DMA_RVAL 0x0
8485 
8486 /* SPI0DMA[IENRXDMA] - Receive DMA request enable bit. */
8487 #define SPI0DMA_IENRXDMA_BBA (*(volatile unsigned long *) 0x42080288)
8488 #define SPI0DMA_IENRXDMA_MSK (0x1 << 2 )
8489 #define SPI0DMA_IENRXDMA (0x1 << 2 )
8490 #define SPI0DMA_IENRXDMA_DIS (0x0 << 2 ) /* DIS. Disable Rx DMA requests. */
8491 #define SPI0DMA_IENRXDMA_EN (0x1 << 2 ) /* EN. Enable Rx DMA requests. */
8492 
8493 /* SPI0DMA[IENTXDMA] - Transmit DMA request enable bit. */
8494 #define SPI0DMA_IENTXDMA_BBA (*(volatile unsigned long *) 0x42080284)
8495 #define SPI0DMA_IENTXDMA_MSK (0x1 << 1 )
8496 #define SPI0DMA_IENTXDMA (0x1 << 1 )
8497 #define SPI0DMA_IENTXDMA_DIS (0x0 << 1 ) /* DIS. Disable Tx DMA requests. */
8498 #define SPI0DMA_IENTXDMA_EN (0x1 << 1 ) /* EN. Enable Tx DMA requests. */
8499 
8500 /* SPI0DMA[ENABLE] - DMA data transfer enable bit. */
8501 #define SPI0DMA_ENABLE_BBA (*(volatile unsigned long *) 0x42080280)
8502 #define SPI0DMA_ENABLE_MSK (0x1 << 0 )
8503 #define SPI0DMA_ENABLE (0x1 << 0 )
8504 #define SPI0DMA_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable DMA transfer. This bit needs to be cleared to prevent extra DMA request to the µDMA controller. */
8505 #define SPI0DMA_ENABLE_EN (0x1 << 0 ) /* EN. Enable a DMA transfer. Starts the transfer of a master configured to initiate transfer on transmit. */
8506 
8507 /* Reset Value for SPI0CNT*/
8508 #define SPI0CNT_RVAL 0x0
8509 
8510 /* SPI0CNT[VALUE] - Number of bytes requested by the SPI master during DMA transfer, when configured to initiate a transfer on a read of SPI0RX. This register is only used in DMA, master, Rx mode. */
8511 #define SPI0CNT_VALUE_MSK (0xFF << 0 )
8512 #if (__NO_MMR_STRUCTS__==1)
8513 
8514 #define SPI1STA (*(volatile unsigned short int *) 0x40004400)
8515 #define SPI1RX (*(volatile unsigned char *) 0x40004404)
8516 #define SPI1TX (*(volatile unsigned char *) 0x40004408)
8517 #define SPI1DIV (*(volatile unsigned short int *) 0x4000440C)
8518 #define SPI1CON (*(volatile unsigned short int *) 0x40004410)
8519 #define SPI1DMA (*(volatile unsigned short int *) 0x40004414)
8520 #define SPI1CNT (*(volatile unsigned short int *) 0x40004418)
8521 #endif // (__NO_MMR_STRUCTS__==1)
8522 
8523 /* Reset Value for SPI1STA*/
8524 #define SPI1STA_RVAL 0x0
8525 
8526 /* SPI1STA[CSERR] - CS error status bit. This bit generates an interrupt when detecting an abrupt CS desassertion before the full byte of data is transmitted completely. */
8527 #define SPI1STA_CSERR_BBA (*(volatile unsigned long *) 0x42088030)
8528 #define SPI1STA_CSERR_MSK (0x1 << 12 )
8529 #define SPI1STA_CSERR (0x1 << 12 )
8530 #define SPI1STA_CSERR_CLR (0x0 << 12 ) /* CLR: Cleared when no CS error is detected. Cleared to 0 on a read of SPI1STA register. */
8531 #define SPI1STA_CSERR_SET (0x1 << 12 ) /* SET. Set when the CS line is deasserted abruptly. */
8532 
8533 /* SPI1STA[RXS] - Rx FIFO excess bytes present. */
8534 #define SPI1STA_RXS_BBA (*(volatile unsigned long *) 0x4208802C)
8535 #define SPI1STA_RXS_MSK (0x1 << 11 )
8536 #define SPI1STA_RXS (0x1 << 11 )
8537 #define SPI1STA_RXS_CLR (0x0 << 11 ) /* CLR. When the number of bytes in the FIFO is equal or less than the number in SPI0CON[15:14]. This bit is not cleared on a read of SPI0STA register. */
8538 #define SPI1STA_RXS_SET (0x1 << 11 ) /* SET. When there are more bytes in the Rx FIFO than configured in MOD (SPI1CON[15:14]). For example if MOD = TX1RX1, RXS is set when there are 2 or more bytes in the Rx FIFO. This bit does not dependent on SPI1CON[6] and does not cause an interrupt. */
8539 
8540 /* SPI1STA[RXFSTA] - Rx FIFO status bits, indicates how many valid bytes are in the Rx FIFO. */
8541 #define SPI1STA_RXFSTA_MSK (0x7 << 8 )
8542 #define SPI1STA_RXFSTA_EMPTY (0x0 << 8 ) /* EMPTY. When Rx FIFO is empty. */
8543 #define SPI1STA_RXFSTA_ONEBYTE (0x1 << 8 ) /* ONEBYTE. When 1 valid byte is in the FIFO. */
8544 #define SPI1STA_RXFSTA_TWOBYTES (0x2 << 8 ) /* TWOBYTES. When 2 valid bytes are in the FIFO. */
8545 #define SPI1STA_RXFSTA_THREEBYTES (0x3 << 8 ) /* THREEBYTES. When 3 valid bytes are in the FIFO. */
8546 #define SPI1STA_RXFSTA_FOURBYTES (0x4 << 8 ) /* FOURBYTES. When 4 valid bytes are in the FIFO. */
8547 
8548 /* SPI1STA[RXOF] - Rx FIFO overflow status bit. This bit generates an interrupt. */
8549 #define SPI1STA_RXOF_BBA (*(volatile unsigned long *) 0x4208801C)
8550 #define SPI1STA_RXOF_MSK (0x1 << 7 )
8551 #define SPI1STA_RXOF (0x1 << 7 )
8552 #define SPI1STA_RXOF_CLR (0x0 << 7 ) /* CLR.Cleared to 0 on a read of SPI1STA register. */
8553 #define SPI1STA_RXOF_SET (0x1 << 7 ) /* SET. Set when the Rx FIFO is already full when new data is loaded to the FIFO. This bit generates an interrupt except when RFLUSH is set. (SPI1CON[12]). */
8554 
8555 /* SPI1STA[RX] - Rx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
8556 #define SPI1STA_RX_BBA (*(volatile unsigned long *) 0x42088018)
8557 #define SPI1STA_RX_MSK (0x1 << 6 )
8558 #define SPI1STA_RX (0x1 << 6 )
8559 #define SPI1STA_RX_CLR (0x0 << 6 ) /* CLR. Cleared to 0 on a read of SPI1STA register. */
8560 #define SPI1STA_RX_SET (0x1 << 6 ) /* SET. Set when a receive interrupt occurs. This bit is set when TIM (SPI1CON[6]) is cleared and the required number of bytes have been received. */
8561 
8562 /* SPI1STA[TX] - Tx interrupt status bit. This bit generates an interrupt, except when DMA transfer is enabled. */
8563 #define SPI1STA_TX_BBA (*(volatile unsigned long *) 0x42088014)
8564 #define SPI1STA_TX_MSK (0x1 << 5 )
8565 #define SPI1STA_TX (0x1 << 5 )
8566 #define SPI1STA_TX_CLR (0x0 << 5 ) /* CLR. Cleared to 0 on a read of SPI1STA register. */
8567 #define SPI1STA_TX_SET (0x1 << 5 ) /* SET. Set when a transmit interrupt occurs. This bit is set when TIM (SPI1CON[6]) is set and the required number of bytes have been transmitted. */
8568 
8569 /* SPI1STA[TXUR] - Tx FIFO Underrun. This bit generates an interrupt. */
8570 #define SPI1STA_TXUR_BBA (*(volatile unsigned long *) 0x42088010)
8571 #define SPI1STA_TXUR_MSK (0x1 << 4 )
8572 #define SPI1STA_TXUR (0x1 << 4 )
8573 #define SPI1STA_TXUR_CLR (0x0 << 4 ) /* CLR. Cleared to 0 on a read of SPI1STA register. */
8574 #define SPI1STA_TXUR_SET (0x1 << 4 ) /* SET. Set when a transmit is initiated without any valid data in the Tx FIFO. This bit generates an interrupt except when TFLUSH is set in SPI1CON. */
8575 
8576 /* SPI1STA[TXFSTA] - Tx FIFO status bits, indicates how many valid bytes are in the Tx FIFO. */
8577 #define SPI1STA_TXFSTA_MSK (0x7 << 1 )
8578 #define SPI1STA_TXFSTA_EMPTY (0x0 << 1 ) /* EMPTY. When Tx FIFO is empty. */
8579 #define SPI1STA_TXFSTA_ONEBYTE (0x1 << 1 ) /* ONEBYTE. 1 valid byte is in the FIFO. */
8580 #define SPI1STA_TXFSTA_TWOBYTES (0x2 << 1 ) /* TWOBYTES. 2 valid bytes are in the FIFO. */
8581 #define SPI1STA_TXFSTA_THREEBYTES (0x3 << 1 ) /* THREEBYTES. 3 valid bytes are in the FIFO. */
8582 #define SPI1STA_TXFSTA_FOURBYTES (0x4 << 1 ) /* FOURBYTES. 4 valid bytes are in the FIFO. */
8583 
8584 /* SPI1STA[IRQ] - Interrupt status bit. */
8585 #define SPI1STA_IRQ_BBA (*(volatile unsigned long *) 0x42088000)
8586 #define SPI1STA_IRQ_MSK (0x1 << 0 )
8587 #define SPI1STA_IRQ (0x1 << 0 )
8588 #define SPI1STA_IRQ_CLR (0x0 << 0 ) /* CLR. Cleared to 0 on a read of SPI1STA register. */
8589 #define SPI1STA_IRQ_SET (0x1 << 0 ) /* SET. Set to 1 when an SPI1 based interrupt occurs. */
8590 
8591 /* Reset Value for SPI1RX*/
8592 #define SPI1RX_RVAL 0x0
8593 
8594 /* SPI1RX[VALUE] - 8-bit receive register. A read of the RX FIFO returns the next byte to be read from the FIFO. A read of the FIFO when it is empty returns zero. */
8595 #define SPI1RX_VALUE_MSK (0xFF << 0 )
8596 
8597 /* Reset Value for SPI1TX*/
8598 #define SPI1TX_RVAL 0x0
8599 
8600 /* SPI1TX[VALUE] - 8-bit transmit register. A write to the Tx FIFO address space writes data to the next available location in the Tx FIFO. If the FIFO is full, the oldest byte of data in the FIFO is overwritten. A read from this address location return zero. */
8601 #define SPI1TX_VALUE_MSK (0xFF << 0 )
8602 
8603 /* Reset Value for SPI1DIV*/
8604 #define SPI1DIV_RVAL 0x0
8605 
8606 /* SPI1DIV[BCRST] - Configures the behavior of SPI communication after an abrupt deassertion of CS. This bit should be set in slave and master mode. */
8607 #define SPI1DIV_BCRST_BBA (*(volatile unsigned long *) 0x4208819C)
8608 #define SPI1DIV_BCRST_MSK (0x1 << 7 )
8609 #define SPI1DIV_BCRST (0x1 << 7 )
8610 #define SPI1DIV_BCRST_DIS (0x0 << 7 ) /* DIS. Resumes communication from where it stopped when the CS is deasserted. The rest of the bits are then received/ transmitted when CS returns low. User code should ignore the CSERR interrupt. */
8611 #define SPI1DIV_BCRST_EN (0x1 << 7 ) /* EN. Enabled for a clean restart of SPI transfer after a CSERR condition. User code must also clear the SPI enable bit in SPI1CON during the CSERR interrupt. */
8612 
8613 /* SPI1DIV[DIV] - Factor used to divide UCLK in the generation of the master mode serial clock. */
8614 #define SPI1DIV_DIV_MSK (0x3F << 0 )
8615 
8616 /* Reset Value for SPI1CON*/
8617 #define SPI1CON_RVAL 0x0
8618 
8619 /* SPI1CON[MOD] - IRQ mode bits. When TIM is set these bits configure when the Tx/Rx interrupts occur in a transfer. For a DMA Rx transfer, these bits should be 00. */
8620 #define SPI1CON_MOD_MSK (0x3 << 14 )
8621 #define SPI1CON_MOD_TX1RX1 (0x0 << 14 ) /* TX1RX1. Tx/Rx interrupt occurs when 1 byte has been transmitted/received from/into the FIFO. */
8622 #define SPI1CON_MOD_TX2RX2 (0x1 << 14 ) /* TX2RX2. Tx/Rx interrupt occurs when 2 bytes have been transmitted/received from/into the FIFO. */
8623 #define SPI1CON_MOD_TX3RX3 (0x2 << 14 ) /* TX3RX3. Tx/Rx interrupt occurs when 3 bytes have been transmitted/received from/into the FIFO. */
8624 #define SPI1CON_MOD_TX4RX4 (0x3 << 14 ) /* TX4RX4. Tx/Rx interrupt occurs when 4 bytes have been transmitted/received from/into the FIFO. */
8625 
8626 /* SPI1CON[TFLUSH] - Tx FIFO flush enable bit. */
8627 #define SPI1CON_TFLUSH_BBA (*(volatile unsigned long *) 0x42088234)
8628 #define SPI1CON_TFLUSH_MSK (0x1 << 13 )
8629 #define SPI1CON_TFLUSH (0x1 << 13 )
8630 #define SPI1CON_TFLUSH_DIS (0x0 << 13 ) /* DIS. Disable Tx FIFO flushing. */
8631 #define SPI1CON_TFLUSH_EN (0x1 << 13 ) /* EN. Flush the Tx FIFO. This bit does not clear itself and should be toggled if a single flush is required. If this bit is left high, then either the last transmitted value or 0x00 is transmitted depending on the ZEN bit (SPI1CON[7]). Any writes to the Tx FIFO are ignored while this bit is set. */
8632 
8633 /* SPI1CON[RFLUSH] - Rx FIFO flush enable bit. */
8634 #define SPI1CON_RFLUSH_BBA (*(volatile unsigned long *) 0x42088230)
8635 #define SPI1CON_RFLUSH_MSK (0x1 << 12 )
8636 #define SPI1CON_RFLUSH (0x1 << 12 )
8637 #define SPI1CON_RFLUSH_DIS (0x0 << 12 ) /* DIS. Disable Rx FIFO flushing. */
8638 #define SPI1CON_RFLUSH_EN (0x1 << 12 ) /* EN. If this bit is set, all incoming data is ignored and no interrupts are generated. If set and TIM = 0 (SPI1CON[6]), a read of the Rx FIFO initiates a transfer. */
8639 
8640 /* SPI1CON[CON] - Continuous transfer enable bit. */
8641 #define SPI1CON_CON_BBA (*(volatile unsigned long *) 0x4208822C)
8642 #define SPI1CON_CON_MSK (0x1 << 11 )
8643 #define SPI1CON_CON (0x1 << 11 )
8644 #define SPI1CON_CON_DIS (0x0 << 11 ) /* DIS. Disable continuous transfer. Each transfer consists of a single 8-bit serial transfer. If valid data exists in the SPIxTX register, then a new transfer is initiated after a stall period of one serial clock cycle. The CS line is deactivated for this one serial clock cycle. */
8645 #define SPI1CON_CON_EN (0x1 << 11 ) /* EN. Enable continuous transfer. In master mode, the transfer continues until no valid data is available in the Tx register. CS is asserted and remains asserted for the duration of each 8-bit serial transfer until Tx is empty. */
8646 
8647 /* SPI1CON[LOOPBACK] - Loopback enable bit. */
8648 #define SPI1CON_LOOPBACK_BBA (*(volatile unsigned long *) 0x42088228)
8649 #define SPI1CON_LOOPBACK_MSK (0x1 << 10 )
8650 #define SPI1CON_LOOPBACK (0x1 << 10 )
8651 #define SPI1CON_LOOPBACK_DIS (0x0 << 10 ) /* DIS. Normal mode. */
8652 #define SPI1CON_LOOPBACK_EN (0x1 << 10 ) /* EN. Connect MISO to MOSI, thus, data transmitted from Tx register is looped back to the Rx register. SPI must be configured in master mode. */
8653 
8654 /* SPI1CON[SOEN] - Slave output enable bit. */
8655 #define SPI1CON_SOEN_BBA (*(volatile unsigned long *) 0x42088224)
8656 #define SPI1CON_SOEN_MSK (0x1 << 9 )
8657 #define SPI1CON_SOEN (0x1 << 9 )
8658 #define SPI1CON_SOEN_DIS (0x0 << 9 ) /* DIS. Disable the output driver on the MISO pin. The MISO pin is open-circuit when this bit is clear. */
8659 #define SPI1CON_SOEN_EN (0x1 << 9 ) /* EN. MISO operates as normal. */
8660 
8661 /* SPI1CON[RXOF] - RX overflow overwrite enable bit. */
8662 #define SPI1CON_RXOF_BBA (*(volatile unsigned long *) 0x42088220)
8663 #define SPI1CON_RXOF_MSK (0x1 << 8 )
8664 #define SPI1CON_RXOF (0x1 << 8 )
8665 #define SPI1CON_RXOF_DIS (0x0 << 8 ) /* DIS. The new serial byte received is discarded when there is no space left in the FIFO */
8666 #define SPI1CON_RXOF_EN (0x1 << 8 ) /* EN. The valid data in the Rx register is overwritten by the new serial byte received when there is no space left in the FIFO. */
8667 
8668 /* SPI1CON[ZEN] - TX underrun: Transmit 0s when Tx FIFO is empty. */
8669 #define SPI1CON_ZEN_BBA (*(volatile unsigned long *) 0x4208821C)
8670 #define SPI1CON_ZEN_MSK (0x1 << 7 )
8671 #define SPI1CON_ZEN (0x1 << 7 )
8672 #define SPI1CON_ZEN_DIS (0x0 << 7 ) /* DIS. The last byte from the previous transmission is shifted out when a transfer is initiated with no valid data in the FIFO. */
8673 #define SPI1CON_ZEN_EN (0x1 << 7 ) /* EN. Transmit 0x00 when a transfer is initiated with no valid data in the FIFO. */
8674 
8675 /* SPI1CON[TIM] - Transfer and interrupt mode bit. */
8676 #define SPI1CON_TIM_BBA (*(volatile unsigned long *) 0x42088218)
8677 #define SPI1CON_TIM_MSK (0x1 << 6 )
8678 #define SPI1CON_TIM (0x1 << 6 )
8679 #define SPI1CON_TIM_TXWR (0x1 << 6 ) /* TXWR. Initiate transfer with a write to the SPIxTX register. Interrupt only occurs when Tx is empty. */
8680 #define SPI1CON_TIM_RXRD (0x0 << 6 ) /* RXRD. Initiate transfer with a read of the SPIxRX register. The read must be done while the SPI interface is idle. Interrupt only occurs when Rx is full. */
8681 
8682 /* SPI1CON[LSB] - LSB first transfer enable bit. */
8683 #define SPI1CON_LSB_BBA (*(volatile unsigned long *) 0x42088214)
8684 #define SPI1CON_LSB_MSK (0x1 << 5 )
8685 #define SPI1CON_LSB (0x1 << 5 )
8686 #define SPI1CON_LSB_DIS (0x0 << 5 ) /* DIS. MSB is transmitted first. */
8687 #define SPI1CON_LSB_EN (0x1 << 5 ) /* EN. LSB is transmitted first. */
8688 
8689 /* SPI1CON[WOM] - Wired OR enable bit. */
8690 #define SPI1CON_WOM_BBA (*(volatile unsigned long *) 0x42088210)
8691 #define SPI1CON_WOM_MSK (0x1 << 4 )
8692 #define SPI1CON_WOM (0x1 << 4 )
8693 #define SPI1CON_WOM_DIS (0x0 << 4 ) /* DIS. Normal driver output operation. */
8694 #define SPI1CON_WOM_EN (0x1 << 4 ) /* EN. Enable open circuit data output for multimaster/multislave configuration. */
8695 
8696 /* SPI1CON[CPOL] - Serial clock polarity mode bit. */
8697 #define SPI1CON_CPOL_BBA (*(volatile unsigned long *) 0x4208820C)
8698 #define SPI1CON_CPOL_MSK (0x1 << 3 )
8699 #define SPI1CON_CPOL (0x1 << 3 )
8700 #define SPI1CON_CPOL_LOW (0x0 << 3 ) /* LOW. Serial clock idles low. */
8701 #define SPI1CON_CPOL_HIGH (0x1 << 3 ) /* HIGH. Serial clock idles high. */
8702 
8703 /* SPI1CON[CPHA] - Serial clock phase mode bit. */
8704 #define SPI1CON_CPHA_BBA (*(volatile unsigned long *) 0x42088208)
8705 #define SPI1CON_CPHA_MSK (0x1 << 2 )
8706 #define SPI1CON_CPHA (0x1 << 2 )
8707 #define SPI1CON_CPHA_SAMPLELEADING (0x0 << 2 ) /* SAMPLELEADING. Serial clock pulses at the middle of the first data bit transfer. */
8708 #define SPI1CON_CPHA_SAMPLETRAILING (0x1 << 2 ) /* SAMPLETRAILING. Serial clock pulses at the start of the first data bit. */
8709 
8710 /* SPI1CON[MASEN] - Master mode enable bit. */
8711 #define SPI1CON_MASEN_BBA (*(volatile unsigned long *) 0x42088204)
8712 #define SPI1CON_MASEN_MSK (0x1 << 1 )
8713 #define SPI1CON_MASEN (0x1 << 1 )
8714 #define SPI1CON_MASEN_DIS (0x0 << 1 ) /* DIS. Configure in slave mode. */
8715 #define SPI1CON_MASEN_EN (0x1 << 1 ) /* EN. Configure in master mode. */
8716 
8717 /* SPI1CON[ENABLE] - SPI enable bit. */
8718 #define SPI1CON_ENABLE_BBA (*(volatile unsigned long *) 0x42088200)
8719 #define SPI1CON_ENABLE_MSK (0x1 << 0 )
8720 #define SPI1CON_ENABLE (0x1 << 0 )
8721 #define SPI1CON_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable the SPI. Clearing this bit will also reset all the FIFO related logic to enable a clean start. */
8722 #define SPI1CON_ENABLE_EN (0x1 << 0 ) /* EN. Enable the SPI. */
8723 
8724 /* Reset Value for SPI1DMA*/
8725 #define SPI1DMA_RVAL 0x0
8726 
8727 /* SPI1DMA[IENRXDMA] - Receive DMA request enable bit. */
8728 #define SPI1DMA_IENRXDMA_BBA (*(volatile unsigned long *) 0x42088288)
8729 #define SPI1DMA_IENRXDMA_MSK (0x1 << 2 )
8730 #define SPI1DMA_IENRXDMA (0x1 << 2 )
8731 #define SPI1DMA_IENRXDMA_DIS (0x0 << 2 ) /* DIS. Disable Rx DMA requests. */
8732 #define SPI1DMA_IENRXDMA_EN (0x1 << 2 ) /* EN. Enable Rx DMA requests. */
8733 
8734 /* SPI1DMA[IENTXDMA] - Transmit DMA request enable bit. */
8735 #define SPI1DMA_IENTXDMA_BBA (*(volatile unsigned long *) 0x42088284)
8736 #define SPI1DMA_IENTXDMA_MSK (0x1 << 1 )
8737 #define SPI1DMA_IENTXDMA (0x1 << 1 )
8738 #define SPI1DMA_IENTXDMA_DIS (0x0 << 1 ) /* DIS. Disable Tx DMA requests. */
8739 #define SPI1DMA_IENTXDMA_EN (0x1 << 1 ) /* EN. Enable Tx DMA requests. */
8740 
8741 /* SPI1DMA[ENABLE] - DMA data transfer enable bit. */
8742 #define SPI1DMA_ENABLE_BBA (*(volatile unsigned long *) 0x42088280)
8743 #define SPI1DMA_ENABLE_MSK (0x1 << 0 )
8744 #define SPI1DMA_ENABLE (0x1 << 0 )
8745 #define SPI1DMA_ENABLE_DIS (0x0 << 0 ) /* DIS. Disable DMA transfer. This bit needs to be cleared to prevent extra DMA request to the µDMA controller. */
8746 #define SPI1DMA_ENABLE_EN (0x1 << 0 ) /* EN. Enable a DMA transfer. Starts the transfer of a master configured to initiate transfer on transmit. */
8747 
8748 /* Reset Value for SPI1CNT*/
8749 #define SPI1CNT_RVAL 0x0
8750 
8751 /* SPI1CNT[VALUE] - Number of bytes requested by the SPI master during DMA transfer, when configured to initiate a transfer on a read of SPI0RX. This register is only used in DMA, master, Rx mode.. */
8752 #define SPI1CNT_VALUE_MSK (0xFF << 0 )
8753 // ------------------------------------------------------------------------------------------------
8754 // ----- T0 -----
8755 // ------------------------------------------------------------------------------------------------
8756 
8757 
8758 /**
8759  * @brief Timer 0 (pADI_TM0)
8760  */
8761 
8762 #if (__NO_MMR_STRUCTS__==0)
8763 typedef struct { /*!< pADI_TM0 Structure */
8764  __IO uint16_t LD; /*!< 16-bit Load Value */
8765  __I uint16_t RESERVED0;
8766  __IO uint16_t VAL; /*!< 16-bit Timer Value */
8767  __I uint16_t RESERVED1;
8768  __IO uint16_t CON; /*!< Control Register */
8769  __I uint16_t RESERVED2;
8770  __IO uint16_t CLRI; /*!< Clear Interrupt Register */
8771  __I uint16_t RESERVED3;
8772  __IO uint16_t CAP; /*!< Capture Register */
8773  __I uint16_t RESERVED4[5];
8774  __IO uint16_t STA; /*!< Status Register */
8776 #else // (__NO_MMR_STRUCTS__==0)
8777 #define T0LD (*(volatile unsigned short int *) 0x40000000)
8778 #define T0VAL (*(volatile unsigned short int *) 0x40000004)
8779 #define T0CON (*(volatile unsigned short int *) 0x40000008)
8780 #define T0CLRI (*(volatile unsigned short int *) 0x4000000C)
8781 #define T0CAP (*(volatile unsigned short int *) 0x40000010)
8782 #define T0STA (*(volatile unsigned short int *) 0x4000001C)
8783 #endif // (__NO_MMR_STRUCTS__==0)
8784 
8785 /* Reset Value for T0LD*/
8786 #define T0LD_RVAL 0x0
8787 
8788 /* T0LD[VALUE] - Load value. */
8789 #define T0LD_VALUE_MSK (0xFFFF << 0 )
8790 
8791 /* Reset Value for T0VAL*/
8792 #define T0VAL_RVAL 0x0
8793 
8794 /* T0VAL[VALUE] - Current counter value. */
8795 #define T0VAL_VALUE_MSK (0xFFFF << 0 )
8796 
8797 /* Reset Value for T0CON*/
8798 #define T0CON_RVAL 0xA
8799 
8800 /* T0CON[EVENTEN] - Enable event bit. */
8801 #define T0CON_EVENTEN_BBA (*(volatile unsigned long *) 0x42000130)
8802 #define T0CON_EVENTEN_MSK (0x1 << 12 )
8803 #define T0CON_EVENTEN (0x1 << 12 )
8804 #define T0CON_EVENTEN_DIS (0x0 << 12 ) /* DIS. Cleared by user. */
8805 #define T0CON_EVENTEN_EN (0x1 << 12 ) /* EN. Enable time capture of an event. */
8806 
8807 /* T0CON[EVENT] - Event select bits. Settings not described are reserved and should not be used. */
8808 #define T0CON_EVENT_MSK (0xF << 8 )
8809 #define T0CON_EVENT_T2 (0x0 << 8 ) /* T2. Wakeup Timer. */
8810 #define T0CON_EVENT_EXT0 (0x1 << 8 ) /* EXT0. External interrupt 0. */
8811 #define T0CON_EVENT_EXT1 (0x2 << 8 ) /* EXT1. External interrupt 1. */
8812 #define T0CON_EVENT_EXT2 (0x3 << 8 ) /* EXT2. External interrupt 2. */
8813 #define T0CON_EVENT_EXT3 (0x4 << 8 ) /* EXT3. External interrupt 3. */
8814 #define T0CON_EVENT_EXT4 (0x5 << 8 ) /* EXT4. External interrupt 4. */
8815 #define T0CON_EVENT_EXT5 (0x6 << 8 ) /* EXT5. External interrupt 5. */
8816 #define T0CON_EVENT_EXT6 (0x7 << 8 ) /* EXT6. External interrupt 6. */
8817 #define T0CON_EVENT_EXT7 (0x8 << 8 ) /* EXT7. External interrupt 7. */
8818 #define T0CON_EVENT_EXT8 (0x9 << 8 ) /* EXT8. External interrupt 8. */
8819 #define T0CON_EVENT_T3 (0xA << 8 ) /* T3. Watchdog timer. */
8820 #define T0CON_EVENT_T1 (0xC << 8 ) /* T1. Timer 1. */
8821 #define T0CON_EVENT_ADC (0xD << 8 ) /* ADC. Analog to Digital Converter. */
8822 #define T0CON_EVENT_FEE (0xE << 8 ) /* FEE. Flash Controller. */
8823 #define T0CON_EVENT_COM (0xF << 8 ) /* COM. UART Peripheral. */
8824 
8825 /* T0CON[RLD] - Reload control bit for periodic mode. */
8826 #define T0CON_RLD_BBA (*(volatile unsigned long *) 0x4200011C)
8827 #define T0CON_RLD_MSK (0x1 << 7 )
8828 #define T0CON_RLD (0x1 << 7 )
8829 #define T0CON_RLD_DIS (0x0 << 7 ) /* DIS. Reload on a time out. */
8830 #define T0CON_RLD_EN (0x1 << 7 ) /* EN. Reload the counter on a write to T0CLRI. */
8831 
8832 /* T0CON[CLK] - Clock select. */
8833 #define T0CON_CLK_MSK (0x3 << 5 )
8834 #define T0CON_CLK_UCLK (0x0 << 5 ) /* UCLK. Undivided system clock. */
8835 #define T0CON_CLK_PCLK (0x1 << 5 ) /* PCLK. Peripheral clock. */
8836 #define T0CON_CLK_LFOSC (0x2 << 5 ) /* LFOSC. 32 kHz internal oscillator. */
8837 #define T0CON_CLK_LFXTAL (0x3 << 5 ) /* LFXTAL. 32 kHz external crystal. */
8838 
8839 /* T0CON[ENABLE] - Timer enable bit. */
8840 #define T0CON_ENABLE_BBA (*(volatile unsigned long *) 0x42000110)
8841 #define T0CON_ENABLE_MSK (0x1 << 4 )
8842 #define T0CON_ENABLE (0x1 << 4 )
8843 #define T0CON_ENABLE_DIS (0x0 << 4 ) /* DIS. Disable the timer. Clearing this bit resets the timer, including the T0VAL register. */
8844 #define T0CON_ENABLE_EN (0x1 << 4 ) /* EN. Enable the timer. The timer starts counting from its initial value, 0 if count-up mode or 0xFFFF if count-down mode. */
8845 
8846 /* T0CON[MOD] - Timer mode. */
8847 #define T0CON_MOD_BBA (*(volatile unsigned long *) 0x4200010C)
8848 #define T0CON_MOD_MSK (0x1 << 3 )
8849 #define T0CON_MOD (0x1 << 3 )
8850 #define T0CON_MOD_FREERUN (0x0 << 3 ) /* FREERUN. Operate in free running mode. */
8851 #define T0CON_MOD_PERIODIC (0x1 << 3 ) /* PERIODIC. Operate in periodic mode. */
8852 
8853 /* T0CON[UP] - Count down/up. */
8854 #define T0CON_UP_BBA (*(volatile unsigned long *) 0x42000108)
8855 #define T0CON_UP_MSK (0x1 << 2 )
8856 #define T0CON_UP (0x1 << 2 )
8857 #define T0CON_UP_DIS (0x0 << 2 ) /* DIS. Timer to count down. */
8858 #define T0CON_UP_EN (0x1 << 2 ) /* EN. Timer to count up. */
8859 
8860 /* T0CON[PRE] - Prescaler. */
8861 #define T0CON_PRE_MSK (0x3 << 0 )
8862 #define T0CON_PRE_DIV1 (0x0 << 0 ) /* DIV1. Source clock/1.If the selected clock source is UCLK or PCLK this setting results in a prescaler of 4. */
8863 #define T0CON_PRE_DIV16 (0x1 << 0 ) /* DIV16. Source clock/16. */
8864 #define T0CON_PRE_DIV256 (0x2 << 0 ) /* DIV256. Source clock/256. */
8865 #define T0CON_PRE_DIV32768 (0x3 << 0 ) /* DIV32768. Source clock/32768. */
8866 
8867 /* Reset Value for T0CLRI*/
8868 #define T0CLRI_RVAL 0x0
8869 
8870 /* T0CLRI[CAP] - Clear captured event interrupt. */
8871 #define T0CLRI_CAP_BBA (*(volatile unsigned long *) 0x42000184)
8872 #define T0CLRI_CAP_MSK (0x1 << 1 )
8873 #define T0CLRI_CAP (0x1 << 1 )
8874 #define T0CLRI_CAP_CLR (0x1 << 1 ) /* CLR. Clear a captured event interrupt. This bit always reads 0. */
8875 
8876 /* T0CLRI[TMOUT] - Clear timeout interrupt. */
8877 #define T0CLRI_TMOUT_BBA (*(volatile unsigned long *) 0x42000180)
8878 #define T0CLRI_TMOUT_MSK (0x1 << 0 )
8879 #define T0CLRI_TMOUT (0x1 << 0 )
8880 #define T0CLRI_TMOUT_CLR (0x1 << 0 ) /* CLR. Clear a timeout interrupt. This bit always reads 0. */
8881 
8882 /* Reset Value for T0CAP*/
8883 #define T0CAP_RVAL 0x0
8884 
8885 /* T0CAP[VALUE] - Capture value. */
8886 #define T0CAP_VALUE_MSK (0xFFFF << 0 )
8887 
8888 /* Reset Value for T0STA*/
8889 #define T0STA_RVAL 0x0
8890 
8891 /* T0STA[CLRI] - T0CLRI write sync in progress.. */
8892 #define T0STA_CLRI_BBA (*(volatile unsigned long *) 0x4200039C)
8893 #define T0STA_CLRI_MSK (0x1 << 7 )
8894 #define T0STA_CLRI (0x1 << 7 )
8895 #define T0STA_CLRI_CLR (0x0 << 7 ) /* CLR. Cleared when the interrupt is cleared in the timer clock domain. */
8896 #define T0STA_CLRI_SET (0x1 << 7 ) /* SET. Set automatically when the T0CLRI value is being updated in the timer clock domain, indicating that the timer’s configuration is not yet valid. */
8897 
8898 /* T0STA[CON] - T0CON write sync in progress. */
8899 #define T0STA_CON_BBA (*(volatile unsigned long *) 0x42000398)
8900 #define T0STA_CON_MSK (0x1 << 6 )
8901 #define T0STA_CON (0x1 << 6 )
8902 #define T0STA_CON_CLR (0x0 << 6 ) /* CLR. Timer ready to receive commands to T0CON. The previous change of T0CON has been synchronized in the timer clock domain. */
8903 #define T0STA_CON_SET (0x1 << 6 ) /* SET. Timer not ready to receive commands to T0CON. Previous change of the T0CON value has not been synchronized in the timer clock domain. */
8904 
8905 /* T0STA[CAP] - Capture event pending. */
8906 #define T0STA_CAP_BBA (*(volatile unsigned long *) 0x42000384)
8907 #define T0STA_CAP_MSK (0x1 << 1 )
8908 #define T0STA_CAP (0x1 << 1 )
8909 #define T0STA_CAP_CLR (0x0 << 1 ) /* CLR. No capture event is pending. */
8910 #define T0STA_CAP_SET (0x1 << 1 ) /* SET. Capture event is pending. */
8911 
8912 /* T0STA[TMOUT] - Time out event occurred. */
8913 #define T0STA_TMOUT_BBA (*(volatile unsigned long *) 0x42000380)
8914 #define T0STA_TMOUT_MSK (0x1 << 0 )
8915 #define T0STA_TMOUT (0x1 << 0 )
8916 #define T0STA_TMOUT_CLR (0x0 << 0 ) /* CLR. No timeout event has occurred. */
8917 #define T0STA_TMOUT_SET (0x1 << 0 ) /* SET. Timeout event has occurred. For count-up mode, this is when the counter reaches full scale. For count-down mode, this is when the counter reaches 0. */
8918 #if (__NO_MMR_STRUCTS__==1)
8919 
8920 #define T1LD (*(volatile unsigned short int *) 0x40000400)
8921 #define T1VAL (*(volatile unsigned short int *) 0x40000404)
8922 #define T1CON (*(volatile unsigned short int *) 0x40000408)
8923 #define T1CLRI (*(volatile unsigned short int *) 0x4000040C)
8924 #define T1CAP (*(volatile unsigned short int *) 0x40000410)
8925 #define T1STA (*(volatile unsigned short int *) 0x4000041C)
8926 #endif // (__NO_MMR_STRUCTS__==1)
8927 
8928 /* Reset Value for T1LD*/
8929 #define T1LD_RVAL 0x0
8930 
8931 /* T1LD[VALUE] - Load value. */
8932 #define T1LD_VALUE_MSK (0xFFFF << 0 )
8933 
8934 /* Reset Value for T1VAL*/
8935 #define T1VAL_RVAL 0x0
8936 
8937 /* T1VAL[VALUE] - Current counter value. */
8938 #define T1VAL_VALUE_MSK (0xFFFF << 0 )
8939 
8940 /* Reset Value for T1CON*/
8941 #define T1CON_RVAL 0xA
8942 
8943 /* T1CON[EVENTEN] - Enable event bit. */
8944 #define T1CON_EVENTEN_BBA (*(volatile unsigned long *) 0x42008130)
8945 #define T1CON_EVENTEN_MSK (0x1 << 12 )
8946 #define T1CON_EVENTEN (0x1 << 12 )
8947 #define T1CON_EVENTEN_DIS (0x0 << 12 ) /* DIS. Cleared by user. */
8948 #define T1CON_EVENTEN_EN (0x1 << 12 ) /* EN. Enable time capture of an event. */
8949 
8950 /* T1CON[EVENT] - Event select bits. Settings not described are reserved and should not be used. */
8951 #define T1CON_EVENT_MSK (0xF << 8 )
8952 #define T1CON_EVENT_T0 (0x0 << 8 ) /* T0. Timer 0. */
8953 #define T1CON_EVENT_SPI0 (0x1 << 8 ) /* SPI0. SPI0 Peripheral. */
8954 #define T1CON_EVENT_SPI1 (0x2 << 8 ) /* SPI1. SPI1 Peripheral. */
8955 #define T1CON_EVENT_I2CS (0x3 << 8 ) /* I2CS. I2C slave peripheral. */
8956 #define T1CON_EVENT_I2CM (0x4 << 8 ) /* I2CM. I2C master peripheral. */
8957 #define T1CON_EVENT_DMAERR (0x6 << 8 ) /* DMAERR. DMA error */
8958 #define T1CON_EVENT_DMADONE (0x7 << 8 ) /* DMADONE. Completion of transfer on any of the DMA channel. */
8959 #define T1CON_EVENT_EXT1 (0x8 << 8 ) /* EXT1. External interrupt 1. */
8960 #define T1CON_EVENT_EXT2 (0x9 << 8 ) /* EXT2. External interrupt 2. */
8961 #define T1CON_EVENT_EXT3 (0xA << 8 ) /* EXT3. External interrupt 3. */
8962 #define T1CON_EVENT_PWMTRIP (0xB << 8 ) /* PWMTRIP. */
8963 #define T1CON_EVENT_PWM0 (0xC << 8 ) /* PWM0. PWM pair 0. */
8964 #define T1CON_EVENT_PWM1 (0xD << 8 ) /* PWM1. PWM pair 1. */
8965 #define T1CON_EVENT_PWM2 (0xE << 8 ) /* PWM2. PWM pair 2. */
8966 #define T1CON_EVENT_PWM3 (0xF << 8 ) /* PWM3. PWM pair 3. */
8967 
8968 /* T1CON[RLD] - Reload control bit for periodic mode. */
8969 #define T1CON_RLD_BBA (*(volatile unsigned long *) 0x4200811C)
8970 #define T1CON_RLD_MSK (0x1 << 7 )
8971 #define T1CON_RLD (0x1 << 7 )
8972 #define T1CON_RLD_DIS (0x0 << 7 ) /* DIS. Reload on a time out. */
8973 #define T1CON_RLD_EN (0x1 << 7 ) /* EN. Reload the counter on a write to T1CLRI. */
8974 
8975 /* T1CON[CLK] - Clock select. */
8976 #define T1CON_CLK_MSK (0x3 << 5 )
8977 #define T1CON_CLK_UCLK (0x0 << 5 ) /* UCLK. Undivided system clock. */
8978 #define T1CON_CLK_PCLK (0x1 << 5 ) /* PCLK. Peripheral clock. */
8979 #define T1CON_CLK_LFOSC (0x2 << 5 ) /* LFOSC. 32 kHz internal oscillator. */
8980 #define T1CON_CLK_LFXTAL (0x3 << 5 ) /* LFXTAL. 32 kHz external crystal. */
8981 
8982 /* T1CON[ENABLE] - Timer enable bit. */
8983 #define T1CON_ENABLE_BBA (*(volatile unsigned long *) 0x42008110)
8984 #define T1CON_ENABLE_MSK (0x1 << 4 )
8985 #define T1CON_ENABLE (0x1 << 4 )
8986 #define T1CON_ENABLE_DIS (0x0 << 4 ) /* DIS. Disable the timer. Clearing this bit resets the timer, including the T1VAL register. */
8987 #define T1CON_ENABLE_EN (0x1 << 4 ) /* EN. Enable the timer. The timer starts counting from its initial value, 0 if count-up mode or 0xFFFF if count-down mode. */
8988 
8989 /* T1CON[MOD] - Timer mode. */
8990 #define T1CON_MOD_BBA (*(volatile unsigned long *) 0x4200810C)
8991 #define T1CON_MOD_MSK (0x1 << 3 )
8992 #define T1CON_MOD (0x1 << 3 )
8993 #define T1CON_MOD_FREERUN (0x0 << 3 ) /* FREERUN. Operate in free running mode. */
8994 #define T1CON_MOD_PERIODIC (0x1 << 3 ) /* PERIODIC. Operate in periodic mode. */
8995 
8996 /* T1CON[UP] - Count down/up. */
8997 #define T1CON_UP_BBA (*(volatile unsigned long *) 0x42008108)
8998 #define T1CON_UP_MSK (0x1 << 2 )
8999 #define T1CON_UP (0x1 << 2 )
9000 #define T1CON_UP_DIS (0x0 << 2 ) /* DIS. Timer to count down. */
9001 #define T1CON_UP_EN (0x1 << 2 ) /* EN. Timer to count up. */
9002 
9003 /* T1CON[PRE] - Prescaler. */
9004 #define T1CON_PRE_MSK (0x3 << 0 )
9005 #define T1CON_PRE_DIV1 (0x0 << 0 ) /* DIV1. Source clock/1.If the selected clock source is UCLK or PCLK this setting results in a prescaler of 4. */
9006 #define T1CON_PRE_DIV16 (0x1 << 0 ) /* DIV16. Source clock/16. */
9007 #define T1CON_PRE_DIV256 (0x2 << 0 ) /* DIV256. Source clock/256. */
9008 #define T1CON_PRE_DIV32768 (0x3 << 0 ) /* DIV32768. Source clock/32768. */
9009 
9010 /* Reset Value for T1CLRI*/
9011 #define T1CLRI_RVAL 0x0
9012 
9013 /* T1CLRI[CAP] - Clear captured event interrupt. */
9014 #define T1CLRI_CAP_BBA (*(volatile unsigned long *) 0x42008184)
9015 #define T1CLRI_CAP_MSK (0x1 << 1 )
9016 #define T1CLRI_CAP (0x1 << 1 )
9017 #define T1CLRI_CAP_CLR (0x1 << 1 ) /* CLR. Clear a captured event interrupt. This bit always reads 0. */
9018 
9019 /* T1CLRI[TMOUT] - Clear timeout interrupt. */
9020 #define T1CLRI_TMOUT_BBA (*(volatile unsigned long *) 0x42008180)
9021 #define T1CLRI_TMOUT_MSK (0x1 << 0 )
9022 #define T1CLRI_TMOUT (0x1 << 0 )
9023 #define T1CLRI_TMOUT_CLR (0x1 << 0 ) /* CLR. Clear a timeout interrupt. This bit always reads 0. */
9024 
9025 /* Reset Value for T1CAP*/
9026 #define T1CAP_RVAL 0x0
9027 
9028 /* T1CAP[VALUE] - Capture value. */
9029 #define T1CAP_VALUE_MSK (0xFFFF << 0 )
9030 
9031 /* Reset Value for T1STA*/
9032 #define T1STA_RVAL 0x0
9033 
9034 /* T1STA[CLRI] - T1CLRI write sync in progress. */
9035 #define T1STA_CLRI_BBA (*(volatile unsigned long *) 0x4200839C)
9036 #define T1STA_CLRI_MSK (0x1 << 7 )
9037 #define T1STA_CLRI (0x1 << 7 )
9038 #define T1STA_CLRI_CLR (0x0 << 7 ) /* CLR. Cleared when the interrupt is cleared in the timer clock domain. */
9039 #define T1STA_CLRI_SET (0x1 << 7 ) /* SET. Set automatically when the T1CLRI value is being updated in the timer clock domain, indicating that the timer’s configuration is not yet valid. */
9040 
9041 /* T1STA[CON] - T1CON write sync in progress. */
9042 #define T1STA_CON_BBA (*(volatile unsigned long *) 0x42008398)
9043 #define T1STA_CON_MSK (0x1 << 6 )
9044 #define T1STA_CON (0x1 << 6 )
9045 #define T1STA_CON_CLR (0x0 << 6 ) /* CLR. Timer ready to receive commands to T1CON. The previous change of T1CON has been synchronized in the timer clock domain. */
9046 #define T1STA_CON_SET (0x1 << 6 ) /* SET. Timer not ready to receive commands to T1CON. Previous change of the T1CON value has not been synchronized in the timer clock domain. */
9047 
9048 /* T1STA[CAP] - Capture event pending. */
9049 #define T1STA_CAP_BBA (*(volatile unsigned long *) 0x42008384)
9050 #define T1STA_CAP_MSK (0x1 << 1 )
9051 #define T1STA_CAP (0x1 << 1 )
9052 #define T1STA_CAP_CLR (0x0 << 1 ) /* CLR. No capture event is pending. */
9053 #define T1STA_CAP_SET (0x1 << 1 ) /* SET. Capture event is pending. */
9054 
9055 /* T1STA[TMOUT] - Time out event occurred. */
9056 #define T1STA_TMOUT_BBA (*(volatile unsigned long *) 0x42008380)
9057 #define T1STA_TMOUT_MSK (0x1 << 0 )
9058 #define T1STA_TMOUT (0x1 << 0 )
9059 #define T1STA_TMOUT_CLR (0x0 << 0 ) /* CLR. No timeout event has occurred. */
9060 #define T1STA_TMOUT_SET (0x1 << 0 ) /* SET. Timeout event has occurred. For count-up mode, this is when the counter reaches full scale. For count-down mode, this is when the counter reaches 0. */
9061 // ------------------------------------------------------------------------------------------------
9062 // ----- UART -----
9063 // ------------------------------------------------------------------------------------------------
9064 
9065 
9066 /**
9067  * @brief UART (pADI_UART)
9068  */
9069 
9070 #if (__NO_MMR_STRUCTS__==0)
9071 typedef struct { /*!< pADI_UART Structure */
9072 
9073  union {
9074  __IO uint8_t COMTX; /*!< Transmit Holding Register */
9075  __IO uint8_t COMRX; /*!< Receive Buffer Register */
9076  } ;
9077  __I uint8_t RESERVED0[3];
9078  __IO uint8_t COMIEN; /*!< Interrupt Enable Register */
9079  __I uint8_t RESERVED1[3];
9080  __IO uint8_t COMIIR; /*!< Interrupt Identification Register */
9081  __I uint8_t RESERVED2[3];
9082  __IO uint8_t COMLCR; /*!< Line Control Register */
9083  __I uint8_t RESERVED3[3];
9084  __IO uint8_t COMMCR; /*!< Module Control Register */
9085  __I uint8_t RESERVED4[3];
9086  __IO uint8_t COMLSR; /*!< Line Status Register */
9087  __I uint8_t RESERVED5[3];
9088  __IO uint8_t COMMSR; /*!< Modem Status Register */
9089  __I uint8_t RESERVED6[11];
9090  __IO uint16_t COMFBR; /*!< Fractional Baud Rate Register. */
9091  __I uint16_t RESERVED7;
9092  __IO uint16_t COMDIV; /*!< Baud Rate Divider Register */
9094 #else // (__NO_MMR_STRUCTS__==0)
9095 #define COMTX (*(volatile unsigned char *) 0x40005000)
9096 #define COMRX (*(volatile unsigned char *) 0x40005000)
9097 #define COMIEN (*(volatile unsigned char *) 0x40005004)
9098 #define COMIIR (*(volatile unsigned char *) 0x40005008)
9099 #define COMLCR (*(volatile unsigned char *) 0x4000500C)
9100 #define COMMCR (*(volatile unsigned char *) 0x40005010)
9101 #define COMLSR (*(volatile unsigned char *) 0x40005014)
9102 #define COMMSR (*(volatile unsigned char *) 0x40005018)
9103 #define COMFBR (*(volatile unsigned short int *) 0x40005024)
9104 #define COMDIV (*(volatile unsigned short int *) 0x40005028)
9105 #endif // (__NO_MMR_STRUCTS__==0)
9106 
9107 /* Reset Value for COMTX*/
9108 #define COMTX_RVAL 0x0
9109 
9110 /* COMTX[VALUE] - Transmit Holding Register */
9111 #define COMTX_VALUE_MSK (0xFF << 0 )
9112 
9113 /* Reset Value for COMRX*/
9114 #define COMRX_RVAL 0x0
9115 
9116 /* COMRX[VALUE] - Receive Buffer Register */
9117 #define COMRX_VALUE_MSK (0xFF << 0 )
9118 
9119 /* Reset Value for COMIEN*/
9120 #define COMIEN_RVAL 0x0
9121 
9122 /* COMIEN[EDMAR] - DMA requests in transmit mode */
9123 #define COMIEN_EDMAR_BBA (*(volatile unsigned long *) 0x420A0094)
9124 #define COMIEN_EDMAR_MSK (0x1 << 5 )
9125 #define COMIEN_EDMAR (0x1 << 5 )
9126 #define COMIEN_EDMAR_DIS (0x0 << 5 ) /* DIS. Disable. */
9127 #define COMIEN_EDMAR_EN (0x1 << 5 ) /* EN. Enable. */
9128 
9129 /* COMIEN[EDMAT] - DMA requests in receive mode */
9130 #define COMIEN_EDMAT_BBA (*(volatile unsigned long *) 0x420A0090)
9131 #define COMIEN_EDMAT_MSK (0x1 << 4 )
9132 #define COMIEN_EDMAT (0x1 << 4 )
9133 #define COMIEN_EDMAT_DIS (0x0 << 4 ) /* DIS. Disable. */
9134 #define COMIEN_EDMAT_EN (0x1 << 4 ) /* EN. Enable. */
9135 
9136 /* COMIEN[EDSSI] - Modem status interrupt */
9137 #define COMIEN_EDSSI_BBA (*(volatile unsigned long *) 0x420A008C)
9138 #define COMIEN_EDSSI_MSK (0x1 << 3 )
9139 #define COMIEN_EDSSI (0x1 << 3 )
9140 #define COMIEN_EDSSI_DIS (0x0 << 3 ) /* DIS. Disable. */
9141 #define COMIEN_EDSSI_EN (0x1 << 3 ) /* EN. Enable. */
9142 
9143 /* COMIEN[ELSI] - Rx status interrupt */
9144 #define COMIEN_ELSI_BBA (*(volatile unsigned long *) 0x420A0088)
9145 #define COMIEN_ELSI_MSK (0x1 << 2 )
9146 #define COMIEN_ELSI (0x1 << 2 )
9147 #define COMIEN_ELSI_DIS (0x0 << 2 ) /* DIS. Disable. */
9148 #define COMIEN_ELSI_EN (0x1 << 2 ) /* EN. Enable. */
9149 
9150 /* COMIEN[ETBEI] - Transmit buffer empty interrupt */
9151 #define COMIEN_ETBEI_BBA (*(volatile unsigned long *) 0x420A0084)
9152 #define COMIEN_ETBEI_MSK (0x1 << 1 )
9153 #define COMIEN_ETBEI (0x1 << 1 )
9154 #define COMIEN_ETBEI_DIS (0x0 << 1 ) /* DIS. Disable. */
9155 #define COMIEN_ETBEI_EN (0x1 << 1 ) /* EN. Enable the transmit interrupt. An interrupt is generated when the COMTX register is empty. Note that if the COMTX is already empty when enabling this bit, an interrupt is generated immediately. */
9156 
9157 /* COMIEN[ERBFI] - Receive buffer full interrupt */
9158 #define COMIEN_ERBFI_BBA (*(volatile unsigned long *) 0x420A0080)
9159 #define COMIEN_ERBFI_MSK (0x1 << 0 )
9160 #define COMIEN_ERBFI (0x1 << 0 )
9161 #define COMIEN_ERBFI_DIS (0x0 << 0 ) /* DIS. Disable. */
9162 #define COMIEN_ERBFI_EN (0x1 << 0 ) /* EN. Enable the receive interrupt. An interrupt is generated when the COMRX register is loaded with the received data. Note that if the COMRX is already full when enabling this bit, an interrupt is generated immediately. */
9163 
9164 /* Reset Value for COMIIR*/
9165 #define COMIIR_RVAL 0x1
9166 
9167 /* COMIIR[STA] - Status bits. */
9168 #define COMIIR_STA_MSK (0x3 << 1 )
9169 #define COMIIR_STA_MODEMSTATUS (0x0 << 1 ) /* MODEMSTATUS. Modem status interrupt. */
9170 #define COMIIR_STA_TXBUFEMPTY (0x1 << 1 ) /* TXBUFEMPTY. Transmit buffer empty interrupt. */
9171 #define COMIIR_STA_RXBUFFULL (0x2 << 1 ) /* RXBUFFULL. Receive buffer full interrupt. Read COMRX register to clear. */
9172 #define COMIIR_STA_RXLINESTATUS (0x3 << 1 ) /* RXLINESTATUS. Receive line status interrupt. Read COMLSR register to clear. */
9173 
9174 /* COMIIR[NINT] - Interrupt flag. */
9175 #define COMIIR_NINT_BBA (*(volatile unsigned long *) 0x420A0100)
9176 #define COMIIR_NINT_MSK (0x1 << 0 )
9177 #define COMIIR_NINT (0x1 << 0 )
9178 #define COMIIR_NINT_CLR (0x0 << 0 ) /* CLR. Indicates any of the following: receive buffer full, transmit buffer empty, line status, or modem status interrupt occurred. */
9179 #define COMIIR_NINT_SET (0x1 << 0 ) /* SET. There is no interrupt (default). */
9180 
9181 /* Reset Value for COMLCR*/
9182 #define COMLCR_RVAL 0x0
9183 
9184 /* COMLCR[BRK] - Set Break. */
9185 #define COMLCR_BRK_BBA (*(volatile unsigned long *) 0x420A0198)
9186 #define COMLCR_BRK_MSK (0x1 << 6 )
9187 #define COMLCR_BRK (0x1 << 6 )
9188 #define COMLCR_BRK_DIS (0x0 << 6 ) /* DIS to operate in normal mode. */
9189 #define COMLCR_BRK_EN (0x1 << 6 ) /* EN to force TxD to 0. */
9190 
9191 /* COMLCR[SP] - Stick Parity. */
9192 #define COMLCR_SP_BBA (*(volatile unsigned long *) 0x420A0194)
9193 #define COMLCR_SP_MSK (0x1 << 5 )
9194 #define COMLCR_SP (0x1 << 5 )
9195 #define COMLCR_SP_DIS (0x0 << 5 ) /* DIS. Parity is not forced based on EPS and PEN values. */
9196 #define COMLCR_SP_EN (0x1 << 5 ) /* EN. Force parity to defined values based on EPS and PEN values. EPS = 1 and PEN = 1, parity forced to 1 EPS = 0 and PEN = 1, parity forced to 0 EPS = X and PEN = 0, no parity transmitted. */
9197 
9198 /* COMLCR[EPS] - Even Parity Select Bit. */
9199 #define COMLCR_EPS_BBA (*(volatile unsigned long *) 0x420A0190)
9200 #define COMLCR_EPS_MSK (0x1 << 4 )
9201 #define COMLCR_EPS (0x1 << 4 )
9202 #define COMLCR_EPS_DIS (0x0 << 4 ) /* DIS. Odd parity. */
9203 #define COMLCR_EPS_EN (0x1 << 4 ) /* EN. Even parity. */
9204 
9205 /* COMLCR[PEN] - Parity Enable Bit. */
9206 #define COMLCR_PEN_BBA (*(volatile unsigned long *) 0x420A018C)
9207 #define COMLCR_PEN_MSK (0x1 << 3 )
9208 #define COMLCR_PEN (0x1 << 3 )
9209 #define COMLCR_PEN_DIS (0x0 << 3 ) /* DIS. No parity transmission or checking. */
9210 #define COMLCR_PEN_EN (0x1 << 3 ) /* EN. Transmit and check the parity bit. */
9211 
9212 /* COMLCR[STOP] - Stop Bit. */
9213 #define COMLCR_STOP_BBA (*(volatile unsigned long *) 0x420A0188)
9214 #define COMLCR_STOP_MSK (0x1 << 2 )
9215 #define COMLCR_STOP (0x1 << 2 )
9216 #define COMLCR_STOP_DIS (0x0 << 2 ) /* DIS. Generate one stop bit in the transmitted data. */
9217 #define COMLCR_STOP_EN (0x1 << 2 ) /* EN. Transmit 1.5 stop bits if the word length is 5 bits, or 2 stop bits if the word length is 6, 7, or 8 bits. The receiver checks the first stop bit only, regardless of the number of stop bits selected. */
9218 
9219 /* COMLCR[WLS] - Word Length Select Bits. */
9220 #define COMLCR_WLS_MSK (0x3 << 0 )
9221 #define COMLCR_WLS_5BITS (0x0 << 0 ) /* 5BITS. 5 bits. */
9222 #define COMLCR_WLS_6BITS (0x1 << 0 ) /* 6BITS. 6 bits. */
9223 #define COMLCR_WLS_7BITS (0x2 << 0 ) /* 7BITS. 7 bits. */
9224 #define COMLCR_WLS_8BITS (0x3 << 0 ) /* 8BITS. 8 bits. */
9225 
9226 /* Reset Value for COMMCR*/
9227 #define COMMCR_RVAL 0x0
9228 
9229 /* COMMCR[LOOPBACK] - Loop Back. */
9230 #define COMMCR_LOOPBACK_BBA (*(volatile unsigned long *) 0x420A0210)
9231 #define COMMCR_LOOPBACK_MSK (0x1 << 4 )
9232 #define COMMCR_LOOPBACK (0x1 << 4 )
9233 #define COMMCR_LOOPBACK_DIS (0x0 << 4 ) /* DIS. Normal mode. */
9234 #define COMMCR_LOOPBACK_EN (0x1 << 4 ) /* EN. Enable loopback mode. */
9235 
9236 /* COMMCR[RTS] - Request To Send output control bit. */
9237 #define COMMCR_RTS_BBA (*(volatile unsigned long *) 0x420A0204)
9238 #define COMMCR_RTS_MSK (0x1 << 1 )
9239 #define COMMCR_RTS (0x1 << 1 )
9240 #define COMMCR_RTS_DIS (0x0 << 1 ) /* DIS. Force the RTS output to 1. */
9241 #define COMMCR_RTS_EN (0x1 << 1 ) /* EN. Force the RTS output to 0. */
9242 
9243 /* Reset Value for COMLSR*/
9244 #define COMLSR_RVAL 0x60
9245 
9246 /* COMLSR[TEMT] - COMTX and Shift Register Empty Status Bit. */
9247 #define COMLSR_TEMT_BBA (*(volatile unsigned long *) 0x420A0298)
9248 #define COMLSR_TEMT_MSK (0x1 << 6 )
9249 #define COMLSR_TEMT (0x1 << 6 )
9250 #define COMLSR_TEMT_CLR (0x0 << 6 ) /* CLR. Cleared when writing to COMTX. */
9251 #define COMLSR_TEMT_SET (0x1 << 6 ) /* SET. If COMTX and the shift register are empty, this bit indicates that the data has been transmitted, that is, it is no longer present in the shift register (default). */
9252 
9253 /* COMLSR[THRE] - COMTX Empty Status Bit. */
9254 #define COMLSR_THRE_BBA (*(volatile unsigned long *) 0x420A0294)
9255 #define COMLSR_THRE_MSK (0x1 << 5 )
9256 #define COMLSR_THRE (0x1 << 5 )
9257 #define COMLSR_THRE_CLR (0x0 << 5 ) /* CLR. Cleared when writing to COMTX. */
9258 #define COMLSR_THRE_SET (0x1 << 5 ) /* SET. If COMTX is empty, COMTX can be written as soon as this bit is set. The previous data may not have been transmitted yet and can still be present in the shift register (default). */
9259 
9260 /* COMLSR[BI] - Break Indicator. */
9261 #define COMLSR_BI_BBA (*(volatile unsigned long *) 0x420A0290)
9262 #define COMLSR_BI_MSK (0x1 << 4 )
9263 #define COMLSR_BI (0x1 << 4 )
9264 #define COMLSR_BI_CLR (0x0 << 4 ) /* CLR. Cleared automatically. */
9265 #define COMLSR_BI_SET (0x1 << 4 ) /* SET. Set when UART RXD is held low for more than the maximum word length. */
9266 
9267 /* COMLSR[FE] - Framing Error. */
9268 #define COMLSR_FE_BBA (*(volatile unsigned long *) 0x420A028C)
9269 #define COMLSR_FE_MSK (0x1 << 3 )
9270 #define COMLSR_FE (0x1 << 3 )
9271 #define COMLSR_FE_CLR (0x0 << 3 ) /* CLR. Cleared automatically. */
9272 #define COMLSR_FE_SET (0x1 << 3 ) /* SET. Set when the stop bit is invalid. */
9273 
9274 /* COMLSR[PE] - Parity Error. */
9275 #define COMLSR_PE_BBA (*(volatile unsigned long *) 0x420A0288)
9276 #define COMLSR_PE_MSK (0x1 << 2 )
9277 #define COMLSR_PE (0x1 << 2 )
9278 #define COMLSR_PE_CLR (0x0 << 2 ) /* CLR. Cleared automatically. */
9279 #define COMLSR_PE_SET (0x1 << 2 ) /* SET. Set when a parity error occurs. */
9280 
9281 /* COMLSR[OE] - Overrun Error. */
9282 #define COMLSR_OE_BBA (*(volatile unsigned long *) 0x420A0284)
9283 #define COMLSR_OE_MSK (0x1 << 1 )
9284 #define COMLSR_OE (0x1 << 1 )
9285 #define COMLSR_OE_CLR (0x0 << 1 ) /* CLR. Cleared automatically. */
9286 #define COMLSR_OE_SET (0x1 << 1 ) /* SET. Set automatically if data is overwritten before being read. */
9287 
9288 /* COMLSR[DR] - Data Ready. */
9289 #define COMLSR_DR_BBA (*(volatile unsigned long *) 0x420A0280)
9290 #define COMLSR_DR_MSK (0x1 << 0 )
9291 #define COMLSR_DR (0x1 << 0 )
9292 #define COMLSR_DR_CLR (0x0 << 0 ) /* CLR. Cleared by reading COMRX. */
9293 #define COMLSR_DR_SET (0x1 << 0 ) /* SET. Set automatically when COMRX is full. */
9294 
9295 /* Reset Value for COMMSR*/
9296 #define COMMSR_RVAL 0x0
9297 
9298 /* COMMSR[CTS] - Clear To Send signal status bit. */
9299 #define COMMSR_CTS_BBA (*(volatile unsigned long *) 0x420A0310)
9300 #define COMMSR_CTS_MSK (0x1 << 4 )
9301 #define COMMSR_CTS (0x1 << 4 )
9302 #define COMMSR_CTS_CLR (0x0 << 4 ) /* CLR. Cleared to 0 when CTS input is logic high. */
9303 #define COMMSR_CTS_SET (0x1 << 4 ) /* SET. Set to 1 when CTS input is logic low. */
9304 
9305 /* COMMSR[DCTS] - Delta CTS */
9306 #define COMMSR_DCTS_BBA (*(volatile unsigned long *) 0x420A0300)
9307 #define COMMSR_DCTS_MSK (0x1 << 0 )
9308 #define COMMSR_DCTS (0x1 << 0 )
9309 #define COMMSR_DCTS_DIS (0x0 << 0 ) /* DIS. Cleared automatically by reading COMMSR. */
9310 #define COMMSR_DCTS_EN (0x1 << 0 ) /* EN. Set automatically if CTS changed state since COMMSR last read. */
9311 
9312 /* Reset Value for COMFBR*/
9313 #define COMFBR_RVAL 0x0
9314 
9315 /* COMFBR[ENABLE] - Fractional baud rate generator enable bit. Used for more accurate baud rate generation. */
9316 #define COMFBR_ENABLE_BBA (*(volatile unsigned long *) 0x420A04BC)
9317 #define COMFBR_ENABLE_MSK (0x1 << 15 )
9318 #define COMFBR_ENABLE (0x1 << 15 )
9319 #define COMFBR_ENABLE_DIS (0x0 << 15 ) /* DIS. Disable. */
9320 #define COMFBR_ENABLE_EN (0x1 << 15 ) /* EN. Enable. */
9321 
9322 /* COMFBR[DIVM] - Fractional baud rate M divide bits (1 to 3). These bits should not be set to 0. */
9323 #define COMFBR_DIVM_MSK (0x3 << 11 )
9324 
9325 /* COMFBR[DIVN] - Fractional baud rate N divide bits (0 to 2047). */
9326 #define COMFBR_DIVN_MSK (0x7FF << 0 )
9327 
9328 /* Reset Value for COMDIV*/
9329 #define COMDIV_RVAL 0x1
9330 
9331 /* COMDIV[VALUE] - Sets the baud rate. The COMDIV register should not be 0. */
9332 #define COMDIV_VALUE_MSK (0xFFFF << 0 )
9333 // ------------------------------------------------------------------------------------------------
9334 // ----- WUT -----
9335 // ------------------------------------------------------------------------------------------------
9336 
9337 
9338 /**
9339  * @brief WakeUp Timer (pADI_WUT)
9340  */
9341 
9342 #if (__NO_MMR_STRUCTS__==0)
9343 typedef struct { /*!< pADI_WUT Structure */
9344  __IO uint16_t T2VAL0; /*!< Current Wake-Up Timer Value LSB */
9345  __I uint16_t RESERVED0;
9346  __IO uint16_t T2VAL1; /*!< Current Wake-Up Timer Value MSB */
9347  __I uint16_t RESERVED1;
9348  __IO uint16_t T2CON; /*!< Control Register */
9349  __I uint16_t RESERVED2;
9350  __IO uint16_t T2INC; /*!< 12-bit Interval Register for Wake-Up Field A */
9351  __I uint16_t RESERVED3;
9352  __IO uint16_t T2WUFB0; /*!< Wake-Up Field B LSB */
9353  __I uint16_t RESERVED4;
9354  __IO uint16_t T2WUFB1; /*!< Wake-Up Field B MSB */
9355  __I uint16_t RESERVED5;
9356  __IO uint16_t T2WUFC0; /*!< Wake-Up Field C LSB */
9357  __I uint16_t RESERVED6;
9358  __IO uint16_t T2WUFC1; /*!< Wake-Up Field C MSB */
9359  __I uint16_t RESERVED7;
9360  __IO uint16_t T2WUFD0; /*!< Wake-UpField D LSB */
9361  __I uint16_t RESERVED8;
9362  __IO uint16_t T2WUFD1; /*!< Wake-Up Field D MSB */
9363  __I uint16_t RESERVED9;
9364  __IO uint16_t T2IEN; /*!< Interrupt Enable */
9365  __I uint16_t RESERVED10;
9366  __IO uint16_t T2STA; /*!< Status */
9367  __I uint16_t RESERVED11;
9368  __IO uint16_t T2CLRI; /*!< Clear Interrupts */
9369  __I uint16_t RESERVED12[5];
9370  __IO uint16_t T2WUFA0; /*!< Wake-Up Field A LSB */
9371  __I uint16_t RESERVED13;
9372  __IO uint16_t T2WUFA1; /*!< Wake-Up Field A MSB */
9373 } ADI_WUT_TypeDef;
9374 #else // (__NO_MMR_STRUCTS__==0)
9375 #define T2VAL0 (*(volatile unsigned short int *) 0x40002500)
9376 #define T2VAL1 (*(volatile unsigned short int *) 0x40002504)
9377 #define T2CON (*(volatile unsigned short int *) 0x40002508)
9378 #define T2INC (*(volatile unsigned short int *) 0x4000250C)
9379 #define T2WUFB0 (*(volatile unsigned short int *) 0x40002510)
9380 #define T2WUFB1 (*(volatile unsigned short int *) 0x40002514)
9381 #define T2WUFC0 (*(volatile unsigned short int *) 0x40002518)
9382 #define T2WUFC1 (*(volatile unsigned short int *) 0x4000251C)
9383 #define T2WUFD0 (*(volatile unsigned short int *) 0x40002520)
9384 #define T2WUFD1 (*(volatile unsigned short int *) 0x40002524)
9385 #define T2IEN (*(volatile unsigned short int *) 0x40002528)
9386 #define T2STA (*(volatile unsigned short int *) 0x4000252C)
9387 #define T2CLRI (*(volatile unsigned short int *) 0x40002530)
9388 #define T2WUFA0 (*(volatile unsigned short int *) 0x4000253C)
9389 #define T2WUFA1 (*(volatile unsigned short int *) 0x40002540)
9390 #endif // (__NO_MMR_STRUCTS__==0)
9391 
9392 /* Reset Value for T2VAL0*/
9393 #define T2VAL0_RVAL 0x0
9394 
9395 /* T2VAL0[VALUE] - Current Wake-Up timer value (bits 15 to 0). */
9396 #define T2VAL0_VALUE_MSK (0xFFFF << 0 )
9397 
9398 /* Reset Value for T2VAL1*/
9399 #define T2VAL1_RVAL 0x0
9400 
9401 /* T2VAL1[VALUE] - Current Wake-Up timer value (bits 31 to 16). */
9402 #define T2VAL1_VALUE_MSK (0xFFFF << 0 )
9403 
9404 /* Reset Value for T2CON*/
9405 #define T2CON_RVAL 0x40
9406 
9407 /* T2CON[STOPINC] - Allows the user to update the interval register safely. */
9408 #define T2CON_STOPINC_BBA (*(volatile unsigned long *) 0x4204A12C)
9409 #define T2CON_STOPINC_MSK (0x1 << 11 )
9410 #define T2CON_STOPINC (0x1 << 11 )
9411 #define T2CON_STOPINC_DIS (0x0 << 11 ) /* DIS. Allows the wake-up field A to be updated by hardware. */
9412 #define T2CON_STOPINC_EN (0x1 << 11 ) /* EN. Prevents wake-up field A being automatically updated by hardware.This allows user software to update the T2INC register value. */
9413 
9414 /* T2CON[CLK] - Clock select. */
9415 #define T2CON_CLK_MSK (0x3 << 9 )
9416 #define T2CON_CLK_PCLK (0x0 << 9 ) /* PCLK. Peripheral clock. */
9417 #define T2CON_CLK_LFXTAL (0x1 << 9 ) /* LFXTAL. 32 kHz external crystal. */
9418 #define T2CON_CLK_LFOSC (0x2 << 9 ) /* LFOSC. 32 kHz internal oscillator. */
9419 #define T2CON_CLK_EXTCLK (0x3 << 9 ) /* EXTCLK. External clock applied on P0.5. */
9420 
9421 /* T2CON[WUEN] - Wake-up enable bits for time field values. */
9422 #define T2CON_WUEN_BBA (*(volatile unsigned long *) 0x4204A120)
9423 #define T2CON_WUEN_MSK (0x1 << 8 )
9424 #define T2CON_WUEN (0x1 << 8 )
9425 #define T2CON_WUEN_DIS (0x0 << 8 ) /* DIS. Disable asynchronous Wake-Up timer. Interrupt conditions will not wake-up the part from sleep mode. */
9426 #define T2CON_WUEN_EN (0x1 << 8 ) /* EN. Enable asynchronous Wake-Up timer even when the core clock is off. Once the timer value equals any of the interrupt enabled compare field, a wake-up signal is generated. */
9427 
9428 /* T2CON[ENABLE] - Timer enable bit. */
9429 #define T2CON_ENABLE_BBA (*(volatile unsigned long *) 0x4204A11C)
9430 #define T2CON_ENABLE_MSK (0x1 << 7 )
9431 #define T2CON_ENABLE (0x1 << 7 )
9432 #define T2CON_ENABLE_DIS (0x0 << 7 ) /* DIS. Disable the timer. */
9433 #define T2CON_ENABLE_EN (0x1 << 7 ) /* EN. Enable the timer. When enabled wait for T2STA[8] to clear before continuing. */
9434 
9435 /* T2CON[MOD] - Timer free run enable. */
9436 #define T2CON_MOD_BBA (*(volatile unsigned long *) 0x4204A118)
9437 #define T2CON_MOD_MSK (0x1 << 6 )
9438 #define T2CON_MOD (0x1 << 6 )
9439 #define T2CON_MOD_PERIODIC (0x0 << 6 ) /* PERIODIC. Operate in periodic mode. Counts up to the value in T2WUFD */
9440 #define T2CON_MOD_FREERUN (0x1 << 6 ) /* FREERUN. Operate in free running mode (default). Counts from 0 to FFFF FFFF and starts again at 0. */
9441 
9442 /* T2CON[FREEZE] - Freeze enable bit. */
9443 #define T2CON_FREEZE_BBA (*(volatile unsigned long *) 0x4204A10C)
9444 #define T2CON_FREEZE_MSK (0x1 << 3 )
9445 #define T2CON_FREEZE (0x1 << 3 )
9446 #define T2CON_FREEZE_DIS (0x0 << 3 ) /* DIS. Disable this feature. */
9447 #define T2CON_FREEZE_EN (0x1 << 3 ) /* EN. Enable the freeze of the high 16 bits after the lower bits have been read from T2VAL0. This ensures that the software reads an atomic shot of the timer. The entire T2VAL register unfreezes after the high bits (T2VAL1) have been read. */
9448 
9449 /* T2CON[PRE] - Prescaler. */
9450 #define T2CON_PRE_MSK (0x3 << 0 )
9451 #define T2CON_PRE_DIV1 (0x0 << 0 ) /* DIV1. Source clock/1. If the selected clock source is PCLK this setting results in a prescaler of 4. */
9452 #define T2CON_PRE_DIV16 (0x1 << 0 ) /* DIV16. Source clock/16. */
9453 #define T2CON_PRE_DIV256 (0x2 << 0 ) /* DIV256. Source clock/256. */
9454 #define T2CON_PRE_DIV32768 (0x3 << 0 ) /* DIV32768. Source clock/32768. */
9455 
9456 /* Reset Value for T2INC*/
9457 #define T2INC_RVAL 0xC8
9458 
9459 /* T2INC[VALUE] - Wake-up interval */
9460 #define T2INC_VALUE_MSK (0xFFF << 0 )
9461 
9462 /* Reset Value for T2WUFB0*/
9463 #define T2WUFB0_RVAL 0x1FFF
9464 
9465 /* T2WUFB0[VALUE] - Lower 16 bits of Wake-Up Field B */
9466 #define T2WUFB0_VALUE_MSK (0xFFFF << 0 )
9467 
9468 /* Reset Value for T2WUFB1*/
9469 #define T2WUFB1_RVAL 0x0
9470 
9471 /* T2WUFB1[VALUE] - Upper 16 bits of Wake-Up Field B */
9472 #define T2WUFB1_VALUE_MSK (0xFFFF << 0 )
9473 
9474 /* Reset Value for T2WUFC0*/
9475 #define T2WUFC0_RVAL 0x2FFF
9476 
9477 /* T2WUFC0[VALUE] - Lower 16 bits of Wake-Up Field C */
9478 #define T2WUFC0_VALUE_MSK (0xFFFF << 0 )
9479 
9480 /* Reset Value for T2WUFC1*/
9481 #define T2WUFC1_RVAL 0x0
9482 
9483 /* T2WUFC1[VALUE] - Upper 16 bits of Wake-Up Field C */
9484 #define T2WUFC1_VALUE_MSK (0xFFFF << 0 )
9485 
9486 /* Reset Value for T2WUFD0*/
9487 #define T2WUFD0_RVAL 0x3FFF
9488 
9489 /* T2WUFD0[VALUE] - Lower 16 bits of Wake-Up Field D */
9490 #define T2WUFD0_VALUE_MSK (0xFFFF << 0 )
9491 
9492 /* Reset Value for T2WUFD1*/
9493 #define T2WUFD1_RVAL 0x0
9494 
9495 /* T2WUFD1[VALUE] - Upper 16 bits of Wake-Up Field D */
9496 #define T2WUFD1_VALUE_MSK (0xFFFF << 0 )
9497 
9498 /* Reset Value for T2IEN*/
9499 #define T2IEN_RVAL 0x0
9500 
9501 /* T2IEN[ROLL] - Interrupt enable bit when the counter rolls over. Only occurs in free running mode. */
9502 #define T2IEN_ROLL_BBA (*(volatile unsigned long *) 0x4204A510)
9503 #define T2IEN_ROLL_MSK (0x1 << 4 )
9504 #define T2IEN_ROLL (0x1 << 4 )
9505 #define T2IEN_ROLL_DIS (0x0 << 4 ) /* DIS. Disable the roll over interrupt. */
9506 #define T2IEN_ROLL_EN (0x1 << 4 ) /* EN. Generate an interrupt when Timer2 rolls over. */
9507 
9508 /* T2IEN[WUFD] - T2WUFD interrupt enable */
9509 #define T2IEN_WUFD_BBA (*(volatile unsigned long *) 0x4204A50C)
9510 #define T2IEN_WUFD_MSK (0x1 << 3 )
9511 #define T2IEN_WUFD (0x1 << 3 )
9512 #define T2IEN_WUFD_DIS (0x0 << 3 ) /* DIS. Disable T2WUFD interrupt. */
9513 #define T2IEN_WUFD_EN (0x1 << 3 ) /* EN. Generate an interrupt when T2VAL reaches T2WUFD. */
9514 
9515 /* T2IEN[WUFC] - T2WUFC interrupt enable */
9516 #define T2IEN_WUFC_BBA (*(volatile unsigned long *) 0x4204A508)
9517 #define T2IEN_WUFC_MSK (0x1 << 2 )
9518 #define T2IEN_WUFC (0x1 << 2 )
9519 #define T2IEN_WUFC_DIS (0x0 << 2 ) /* DIS. Disable T2WUFC interrupt. */
9520 #define T2IEN_WUFC_EN (0x1 << 2 ) /* EN. Generate an interrupt when T2VAL reaches T2WUFC. */
9521 
9522 /* T2IEN[WUFB] - T2WUFB interrupt enable */
9523 #define T2IEN_WUFB_BBA (*(volatile unsigned long *) 0x4204A504)
9524 #define T2IEN_WUFB_MSK (0x1 << 1 )
9525 #define T2IEN_WUFB (0x1 << 1 )
9526 #define T2IEN_WUFB_DIS (0x0 << 1 ) /* DIS. Disable T2WUFB interrupt. */
9527 #define T2IEN_WUFB_EN (0x1 << 1 ) /* EN. Generate an interrupt when T2VAL reaches T2WUFB. */
9528 
9529 /* T2IEN[WUFA] - T2WUFA interrupt enable */
9530 #define T2IEN_WUFA_BBA (*(volatile unsigned long *) 0x4204A500)
9531 #define T2IEN_WUFA_MSK (0x1 << 0 )
9532 #define T2IEN_WUFA (0x1 << 0 )
9533 #define T2IEN_WUFA_DIS (0x0 << 0 ) /* DIS. Disable T2WUFA interrupt. */
9534 #define T2IEN_WUFA_EN (0x1 << 0 ) /* EN. Generate an interrupt when T2VAL reaches T2WUFA. */
9535 
9536 /* Reset Value for T2STA*/
9537 #define T2STA_RVAL 0x0
9538 
9539 /* T2STA[CON] - Indicates when a change in the enable bit is synchronized to the 32 kHz clock domain (Done automatically) */
9540 #define T2STA_CON_BBA (*(volatile unsigned long *) 0x4204A5A0)
9541 #define T2STA_CON_MSK (0x1 << 8 )
9542 #define T2STA_CON (0x1 << 8 )
9543 #define T2STA_CON_CLR (0x0 << 8 ) /* CLR. It returns low when the change in the Enable bit has been synchronised to the 32 kHz clock domain. */
9544 #define T2STA_CON_SET (0x1 << 8 ) /* SET. This bit is set high when the Enable bit (bit 5) in the Control register is set or cleared and it is not synchronised to tthe 32 kHz clock. */
9545 
9546 /* T2STA[FREEZE] - Status of T2VAL freeze */
9547 #define T2STA_FREEZE_BBA (*(volatile unsigned long *) 0x4204A59C)
9548 #define T2STA_FREEZE_MSK (0x1 << 7 )
9549 #define T2STA_FREEZE (0x1 << 7 )
9550 #define T2STA_FREEZE_CLR (0x0 << 7 ) /* CLR. Reset low when T2VAL1 is read, indicating T2VAL is unfrozen. */
9551 #define T2STA_FREEZE_SET (0x1 << 7 ) /* SET. Set high when the T2VAL0 is read, indicating T2VAL is frozen. */
9552 
9553 /* T2STA[ROLL] - Interrupt status bit for instances when counter rolls over. Only occurs in free running mode. */
9554 #define T2STA_ROLL_BBA (*(volatile unsigned long *) 0x4204A590)
9555 #define T2STA_ROLL_MSK (0x1 << 4 )
9556 #define T2STA_ROLL (0x1 << 4 )
9557 #define T2STA_ROLL_CLR (0x0 << 4 ) /* CLR. Indicate that the timer has not rolled over. */
9558 #define T2STA_ROLL_SET (0x1 << 4 ) /* SET. Set high when enabled in the interrupt enable register and the T2VALS counter register is equal to all 1s */
9559 
9560 /* T2STA[WUFD] - T2WUFD interrupt flag */
9561 #define T2STA_WUFD_BBA (*(volatile unsigned long *) 0x4204A58C)
9562 #define T2STA_WUFD_MSK (0x1 << 3 )
9563 #define T2STA_WUFD (0x1 << 3 )
9564 #define T2STA_WUFD_CLR (0x0 << 3 ) /* CLR. Cleared after a write to the corresponding bit in T2CLRI. */
9565 #define T2STA_WUFD_SET (0x1 << 3 ) /* SET. Indicates that a comparator interrupt has occurred. */
9566 
9567 /* T2STA[WUFC] - T2WUFC interrupt flag */
9568 #define T2STA_WUFC_BBA (*(volatile unsigned long *) 0x4204A588)
9569 #define T2STA_WUFC_MSK (0x1 << 2 )
9570 #define T2STA_WUFC (0x1 << 2 )
9571 #define T2STA_WUFC_CLR (0x0 << 2 ) /* CLR. Cleared after a write to the corresponding bit in T2CLRI. */
9572 #define T2STA_WUFC_SET (0x1 << 2 ) /* SET. Indicates that a comparator interrupt has occurred. */
9573 
9574 /* T2STA[WUFB] - T2WUFB interrupt flag */
9575 #define T2STA_WUFB_BBA (*(volatile unsigned long *) 0x4204A584)
9576 #define T2STA_WUFB_MSK (0x1 << 1 )
9577 #define T2STA_WUFB (0x1 << 1 )
9578 #define T2STA_WUFB_CLR (0x0 << 1 ) /* CLR. Cleared after a write to the corresponding bit in T2CLRI. */
9579 #define T2STA_WUFB_SET (0x1 << 1 ) /* SET. Indicates that a comparator interrupt has occurred. */
9580 
9581 /* T2STA[WUFA] - T2WUFA interrupt flag */
9582 #define T2STA_WUFA_BBA (*(volatile unsigned long *) 0x4204A580)
9583 #define T2STA_WUFA_MSK (0x1 << 0 )
9584 #define T2STA_WUFA (0x1 << 0 )
9585 #define T2STA_WUFA_CLR (0x0 << 0 ) /* CLR. Cleared after a write to the corresponding bit in T2CLRI. */
9586 #define T2STA_WUFA_SET (0x1 << 0 ) /* SET. Indicates that a comparator interrupt has occurred. */
9587 
9588 /* Reset Value for T2CLRI*/
9589 #define T2CLRI_RVAL 0x0
9590 
9591 /* T2CLRI[ROLL] - Clear interrupt on Rollover. Only occurs in free running mode. */
9592 #define T2CLRI_ROLL_BBA (*(volatile unsigned long *) 0x4204A610)
9593 #define T2CLRI_ROLL_MSK (0x1 << 4 )
9594 #define T2CLRI_ROLL (0x1 << 4 )
9595 #define T2CLRI_ROLL_CLR (0x1 << 4 ) /* CLR. Interrupt clear bit for when counter rolls over. */
9596 
9597 /* T2CLRI[WUFD] - T2WUFD interrupt flag. Cleared automatically after synchronization. */
9598 #define T2CLRI_WUFD_BBA (*(volatile unsigned long *) 0x4204A60C)
9599 #define T2CLRI_WUFD_MSK (0x1 << 3 )
9600 #define T2CLRI_WUFD (0x1 << 3 )
9601 #define T2CLRI_WUFD_CLR (0x1 << 3 ) /* CLR. Clear the T2WUFD interrupt flag. */
9602 
9603 /* T2CLRI[WUFC] - T2WUFC interrupt flag. Cleared automatically after synchronization. */
9604 #define T2CLRI_WUFC_BBA (*(volatile unsigned long *) 0x4204A608)
9605 #define T2CLRI_WUFC_MSK (0x1 << 2 )
9606 #define T2CLRI_WUFC (0x1 << 2 )
9607 #define T2CLRI_WUFC_CLR (0x1 << 2 ) /* CLR. Clear the T2WUFC interrupt flag. */
9608 
9609 /* T2CLRI[WUFB] - T2WUFB interrupt flag. Cleared automatically after synchronization. */
9610 #define T2CLRI_WUFB_BBA (*(volatile unsigned long *) 0x4204A604)
9611 #define T2CLRI_WUFB_MSK (0x1 << 1 )
9612 #define T2CLRI_WUFB (0x1 << 1 )
9613 #define T2CLRI_WUFB_CLR (0x1 << 1 ) /* CLR. Clear the T2WUFB interrupt flag. */
9614 
9615 /* T2CLRI[WUFA] - T2WUFA interrupt flag. Cleared automatically after synchronization. */
9616 #define T2CLRI_WUFA_BBA (*(volatile unsigned long *) 0x4204A600)
9617 #define T2CLRI_WUFA_MSK (0x1 << 0 )
9618 #define T2CLRI_WUFA (0x1 << 0 )
9619 #define T2CLRI_WUFA_CLR (0x1 << 0 ) /* CLR. Clear the T2WUFA interrupt flag. */
9620 
9621 /* Reset Value for T2WUFA0*/
9622 #define T2WUFA0_RVAL 0x1900
9623 
9624 /* T2WUFA0[VALUE] - Lower 16 bits of Compare Register A */
9625 #define T2WUFA0_VALUE_MSK (0xFFFF << 0 )
9626 
9627 /* Reset Value for T2WUFA1*/
9628 #define T2WUFA1_RVAL 0x0
9629 
9630 /* T2WUFA1[VALUE] - Upper 16 bits of Compare Register A */
9631 #define T2WUFA1_VALUE_MSK (0xFFFF << 0 )
9632 // ------------------------------------------------------------------------------------------------
9633 // ----- WDT -----
9634 // ------------------------------------------------------------------------------------------------
9635 
9636 
9637 /**
9638  * @brief Watchdog Timer (pADI_WDT)
9639  */
9640 
9641 #if (__NO_MMR_STRUCTS__==0)
9642 typedef struct { /*!< pADI_WDT Structure */
9643  __IO uint16_t T3LD; /*!< 16-bit Load Value */
9644  __I uint16_t RESERVED0;
9645  __IO uint16_t T3VAL; /*!< 16-bit Timer Value */
9646  __I uint16_t RESERVED1;
9647  __IO uint16_t T3CON; /*!< Control Register */
9648  __I uint16_t RESERVED2;
9649  __IO uint16_t T3CLRI; /*!< Clear Interrupt Register */
9650  __I uint16_t RESERVED3[5];
9651  __IO uint16_t T3STA; /*!< Status Register */
9652 } ADI_WDT_TypeDef;
9653 #else // (__NO_MMR_STRUCTS__==0)
9654 #define T3LD (*(volatile unsigned short int *) 0x40002580)
9655 #define T3VAL (*(volatile unsigned short int *) 0x40002584)
9656 #define T3CON (*(volatile unsigned short int *) 0x40002588)
9657 #define T3CLRI (*(volatile unsigned short int *) 0x4000258C)
9658 #define T3STA (*(volatile unsigned short int *) 0x40002598)
9659 #endif // (__NO_MMR_STRUCTS__==0)
9660 
9661 /* Reset Value for T3LD*/
9662 #define T3LD_RVAL 0x1000
9663 
9664 /* T3LD[VALUE] - Load value. */
9665 #define T3LD_VALUE_MSK (0xFFFF << 0 )
9666 
9667 /* Reset Value for T3VAL*/
9668 #define T3VAL_RVAL 0x1000
9669 
9670 /* T3VAL[VALUE] - Current counter value. */
9671 #define T3VAL_VALUE_MSK (0xFFFF << 0 )
9672 
9673 /* Reset Value for T3CON*/
9674 #define T3CON_RVAL 0xE9
9675 
9676 /* T3CON[MOD] - Timer Mode */
9677 #define T3CON_MOD_BBA (*(volatile unsigned long *) 0x4204B118)
9678 #define T3CON_MOD_MSK (0x1 << 6 )
9679 #define T3CON_MOD (0x1 << 6 )
9680 #define T3CON_MOD_Reserved (0x0 << 6 ) /* Reserved */
9681 #define T3CON_MOD_PERIODIC (0x1 << 6 ) /* PERIODIC: Operate in periodic mode. */
9682 
9683 /* T3CON[ENABLE] - Timer enable bit. */
9684 #define T3CON_ENABLE_BBA (*(volatile unsigned long *) 0x4204B114)
9685 #define T3CON_ENABLE_MSK (0x1 << 5 )
9686 #define T3CON_ENABLE (0x1 << 5 )
9687 #define T3CON_ENABLE_DIS (0x0 << 5 ) /* DIS. Disable the timer. Clearing this bit resets the timer, including the T0VAL register. */
9688 #define T3CON_ENABLE_EN (0x1 << 5 ) /* EN. Enable the timer. The timer starts counting from its initial value. */
9689 
9690 /* T3CON[PRE] - Prescaler. */
9691 #define T3CON_PRE_MSK (0x3 << 2 )
9692 #define T3CON_PRE_DIV1 (0x0 << 2 ) /* DIV1. Source clock/1. */
9693 #define T3CON_PRE_DIV16 (0x1 << 2 ) /* DIV16. Source clock/16. */
9694 #define T3CON_PRE_DIV256 (0x2 << 2 ) /* DIV256. Source clock/256. */
9695 #define T3CON_PRE_DIV4096 (0x3 << 2 ) /* DIV4096. Source clock/4096. */
9696 
9697 /* T3CON[IRQ] - Timer interrupt. */
9698 #define T3CON_IRQ_BBA (*(volatile unsigned long *) 0x4204B104)
9699 #define T3CON_IRQ_MSK (0x1 << 1 )
9700 #define T3CON_IRQ (0x1 << 1 )
9701 #define T3CON_IRQ_DIS (0x0 << 1 ) /* DIS. Generate a reset on a timeout. */
9702 #define T3CON_IRQ_EN (0x1 << 1 ) /* EN. Generate an interrupt when the timer times out. This feature is available in active mode only and can be used to debug the watchdog timeout events. */
9703 
9704 /* T3CON[PD] - Stop count in hibernate mode. */
9705 #define T3CON_PD_BBA (*(volatile unsigned long *) 0x4204B100)
9706 #define T3CON_PD_MSK (0x1 << 0 )
9707 #define T3CON_PD (0x1 << 0 )
9708 #define T3CON_PD_DIS (0x0 << 0 ) /* DIS. The timer continues to count when in hibernate mode. */
9709 #define T3CON_PD_EN (0x1 << 0 ) /* EN. The timer stops counting when in hibernate mode. */
9710 
9711 /* Reset Value for T3CLRI*/
9712 #define T3CLRI_RVAL 0x0
9713 
9714 /* T3CLRI[VALUE] - Clear watchdog. */
9715 #define T3CLRI_VALUE_MSK (0xFFFF << 0 )
9716 
9717 /* Reset Value for T3STA*/
9718 #define T3STA_RVAL 0x20
9719 
9720 /* T3STA[LOCK] - Lock status bit. */
9721 #define T3STA_LOCK_BBA (*(volatile unsigned long *) 0x4204B310)
9722 #define T3STA_LOCK_MSK (0x1 << 4 )
9723 #define T3STA_LOCK (0x1 << 4 )
9724 #define T3STA_LOCK_CLR (0x0 << 4 ) /* CLR. Cleared after any reset and until user code sets T3CON[5]. */
9725 #define T3STA_LOCK_SET (0x1 << 4 ) /* SET. Set automatically in hardware when user code sets T3CON[5]. */
9726 
9727 /* T3STA[CON] - T3CON write sync in progress. */
9728 #define T3STA_CON_BBA (*(volatile unsigned long *) 0x4204B30C)
9729 #define T3STA_CON_MSK (0x1 << 3 )
9730 #define T3STA_CON (0x1 << 3 )
9731 #define T3STA_CON_CLR (0x0 << 3 ) /* CLR. Timer ready to receive commands to T3CON. The previous change of T3CON has been synchronized in the timer clock domain. */
9732 #define T3STA_CON_SET (0x1 << 3 ) /* SET. Timer not ready to receive commands to T3CON. Previous change of the T3CON value has not been synchronized in the timer clock domain. */
9733 
9734 /* T3STA[LD] - T3LD write sync in progress. */
9735 #define T3STA_LD_BBA (*(volatile unsigned long *) 0x4204B308)
9736 #define T3STA_LD_MSK (0x1 << 2 )
9737 #define T3STA_LD (0x1 << 2 )
9738 #define T3STA_LD_CLR (0x0 << 2 ) /* CLR. The previous change of T3LD has been synchronized in the timer clock domain. */
9739 #define T3STA_LD_SET (0x1 << 2 ) /* SET. Previous change of the T3LD value has not been synchronized in the timer clock domain. */
9740 
9741 /* T3STA[CLRI] - T3CLRI write sync in progress. */
9742 #define T3STA_CLRI_BBA (*(volatile unsigned long *) 0x4204B304)
9743 #define T3STA_CLRI_MSK (0x1 << 1 )
9744 #define T3STA_CLRI (0x1 << 1 )
9745 #define T3STA_CLRI_CLR (0x0 << 1 ) /* CLR. Cleared when the interrupt is cleared in the timer clock domain. */
9746 #define T3STA_CLRI_SET (0x1 << 1 ) /* SET. Set automatically when the T3CLRI value is being updated in the timer clock domain, indicating that the timer’s configuration is not yet valid. */
9747 
9748 /* T3STA[IRQ] - Interrupt pending. */
9749 #define T3STA_IRQ_BBA (*(volatile unsigned long *) 0x4204B300)
9750 #define T3STA_IRQ_MSK (0x1 << 0 )
9751 #define T3STA_IRQ (0x1 << 0 )
9752 #define T3STA_IRQ_CLR (0x0 << 0 ) /* CLR. No timeout event has occurred. */
9753 #define T3STA_IRQ_SET (0x1 << 0 ) /* SET. A timeout event has occurred. */
9754 
9755 
9756 /* -------------------- End of section using anonymous unions ------------------- */
9757 #if defined(__CC_ARM)
9758  #pragma pop
9759 #elif defined(__ICCARM__)
9760  /* leave anonymous unions enabled */
9761 #elif defined(__GNUC__)
9762  /* anonymous unions are enabled by default */
9763 #elif defined(__TMS470__)
9764  /* anonymous unions are enabled by default */
9765 #elif defined(__TASKING__)
9766  #pragma warning restore
9767 #else
9768  #warning Not supported compiler type
9769 #endif
9770 /********************************************
9771 ** Miscellaneous Definitions **
9772 *********************************************/
9773 
9774 //iEiNr in EiCfg()
9775 #define EXTINT0 0x0
9776 #define EXTINT1 0x1
9777 #define EXTINT2 0x2
9778 #define EXTINT3 0x3
9779 #define EXTINT4 0x4
9780 #define EXTINT5 0x5
9781 #define EXTINT6 0x6
9782 #define EXTINT7 0x7
9783 #define EXTINT8 0x8
9784 
9785 //iEnable in EiCfg()
9786 #define INT_DIS 0x0
9787 #define INT_EN 0x1
9788 
9789 //iMode in EiCfg()
9790 #define INT_RISE 0x0
9791 #define INT_FALL 0x1
9792 #define INT_EDGES 0x2
9793 #define INT_HIGH 0x3
9794 #define INT_LOW 0x4
9795 
9796 //Bit values.
9797 #define BIT0 1
9798 #define BIT1 2
9799 #define BIT2 4
9800 #define BIT3 8
9801 #define BIT4 0x10
9802 #define BIT5 0x20
9803 #define BIT6 0x40
9804 #define BIT7 0x80
9805 
9806 
9807 /* ================================================================================ */
9808 /* ================ Peripheral memory map ================ */
9809 /* ================================================================================ */
9810 
9811 #define ADI_ADC0_ADDR 0x40050000UL
9812 #define ADI_CLKCTL_ADDR 0x40002000UL
9813 #define ADI_DMA_ADDR 0x40010000UL
9814 #define ADI_FEE_ADDR 0x40002800UL
9815 #define ADI_GP0_ADDR 0x40006000UL
9816 #define ADI_GP1_ADDR 0x40006030UL
9817 #define ADI_GP2_ADDR 0x40006060UL
9818 #define ADI_GP3_ADDR 0x40006090UL
9819 #define ADI_GP4_ADDR 0x400060C0UL
9820 #define ADI_GPIOCMN_ADDR 0x400060F0UL
9821 #define ADI_MISC_ADDR 0x40008820UL
9822 #define ADI_I2C_ADDR 0x40003000UL
9823 #define ADI_INTERRUPT_ADDR 0x40002420UL
9824 #define ADI_IDENT_ADDR 0x40002020UL
9825 #define ADI_NVIC_ADDR 0xE000E000UL
9826 #define ADI_PWRCTL_ADDR 0x40002400UL
9827 #define ADI_PWM_ADDR 0x40001000UL
9828 #define ADI_RESET_ADDR 0x40002440UL
9829 #define ADI_SPI0_ADDR 0x40004000UL
9830 #define ADI_SPI1_ADDR 0x40004400UL
9831 #define ADI_TM0_ADDR 0x40000000UL
9832 #define ADI_TM1_ADDR 0x40000400UL
9833 #define ADI_UART_ADDR 0x40005000UL
9834 #define ADI_WUT_ADDR 0x40002500UL
9835 #define ADI_WDT_ADDR 0x40002580UL
9836 
9837 
9838 /* ================================================================================ */
9839 /* ================ Peripheral declaration ================ */
9840 /* ================================================================================ */
9841 
9842 #define pADI_ADC0 ((ADI_ADC_TypeDef *)ADI_ADC0_ADDR)
9843 #define pADI_CLKCTL ((ADI_CLKCTL_TypeDef *)ADI_CLKCTL_ADDR)
9844 #define pADI_DMA ((ADI_DMA_TypeDef *)ADI_DMA_ADDR)
9845 #define pADI_FEE ((ADI_FEE_TypeDef *)ADI_FEE_ADDR)
9846 #define pADI_GP0 ((ADI_GPIO_TypeDef *)ADI_GP0_ADDR)
9847 #define pADI_GP1 ((ADI_GPIO_TypeDef *)ADI_GP1_ADDR)
9848 #define pADI_GP2 ((ADI_GPIO_TypeDef *)ADI_GP2_ADDR)
9849 #define pADI_GP3 ((ADI_GPIO_TypeDef *)ADI_GP3_ADDR)
9850 #define pADI_GP4 ((ADI_GPIO_TypeDef *)ADI_GP4_ADDR)
9851 #define pADI_GPIOCMN ((ADI_GPIOCMN_TypeDef *)ADI_GPIOCMN_ADDR)
9852 #define pADI_MISC ((ADI_MISC_TypeDef *)ADI_MISC_ADDR)
9853 #define pADI_I2C ((ADI_I2C_TypeDef *)ADI_I2C_ADDR)
9854 #define pADI_INTERRUPT ((ADI_INTERRUPT_TypeDef *)ADI_INTERRUPT_ADDR)
9855 #define pADI_PWRCTL ((ADI_PWRCTL_TypeDef *)ADI_PWRCTL_ADDR)
9856 #define pADI_PWM ((ADI_PWM_TypeDef *)ADI_PWM_ADDR)
9857 #define pADI_RESET ((ADI_RESET_TypeDef *)ADI_RESET_ADDR)
9858 #define pADI_SPI0 ((ADI_SPI_TypeDef *)ADI_SPI0_ADDR)
9859 #define pADI_SPI1 ((ADI_SPI_TypeDef *)ADI_SPI1_ADDR)
9860 #define pADI_TM0 ((ADI_TIMER_TypeDef *)ADI_TM0_ADDR)
9861 #define pADI_TM1 ((ADI_TIMER_TypeDef *)ADI_TM1_ADDR)
9862 #define pADI_UART ((ADI_UART_TypeDef *)ADI_UART_ADDR)
9863 #define pADI_WUT ((ADI_WUT_TypeDef *)ADI_WUT_ADDR)
9864 #define pADI_WDT ((ADI_WDT_TypeDef *)ADI_WDT_ADDR)
9865 
9866 /** @} */ /* End of group Device_Peripheral_Registers *//** @} */ /* End of group ADUCRF101 */
9867 /** @} */ /* End of group CMSIS */
9868 
9869 #ifdef __cplusplus
9870 }
9871 #endif
9872 
9873 
9874 #endif // __ADUCRF101_H__
9875 
__IO uint16_t I2CALT
Definition: ADuCRF101.h:5129
__IO uint16_t FEESIGL
Definition: ADuCRF101.h:2043
__IO uint16_t I2CID3
Definition: ADuCRF101.h:5137
__IO uint16_t EI0CFG
Definition: ADuCRF101.h:5660
__IO uint8_t COMIEN
Definition: ADuCRF101.h:9078
__IO uint8_t COMRX
Definition: ADuCRF101.h:9075
__IO uint16_t CLRI
Definition: ADuCRF101.h:8770
__IO uint16_t T2WUFC1
Definition: ADuCRF101.h:9358
__IO uint16_t T2WUFA0
Definition: ADuCRF101.h:9370
__IO uint16_t PWM1COM2
Definition: ADuCRF101.h:7865
__IO uint16_t I2CMSTA
Definition: ADuCRF101.h:5105
Watchdog Timer (pADI_WDT)
Definition: ADuCRF101.h:9642
__IO uint16_t I2CMRX
Definition: ADuCRF101.h:5107
__IO uint32_t DMAADBPTR
Definition: ADuCRF101.h:1201
__IO uint16_t I2CID2
Definition: ADuCRF101.h:5135
__IO uint16_t FEEADR1L
Definition: ADuCRF101.h:2033
__IO uint16_t T2IEN
Definition: ADuCRF101.h:9364
Flash Controller (pADI_FEE)
Definition: ADuCRF101.h:2022
__IO uint8_t GPDWN
Definition: ADuCRF101.h:5013
__IO uint16_t FEEADR0H
Definition: ADuCRF101.h:2031
__IO uint8_t COMLSR
Definition: ADuCRF101.h:9086
__IO uint16_t COMFBR
Definition: ADuCRF101.h:9090
__IO uint8_t GPTGL
Definition: ADuCRF101.h:2532
__IO uint16_t PWM2LEN
Definition: ADuCRF101.h:7875
__IO uint16_t PWM3LEN
Definition: ADuCRF101.h:7883
I2C (pADI_I2C)
Definition: ADuCRF101.h:5102
__IO uint16_t FEEAEN2
Definition: ADuCRF101.h:2057
__IO uint16_t PWM0COM0
Definition: ADuCRF101.h:7853
__IO uint16_t FEEKEY
Definition: ADuCRF101.h:2037
Reset (pADI_RESET)
Definition: ADuCRF101.h:8160
__IO uint16_t SPISTA
Definition: ADuCRF101.h:8258
__IO uint8_t COMLCR
Definition: ADuCRF101.h:9082
__IO uint16_t I2CSTX
Definition: ADuCRF101.h:5127
__IO uint16_t PWM1COM1
Definition: ADuCRF101.h:7863
Pulse Width Modulation (pADI_PWM)
Definition: ADuCRF101.h:7846
__IO uint16_t T3CLRI
Definition: ADuCRF101.h:9649
__IO uint16_t ADCCFG
Definition: ADuCRF101.h:808
__IO uint32_t DMAPRICLR
Definition: ADuCRF101.h:1212
__IO uint16_t I2CSSTA
Definition: ADuCRF101.h:5123
__IO uint16_t PWM2COM1
Definition: ADuCRF101.h:7871
__IO uint8_t SPITX
Definition: ADuCRF101.h:8262
__IO uint8_t COMTX
Definition: ADuCRF101.h:9074
__IO uint16_t SPICON
Definition: ADuCRF101.h:8266
__IO uint16_t EI1CFG
Definition: ADuCRF101.h:5662
__IO uint16_t PWRKEY
Definition: ADuCRF101.h:7753
__IO uint8_t PWMCON1
Definition: ADuCRF101.h:7849
UART (pADI_UART)
Definition: ADuCRF101.h:9071
__IO uint16_t T2INC
Definition: ADuCRF101.h:9350
__IO uint16_t T2WUFD0
Definition: ADuCRF101.h:9360
Direct Memory Access (pADI_DMA)
Definition: ADuCRF101.h:1197
__IO uint16_t FEEPROH
Definition: ADuCRF101.h:2041
__IO uint16_t T2WUFA1
Definition: ADuCRF101.h:9372
__IO uint32_t DMAERRCLR
Definition: ADuCRF101.h:1214
__IO uint16_t T3LD
Definition: ADuCRF101.h:9643
__IO uint16_t PWM2COM0
Definition: ADuCRF101.h:7869
__IO uint16_t COMDIV
Definition: ADuCRF101.h:9092
__IO uint16_t FEEADR1H
Definition: ADuCRF101.h:2035
__IO uint32_t DMASWREQ
Definition: ADuCRF101.h:1203
__IO uint8_t COMIIR
Definition: ADuCRF101.h:9080
__IO uint16_t EI2CFG
Definition: ADuCRF101.h:5664
__IO uint8_t SHUTDOWN
Definition: ADuCRF101.h:7759
__IO uint16_t CLKACT
Definition: ADuCRF101.h:963
__IO uint16_t SPIDMA
Definition: ADuCRF101.h:8268
__IO uint16_t T3CON
Definition: ADuCRF101.h:9647
__IO uint8_t COMMCR
Definition: ADuCRF101.h:9084
__IO uint16_t VAL
Definition: ADuCRF101.h:8766
__IO uint8_t ADCSTA
Definition: ADuCRF101.h:812
__IO uint8_t SPIRX
Definition: ADuCRF101.h:8260
__IO uint16_t T2WUFB0
Definition: ADuCRF101.h:9352
__IO uint8_t SRAMRET
Definition: ADuCRF101.h:7757
__IO uint16_t PWRMOD
Definition: ADuCRF101.h:7751
Power Management Unit (pADI_PWRCTL)
Definition: ADuCRF101.h:7750
__IO uint8_t GPPUL
Definition: ADuCRF101.h:2520
__IO uint16_t T3STA
Definition: ADuCRF101.h:9651
__IO uint16_t T2WUFD1
Definition: ADuCRF101.h:9362
General Purpose Input Output (pADI_MISC)
Definition: ADuCRF101.h:5038
__IO uint8_t XOSCCON
Definition: ADuCRF101.h:961
__IO uint8_t GPCLR
Definition: ADuCRF101.h:2530
__IO uint16_t GPCON
Definition: ADuCRF101.h:2516
__IO uint32_t DMAALTSET
Definition: ADuCRF101.h:1209
__IO uint16_t CON
Definition: ADuCRF101.h:8768
__IO uint16_t PWM3COM2
Definition: ADuCRF101.h:7881
__IO uint16_t FEESTA
Definition: ADuCRF101.h:2023
__IO uint32_t DMAENSET
Definition: ADuCRF101.h:1207
__IO uint16_t FEEADRAL
Definition: ADuCRF101.h:2049
__IO uint16_t T2WUFC0
Definition: ADuCRF101.h:9356
__IO uint16_t PWM1LEN
Definition: ADuCRF101.h:7867
__IO uint16_t FEECON1
Definition: ADuCRF101.h:2047
__IO uint16_t PWM0LEN
Definition: ADuCRF101.h:7859
__IO uint16_t PWM0COM1
Definition: ADuCRF101.h:7855
__IO uint16_t SPIDIV
Definition: ADuCRF101.h:8264
__IO uint32_t DMARMSKCLR
Definition: ADuCRF101.h:1206
__IO uint16_t I2CID1
Definition: ADuCRF101.h:5133
General Purpose Input Output (pADI_GPIOCMN)
Definition: ADuCRF101.h:5012
__IO uint8_t GPOUT
Definition: ADuCRF101.h:2526
__IO uint8_t NMICLR
Definition: ADuCRF101.h:5668
__IO uint16_t T2CON
Definition: ADuCRF101.h:9348
__IO uint32_t DMAPDBPTR
Definition: ADuCRF101.h:1200
#define __IO
Definition: core_cm0.h:189
__IO uint16_t FEEPROL
Definition: ADuCRF101.h:2039
__IO uint16_t PWMCON0
Definition: ADuCRF101.h:7847
__IO uint8_t COMMSR
Definition: ADuCRF101.h:9088
__IO uint16_t I2CMTX
Definition: ADuCRF101.h:5109
__IO uint16_t T2VAL0
Definition: ADuCRF101.h:9344
__IO uint32_t DMASTA
Definition: ADuCRF101.h:1198
__IO uint16_t PWM3COM1
Definition: ADuCRF101.h:7879
__IO uint16_t FEECMD
Definition: ADuCRF101.h:2027
__IO uint16_t SPICNT
Definition: ADuCRF101.h:8270
__IO uint16_t FEEAEN0
Definition: ADuCRF101.h:2053
Timer 0 (pADI_TM0)
Definition: ADuCRF101.h:8763
__IO uint16_t T2WUFB1
Definition: ADuCRF101.h:9354
__IO uint32_t DMAPRISET
Definition: ADuCRF101.h:1211
__IO uint8_t GPOEN
Definition: ADuCRF101.h:2518
IRQn_Type
Definition: ADuCRF101.h:69
__IO uint16_t RFTST
Definition: ADuCRF101.h:5040
__IO uint32_t DMAENCLR
Definition: ADuCRF101.h:1208
Clock Control (pADI_CLKCTL)
Definition: ADuCRF101.h:958
__IO uint32_t DMAALTCLR
Definition: ADuCRF101.h:1210
__IO uint16_t ADCOF
Definition: ADuCRF101.h:818
__IO uint16_t I2CMCON
Definition: ADuCRF101.h:5103
__IO uint16_t PWM3COM0
Definition: ADuCRF101.h:7877
__IO uint16_t I2CSCON
Definition: ADuCRF101.h:5121
__IO uint16_t FEEADRAH
Definition: ADuCRF101.h:2051
__IO uint16_t FEESIGH
Definition: ADuCRF101.h:2045
WakeUp Timer (pADI_WUT)
Definition: ADuCRF101.h:9343
__IO uint16_t PWM2COM2
Definition: ADuCRF101.h:7873
__IO uint16_t CLKPD
Definition: ADuCRF101.h:965
__IO uint16_t I2CFSTA
Definition: ADuCRF101.h:5139
__IO uint16_t STA
Definition: ADuCRF101.h:8774
__IO uint16_t I2CID0
Definition: ADuCRF101.h:5131
General Purpose Input Output (pADI_GP0)
Definition: ADuCRF101.h:2515
__IO uint8_t GPOCE
Definition: ADuCRF101.h:2522
__IO uint16_t FEEADR0L
Definition: ADuCRF101.h:2029
__I uint32_t RESERVED0
Definition: ADuCRF101.h:5039
#define __I
Definition: core_cm0.h:186
__IO uint16_t I2CMRXCNT
Definition: ADuCRF101.h:5111
__IO uint8_t I2CADR0
Definition: ADuCRF101.h:5115
__IO uint8_t RSTCLR
Definition: ADuCRF101.h:8164
__IO uint16_t PWM0COM2
Definition: ADuCRF101.h:7857
__IO uint32_t DMACFG
Definition: ADuCRF101.h:1199
__IO uint16_t T2CLRI
Definition: ADuCRF101.h:9368
Interrupts (pADI_INTERRUPT)
Definition: ADuCRF101.h:5659
__IO uint8_t GPSET
Definition: ADuCRF101.h:2528
__IO uint16_t ADCDAT
Definition: ADuCRF101.h:814
__IO uint8_t PSMCON
Definition: ADuCRF101.h:7755
__IO uint16_t CAP
Definition: ADuCRF101.h:8772
__IO uint16_t PWM1COM0
Definition: ADuCRF101.h:7861
__IO uint16_t FEEAEN1
Definition: ADuCRF101.h:2055
__IO uint16_t PWMCLRI
Definition: ADuCRF101.h:7851
Serial Peripheral Interface (pADI_SPI0)
Definition: ADuCRF101.h:8257
__IO uint16_t T3VAL
Definition: ADuCRF101.h:9645
Analog to Digital Converter (pADI_ADC0)
Definition: ADuCRF101.h:807
CMSIS Cortex-M3 Core Peripheral Access Layer Header File.
__IO uint16_t I2CMCRXCNT
Definition: ADuCRF101.h:5113
__IO uint16_t T2STA
Definition: ADuCRF101.h:9366
__IO uint16_t T2VAL1
Definition: ADuCRF101.h:9346
__IO uint16_t EICLR
Definition: ADuCRF101.h:5666
__IO uint16_t LD
Definition: ADuCRF101.h:8764
__IO uint8_t RSTSTA
Definition: ADuCRF101.h:8163
__IO uint16_t I2CSRX
Definition: ADuCRF101.h:5125
__IO uint16_t ADCGN
Definition: ADuCRF101.h:816
__IO uint8_t ADCCON
Definition: ADuCRF101.h:810
__IO uint16_t CLKCON
Definition: ADuCRF101.h:959
__IO uint8_t GPIN
Definition: ADuCRF101.h:2524
__IO uint8_t SWACT
Definition: ADuCRF101.h:5042
__IO uint32_t DMARMSKSET
Definition: ADuCRF101.h:1205
__IO uint16_t FEECON0
Definition: ADuCRF101.h:2025
__IO uint16_t I2CDIV
Definition: ADuCRF101.h:5119
__IO uint8_t I2CADR1
Definition: ADuCRF101.h:5117