OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [newlib-1.18.0/] [libgloss/] [bfin/] [include/] [defBF51x_base.h] - Blame information for rev 862

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 207 jeremybenn
/*
2
 * The authors hereby grant permission to use, copy, modify, distribute,
3
 * and license this software and its documentation for any purpose, provided
4
 * that existing copyright notices are retained in all copies and that this
5
 * notice is included verbatim in any distributions. No written agreement,
6
 * license, or royalty fee is required for any of the authorized uses.
7
 * Modifications to this software may be copyrighted by their authors
8
 * and need not follow the licensing terms described here, provided that
9
 * the new terms are clearly indicated on the first page of each file where
10
 * they apply.
11
 */
12
 
13
/*
14
** defBF51x_base.h
15
**
16
** Copyright (C) 2009 Analog Devices, Inc.
17
**
18
************************************************************************************
19
**
20
** This include file contains a list of macro "defines" to enable the programmer
21
** to use symbolic names for the registers common to the ADSP-BF51x peripherals.
22
**
23
************************************************************************************
24
** System MMR Register Map
25
************************************************************************************/
26
 
27
#ifndef _DEF_BF51X_H
28
#define _DEF_BF51X_H
29
 
30
#ifdef _MISRA_RULES
31
#pragma diag(push)
32
#pragma diag(suppress:misra_rule_19_4)
33
#pragma diag(suppress:misra_rule_19_7)
34
#endif /* _MISRA_RULES */
35
 
36
 
37
/* ************************************************************************************************************** */
38
/*                           SYSTEM & MMR ADDRESS DEFINITIONS COMMON TO ALL ADSP-BF51x                            */
39
/* ************************************************************************************************************** */
40
 
41
/* Clock and System Control             (0xFFC00000 - 0xFFC000FF)                                                                       */
42
#define PLL_CTL                         0xFFC00000      /* PLL Control Register                                                         */
43
#define PLL_DIV                         0xFFC00004      /* PLL Divide Register                                                          */
44
#define VR_CTL                          0xFFC00008      /* Voltage Regulator Control Register                                   */
45
#define PLL_STAT                                0xFFC0000C      /* PLL Status Register                                                          */
46
#define PLL_LOCKCNT                     0xFFC00010      /* PLL Lock Count Register                                                      */
47
#define CHIPID                          0xFFC00014  /* Device ID Register */
48
 
49
 
50
/* System Interrupt Controller  (0xFFC00100 - 0xFFC001FF)                                                                       */
51
#define SWRST                           0xFFC00100      /* Software Reset Register                                                      */
52
#define SYSCR                           0xFFC00104      /* System Configuration Register                                                */
53
 
54
#define SIC_IMASK0                      0xFFC0010C      /* Interrupt Mask Register                                                      */
55
/* legacy register name (below) provided for backwards code compatibility */
56
#define SIC_IMASK                               SIC_IMASK0
57
#define SIC_IAR0                                0xFFC00110      /* Interrupt Assignment Register 0                                              */
58
#define SIC_IAR1                                0xFFC00114      /* Interrupt Assignment Register 1                                              */
59
#define SIC_IAR2                                0xFFC00118      /* Interrupt Assignment Register 2                                              */
60
#define SIC_IAR3                                0xFFC0011C      /* Interrupt Assignment Register 3                                              */
61
#define SIC_ISR0                                0xFFC00120      /* Interrupt Status Register                                                    */
62
/* legacy register name (below) provided for backwards code compatibility */
63
#define SIC_ISR                         SIC_ISR0
64
#define SIC_IWR0                                0xFFC00124      /* Interrupt Wakeup Register                                                    */
65
/* legacy register name (below) provided for backwards code compatibility */
66
#define SIC_IWR                         SIC_IWR0
67
 
68
/* SIC Additions to ADSP-BF51x  (0xFFC0014C - 0xFFC00162)                                                                       */
69
#define SIC_IMASK1                  0xFFC0014C  /* Interrupt Mask register of SIC2                                              */
70
#define SIC_IAR4                    0xFFC00150  /* Interrupt Assignment register4                                               */
71
#define SIC_IAR5                    0xFFC00154  /* Interrupt Assignment register5                                               */
72
#define SIC_IAR6                    0xFFC00158  /* Interrupt Assignment register6                                               */
73
#define SIC_IAR7                    0xFFC0015C  /* Interrupt Assignment register7                                               */
74
#define SIC_ISR1                    0xFFC00160  /* Interrupt Statur register                                                    */
75
#define SIC_IWR1                    0xFFC00164  /* Interrupt Wakeup register                                                    */
76
 
77
 
78
/* Watchdog Timer                               (0xFFC00200 - 0xFFC002FF)                                                                       */
79
#define WDOG_CTL                                0xFFC00200      /* Watchdog Control Register                                                    */
80
#define WDOG_CNT                                0xFFC00204      /* Watchdog Count Register                                                      */
81
#define WDOG_STAT                               0xFFC00208      /* Watchdog Status Register                                                     */
82
 
83
 
84
/* Real Time Clock                      (0xFFC00300 - 0xFFC003FF)                                                                       */
85
#define RTC_STAT                                0xFFC00300      /* RTC Status Register                                                          */
86
#define RTC_ICTL                                0xFFC00304      /* RTC Interrupt Control Register                                               */
87
#define RTC_ISTAT                               0xFFC00308      /* RTC Interrupt Status Register                                                */
88
#define RTC_SWCNT                               0xFFC0030C      /* RTC Stopwatch Count Register                                         */
89
#define RTC_ALARM                               0xFFC00310      /* RTC Alarm Time Register                                                      */
90
#define RTC_FAST                                0xFFC00314      /* RTC Prescaler Enable Register                                                */
91
#define RTC_PREN                                0xFFC00314      /* RTC Prescaler Enable Alternate Macro                                 */
92
 
93
 
94
/* UART0 Controller                     (0xFFC00400 - 0xFFC004FF)                                                                       */
95
#define UART0_THR                               0xFFC00400      /* Transmit Holding register                                                    */
96
#define UART0_RBR                               0xFFC00400      /* Receive Buffer register                                                      */
97
#define UART0_DLL                               0xFFC00400      /* Divisor Latch (Low-Byte)                                                     */
98
#define UART0_IER                               0xFFC00404      /* Interrupt Enable Register                                                    */
99
#define UART0_DLH                               0xFFC00404      /* Divisor Latch (High-Byte)                                                    */
100
#define UART0_IIR                               0xFFC00408      /* Interrupt Identification Register                                    */
101
#define UART0_LCR                               0xFFC0040C      /* Line Control Register                                                        */
102
#define UART0_MCR                               0xFFC00410      /* Modem Control Register                                                       */
103
#define UART0_LSR                               0xFFC00414      /* Line Status Register                                                         */
104
#define UART0_MSR                               0xFFC00418      /* Modem Status Register                                                        */
105
#define UART0_SCR                               0xFFC0041C      /* SCR Scratch Register                                                         */
106
#define UART0_GCTL                      0xFFC00424      /* Global Control Register                                                      */
107
 
108
 
109
/* SPI Controller                               (0xFFC00500 - 0xFFC005FF)                                                                       */
110
#define SPI0_CTL                                0xFFC00500      /* SPI Control Register                                                         */
111
/* legacy register name (below) provided for backwards code compatibility */
112
#define SPI_CTL                         SPI0_CTL
113
#define SPI0_FLG                                0xFFC00504      /* SPI Flag register                                                            */
114
/* legacy register name (below) provided for backwards code compatibility */
115
#define SPI_FLG                         SPI0_FLG
116
#define SPI0_STAT                               0xFFC00508      /* SPI Status register                                                          */
117
/* legacy register name (below) provided for backwards code compatibility */
118
#define SPI_STAT                                SPI0_STAT
119
#define SPI0_TDBR                               0xFFC0050C      /* SPI Transmit Data Buffer Register                                    */
120
/* legacy register name (below) provided for backwards code compatibility */
121
#define SPI_TDBR                                SPI0_TDBR
122
#define SPI0_RDBR                               0xFFC00510      /* SPI Receive Data Buffer Register                                             */
123
/* legacy register name (below) provided for backwards code compatibility */
124
#define SPI_RDBR                                SPI0_RDBR
125
#define SPI0_BAUD                               0xFFC00514      /* SPI Baud rate Register                                                       */
126
/* legacy register name (below) provided for backwards code compatibility */
127
#define SPI_BAUD                                SPI0_BAUD
128
#define SPI0_SHADOW                     0xFFC00518      /* SPI_RDBR Shadow Register                                                     */
129
/* legacy register name (below) provided for backwards code compatibility */
130
#define SPI_SHADOW                      SPI0_SHADOW
131
 
132
 
133
/* TIMER0-7 Registers                   (0xFFC00600 - 0xFFC006FF)                                                                       */
134
#define TIMER0_CONFIG                   0xFFC00600      /* Timer 0 Configuration Register                                               */
135
#define TIMER0_COUNTER                  0xFFC00604      /* Timer 0 Counter Register                                                     */
136
#define TIMER0_PERIOD                   0xFFC00608      /* Timer 0 Period Register                                                      */
137
#define TIMER0_WIDTH                    0xFFC0060C      /* Timer 0 Width Register                                                       */
138
 
139
#define TIMER1_CONFIG                   0xFFC00610      /* Timer 1 Configuration Register                                               */
140
#define TIMER1_COUNTER                  0xFFC00614      /* Timer 1 Counter Register                                                     */
141
#define TIMER1_PERIOD                   0xFFC00618      /* Timer 1 Period Register                                                      */
142
#define TIMER1_WIDTH                    0xFFC0061C      /* Timer 1 Width Register                                                       */
143
 
144
#define TIMER2_CONFIG                   0xFFC00620      /* Timer 2 Configuration Register                                               */
145
#define TIMER2_COUNTER                  0xFFC00624      /* Timer 2 Counter Register                                                     */
146
#define TIMER2_PERIOD                   0xFFC00628      /* Timer 2 Period Register                                                      */
147
#define TIMER2_WIDTH                    0xFFC0062C      /* Timer 2 Width Register                                                       */
148
 
149
#define TIMER3_CONFIG                   0xFFC00630      /* Timer 3 Configuration Register                                               */
150
#define TIMER3_COUNTER                  0xFFC00634      /* Timer 3 Counter Register                                                     */
151
#define TIMER3_PERIOD                   0xFFC00638      /* Timer 3 Period Register                                                      */
152
#define TIMER3_WIDTH                    0xFFC0063C      /* Timer 3 Width Register                                                       */
153
 
154
#define TIMER4_CONFIG                   0xFFC00640      /* Timer 4 Configuration Register                                               */
155
#define TIMER4_COUNTER                  0xFFC00644      /* Timer 4 Counter Register                                                     */
156
#define TIMER4_PERIOD                   0xFFC00648      /* Timer 4 Period Register                                                      */
157
#define TIMER4_WIDTH                    0xFFC0064C      /* Timer 4 Width Register                                                       */
158
 
159
#define TIMER5_CONFIG                   0xFFC00650      /* Timer 5 Configuration Register                                               */
160
#define TIMER5_COUNTER                  0xFFC00654      /* Timer 5 Counter Register                                                     */
161
#define TIMER5_PERIOD                   0xFFC00658      /* Timer 5 Period Register                                                      */
162
#define TIMER5_WIDTH                    0xFFC0065C      /* Timer 5 Width Register                                                       */
163
 
164
#define TIMER6_CONFIG                   0xFFC00660      /* Timer 6 Configuration Register                                               */
165
#define TIMER6_COUNTER                  0xFFC00664      /* Timer 6 Counter Register                                                     */
166
#define TIMER6_PERIOD                   0xFFC00668      /* Timer 6 Period Register                                                      */
167
#define TIMER6_WIDTH                    0xFFC0066C      /* Timer 6 Width Register                                                       */
168
 
169
#define TIMER7_CONFIG                   0xFFC00670      /* Timer 7 Configuration Register                                               */
170
#define TIMER7_COUNTER                  0xFFC00674      /* Timer 7 Counter Register                                                     */
171
#define TIMER7_PERIOD                   0xFFC00678      /* Timer 7 Period Register                                                      */
172
#define TIMER7_WIDTH                    0xFFC0067C      /* Timer 7 Width Register                                                       */
173
 
174
#define TIMER_ENABLE                    0xFFC00680      /* Timer Enable Register                                                        */
175
#define TIMER_DISABLE                   0xFFC00684      /* Timer Disable Register                                                       */
176
#define TIMER_STATUS                    0xFFC00688      /* Timer Status Register                                                        */
177
 
178
 
179
/* General Purpose I/O Port F   (0xFFC00700 - 0xFFC007FF)                                                                       */
180
#define PORTFIO                         0xFFC00700      /* Port F I/O Pin State Specify Register                                        */
181
#define PORTFIO_CLEAR                   0xFFC00704      /* Port F I/O Peripheral Interrupt Clear Register                       */
182
#define PORTFIO_SET                     0xFFC00708      /* Port F I/O Peripheral Interrupt Set Register                         */
183
#define PORTFIO_TOGGLE                  0xFFC0070C      /* Port F I/O Pin State Toggle Register                                 */
184
#define PORTFIO_MASKA                   0xFFC00710      /* Port F I/O Mask State Specify Interrupt A Register                   */
185
#define PORTFIO_MASKA_CLEAR             0xFFC00714      /* Port F I/O Mask Disable Interrupt A Register                         */
186
#define PORTFIO_MASKA_SET               0xFFC00718      /* Port F I/O Mask Enable Interrupt A Register                          */
187
#define PORTFIO_MASKA_TOGGLE            0xFFC0071C      /* Port F I/O Mask Toggle Enable Interrupt A Register                   */
188
#define PORTFIO_MASKB                   0xFFC00720      /* Port F I/O Mask State Specify Interrupt B Register                   */
189
#define PORTFIO_MASKB_CLEAR             0xFFC00724      /* Port F I/O Mask Disable Interrupt B Register                         */
190
#define PORTFIO_MASKB_SET               0xFFC00728      /* Port F I/O Mask Enable Interrupt B Register                          */
191
#define PORTFIO_MASKB_TOGGLE            0xFFC0072C      /* Port F I/O Mask Toggle Enable Interrupt B Register                   */
192
#define PORTFIO_DIR                     0xFFC00730      /* Port F I/O Direction Register                                                */
193
#define PORTFIO_POLAR                   0xFFC00734      /* Port F I/O Source Polarity Register                                  */
194
#define PORTFIO_EDGE                    0xFFC00738      /* Port F I/O Source Sensitivity Register                                       */
195
#define PORTFIO_BOTH                    0xFFC0073C      /* Port F I/O Set on BOTH Edges Register                                        */
196
#define PORTFIO_INEN                    0xFFC00740      /* Port F I/O Input Enable Register                                     */
197
 
198
 
199
/* SPORT0 Controller                    (0xFFC00800 - 0xFFC008FF)                                                                       */
200
#define SPORT0_TCR1                     0xFFC00800      /* SPORT0 Transmit Configuration 1 Register                             */
201
#define SPORT0_TCR2                     0xFFC00804      /* SPORT0 Transmit Configuration 2 Register                             */
202
#define SPORT0_TCLKDIV                  0xFFC00808      /* SPORT0 Transmit Clock Divider                                                */
203
#define SPORT0_TFSDIV                   0xFFC0080C      /* SPORT0 Transmit Frame Sync Divider                                   */
204
#define SPORT0_TX                               0xFFC00810      /* SPORT0 TX Data Register                                                      */
205
#define SPORT0_RX                               0xFFC00818      /* SPORT0 RX Data Register                                                      */
206
#define SPORT0_RCR1                     0xFFC00820      /* SPORT0 Transmit Configuration 1 Register                             */
207
#define SPORT0_RCR2                     0xFFC00824      /* SPORT0 Transmit Configuration 2 Register                             */
208
#define SPORT0_RCLKDIV                  0xFFC00828      /* SPORT0 Receive Clock Divider                                         */
209
#define SPORT0_RFSDIV                   0xFFC0082C      /* SPORT0 Receive Frame Sync Divider                                    */
210
#define SPORT0_STAT                     0xFFC00830      /* SPORT0 Status Register                                                       */
211
#define SPORT0_CHNL                     0xFFC00834      /* SPORT0 Current Channel Register                                              */
212
#define SPORT0_MCMC1                    0xFFC00838      /* SPORT0 Multi-Channel Configuration Register 1                        */
213
#define SPORT0_MCMC2                    0xFFC0083C      /* SPORT0 Multi-Channel Configuration Register 2                        */
214
#define SPORT0_MTCS0                    0xFFC00840      /* SPORT0 Multi-Channel Transmit Select Register 0                      */
215
#define SPORT0_MTCS1                    0xFFC00844      /* SPORT0 Multi-Channel Transmit Select Register 1                      */
216
#define SPORT0_MTCS2                    0xFFC00848      /* SPORT0 Multi-Channel Transmit Select Register 2                      */
217
#define SPORT0_MTCS3                    0xFFC0084C      /* SPORT0 Multi-Channel Transmit Select Register 3                      */
218
#define SPORT0_MRCS0                    0xFFC00850      /* SPORT0 Multi-Channel Receive Select Register 0                       */
219
#define SPORT0_MRCS1                    0xFFC00854      /* SPORT0 Multi-Channel Receive Select Register 1                       */
220
#define SPORT0_MRCS2                    0xFFC00858      /* SPORT0 Multi-Channel Receive Select Register 2                       */
221
#define SPORT0_MRCS3                    0xFFC0085C      /* SPORT0 Multi-Channel Receive Select Register 3                       */
222
 
223
 
224
/* SPORT1 Controller                    (0xFFC00900 - 0xFFC009FF)                                                                       */
225
#define SPORT1_TCR1                     0xFFC00900      /* SPORT1 Transmit Configuration 1 Register                             */
226
#define SPORT1_TCR2                     0xFFC00904      /* SPORT1 Transmit Configuration 2 Register                             */
227
#define SPORT1_TCLKDIV                  0xFFC00908      /* SPORT1 Transmit Clock Divider                                                */
228
#define SPORT1_TFSDIV                   0xFFC0090C      /* SPORT1 Transmit Frame Sync Divider                                   */
229
#define SPORT1_TX                               0xFFC00910      /* SPORT1 TX Data Register                                                      */
230
#define SPORT1_RX                               0xFFC00918      /* SPORT1 RX Data Register                                                      */
231
#define SPORT1_RCR1                     0xFFC00920      /* SPORT1 Transmit Configuration 1 Register                             */
232
#define SPORT1_RCR2                     0xFFC00924      /* SPORT1 Transmit Configuration 2 Register                             */
233
#define SPORT1_RCLKDIV                  0xFFC00928      /* SPORT1 Receive Clock Divider                                         */
234
#define SPORT1_RFSDIV                   0xFFC0092C      /* SPORT1 Receive Frame Sync Divider                                    */
235
#define SPORT1_STAT                     0xFFC00930      /* SPORT1 Status Register                                                       */
236
#define SPORT1_CHNL                     0xFFC00934      /* SPORT1 Current Channel Register                                              */
237
#define SPORT1_MCMC1                    0xFFC00938      /* SPORT1 Multi-Channel Configuration Register 1                        */
238
#define SPORT1_MCMC2                    0xFFC0093C      /* SPORT1 Multi-Channel Configuration Register 2                        */
239
#define SPORT1_MTCS0                    0xFFC00940      /* SPORT1 Multi-Channel Transmit Select Register 0                      */
240
#define SPORT1_MTCS1                    0xFFC00944      /* SPORT1 Multi-Channel Transmit Select Register 1                      */
241
#define SPORT1_MTCS2                    0xFFC00948      /* SPORT1 Multi-Channel Transmit Select Register 2                      */
242
#define SPORT1_MTCS3                    0xFFC0094C      /* SPORT1 Multi-Channel Transmit Select Register 3                      */
243
#define SPORT1_MRCS0                    0xFFC00950      /* SPORT1 Multi-Channel Receive Select Register 0                       */
244
#define SPORT1_MRCS1                    0xFFC00954      /* SPORT1 Multi-Channel Receive Select Register 1                       */
245
#define SPORT1_MRCS2                    0xFFC00958      /* SPORT1 Multi-Channel Receive Select Register 2                       */
246
#define SPORT1_MRCS3                    0xFFC0095C      /* SPORT1 Multi-Channel Receive Select Register 3                       */
247
 
248
 
249
/* External Bus Interface Unit  (0xFFC00A00 - 0xFFC00AFF)                                                                       */
250
#define EBIU_AMGCTL                     0xFFC00A00      /* Asynchronous Memory Global Control Register                          */
251
#define EBIU_AMBCTL0                    0xFFC00A04      /* Asynchronous Memory Bank Control Register 0                          */
252
#define EBIU_AMBCTL1                    0xFFC00A08      /* Asynchronous Memory Bank Control Register 1                          */
253
#define EBIU_SDGCTL                     0xFFC00A10      /* SDRAM Global Control Register                                                */
254
#define EBIU_SDBCTL                     0xFFC00A14      /* SDRAM Bank Control Register                                          */
255
#define EBIU_SDRRC                      0xFFC00A18      /* SDRAM Refresh Rate Control Register                                  */
256
#define EBIU_SDSTAT                     0xFFC00A1C      /* SDRAM Status Register                                                        */
257
 
258
 
259
/* DMA Traffic Control Registers        (0xFFC00B00 - 0xFFC00BFF)                                                                       */
260
#define DMA_TC_PER                      0xFFC00B0C      /* Traffic Control Periods Register                                             */
261
#define DMA_TC_CNT                      0xFFC00B10      /* Traffic Control Current Counts Register                              */
262
 
263
/* Alternate deprecated register names (below) provided for backwards code compatibility                                        */
264
#define DMA_TCPER                               0xFFC00B0C      /* Traffic Control Periods Register                                             */
265
#define DMA_TCCNT                               0xFFC00B10      /* Traffic Control Current Counts Register                              */
266
 
267
/* DMA Controller                       (0xFFC00C00 - 0xFFC00FFF)                                                                       */
268
#define DMA0_NEXT_DESC_PTR              0xFFC00C00      /* DMA Channel 0 Next Descriptor Pointer Register                       */
269
#define DMA0_START_ADDR                 0xFFC00C04      /* DMA Channel 0 Start Address Register                                 */
270
#define DMA0_CONFIG                     0xFFC00C08      /* DMA Channel 0 Configuration Register                                 */
271
#define DMA0_X_COUNT                    0xFFC00C10      /* DMA Channel 0 X Count Register                                               */
272
#define DMA0_X_MODIFY                   0xFFC00C14      /* DMA Channel 0 X Modify Register                                              */
273
#define DMA0_Y_COUNT                    0xFFC00C18      /* DMA Channel 0 Y Count Register                                               */
274
#define DMA0_Y_MODIFY                   0xFFC00C1C      /* DMA Channel 0 Y Modify Register                                              */
275
#define DMA0_CURR_DESC_PTR              0xFFC00C20      /* DMA Channel 0 Current Descriptor Pointer Register                    */
276
#define DMA0_CURR_ADDR                  0xFFC00C24      /* DMA Channel 0 Current Address Register                                       */
277
#define DMA0_IRQ_STATUS                 0xFFC00C28      /* DMA Channel 0 Interrupt/Status Register                              */
278
#define DMA0_PERIPHERAL_MAP             0xFFC00C2C      /* DMA Channel 0 Peripheral Map Register                                        */
279
#define DMA0_CURR_X_COUNT               0xFFC00C30      /* DMA Channel 0 Current X Count Register                                       */
280
#define DMA0_CURR_Y_COUNT               0xFFC00C38      /* DMA Channel 0 Current Y Count Register                                       */
281
 
282
#define DMA1_NEXT_DESC_PTR              0xFFC00C40      /* DMA Channel 1 Next Descriptor Pointer Register                       */
283
#define DMA1_START_ADDR                 0xFFC00C44      /* DMA Channel 1 Start Address Register                                 */
284
#define DMA1_CONFIG                     0xFFC00C48      /* DMA Channel 1 Configuration Register                                 */
285
#define DMA1_X_COUNT                    0xFFC00C50      /* DMA Channel 1 X Count Register                                               */
286
#define DMA1_X_MODIFY                   0xFFC00C54      /* DMA Channel 1 X Modify Register                                              */
287
#define DMA1_Y_COUNT                    0xFFC00C58      /* DMA Channel 1 Y Count Register                                               */
288
#define DMA1_Y_MODIFY                   0xFFC00C5C      /* DMA Channel 1 Y Modify Register                                              */
289
#define DMA1_CURR_DESC_PTR              0xFFC00C60      /* DMA Channel 1 Current Descriptor Pointer Register                    */
290
#define DMA1_CURR_ADDR                  0xFFC00C64      /* DMA Channel 1 Current Address Register                                       */
291
#define DMA1_IRQ_STATUS                 0xFFC00C68      /* DMA Channel 1 Interrupt/Status Register                              */
292
#define DMA1_PERIPHERAL_MAP             0xFFC00C6C      /* DMA Channel 1 Peripheral Map Register                                        */
293
#define DMA1_CURR_X_COUNT               0xFFC00C70      /* DMA Channel 1 Current X Count Register                                       */
294
#define DMA1_CURR_Y_COUNT               0xFFC00C78      /* DMA Channel 1 Current Y Count Register                                       */
295
 
296
#define DMA2_NEXT_DESC_PTR              0xFFC00C80      /* DMA Channel 2 Next Descriptor Pointer Register                       */
297
#define DMA2_START_ADDR                 0xFFC00C84      /* DMA Channel 2 Start Address Register                                 */
298
#define DMA2_CONFIG                     0xFFC00C88      /* DMA Channel 2 Configuration Register                                 */
299
#define DMA2_X_COUNT                    0xFFC00C90      /* DMA Channel 2 X Count Register                                               */
300
#define DMA2_X_MODIFY                   0xFFC00C94      /* DMA Channel 2 X Modify Register                                              */
301
#define DMA2_Y_COUNT                    0xFFC00C98      /* DMA Channel 2 Y Count Register                                               */
302
#define DMA2_Y_MODIFY                   0xFFC00C9C      /* DMA Channel 2 Y Modify Register                                              */
303
#define DMA2_CURR_DESC_PTR              0xFFC00CA0      /* DMA Channel 2 Current Descriptor Pointer Register                    */
304
#define DMA2_CURR_ADDR                  0xFFC00CA4      /* DMA Channel 2 Current Address Register                                       */
305
#define DMA2_IRQ_STATUS                 0xFFC00CA8      /* DMA Channel 2 Interrupt/Status Register                              */
306
#define DMA2_PERIPHERAL_MAP             0xFFC00CAC      /* DMA Channel 2 Peripheral Map Register                                        */
307
#define DMA2_CURR_X_COUNT               0xFFC00CB0      /* DMA Channel 2 Current X Count Register                                       */
308
#define DMA2_CURR_Y_COUNT               0xFFC00CB8      /* DMA Channel 2 Current Y Count Register                                       */
309
 
310
#define DMA3_NEXT_DESC_PTR              0xFFC00CC0      /* DMA Channel 3 Next Descriptor Pointer Register                       */
311
#define DMA3_START_ADDR                 0xFFC00CC4      /* DMA Channel 3 Start Address Register                                 */
312
#define DMA3_CONFIG                     0xFFC00CC8      /* DMA Channel 3 Configuration Register                                 */
313
#define DMA3_X_COUNT                    0xFFC00CD0      /* DMA Channel 3 X Count Register                                               */
314
#define DMA3_X_MODIFY                   0xFFC00CD4      /* DMA Channel 3 X Modify Register                                              */
315
#define DMA3_Y_COUNT                    0xFFC00CD8      /* DMA Channel 3 Y Count Register                                               */
316
#define DMA3_Y_MODIFY                   0xFFC00CDC      /* DMA Channel 3 Y Modify Register                                              */
317
#define DMA3_CURR_DESC_PTR              0xFFC00CE0      /* DMA Channel 3 Current Descriptor Pointer Register                    */
318
#define DMA3_CURR_ADDR                  0xFFC00CE4      /* DMA Channel 3 Current Address Register                                       */
319
#define DMA3_IRQ_STATUS                 0xFFC00CE8      /* DMA Channel 3 Interrupt/Status Register                              */
320
#define DMA3_PERIPHERAL_MAP             0xFFC00CEC      /* DMA Channel 3 Peripheral Map Register                                        */
321
#define DMA3_CURR_X_COUNT               0xFFC00CF0      /* DMA Channel 3 Current X Count Register                                       */
322
#define DMA3_CURR_Y_COUNT               0xFFC00CF8      /* DMA Channel 3 Current Y Count Register                                       */
323
 
324
#define DMA4_NEXT_DESC_PTR              0xFFC00D00      /* DMA Channel 4 Next Descriptor Pointer Register                       */
325
#define DMA4_START_ADDR                 0xFFC00D04      /* DMA Channel 4 Start Address Register                                 */
326
#define DMA4_CONFIG                     0xFFC00D08      /* DMA Channel 4 Configuration Register                                 */
327
#define DMA4_X_COUNT                    0xFFC00D10      /* DMA Channel 4 X Count Register                                               */
328
#define DMA4_X_MODIFY                   0xFFC00D14      /* DMA Channel 4 X Modify Register                                              */
329
#define DMA4_Y_COUNT                    0xFFC00D18      /* DMA Channel 4 Y Count Register                                               */
330
#define DMA4_Y_MODIFY                   0xFFC00D1C      /* DMA Channel 4 Y Modify Register                                              */
331
#define DMA4_CURR_DESC_PTR              0xFFC00D20      /* DMA Channel 4 Current Descriptor Pointer Register                    */
332
#define DMA4_CURR_ADDR                  0xFFC00D24      /* DMA Channel 4 Current Address Register                                       */
333
#define DMA4_IRQ_STATUS                 0xFFC00D28      /* DMA Channel 4 Interrupt/Status Register                              */
334
#define DMA4_PERIPHERAL_MAP             0xFFC00D2C      /* DMA Channel 4 Peripheral Map Register                                        */
335
#define DMA4_CURR_X_COUNT               0xFFC00D30      /* DMA Channel 4 Current X Count Register                                       */
336
#define DMA4_CURR_Y_COUNT               0xFFC00D38      /* DMA Channel 4 Current Y Count Register                                       */
337
 
338
#define DMA5_NEXT_DESC_PTR              0xFFC00D40      /* DMA Channel 5 Next Descriptor Pointer Register                       */
339
#define DMA5_START_ADDR                 0xFFC00D44      /* DMA Channel 5 Start Address Register                                 */
340
#define DMA5_CONFIG                     0xFFC00D48      /* DMA Channel 5 Configuration Register                                 */
341
#define DMA5_X_COUNT                    0xFFC00D50      /* DMA Channel 5 X Count Register                                               */
342
#define DMA5_X_MODIFY                   0xFFC00D54      /* DMA Channel 5 X Modify Register                                              */
343
#define DMA5_Y_COUNT                    0xFFC00D58      /* DMA Channel 5 Y Count Register                                               */
344
#define DMA5_Y_MODIFY                   0xFFC00D5C      /* DMA Channel 5 Y Modify Register                                              */
345
#define DMA5_CURR_DESC_PTR              0xFFC00D60      /* DMA Channel 5 Current Descriptor Pointer Register                    */
346
#define DMA5_CURR_ADDR                  0xFFC00D64      /* DMA Channel 5 Current Address Register                                       */
347
#define DMA5_IRQ_STATUS                 0xFFC00D68      /* DMA Channel 5 Interrupt/Status Register                              */
348
#define DMA5_PERIPHERAL_MAP             0xFFC00D6C      /* DMA Channel 5 Peripheral Map Register                                        */
349
#define DMA5_CURR_X_COUNT               0xFFC00D70      /* DMA Channel 5 Current X Count Register                                       */
350
#define DMA5_CURR_Y_COUNT               0xFFC00D78      /* DMA Channel 5 Current Y Count Register                                       */
351
 
352
#define DMA6_NEXT_DESC_PTR              0xFFC00D80      /* DMA Channel 6 Next Descriptor Pointer Register                       */
353
#define DMA6_START_ADDR                 0xFFC00D84      /* DMA Channel 6 Start Address Register                                 */
354
#define DMA6_CONFIG                     0xFFC00D88      /* DMA Channel 6 Configuration Register                                 */
355
#define DMA6_X_COUNT                    0xFFC00D90      /* DMA Channel 6 X Count Register                                               */
356
#define DMA6_X_MODIFY                   0xFFC00D94      /* DMA Channel 6 X Modify Register                                              */
357
#define DMA6_Y_COUNT                    0xFFC00D98      /* DMA Channel 6 Y Count Register                                               */
358
#define DMA6_Y_MODIFY                   0xFFC00D9C      /* DMA Channel 6 Y Modify Register                                              */
359
#define DMA6_CURR_DESC_PTR              0xFFC00DA0      /* DMA Channel 6 Current Descriptor Pointer Register                    */
360
#define DMA6_CURR_ADDR                  0xFFC00DA4      /* DMA Channel 6 Current Address Register                                       */
361
#define DMA6_IRQ_STATUS                 0xFFC00DA8      /* DMA Channel 6 Interrupt/Status Register                              */
362
#define DMA6_PERIPHERAL_MAP             0xFFC00DAC      /* DMA Channel 6 Peripheral Map Register                                        */
363
#define DMA6_CURR_X_COUNT               0xFFC00DB0      /* DMA Channel 6 Current X Count Register                                       */
364
#define DMA6_CURR_Y_COUNT               0xFFC00DB8      /* DMA Channel 6 Current Y Count Register                                       */
365
 
366
#define DMA7_NEXT_DESC_PTR              0xFFC00DC0      /* DMA Channel 7 Next Descriptor Pointer Register                       */
367
#define DMA7_START_ADDR                 0xFFC00DC4      /* DMA Channel 7 Start Address Register                                 */
368
#define DMA7_CONFIG                     0xFFC00DC8      /* DMA Channel 7 Configuration Register                                 */
369
#define DMA7_X_COUNT                    0xFFC00DD0      /* DMA Channel 7 X Count Register                                               */
370
#define DMA7_X_MODIFY                   0xFFC00DD4      /* DMA Channel 7 X Modify Register                                              */
371
#define DMA7_Y_COUNT                    0xFFC00DD8      /* DMA Channel 7 Y Count Register                                               */
372
#define DMA7_Y_MODIFY                   0xFFC00DDC      /* DMA Channel 7 Y Modify Register                                              */
373
#define DMA7_CURR_DESC_PTR              0xFFC00DE0      /* DMA Channel 7 Current Descriptor Pointer Register                    */
374
#define DMA7_CURR_ADDR                  0xFFC00DE4      /* DMA Channel 7 Current Address Register                                       */
375
#define DMA7_IRQ_STATUS                 0xFFC00DE8      /* DMA Channel 7 Interrupt/Status Register                              */
376
#define DMA7_PERIPHERAL_MAP             0xFFC00DEC      /* DMA Channel 7 Peripheral Map Register                                        */
377
#define DMA7_CURR_X_COUNT               0xFFC00DF0      /* DMA Channel 7 Current X Count Register                                       */
378
#define DMA7_CURR_Y_COUNT               0xFFC00DF8      /* DMA Channel 7 Current Y Count Register                                       */
379
 
380
#define DMA8_NEXT_DESC_PTR              0xFFC00E00      /* DMA Channel 8 Next Descriptor Pointer Register                       */
381
#define DMA8_START_ADDR                 0xFFC00E04      /* DMA Channel 8 Start Address Register                                 */
382
#define DMA8_CONFIG                     0xFFC00E08      /* DMA Channel 8 Configuration Register                                 */
383
#define DMA8_X_COUNT                    0xFFC00E10      /* DMA Channel 8 X Count Register                                               */
384
#define DMA8_X_MODIFY                   0xFFC00E14      /* DMA Channel 8 X Modify Register                                              */
385
#define DMA8_Y_COUNT                    0xFFC00E18      /* DMA Channel 8 Y Count Register                                               */
386
#define DMA8_Y_MODIFY                   0xFFC00E1C      /* DMA Channel 8 Y Modify Register                                              */
387
#define DMA8_CURR_DESC_PTR              0xFFC00E20      /* DMA Channel 8 Current Descriptor Pointer Register                    */
388
#define DMA8_CURR_ADDR                  0xFFC00E24      /* DMA Channel 8 Current Address Register                                       */
389
#define DMA8_IRQ_STATUS                 0xFFC00E28      /* DMA Channel 8 Interrupt/Status Register                              */
390
#define DMA8_PERIPHERAL_MAP             0xFFC00E2C      /* DMA Channel 8 Peripheral Map Register                                        */
391
#define DMA8_CURR_X_COUNT               0xFFC00E30      /* DMA Channel 8 Current X Count Register                                       */
392
#define DMA8_CURR_Y_COUNT               0xFFC00E38      /* DMA Channel 8 Current Y Count Register                                       */
393
 
394
#define DMA9_NEXT_DESC_PTR              0xFFC00E40      /* DMA Channel 9 Next Descriptor Pointer Register                       */
395
#define DMA9_START_ADDR                 0xFFC00E44      /* DMA Channel 9 Start Address Register                                 */
396
#define DMA9_CONFIG                     0xFFC00E48      /* DMA Channel 9 Configuration Register                                 */
397
#define DMA9_X_COUNT                    0xFFC00E50      /* DMA Channel 9 X Count Register                                               */
398
#define DMA9_X_MODIFY                   0xFFC00E54      /* DMA Channel 9 X Modify Register                                              */
399
#define DMA9_Y_COUNT                    0xFFC00E58      /* DMA Channel 9 Y Count Register                                               */
400
#define DMA9_Y_MODIFY                   0xFFC00E5C      /* DMA Channel 9 Y Modify Register                                              */
401
#define DMA9_CURR_DESC_PTR              0xFFC00E60      /* DMA Channel 9 Current Descriptor Pointer Register                    */
402
#define DMA9_CURR_ADDR                  0xFFC00E64      /* DMA Channel 9 Current Address Register                                       */
403
#define DMA9_IRQ_STATUS                 0xFFC00E68      /* DMA Channel 9 Interrupt/Status Register                              */
404
#define DMA9_PERIPHERAL_MAP             0xFFC00E6C      /* DMA Channel 9 Peripheral Map Register                                        */
405
#define DMA9_CURR_X_COUNT               0xFFC00E70      /* DMA Channel 9 Current X Count Register                                       */
406
#define DMA9_CURR_Y_COUNT               0xFFC00E78      /* DMA Channel 9 Current Y Count Register                                       */
407
 
408
#define DMA10_NEXT_DESC_PTR             0xFFC00E80      /* DMA Channel 10 Next Descriptor Pointer Register                      */
409
#define DMA10_START_ADDR                0xFFC00E84      /* DMA Channel 10 Start Address Register                                        */
410
#define DMA10_CONFIG                    0xFFC00E88      /* DMA Channel 10 Configuration Register                                        */
411
#define DMA10_X_COUNT                   0xFFC00E90      /* DMA Channel 10 X Count Register                                              */
412
#define DMA10_X_MODIFY                  0xFFC00E94      /* DMA Channel 10 X Modify Register                                             */
413
#define DMA10_Y_COUNT                   0xFFC00E98      /* DMA Channel 10 Y Count Register                                              */
414
#define DMA10_Y_MODIFY                  0xFFC00E9C      /* DMA Channel 10 Y Modify Register                                             */
415
#define DMA10_CURR_DESC_PTR             0xFFC00EA0      /* DMA Channel 10 Current Descriptor Pointer Register                   */
416
#define DMA10_CURR_ADDR                 0xFFC00EA4      /* DMA Channel 10 Current Address Register                              */
417
#define DMA10_IRQ_STATUS                0xFFC00EA8      /* DMA Channel 10 Interrupt/Status Register                             */
418
#define DMA10_PERIPHERAL_MAP            0xFFC00EAC      /* DMA Channel 10 Peripheral Map Register                                       */
419
#define DMA10_CURR_X_COUNT              0xFFC00EB0      /* DMA Channel 10 Current X Count Register                              */
420
#define DMA10_CURR_Y_COUNT              0xFFC00EB8      /* DMA Channel 10 Current Y Count Register                              */
421
 
422
#define DMA11_NEXT_DESC_PTR             0xFFC00EC0      /* DMA Channel 11 Next Descriptor Pointer Register                      */
423
#define DMA11_START_ADDR                0xFFC00EC4      /* DMA Channel 11 Start Address Register                                        */
424
#define DMA11_CONFIG                    0xFFC00EC8      /* DMA Channel 11 Configuration Register                                        */
425
#define DMA11_X_COUNT                   0xFFC00ED0      /* DMA Channel 11 X Count Register                                              */
426
#define DMA11_X_MODIFY                  0xFFC00ED4      /* DMA Channel 11 X Modify Register                                             */
427
#define DMA11_Y_COUNT                   0xFFC00ED8      /* DMA Channel 11 Y Count Register                                              */
428
#define DMA11_Y_MODIFY                  0xFFC00EDC      /* DMA Channel 11 Y Modify Register                                             */
429
#define DMA11_CURR_DESC_PTR             0xFFC00EE0      /* DMA Channel 11 Current Descriptor Pointer Register                   */
430
#define DMA11_CURR_ADDR                 0xFFC00EE4      /* DMA Channel 11 Current Address Register                              */
431
#define DMA11_IRQ_STATUS                0xFFC00EE8      /* DMA Channel 11 Interrupt/Status Register                             */
432
#define DMA11_PERIPHERAL_MAP            0xFFC00EEC      /* DMA Channel 11 Peripheral Map Register                                       */
433
#define DMA11_CURR_X_COUNT              0xFFC00EF0      /* DMA Channel 11 Current X Count Register                              */
434
#define DMA11_CURR_Y_COUNT              0xFFC00EF8      /* DMA Channel 11 Current Y Count Register                              */
435
 
436
#define MDMA_D0_NEXT_DESC_PTR           0xFFC00F00      /* MemDMA Stream 0 Destination Next Descriptor Pointer Register         */
437
#define MDMA_D0_START_ADDR              0xFFC00F04      /* MemDMA Stream 0 Destination Start Address Register                   */
438
#define MDMA_D0_CONFIG                  0xFFC00F08      /* MemDMA Stream 0 Destination Configuration Register                   */
439
#define MDMA_D0_X_COUNT                 0xFFC00F10      /* MemDMA Stream 0 Destination X Count Register                         */
440
#define MDMA_D0_X_MODIFY                0xFFC00F14      /* MemDMA Stream 0 Destination X Modify Register                        */
441
#define MDMA_D0_Y_COUNT                 0xFFC00F18      /* MemDMA Stream 0 Destination Y Count Register                         */
442
#define MDMA_D0_Y_MODIFY                0xFFC00F1C      /* MemDMA Stream 0 Destination Y Modify Register                        */
443
#define MDMA_D0_CURR_DESC_PTR           0xFFC00F20      /* MemDMA Stream 0 Destination Current Descriptor Pointer Register*/
444
#define MDMA_D0_CURR_ADDR               0xFFC00F24      /* MemDMA Stream 0 Destination Current Address Register                 */
445
#define MDMA_D0_IRQ_STATUS              0xFFC00F28      /* MemDMA Stream 0 Destination Interrupt/Status Register                */
446
#define MDMA_D0_PERIPHERAL_MAP  0xFFC00F2C      /* MemDMA Stream 0 Destination Peripheral Map Register                  */
447
#define MDMA_D0_CURR_X_COUNT            0xFFC00F30      /* MemDMA Stream 0 Destination Current X Count Register         */
448
#define MDMA_D0_CURR_Y_COUNT            0xFFC00F38      /* MemDMA Stream 0 Destination Current Y Count Register         */
449
 
450
#define MDMA_S0_NEXT_DESC_PTR           0xFFC00F40      /* MemDMA Stream 0 Source Next Descriptor Pointer Register              */
451
#define MDMA_S0_START_ADDR              0xFFC00F44      /* MemDMA Stream 0 Source Start Address Register                        */
452
#define MDMA_S0_CONFIG                  0xFFC00F48      /* MemDMA Stream 0 Source Configuration Register                        */
453
#define MDMA_S0_X_COUNT                 0xFFC00F50      /* MemDMA Stream 0 Source X Count Register                              */
454
#define MDMA_S0_X_MODIFY                0xFFC00F54      /* MemDMA Stream 0 Source X Modify Register                             */
455
#define MDMA_S0_Y_COUNT                 0xFFC00F58      /* MemDMA Stream 0 Source Y Count Register                              */
456
#define MDMA_S0_Y_MODIFY                0xFFC00F5C      /* MemDMA Stream 0 Source Y Modify Register                             */
457
#define MDMA_S0_CURR_DESC_PTR           0xFFC00F60      /* MemDMA Stream 0 Source Current Descriptor Pointer Register   */
458
#define MDMA_S0_CURR_ADDR               0xFFC00F64      /* MemDMA Stream 0 Source Current Address Register                      */
459
#define MDMA_S0_IRQ_STATUS              0xFFC00F68      /* MemDMA Stream 0 Source Interrupt/Status Register                     */
460
#define MDMA_S0_PERIPHERAL_MAP  0xFFC00F6C      /* MemDMA Stream 0 Source Peripheral Map Register                       */
461
#define MDMA_S0_CURR_X_COUNT            0xFFC00F70      /* MemDMA Stream 0 Source Current X Count Register                      */
462
#define MDMA_S0_CURR_Y_COUNT            0xFFC00F78      /* MemDMA Stream 0 Source Current Y Count Register                      */
463
 
464
#define MDMA_D1_NEXT_DESC_PTR           0xFFC00F80      /* MemDMA Stream 1 Destination Next Descriptor Pointer Register */
465
#define MDMA_D1_START_ADDR              0xFFC00F84      /* MemDMA Stream 1 Destination Start Address Register                   */
466
#define MDMA_D1_CONFIG                  0xFFC00F88      /* MemDMA Stream 1 Destination Configuration Register                   */
467
#define MDMA_D1_X_COUNT                 0xFFC00F90      /* MemDMA Stream 1 Destination X Count Register                         */
468
#define MDMA_D1_X_MODIFY                0xFFC00F94      /* MemDMA Stream 1 Destination X Modify Register                        */
469
#define MDMA_D1_Y_COUNT                 0xFFC00F98      /* MemDMA Stream 1 Destination Y Count Register                         */
470
#define MDMA_D1_Y_MODIFY                0xFFC00F9C      /* MemDMA Stream 1 Destination Y Modify Register                        */
471
#define MDMA_D1_CURR_DESC_PTR           0xFFC00FA0      /* MemDMA Stream 1 Destination Current Descriptor Pointer Register*/
472
#define MDMA_D1_CURR_ADDR               0xFFC00FA4      /* MemDMA Stream 1 Destination Current Address Register         */
473
#define MDMA_D1_IRQ_STATUS              0xFFC00FA8      /* MemDMA Stream 1 Destination Interrupt/Status Register                */
474
#define MDMA_D1_PERIPHERAL_MAP  0xFFC00FAC      /* MemDMA Stream 1 Destination Peripheral Map Register          */
475
#define MDMA_D1_CURR_X_COUNT            0xFFC00FB0      /* MemDMA Stream 1 Destination Current X Count Register         */
476
#define MDMA_D1_CURR_Y_COUNT            0xFFC00FB8      /* MemDMA Stream 1 Destination Current Y Count Register         */
477
 
478
#define MDMA_S1_NEXT_DESC_PTR           0xFFC00FC0      /* MemDMA Stream 1 Source Next Descriptor Pointer Register              */
479
#define MDMA_S1_START_ADDR              0xFFC00FC4      /* MemDMA Stream 1 Source Start Address Register                        */
480
#define MDMA_S1_CONFIG                  0xFFC00FC8      /* MemDMA Stream 1 Source Configuration Register                        */
481
#define MDMA_S1_X_COUNT                 0xFFC00FD0      /* MemDMA Stream 1 Source X Count Register                              */
482
#define MDMA_S1_X_MODIFY                0xFFC00FD4      /* MemDMA Stream 1 Source X Modify Register                             */
483
#define MDMA_S1_Y_COUNT                 0xFFC00FD8      /* MemDMA Stream 1 Source Y Count Register                              */
484
#define MDMA_S1_Y_MODIFY                0xFFC00FDC      /* MemDMA Stream 1 Source Y Modify Register                             */
485
#define MDMA_S1_CURR_DESC_PTR           0xFFC00FE0      /* MemDMA Stream 1 Source Current Descriptor Pointer Register   */
486
#define MDMA_S1_CURR_ADDR               0xFFC00FE4      /* MemDMA Stream 1 Source Current Address Register                      */
487
#define MDMA_S1_IRQ_STATUS              0xFFC00FE8      /* MemDMA Stream 1 Source Interrupt/Status Register                     */
488
#define MDMA_S1_PERIPHERAL_MAP  0xFFC00FEC      /* MemDMA Stream 1 Source Peripheral Map Register                       */
489
#define MDMA_S1_CURR_X_COUNT            0xFFC00FF0      /* MemDMA Stream 1 Source Current X Count Register                      */
490
#define MDMA_S1_CURR_Y_COUNT            0xFFC00FF8      /* MemDMA Stream 1 Source Current Y Count Register                      */
491
 
492
 
493
/* Parallel Peripheral Interface        (0xFFC01000 - 0xFFC010FF)                                                                       */
494
#define PPI_CONTROL                     0xFFC01000      /* PPI Control Register                                                         */
495
#define PPI_STATUS                      0xFFC01004      /* PPI Status Register                                                          */
496
#define PPI_COUNT                               0xFFC01008      /* PPI Transfer Count Register                                          */
497
#define PPI_DELAY                               0xFFC0100C      /* PPI Delay Count Register                                                     */
498
#define PPI_FRAME                               0xFFC01010      /* PPI Frame Length Register                                                    */
499
 
500
 
501
/* Two-Wire Interface                   (0xFFC01400 - 0xFFC014FF)                                                                       */
502
#define TWI_CLKDIV                      0xFFC01400      /* Serial Clock Divider Register                                                */
503
#define TWI_CONTROL                     0xFFC01404      /* TWI Control Register                                                         */
504
#define TWI_SLAVE_CTL                   0xFFC01408      /* Slave Mode Control Register                                          */
505
#define TWI_SLAVE_STAT                  0xFFC0140C      /* Slave Mode Status Register                                                   */
506
#define TWI_SLAVE_ADDR                  0xFFC01410      /* Slave Mode Address Register                                          */
507
#define TWI_MASTER_CTL                  0xFFC01414      /* Master Mode Control Register                                         */
508
#define TWI_MASTER_STAT                 0xFFC01418      /* Master Mode Status Register                                          */
509
#define TWI_MASTER_ADDR                 0xFFC0141C      /* Master Mode Address Register                                         */
510
#define TWI_INT_STAT                    0xFFC01420      /* TWI Interrupt Status Register                                                */
511
#define TWI_INT_MASK                    0xFFC01424      /* TWI Master Interrupt Mask Register                                   */
512
#define TWI_FIFO_CTL                    0xFFC01428      /* FIFO Control Register                                                        */
513
#define TWI_FIFO_STAT                   0xFFC0142C      /* FIFO Status Register                                                         */
514
#define TWI_XMT_DATA8                   0xFFC01480      /* FIFO Transmit Data Single Byte Register                              */
515
#define TWI_XMT_DATA16                  0xFFC01484      /* FIFO Transmit Data Double Byte Register                              */
516
#define TWI_RCV_DATA8                   0xFFC01488      /* FIFO Receive Data Single Byte Register                                       */
517
#define TWI_RCV_DATA16                  0xFFC0148C      /* FIFO Receive Data Double Byte Register                                       */
518
 
519
 
520
/* General Purpose I/O Port G   (0xFFC01500 - 0xFFC015FF)                                                                       */
521
#define PORTGIO                         0xFFC01500      /* Port G I/O Pin State Specify Register                                        */
522
#define PORTGIO_CLEAR                   0xFFC01504      /* Port G I/O Peripheral Interrupt Clear Register                       */
523
#define PORTGIO_SET                     0xFFC01508      /* Port G I/O Peripheral Interrupt Set Register                         */
524
#define PORTGIO_TOGGLE                  0xFFC0150C      /* Port G I/O Pin State Toggle Register                                 */
525
#define PORTGIO_MASKA                   0xFFC01510      /* Port G I/O Mask State Specify Interrupt A Register                   */
526
#define PORTGIO_MASKA_CLEAR             0xFFC01514      /* Port G I/O Mask Disable Interrupt A Register                         */
527
#define PORTGIO_MASKA_SET               0xFFC01518      /* Port G I/O Mask Enable Interrupt A Register                          */
528
#define PORTGIO_MASKA_TOGGLE            0xFFC0151C      /* Port G I/O Mask Toggle Enable Interrupt A Register                   */
529
#define PORTGIO_MASKB                   0xFFC01520      /* Port G I/O Mask State Specify Interrupt B Register                   */
530
#define PORTGIO_MASKB_CLEAR             0xFFC01524      /* Port G I/O Mask Disable Interrupt B Register                         */
531
#define PORTGIO_MASKB_SET               0xFFC01528      /* Port G I/O Mask Enable Interrupt B Register                          */
532
#define PORTGIO_MASKB_TOGGLE            0xFFC0152C      /* Port G I/O Mask Toggle Enable Interrupt B Register                   */
533
#define PORTGIO_DIR                     0xFFC01530      /* Port G I/O Direction Register                                                */
534
#define PORTGIO_POLAR                   0xFFC01534      /* Port G I/O Source Polarity Register                                  */
535
#define PORTGIO_EDGE                    0xFFC01538      /* Port G I/O Source Sensitivity Register                                       */
536
#define PORTGIO_BOTH                    0xFFC0153C      /* Port G I/O Set on BOTH Edges Register                                        */
537
#define PORTGIO_INEN                    0xFFC01540      /* Port G I/O Input Enable Register                                             */
538
 
539
 
540
/* General Purpose I/O Port H   (0xFFC01700 - 0xFFC017FF)                                                                       */
541
#define PORTHIO                         0xFFC01700      /* Port H I/O Pin State Specify Register                                        */
542
#define PORTHIO_CLEAR                   0xFFC01704      /* Port H I/O Peripheral Interrupt Clear Register                       */
543
#define PORTHIO_SET                     0xFFC01708      /* Port H I/O Peripheral Interrupt Set Register                         */
544
#define PORTHIO_TOGGLE                  0xFFC0170C      /* Port H I/O Pin State Toggle Register                                 */
545
#define PORTHIO_MASKA                   0xFFC01710      /* Port H I/O Mask State Specify Interrupt A Register                   */
546
#define PORTHIO_MASKA_CLEAR             0xFFC01714      /* Port H I/O Mask Disable Interrupt A Register                         */
547
#define PORTHIO_MASKA_SET               0xFFC01718      /* Port H I/O Mask Enable Interrupt A Register                          */
548
#define PORTHIO_MASKA_TOGGLE            0xFFC0171C      /* Port H I/O Mask Toggle Enable Interrupt A Register                   */
549
#define PORTHIO_MASKB                   0xFFC01720      /* Port H I/O Mask State Specify Interrupt B Register                   */
550
#define PORTHIO_MASKB_CLEAR             0xFFC01724      /* Port H I/O Mask Disable Interrupt B Register                         */
551
#define PORTHIO_MASKB_SET               0xFFC01728      /* Port H I/O Mask Enable Interrupt B Register                          */
552
#define PORTHIO_MASKB_TOGGLE            0xFFC0172C      /* Port H I/O Mask Toggle Enable Interrupt B Register                   */
553
#define PORTHIO_DIR                     0xFFC01730      /* Port H I/O Direction Register                                                */
554
#define PORTHIO_POLAR                   0xFFC01734      /* Port H I/O Source Polarity Register                                  */
555
#define PORTHIO_EDGE                    0xFFC01738      /* Port H I/O Source Sensitivity Register                                       */
556
#define PORTHIO_BOTH                    0xFFC0173C      /* Port H I/O Set on BOTH Edges Register                                        */
557
#define PORTHIO_INEN                    0xFFC01740      /* Port H I/O Input Enable Register                                             */
558
 
559
 
560
/* UART1 Controller                     (0xFFC02000 - 0xFFC020FF)                                                                       */
561
#define UART1_THR                               0xFFC02000      /* Transmit Holding register                                                    */
562
#define UART1_RBR                               0xFFC02000      /* Receive Buffer register                                                      */
563
#define UART1_DLL                               0xFFC02000      /* Divisor Latch (Low-Byte)                                                     */
564
#define UART1_IER                               0xFFC02004      /* Interrupt Enable Register                                                    */
565
#define UART1_DLH                               0xFFC02004      /* Divisor Latch (High-Byte)                                                    */
566
#define UART1_IIR                               0xFFC02008      /* Interrupt Identification Register                                    */
567
#define UART1_LCR                               0xFFC0200C      /* Line Control Register                                                        */
568
#define UART1_MCR                               0xFFC02010      /* Modem Control Register                                                       */
569
#define UART1_LSR                               0xFFC02014      /* Line Status Register                                                         */
570
#define UART1_MSR                               0xFFC02018      /* Modem Status Register                                                        */
571
#define UART1_SCR                               0xFFC0201C      /* SCR Scratch Register                                                         */
572
#define UART1_GCTL                      0xFFC02024      /* Global Control Register                                                      */
573
 
574
 
575
/* Pin Control Registers                (0xFFC03200 - 0xFFC032FF)                                                                       */
576
#define PORTF_FER                               0xFFC03200      /* Port F Function Enable Register (Alternate/Flag*)                    */
577
#define PORTG_FER                               0xFFC03204      /* Port G Function Enable Register (Alternate/Flag*)                    */
578
#define PORTH_FER                               0xFFC03208      /* Port H Function Enable Register (Alternate/Flag*)                    */
579
 
580
 
581
/* GPIO PIN mux                                 (0xFFC03210 - OxFFC03288)                                                                       */
582
#define PORTF_MUX                       0xFFC03210  /* Port F mux control                                                               */
583
#define PORTG_MUX                       0xFFC03214  /* Port G mux control                                                               */
584
#define PORTH_MUX                       0xFFC03218  /* Port H mux control                                                               */
585
#define PORTF_DRIVE                     0xFFC03220  /* Port F drive strength control                                            */
586
#define PORTG_DRIVE                     0xFFC03224  /* Port G drive strength control                                            */
587
#define PORTH_DRIVE                     0xFFC03228  /* Port H drive strength control                                            */
588
#define PORTF_HYSTERESIS                0xFFC03240  /* Port F Schmitt trigger control                                           */
589
#define PORTG_HYSTERESIS                0xFFC03244  /* Port G Schmitt trigger control                                           */
590
#define PORTH_HYSTERESIS                0xFFC03248  /* Port H Schmitt trigger control                                           */
591
#define NONGPIO_DRIVE                   0xFFC03280  /* Misc Port drive strength control                                         */
592
#define NONGPIO_HYSTERESIS              0xFFC03288  /* Misc Port Schmitt Trigger control                                        */
593
 
594
 
595
/* Handshake MDMA Registers             (0xFFC03300 - 0xFFC033FF)                                                                       */
596
#define HMDMA0_CONTROL                  0xFFC03300      /* Handshake MDMA0 Control Register                                             */
597
#define HMDMA0_ECINIT                   0xFFC03304      /* HMDMA0 Initial Edge Count Register                                   */
598
#define HMDMA0_BCINIT                   0xFFC03308      /* HMDMA0 Initial Block Count Register                                  */
599
#define HMDMA0_ECURGENT                 0xFFC0330C      /* HMDMA0 Urgent Edge Count Threshhold Register                         */
600
#define HMDMA0_ECOVERFLOW               0xFFC03310      /* HMDMA0 Edge Count Overflow Interrupt Register                        */
601
#define HMDMA0_ECOUNT                   0xFFC03314      /* HMDMA0 Current Edge Count Register                                   */
602
#define HMDMA0_BCOUNT                   0xFFC03318      /* HMDMA0 Current Block Count Register                                  */
603
 
604
#define HMDMA1_CONTROL                  0xFFC03340      /* Handshake MDMA1 Control Register                                             */
605
#define HMDMA1_ECINIT                   0xFFC03344      /* HMDMA1 Initial Edge Count Register                                   */
606
#define HMDMA1_BCINIT                   0xFFC03348      /* HMDMA1 Initial Block Count Register                                  */
607
#define HMDMA1_ECURGENT                 0xFFC0334C      /* HMDMA1 Urgent Edge Count Threshhold Register                         */
608
#define HMDMA1_ECOVERFLOW               0xFFC03350      /* HMDMA1 Edge Count Overflow Interrupt Register                        */
609
#define HMDMA1_ECOUNT                   0xFFC03354      /* HMDMA1 Current Edge Count Register                                   */
610
#define HMDMA1_BCOUNT                   0xFFC03358      /* HMDMA1 Current Block Count Register                                  */
611
 
612
 
613
/* SPI1 Controller                      (0xFFC03400 - 0xFFC034FF)                                                                       */
614
#define SPI1_CTL                                0xFFC03400      /* SPI0 Control Register                                                        */
615
#define SPI1_FLG                                0xFFC03404      /* SPI0 Flag register                                                           */
616
#define SPI1_STAT                               0xFFC03408      /* SPI0 Status register                                                         */
617
#define SPI1_TDBR                               0xFFC0340C      /* SPI0 Transmit Data Buffer Register                                   */
618
#define SPI1_RDBR                               0xFFC03410      /* SPI0 Receive Data Buffer Register                                    */
619
#define SPI1_BAUD                               0xFFC03414      /* SPI0 Baud rate Register                                                      */
620
#define SPI1_SHADOW                     0xFFC03418      /* SPI0_RDBR Shadow Register                                                    */
621
 
622
 
623
/* Counter Registers                    (0xFFC03500 - 0xFFC035FF)                                                                       */
624
#define CNT_CONFIG                      0xFFC03500  /* Configuration Register                                                   */
625
#define CNT_IMASK                               0xFFC03504  /* Interrupt Mask Register                                                  */
626
#define CNT_STATUS                      0xFFC03508  /* Status Register                                                          */
627
#define CNT_COMMAND                     0xFFC0350C  /* Command Register                                                                 */
628
#define CNT_DEBOUNCE                    0xFFC03510  /* Debounce Register                                                                */
629
#define CNT_COUNTER                     0xFFC03514  /* Counter Register                                                                 */
630
#define CNT_MAX                         0xFFC03518  /* Boundry Value Register - max count                                       */
631
#define CNT_MIN                         0xFFC0351C  /* Boundry Value Register - min count                                       */
632
 
633
 
634
/* OTP/FUSE Registers                   (0xFFC03600 - 0xFFC036FF)                                                                       */
635
#define OTP_CONTROL                     0xFFC03600  /* OTPSEC Fuse Control                                                      */
636
#define OTP_BEN                         0xFFC03604  /* OTPSEC Fuse Byte Enable                                                  */
637
#define OTP_STATUS                      0xFFC03608  /* OTPSEC Fuse Status                                                               */
638
#define OTP_TIMING                      0xFFC0360C  /* OTPSEC Fuse SCLK Divider                                                         */
639
 
640
/* Security Registers                                                                                                                           */
641
#define SECURE_SYSSWT                   0xFFC03620  /* OTPSEC Secure System Switches                                            */
642
#define SECURE_CONTROL                  0xFFC03624  /* OTPSEC Secure Control                                                    */
643
#define SECURE_STATUS                   0xFFC03628  /* OTPSEC Secure Status                                                     */
644
 
645
/* OTP Read/Write Data Buffer Registers                                                                                                         */
646
#define OTP_DATA0                               0xFFC03680  /* OTP Read Write buffer                                                    */
647
#define OTP_DATA1                       0xFFC03684  /* OTP Read Write buffer                                                    */
648
#define OTP_DATA2                       0xFFC03688  /* OTP Read Write buffer                                                    */
649
#define OTP_DATA3                       0xFFC0368C  /* OTP Read Write buffer                                                    */
650
 
651
 
652
/* Motor Control PWM Registers  (0xFFC03700 - 0xFFC037FF)                                                                       */
653
#define PWM_CTRL                                0xFFC03700      /* PWM Control Register                                                         */
654
#define PWM_STAT                                0xFFC03704      /* PWM Status Register                                                          */
655
#define PWM_TM                          0xFFC03708      /* PWM Period Register                                                          */
656
#define PWM_DT                          0xFFC0370C      /* PWM Dead Time Register                                                       */
657
#define PWM_GATE                                0xFFC03710      /* PWM Chopping Control                                                         */
658
#define PWM_CHA                         0xFFC03714      /* PWM Channel A Duty Control                                                   */
659
#define PWM_CHB                         0xFFC03718      /* PWM Channel B Duty Control                                                   */
660
#define PWM_CHC                         0xFFC0371C      /* PWM Channel C Duty Control                                                   */
661
#define PWM_SEG                         0xFFC03720      /* PWM Crossover and Output Enable                                              */
662
#define PWM_SYNCWT                      0xFFC03724      /* PWM Sync pulse width control                                         */
663
#define PWM_CHAL                                0xFFC03728      /* PWM Channel AL Duty Control (SR mode only)                           */
664
#define PWM_CHBL                                0xFFC0372C      /* PWM Channel BL Duty Control (SR mode only)                           */
665
#define PWM_CHCL                                0xFFC03730      /* PWM Channel CL Duty Control (SR mode only)                           */
666
#define PWM_LSI                         0xFFC03734  /* Low Side Invert (SR mode only)                                           */
667
#define PWM_STAT2                               0xFFC03738      /* PWM Status Register                                                          */
668
 
669
 
670
 
671
/******************************************************************************************************************
672
** System MMR Register Bits And Macros
673
**
674
** Disclaimer:  All macros are intended to make C and Assembly code more readable.
675
**                      Use these macros carefully, as any that do left shifts for field
676
**                      depositing will result in the lower order bits being destroyed.  Any
677
**                      macro that shifts left to properly position the bit-field should be
678
**                      used as part of an OR to initialize a register and NOT as a dynamic
679
**                      modifier UNLESS the lower order bits are saved and ORed back in when
680
**                      the macro is used.
681
*******************************************************************************************************************/
682
 
683
/************************************** PLL AND RESET MASKS *******************************************************/
684
 
685
/* PLL_CTL Masks */
686
#define DF                                      0x0001  /* 0: PLL = CLKIN, 1: PLL = CLKIN/2                                             */
687
#define PLL_OFF                         0x0002  /* PLL Not Powered                                                              */
688
#define STOPCK                          0x0008  /* Core Clock Off                                                                       */
689
#define PDWN                            0x0020  /* Enter Deep Sleep Mode                                                        */
690
#define IN_DELAY                                0x0040  /* Add 200ps Delay To EBIU Input Latches                                        */
691
#define OUT_DELAY                               0x0080  /* Add 200ps Delay To EBIU Output Signals                                       */
692
#define BYPASS                          0x0100  /* Bypass the PLL                                                                       */
693
#define MSEL                            0x7E00  /* Multiplier Select For CCLK/VCO Factors                                       */
694
 
695
/* PLL_CTL Macros (Only Use With Logic OR While Setting Lower Order Bits) */
696
#ifdef _MISRA_RULES
697
#define SET_MSEL(x)     (((x)&0x3Fu) << 0x9)    /* Set MSEL = 0-63 --> VCO = CLKIN*MSEL                                 */
698
#else
699
#define SET_MSEL(x)     (((x)&0x3F) << 0x9)     /* Set MSEL = 0-63 --> VCO = CLKIN*MSEL                                 */
700
#endif /* _MISRA_RULES */
701
 
702
/* PLL_DIV Masks */
703
#define SSEL                            0x000F  /* System Select                                                                        */
704
#define CSEL                            0x0030  /* Core Select                                                                  */
705
#define CSEL_DIV1                               0x0000  /* CCLK = VCO / 1                                                                       */
706
#define CSEL_DIV2                               0x0010  /* CCLK = VCO / 2                                                                       */
707
#define CSEL_DIV4                               0x0020  /* CCLK = VCO / 4                                                                       */
708
#define CSEL_DIV8                               0x0030  /* CCLK = VCO / 8                                                                       */
709
 
710
/* PLL_DIV Macros       */
711
#ifdef _MISRA_RULES
712
#define SET_SSEL(x)                     ((x)&0xFu)      /* Set SSEL = 0-15 --> SCLK = VCO/SSEL                                  */
713
#else
714
#define SET_SSEL(x)                     ((x)&0xF)       /* Set SSEL = 0-15 --> SCLK = VCO/SSEL                                  */
715
#endif /* _MISRA_RULES */
716
 
717
/* VR_CTL Masks */
718
#define FREQ                            0x3000  /* Switching Oscillator Frequency For Regulator                         */
719
#define HIBERNATE                               0x0000  /* Powerdown/Bypass On-Board Regulation                                 */
720
 
721
#define VLEV                            0x00F0  /* Internal Voltage Level - Only Program Values Within Specifications */
722
#define VLEV_085                                0x0040  /* VLEV = 0.85 V (See Datasheet for Regulator Tolerance)                */
723
#define VLEV_090                                0x0050  /* VLEV = 0.90 V (See Datasheet for Regulator Tolerance)                */
724
#define VLEV_095                                0x0060  /* VLEV = 0.95 V (See Datasheet for Regulator Tolerance)                */
725
#define VLEV_100                                0x0070  /* VLEV = 1.00 V (See Datasheet for Regulator Tolerance)                */
726
#define VLEV_105                                0x0080  /* VLEV = 1.05 V (See Datasheet for Regulator Tolerance)                */
727
#define VLEV_110                                0x0090  /* VLEV = 1.10 V (See Datasheet for Regulator Tolerance)                */
728
#define VLEV_115                                0x00A0  /* VLEV = 1.15 V (See Datasheet for Regulator Tolerance)                */
729
#define VLEV_120                                0x00B0  /* VLEV = 1.20 V (See Datasheet for Regulator Tolerance)                */
730
 
731
#define WAKE                            0x0100  /* Enable RTC/Reset Wakeup From Hibernate                                       */
732
/* no USB WAKE UP */
733
#define PHYWE                           0x0400  /* Enable PHY Wakeup From Hibernate                                             */
734
#define CLKBUFOE                                0x4000  /* CLKIN Buffer Output Enable                                                   */
735
#define PHYCLKOE                                CLKBUFOE        /* Alternative legacy name for the above                                        */
736
#define SCKELOW                         0x8000  /* Enable Drive CKE Low During Reset                                    */
737
 
738
/* PLL_STAT Masks       */
739
#define ACTIVE_PLLENABLED               0x0001  /* Processor In Active Mode With PLL Enabled                            */
740
#define FULL_ON                         0x0002  /* Processor In Full On Mode                                                    */
741
#define ACTIVE_PLLDISABLED              0x0004  /* Processor In Active Mode With PLL Disabled                           */
742
#define PLL_LOCKED                      0x0020  /* PLL_LOCKCNT Has Been Reached                                         */
743
#define VSTAT                           0x0080  /* Voltage Regulator Status: Regulator at programmed voltage */
744
 
745
/* SWRST Masks */
746
#define SYSTEM_RESET                    0x0007  /* Initiates A System Software Reset                                    */
747
#define DOUBLE_FAULT                    0x0008  /* Core Double Fault Causes Reset                                               */
748
#define RESET_DOUBLE                    0x2000  /* SW Reset Generated By Core Double-Fault                              */
749
#define RESET_WDOG                      0x4000  /* SW Reset Generated By Watchdog Timer                                 */
750
#define RESET_SOFTWARE                  0x8000  /* SW Reset Occurred Since Last Read Of SWRST                           */
751
 
752
/* SYSCR Masks */
753
#define BMODE_BYPASS                    0x0000  /* Bypass boot ROM, execute from 16-bit external memory                 */
754
#define BMODE_FLASH                     0x0001  /* Use Boot ROM to load from 8-bit or 16-bit flash                      */
755
#define BMODE_SPIMEM                    0x0003  /* Boot from serial SPI memory                                          */
756
#define BMODE_SPIHOST           0x0004  /* Boot from SPI0 host (slave mode)                                     */
757
#define BMODE_TWIMEM                    0x0005  /* Boot from serial TWI memory                                          */
758
#define BMODE_TWIHOST                   0x0006  /* Boot from TWI0 host (slave mode)                                     */
759
#define BMODE_UART0HOST         0x0007  /* Boot from UART0 host                                                         */
760
#define BMODE_UART1HOST         0x0008  /* Boot from UART1 host                                                         */
761
#define BMODE_SDRAMMEM          0x000A  /* Boot from SDRAM memory (warm boot)                                   */
762
#define BMODE_OTPMEM            0x000B  /* Boot from OTP memory                                                         */
763
#define BMODE_HOSTDMA_ACK               0x000E  /* Boot from 16-bit host DMA (ACK mode)                                         */
764
#define BMODE_HOSTDMA_INT       0x000F  /* Boot from 8-bit host DMA (INT mode)                                  */
765
#define BMODE                           0x000F  /* Boot Mode. Mirror of BMODE Mode Pins                                         */
766
 
767
#define BCODE                           0x00F0
768
#define BCODE_NORMAL                    0x0000  /* normal boot, update PLL/VR, quickboot as by WURESET          */
769
#define BCODE_NOBOOT                    0x0010  /* bypass boot, don't update PLL/VR                                     */
770
#define BCODE_QUICKBOOT                 0x0020  /* quick boot, overrule WURESET, don't update PLL/VR                    */
771
#define BCODE_ALLBOOT                   0x0040  /* no quick boot, overrule WURESET, don't update PLL/VR                 */
772
#define BCODE_FULLBOOT                  0x0060  /* no quick boot, overrule WURESET, update PLL/VR                       */
773
 
774
#define DCB1_PRIO                       0x0100  /* DCB1 requests are urgent                                                     */
775
#define DCB_ROT_PRIO                    0x0200  /* enable rotating DCB priority                                                 */
776
#define DEB1_PRIO                       0x0400  /* DEB1 requests are urgent                                                     */
777
#define DEB_ROT_PRIO                    0x0800  /* enable rotating DEB priority                                                 */
778
 
779
#define WURESET                                 0x1000  /* wakeup event since last hardware reset                                       */
780
#define DFRESET                                 0x2000  /* recent reset was due to a double fault event                         */
781
#define WDRESET                                 0x4000  /* recent reset was due to a watchdog event                             */
782
#define SWRESET                                 0x8000  /* recent reset was issued by software                                  */
783
 
784
/*********************************  SYSTEM INTERRUPT CONTROLLER MASKS *********************************************/
785
 
786
/* Peripheral Masks For SIC_ISR0, SIC_IWR0, SIC_IMASK0 */
787
#define IRQ_PLL_WAKEUP                  0x00000001      /* PLL Wakeup Interrupt                                                         */
788
#define IRQ_DMA_ERR0                    0x00000002  /* Error Interrupt (DMA error 0 interrupt (generic))                        */
789
#define IRQ_DMAR0                       0x00000004  /* DMAR0 Block (DMAR0 block interrupt)                                      */
790
#define IRQ_DMAR1                       0x00000008  /* DMAR1 Block  (DMAR1 block interrupt)                                     */
791
#define IRQ_DMAR0_ERR                   0x00000010  /* Error Interrupt (DMAR0 overflow error interrupt)                         */
792
#define IRQ_DMAR1_ERR                   0x00000020  /* Error Interrupt (DMAR1 overflow error interrupt)                         */
793
#define IRQ_PPI_ERR                     0x00000040  /* Error Interrupt (PPI error interrupt)                                    */
794
#define IRQ_MAC_ERR                     0x00000080  /* Error Interrupt (MAC status interrupt)                           */
795
#define IRQ_SPORT0_ERR                  0x00000100  /* Error Interrupt (SPORT0 status interrupt)                                */
796
#define IRQ_SPORT1_ERR                  0x00000200  /* Error Interrupt (SPORT1 status interrupt)                                */
797
#define IRQ_PTP_ERR                     0x00000400  /* Error Interrupt (PTP error interrupt)                                    */
798
 
799
#define IRQ_UART0_ERR                   0x00001000  /* Error Interrupt (UART0 status interrupt)                                 */
800
#define IRQ_UART1_ERR                   0x00002000  /* Error Interrupt (UART1 status interrupt)                                 */
801
#define IRQ_RTC                         0x00004000  /* Real Time Clock Interrupt                                                        */
802
#define IRQ_DMA0                                0x00008000  /* DMA channel 0 (PPI/NFC) Interrupt                                        */
803
#define IRQ_DMA3                                0x00010000  /* DMA Channel 3 (SPORT0 RX) Interrupt                                      */
804
#define IRQ_DMA4                                0x00020000  /* DMA Channel 4 (SPORT0 TX) Interrupt                                      */
805
#define IRQ_DMA5                                0x00040000  /* DMA Channel 5 (SPORT1 RX) Interrupt                                      */
806
#define IRQ_DMA6                                0x00080000  /* DMA Channel 6 (SPORT1 TX) Interrupt                                      */
807
#define IRQ_TWI                         0x00100000  /* TWI Interrupt                                                                    */
808
#define IRQ_DMA7                                0x00200000  /* DMA Channel 7 (SPI) Interrupt                                            */
809
#define IRQ_DMA8                                0x00400000  /* DMA Channel 8 (UART0 RX) Interrupt                                       */
810
#define IRQ_DMA9                                0x00800000  /* DMA Channel 9 (UART0 TX) Interrupt                                       */
811
#define IRQ_DMA10                               0x01000000  /* DMA Channel 10 (UART1 RX) Interrupt                                      */
812
#define IRQ_DMA11                               0x02000000  /* DMA Channel 11 (UART1 TX) Interrupt                                      */
813
#define IRQ_OTP                         0x04000000  /* OTP Interrupt                                                                    */
814
#define IRQ_CNT                                 0x08000000  /* GP Counter Interrupt                                                     */
815
#define IRQ_DMA1                                0x10000000  /* DMA Channel 1 (EthernetRX/HOSTDP) Interrupt                              */
816
#define IRQ_PFA_PORTH                   0x20000000  /* PF Port H Interrupt A                                                    */
817
#define IRQ_DMA2                                0x40000000  /* DMA Channel 2 (Ethernet TX/NFC) Interrupt                                */
818
#define IRQ_PFB_PORTH                   0x80000000  /* PF Port H  Interrupt B                                                   */
819
 
820
/* Peripheral Masks For SIC_ISR1, SIC_IWR1, SIC_IMASK1 */
821
#define IRQ_TIMER0                      0x00000001      /* Timer 0 Interrupt                                                            */
822
#define IRQ_TIMER1                      0x00000002      /* Timer 1 Interrupt                                                            */
823
#define IRQ_TIMER2                      0x00000004      /* Timer 2 Interrupt                                                            */
824
#define IRQ_TIMER3                      0x00000008      /* Timer 3 Interrupt                                                            */
825
#define IRQ_TIMER4                      0x00000010      /* Timer 4 Interrupt                                                            */
826
#define IRQ_TIMER5                      0x00000020      /* Timer 5 Interrupt                                                            */
827
#define IRQ_TIMER6                      0x00000040      /* Timer 6 Interrupt                                                            */
828
#define IRQ_TIMER7                      0x00000080      /* Timer 7 Interrupt                                                            */
829
#define IRQ_PFA_PORTG                   0x00000100      /* PF Port G Interrupt A                                                        */
830
#define IRQ_PFB_PORTG                   0x00000200      /* PF Port G Interrupt B                                                        */
831
#define IRQ_DMA12                               0x00000400      /* DMA Channels 12 (MDMA0 Destination) TX Interrupt                     */
832
#define IRQ_DMA13                               0x00000400      /* DMA Channels 13 (MDMA0 Source) RX Interrupt                          */
833
#define IRQ_DMA14                               0x00000800      /* DMA Channels 14 (MDMA1 Destination) TX Interrupt                     */
834
#define IRQ_DMA15                               0x00000800      /* DMA Channels 15 (MDMA1 Source) RX Interrupt                          */
835
#define IRQ_WDOG                                0x00001000      /* Software Watchdog Timer Interrupt                                    */
836
#define IRQ_PFA_PORTF                   0x00002000      /* PF Port F Interrupt A                                                        */
837
#define IRQ_PFB_PORTF                   0x00004000      /* PF Port F Interrupt B                                                        */
838
#define IRQ_SPI0_ERR                    0x00008000  /* Error Interrupt (SPI0 status interrupt)                          */
839
#define IRQ_SPI1_ERR                    0x00010000      /* Error Interrupt (SPI1 status interrupt)                              */
840
 
841
#define IRQ_RSI_INT0                    0x00080000      /* USB EINT interrupt                                                           */
842
#define IRQ_RSI_INT1                    0x00100000      /* USB INT0 interrupt                                                           */
843
#define IRQ_PWM_TRIPINT                 0x00200000      /* USB INT1 interrupt                                                           */
844
#define IRQ_PWM_SYNCINT                 0x00400000      /* USB INT1 interrupt                                                           */
845
#define IRQ_PTP_STATINT                 0x00800000      /* USB DMAINT interrupt                                                         */
846
 
847
 
848
/* Peripheral Masks For SIC_ISR, SIC_IWR, SIC_IMASK */
849
#define IWR_DISABLE_ALL         0x00000000      /* Wakeup Disable all peripherals                                               */
850
#define IWR_ENABLE_ALL                  0xFFFFFFFF      /* Wakeup Enable all peripherals                                                */
851
/* x = pos 0 to 31, for 32-63 use value-32 */
852
#define IWR_ENABLE(x)                   (1 << (x))      /* Wakeup Enable Peripheral #x                                          */
853
#define IWR_DISABLE(x)   (0xFFFFFFFF^(1<<(x)))  /* Wakeup Disable Peripheral #x                                                 */
854
 
855
 
856
#ifdef _MISRA_RULES
857
#define _MF15   0xFu
858
#define _MF7    7u
859
#else
860
#define _MF15   0xF
861
#define _MF7    7
862
#endif /* _MISRA_RULES */
863
 
864
 
865
/* SIC_IAR0 Macros*/
866
#define P0_IVG(x)               (((x)&_MF15)-_MF7)              /* Peripheral #0 assigned IVG #x        */
867
#define P1_IVG(x)               (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #1 assigned IVG #x        */
868
#define P2_IVG(x)               (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #2 assigned IVG #x        */
869
#define P3_IVG(x)               (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #3 assigned IVG #x        */
870
#define P4_IVG(x)               (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #4 assigned IVG #x        */
871
#define P5_IVG(x)               (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #5 assigned IVG #x        */
872
#define P6_IVG(x)               (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #6 assigned IVG #x        */
873
#define P7_IVG(x)               (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #7 assigned IVG #x        */
874
 
875
/* SIC_IAR1 Macros*/
876
#define P8_IVG(x)               (((x)&_MF15)-_MF7)              /* Peripheral #8 assigned IVG #x        */
877
#define P9_IVG(x)               (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #9 assigned IVG #x        */
878
#define P10_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #10 assigned IVG #x       */
879
#define P11_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #11 assigned IVG #x       */
880
#define P12_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #12 assigned IVG #x       */
881
#define P13_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #13 assigned IVG #x       */
882
 
883
/* SIC_IAR2 Macros*/
884
#define P14_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #14 assigned IVG #x       */
885
#define P15_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #15 assigned IVG #x       */
886
#define P16_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #16 assigned IVG #x       */
887
#define P17_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #17 assigned IVG #x       */
888
#define P18_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #18 assigned IVG #x       */
889
#define P19_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #19 assigned IVG #x       */
890
#define P20_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #20 assigned IVG #x       */
891
#define P21_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #21 assigned IVG #x       */
892
 
893
/* SIC_IAR3 Macros*/
894
#define P22_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #22 assigned IVG #x       */
895
#define P23_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #23 assigned IVG #x       */
896
#define P24_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #24 assigned IVG #x       */
897
#define P25_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #25 assigned IVG #x       */
898
#define P26_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #26 assigned IVG #x       */
899
#define P27_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #27 assigned IVG #x       */
900
#define P28_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #28 assigned IVG #x       */
901
#define P29_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #29 assigned IVG #x       */
902
 
903
/* SIC_IAR4 Macros*/
904
#define P30_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #30 assigned IVG #x       */
905
#define P31_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #31 assigned IVG #x       */
906
#define P32_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #32 assigned IVG #x       */
907
#define P33_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #33 assigned IVG #x       */
908
#define P34_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #34 assigned IVG #x       */
909
#define P35_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #35 assigned IVG #x       */
910
#define P36_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #36 assigned IVG #x       */
911
#define P37_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #37 assigned IVG #x       */
912
 
913
/* SIC_IAR5 Macros*/
914
#define P38_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #38 assigned IVG #x       */
915
#define P39_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #39 assigned IVG #x       */
916
#define P40_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #40 assigned IVG #x       */
917
#define P41_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #41 assigned IVG #x       */
918
#define P42_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #42 assigned IVG #x       */
919
#define P43_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #43 assigned IVG #x       */
920
#define P44_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #44 assigned IVG #x       */
921
#define P45_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #45 assigned IVG #x       */
922
 
923
/* SIC_IAR6 Macros*/
924
#define P46_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #46 assigned IVG #x       */
925
#define P47_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #47 assigned IVG #x       */
926
#define P48_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #48 assigned IVG #x       */
927
#define P49_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #49 assigned IVG #x       */
928
#define P50_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #50 assigned IVG #x       */
929
#define P51_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #51 assigned IVG #x       */
930
#define P52_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #52 assigned IVG #x       */
931
#define P53_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #53 assigned IVG #x       */
932
 
933
/* SIC_IAR7 Macros*/
934
#define P54_IVG(x)      (((x)&_MF15)-_MF7)              /* Peripheral #54 assigned IVG #x       */
935
#define P55_IVG(x)      (((x)&_MF15)-_MF7) << 0x4       /* Peripheral #55 assigned IVG #x       */
936
#define P56_IVG(x)      (((x)&_MF15)-_MF7) << 0x8       /* Peripheral #56 assigned IVG #x       */
937
#define P57_IVG(x)      (((x)&_MF15)-_MF7) << 0xC       /* Peripheral #57 assigned IVG #x       */
938
#define P58_IVG(x)      (((x)&_MF15)-_MF7) << 0x10      /* Peripheral #58 assigned IVG #x       */
939
#define P59_IVG(x)      (((x)&_MF15)-_MF7) << 0x14      /* Peripheral #59 assigned IVG #x       */
940
#define P60_IVG(x)      (((x)&_MF15)-_MF7) << 0x18      /* Peripheral #60 assigned IVG #x       */
941
#define P61_IVG(x)      (((x)&_MF15)-_MF7) << 0x1C      /* Peripheral #61 assigned IVG #x       */
942
 
943
 
944
/* SIC_IMASK0 Masks*/
945
#define SIC_UNMASK0_ALL 0x00000000                              /* Unmask all peripheral interrupts     */
946
#define SIC_MASK0_ALL   0xFFFFF3FF                              /* Mask all peripheral interrupts       */
947
#ifdef _MISRA_RULES
948
#define SIC_MASK0(x)    (1 << ((x)&0x1Fu))              /* Mask Peripheral #x interrupt */
949
#define SIC_UNMASK0(x)  (0xFFFFFFFFu ^ (1 << ((x)&0x1Fu)))/*Unmask Peripheral #x interrupt*/
950
#else
951
#define SIC_MASK0(x)    (1 << ((x)&0x1F))                       /* Mask Peripheral #x interrupt */
952
#define SIC_UNMASK0(x)  (0xFFFFFFFF ^ (1 << ((x)&0x1F)))/* Unmask Peripheral #x interrupt       */
953
#endif /* _MISRA_RULES */
954
 
955
/* SIC_IMASK1 Masks*/
956
#define SIC_UNMASK1_ALL 0x00000000                              /* Unmask all peripheral interrupts     */
957
#define SIC_MASK1_ALL   0xFFFFFF                                /* Mask all peripheral interrupts       */
958
#ifdef _MISRA_RULES
959
#define SIC_MASK1(x)    (1 << ((x)&0x1Fu))              /* Mask Peripheral #x interrupt */
960
#define SIC_UNMASK1(x)  (0xFFFFFFFFu ^ (1 << ((x)&0x1Fu)))/*Unmask Peripheral #x interrupt*/
961
#else
962
#define SIC_MASK1(x)    (1 << ((x)&0x1F))                       /* Mask Peripheral #x interrupt */
963
#define SIC_UNMASK1(x)  (0xFFFFFFFF ^ (1 << ((x)&0x1F)))/* Unmask Peripheral #x interrupt       */
964
#endif /* _MISRA_RULES */
965
 
966
 
967
/* SIC_IWR0 Masks*/
968
#define IWR0_DISABLE_ALL 0x00000000                             /* Wakeup Disable all peripherals       */
969
#define IWR0_ENABLE_ALL  0xFFFFF3FF                             /* Wakeup Enable all peripherals        */
970
#ifdef _MISRA_RULES
971
#define IWR0_ENABLE(x)   (1 << ((x)&0x1Fu))             /* Wakeup Enable Peripheral #x  */
972
#define IWR0_DISABLE(x)  (0xFFFFFFFFu ^ (1 << ((x)&0x1Fu)))/*Wakeup Disable Peripheral #x       */
973
#else
974
#define IWR0_ENABLE(x)   (1 << ((x)&0x1F))              /* Wakeup Enable Peripheral #x  */
975
#define IWR0_DISABLE(x)  (0xFFFFFFFF ^ (1 << ((x)&0x1F)))/* Wakeup Disable Peripheral #x        */
976
#endif /* _MISRA_RULES */
977
 
978
/* SIC_IWR1 Masks*/
979
#define IWR1_DISABLE_ALL 0x00000000                             /* Wakeup Disable all peripherals       */
980
#define IWR1_ENABLE_ALL  0xFFFFFF                               /* Wakeup Enable all peripherals        */
981
#ifdef _MISRA_RULES
982
#define IWR1_ENABLE(x)   (1 << ((x)&0x1Fu))             /* Wakeup Enable Peripheral #x  */
983
#define IWR1_DISABLE(x)  (0xFFFFFFFFu ^ (1 << ((x)&0x1Fu)))/* Wakeup Disable Peripheral #x*/
984
#else
985
#define IWR1_ENABLE(x)   (1 << ((x)&0x1F))              /* Wakeup Enable Peripheral #x  */
986
#define IWR1_DISABLE(x)  (0xFFFFFFFF ^ (1 << ((x)&0x1F)))/* Wakeup Disable Peripheral #x        */
987
#endif /* _MISRA_RULES */
988
 
989
 
990
/* ************************************** WATCHDOG TIMER MASKS ****************************************************/
991
 
992
/* Watchdog Timer WDOG_CTL Register Masks */
993
#ifdef _MISRA_RULES
994
#define WDEV(x)      (((x)<<1) & 0x0006u)       /* event generated on roll over                                                 */
995
#else
996
#define WDEV(x)                 (((x)<<1) & 0x0006)     /* event generated on roll over                                                 */
997
#endif /* _MISRA_RULES */
998
 
999
#define WDEV_RESET                      0x0000  /* generate reset event on roll over                                    */
1000
#define WDEV_NMI                                0x0002  /* generate NMI event on roll over                                              */
1001
#define WDEV_GPI                                0x0004  /* generate GP IRQ on roll over                                                 */
1002
#define WDEV_NONE                       0x0006  /* no event on roll over                                                        */
1003
#define WDEN                            0x0FF0  /* enable watchdog                                                              */
1004
#define WDDIS                           0x0AD0  /* disable watchdog                                                             */
1005
#define WDRO                            0x8000  /* watchdog rolled over latch                                           */
1006
 
1007
/* depreciated WDOG_CTL Register Masks for legacy code */
1008
#define ICTL                            WDEV
1009
#define ENABLE_RESET                    WDEV_RESET
1010
#define WDOG_RESET                      WDEV_RESET
1011
#define ENABLE_NMI                      WDEV_NMI
1012
#define WDOG_NMI                                WDEV_NMI
1013
#define ENABLE_GPI                      WDEV_GPI
1014
#define WDOG_GPI                                WDEV_GPI
1015
#define DISABLE_EVT                     WDEV_NONE
1016
#define WDOG_NONE                       WDEV_NONE
1017
 
1018
#define TMR_EN                          WDEN
1019
#define TMR_DIS                                 WDDIS
1020
#define TRO                             WDRO
1021
#define ICTL_P0                                 0x01
1022
#define ICTL_P1                                 0x02
1023
#define TRO_P                           0x0F
1024
 
1025
 
1026
/* **************************************  REAL TIME CLOCK MASKS  *************************************************/
1027
 
1028
/* RTC_STAT and RTC_ALARM Masks*/
1029
#define RTC_SEC                         0x0000003F      /* Real-Time Clock Seconds                                                      */
1030
#define RTC_MIN                         0x00000FC0      /* Real-Time Clock Minutes                                                      */
1031
#define RTC_HR                          0x0001F000      /* Real-Time Clock Hours                                                        */
1032
#define RTC_DAY                         0xFFFE0000      /* Real-Time Clock Days                                                         */
1033
 
1034
/* RTC_ALARM Macro z=day y=hr x=min w=sec       */
1035
#ifdef _MISRA_RULES
1036
#define SET_ALARM(z,y,x,w)              ((((z)&0x7FFFu)<<0x11)|(((y)&0x1Fu)<<0xC)|(((x)&0x3Fu)<<0x6)|((w)&0x3Fu))
1037
#else
1038
#define SET_ALARM(z,y,x,w)              ((((z)&0x7FFF)<<0x11)|(((y)&0x1F)<<0xC)|(((x)&0x3F)<<0x6)|((w)&0x3F))
1039
#endif /* _MISRA_RULES */
1040
 
1041
/* RTC_ICTL and RTC_ISTAT Masks*/
1042
#define STOPWATCH                               0x0001  /* Stopwatch Interrupt Enable                                                   */
1043
#define ALARM                           0x0002  /* Alarm Interrupt Enable                                                       */
1044
#define SECOND                          0x0004  /* Seconds (1 Hz) Interrupt Enable                                              */
1045
#define MINUTE                          0x0008  /* Minutes Interrupt Enable                                                     */
1046
#define HOUR                            0x0010  /* Hours Interrupt Enable                                                       */
1047
#define DAY                                     0x0020  /* 24 Hours (Days) Interrupt Enable                                             */
1048
#define DAY_ALARM                               0x0040  /* Day Alarm (Day, Hour, Minute, Second) Interrupt Enable               */
1049
#define WRITE_PENDING                   0x4000  /* Write Pending Status                                                         */
1050
#define WRITE_COMPLETE                  0x8000  /* Write Complete Interrupt Enable                                              */
1051
 
1052
/* RTC_FAST / RTC_PREN Mask */
1053
#define PREN                            0x0001  /* Enable Prescaler, RTC Runs @1 Hz                                             */
1054
 
1055
 
1056
/* ************************************ UART CONTROLLER MASKS *****************************************************/
1057
 
1058
/* UARTx_LCR Masks*/
1059
#ifdef _MISRA_RULES
1060
#define WLS(x)          (((x)-5u) & 0x03u)      /* Word Length Select                                                           */
1061
#else
1062
#define WLS(x)            (((x)-5) & 0x03)      /* Word Length Select                                                           */
1063
#endif /* _MISRA_RULES */
1064
 
1065
#define STB                                     0x04            /* Stop Bits                                                                    */
1066
#define PEN                                     0x08            /* Parity Enable                                                                        */
1067
#define EPS                                     0x10            /* Even Parity Select                                                           */
1068
#define STP                                     0x20            /* Stick Parity                                                                 */
1069
#define SB                                      0x40            /* Set Break                                                                    */
1070
#define DLAB                            0x80            /* Divisor Latch Access                                                         */
1071
 
1072
/* UARTx_MCR Mask       */
1073
#define LOOP_ENA                                0x10            /* Loopback Mode Enable                                                         */
1074
#define LOOP_ENA_P                      0x04
1075
 
1076
/* UARTx_LSR Masks */
1077
#define DR                                      0x01            /* Data Ready                                                                   */
1078
#define OE                                      0x02            /* Overrun Error                                                                        */
1079
#define PE                                      0x04            /* Parity Error                                                                 */
1080
#define FE                                      0x08            /* Framing Error                                                                        */
1081
#define BI                                      0x10            /* Break Interrupt                                                              */
1082
#define THRE                            0x20            /* THR Empty                                                                    */
1083
#define TEMT                            0x40            /* TSR and UART_THR Empty                                                       */
1084
 
1085
/* UARTx_IER Masks*/
1086
#define ERBFI                           0x01            /* Enable Receive Buffer Full Interrupt                                 */
1087
#define ETBEI                           0x02            /* Enable Transmit Buffer Empty Interrupt                                       */
1088
#define ELSI                            0x04            /* Enable RX Status Interrupt                                                   */
1089
 
1090
/* UARTx_IIR Masks*/
1091
#define NINT                            0x01            /* Pending Interrupt                                                            */
1092
#define STATUS                          0x06            /* Highest Priority Pending Interrupt                                   */
1093
 
1094
/* UARTx_GCTL Masks*/
1095
#define UCEN                            0x01            /* Enable UARTx Clocks                                                          */
1096
#define IREN                            0x02            /* Enable IrDA Mode                                                             */
1097
#define TPOLC                           0x04            /* IrDA TX Polarity Change                                                      */
1098
#define RPOLC                           0x08            /* IrDA RX Polarity Change                                                      */
1099
#define FPE                                     0x10            /* Force Parity Error On Transmit                                               */
1100
#define FFE                                     0x20            /* Force Framing Error On Transmit                                              */
1101
 
1102
/* Bit masks for UART Divisor Latch Registers: UARTx_DLL & UARTx_DLH */
1103
#define UARTDLL                         0x00FF  /* Divisor Latch Low Byte                                                       */
1104
#define UARTDLH                 0xFF00  /* Divisor Latch High Byte                                                      */
1105
 
1106
 
1107
/********************************  SERIAL PERIPHERAL INTERFACE (SPI) MASKS  ***************************************/
1108
 
1109
/* SPI_CTL Masks*/
1110
#define TIMOD                           0x0003  /* Transfer Initiate Mode                                                       */
1111
#define RDBR_CORE                               0x0000  /* RDBR Read Initiates, IRQ When RDBR Full                              */
1112
#define TDBR_CORE                               0x0001  /* TDBR Write Initiates, IRQ When TDBR Empty                            */
1113
#define RDBR_DMA                                0x0002  /* DMA Read, DMA Until FIFO Empty                                               */
1114
#define TDBR_DMA                                0x0003  /* DMA Write, DMA Until FIFO Full                                               */
1115
#define SZ                                      0x0004  /* Send Zero (When TDBR Empty, Send Zero/Last*)                         */
1116
#define GM                                      0x0008  /* Get More (When RDBR Full, Overwrite/Discard*)                        */
1117
#define PSSE                            0x0010  /* Slave-Select Input Enable                                                    */
1118
#define EMISO                           0x0020  /* Enable MISO As Output                                                        */
1119
#define SIZE                            0x0100  /* Size of Words (16/8* Bits)                                                   */
1120
#define LSBF                            0x0200  /* LSB First                                                                    */
1121
#define CPHA                            0x0400  /* Clock Phase                                                                  */
1122
#define CPOL                            0x0800  /* Clock Polarity                                                                       */
1123
#define MSTR                            0x1000  /* Master/Slave*                                                                        */
1124
#define WOM                                     0x2000  /* Write Open Drain Master                                                      */
1125
#define SPE                                     0x4000  /* SPI Enable                                                                   */
1126
 
1127
/* SPI_FLG Masks*/
1128
#define FLS1                            0x0002  /* Enables SPI_FLOUT1 as SPI Slave-Select Output                        */
1129
#define FLS2                            0x0004  /* Enables SPI_FLOUT2 as SPI Slave-Select Output                        */
1130
#define FLS3                            0x0008  /* Enables SPI_FLOUT3 as SPI Slave-Select Output                        */
1131
#define FLS4                            0x0010  /* Enables SPI_FLOUT4 as SPI Slave-Select Output                        */
1132
#define FLS5                            0x0020  /* Enables SPI_FLOUT5 as SPI Slave-Select Output                        */
1133
#define FLS6                            0x0040  /* Enables SPI_FLOUT6 as SPI Slave-Select Output                        */
1134
#define FLS7                            0x0080  /* Enables SPI_FLOUT7 as SPI Slave-Select Output                        */
1135
#define FLG1                            0xFDFF  /* Activates SPI_FLOUT1                                                         */
1136
#define FLG2                            0xFBFF  /* Activates SPI_FLOUT2                                                         */
1137
#define FLG3                            0xF7FF  /* Activates SPI_FLOUT3                                                         */
1138
#define FLG4                            0xEFFF  /* Activates SPI_FLOUT4                                                         */
1139
#define FLG5                            0xDFFF  /* Activates SPI_FLOUT5                                                         */
1140
#define FLG6                            0xBFFF  /* Activates SPI_FLOUT6                                                         */
1141
#define FLG7                            0x7FFF  /* Activates SPI_FLOUT7                                                         */
1142
 
1143
/* SPI_STAT Masks*/
1144
#define SPIF                            0x0001  /* SPI Finished (Single-Word Transfer Complete)                         */
1145
#define MODF                            0x0002  /* Mode Fault Error (Another Device Tried To Become Master)             */
1146
#define TXE                                     0x0004  /* Transmission Error (Data Sent With No New Data In TDBR)              */
1147
#define TXS                                     0x0008  /* SPI_TDBR Data Buffer Status (Full/Empty*)                            */
1148
#define RBSY                            0x0010  /* Receive Error (Data Received With RDBR Full)                         */
1149
#define RXS                                     0x0020  /* SPI_RDBR Data Buffer Status (Full/Empty*)                            */
1150
#define TXCOL                           0x0040  /* Transmit Collision Error (Corrupt Data May Have Been Sent)   */
1151
 
1152
 
1153
/***********************************  GENERAL PURPOSE TIMER MASKS  ************************************************/
1154
/* TIMER_ENABLE Masks*/
1155
#define TIMEN0                          0x0001  /* Enable Timer 0                                                                       */
1156
#define TIMEN1                          0x0002  /* Enable Timer 1                                                                       */
1157
#define TIMEN2                          0x0004  /* Enable Timer 2                                                                       */
1158
#define TIMEN3                          0x0008  /* Enable Timer 3                                                                       */
1159
#define TIMEN4                          0x0010  /* Enable Timer 4                                                                       */
1160
#define TIMEN5                          0x0020  /* Enable Timer 5                                                                       */
1161
#define TIMEN6                          0x0040  /* Enable Timer 6                                                                       */
1162
#define TIMEN7                          0x0080  /* Enable Timer 7                                                                       */
1163
 
1164
/* TIMER_DISABLE Masks*/
1165
#define TIMDIS0                         TIMEN0  /* Disable Timer 0                                                              */
1166
#define TIMDIS1                         TIMEN1  /* Disable Timer 1                                                              */
1167
#define TIMDIS2                         TIMEN2  /* Disable Timer 2                                                              */
1168
#define TIMDIS3                         TIMEN3  /* Disable Timer 3                                                              */
1169
#define TIMDIS4                         TIMEN4  /* Disable Timer 4                                                              */
1170
#define TIMDIS5                         TIMEN5  /* Disable Timer 5                                                              */
1171
#define TIMDIS6                         TIMEN6  /* Disable Timer 6                                                              */
1172
#define TIMDIS7                         TIMEN7  /* Disable Timer 7                                                              */
1173
 
1174
/* TIMER_STATUS Masks*/
1175
#define TIMIL0                          0x00000001      /* Timer 0 Interrupt                                                            */
1176
#define TIMIL1                          0x00000002      /* Timer 1 Interrupt                                                            */
1177
#define TIMIL2                          0x00000004      /* Timer 2 Interrupt                                                            */
1178
#define TIMIL3                          0x00000008      /* Timer 3 Interrupt                                                            */
1179
#define TOVF_ERR0                               0x00000010      /* Timer 0 Counter Overflow                                                     */
1180
#define TOVF_ERR1                               0x00000020      /* Timer 1 Counter Overflow                                                     */
1181
#define TOVF_ERR2                               0x00000040      /* Timer 2 Counter Overflow                                                     */
1182
#define TOVF_ERR3                               0x00000080      /* Timer 3 Counter Overflow                                                     */
1183
#define TRUN0                           0x00001000      /* Timer 0 Slave Enable Status                                          */
1184
#define TRUN1                           0x00002000      /* Timer 1 Slave Enable Status                                          */
1185
#define TRUN2                           0x00004000      /* Timer 2 Slave Enable Status                                          */
1186
#define TRUN3                           0x00008000      /* Timer 3 Slave Enable Status                                          */
1187
#define TIMIL4                          0x00010000      /* Timer 4 Interrupt                                                            */
1188
#define TIMIL5                          0x00020000      /* Timer 5 Interrupt                                                            */
1189
#define TIMIL6                          0x00040000      /* Timer 6 Interrupt                                                            */
1190
#define TIMIL7                          0x00080000      /* Timer 7 Interrupt                                                            */
1191
#define TOVF_ERR4                               0x00100000      /* Timer 4 Counter Overflow                                                     */
1192
#define TOVF_ERR5                               0x00200000      /* Timer 5 Counter Overflow                                                     */
1193
#define TOVF_ERR6                               0x00400000      /* Timer 6 Counter Overflow                                                     */
1194
#define TOVF_ERR7                               0x00800000      /* Timer 7 Counter Overflow                                                     */
1195
#define TRUN4                           0x10000000      /* Timer 4 Slave Enable Status                                          */
1196
#define TRUN5                           0x20000000      /* Timer 5 Slave Enable Status                                          */
1197
#define TRUN6                           0x40000000      /* Timer 6 Slave Enable Status                                          */
1198
#define TRUN7                           0x80000000      /* Timer 7 Slave Enable Status                                          */
1199
 
1200
/* Alternate Deprecated Macros Provided For Backwards Code Compatibility */
1201
#define TOVL_ERR0                       TOVF_ERR0
1202
#define TOVL_ERR1                               TOVF_ERR1
1203
#define TOVL_ERR2                       TOVF_ERR2
1204
#define TOVL_ERR3                       TOVF_ERR3
1205
#define TOVL_ERR4                       TOVF_ERR4
1206
#define TOVL_ERR5                       TOVF_ERR5
1207
#define TOVL_ERR6                       TOVF_ERR6
1208
#define TOVL_ERR7                       TOVF_ERR7
1209
 
1210
/* TIMERx_CONFIG Masks */
1211
#define PWM_OUT                         0x0001  /* Pulse-Width Modulation Output Mode                                   */
1212
#define WDTH_CAP                                0x0002  /* Width Capture Input Mode                                                     */
1213
#define EXT_CLK                         0x0003  /* External Clock Mode                                                          */
1214
#define PULSE_HI                                0x0004  /* Action Pulse (Positive/Negative*)                                    */
1215
#define PERIOD_CNT                      0x0008  /* Period Count                                                                 */
1216
#define IRQ_ENA                         0x0010  /* Interrupt Request Enable                                                     */
1217
#define TIN_SEL                         0x0020  /* Timer Input Select                                                           */
1218
#define OUT_DIS                         0x0040  /* Output Pad Disable                                                           */
1219
#define CLK_SEL                         0x0080  /* Timer Clock Select                                                           */
1220
#define TOGGLE_HI                               0x0100  /* PWM_OUT PULSE_HI Toggle Mode                                         */
1221
#define EMU_RUN                         0x0200  /* Emulation Behavior Select                                                    */
1222
#define ERR_TYP                         0xC000  /* Error Type                                                                   */
1223
 
1224
 
1225
/* *************************************   GPIO PORTS F, G, H MASKS  **********************************************/
1226
 
1227
/*  General Purpose IO (0xFFC00700 - 0xFFC007FF)  Masks */
1228
/* Port F Masks */
1229
#define PF0                                     0x0001
1230
#define PF1                                     0x0002
1231
#define PF2                                     0x0004
1232
#define PF3                                     0x0008
1233
#define PF4                                     0x0010
1234
#define PF5                                     0x0020
1235
#define PF6                                     0x0040
1236
#define PF7                                     0x0080
1237
#define PF8                                     0x0100
1238
#define PF9                                     0x0200
1239
#define PF10                            0x0400
1240
#define PF11                            0x0800
1241
#define PF12                            0x1000
1242
#define PF13                            0x2000
1243
#define PF14                            0x4000
1244
#define PF15                            0x8000
1245
 
1246
/* Port G Masks */
1247
#define PG0                                     0x0001
1248
#define PG1                                     0x0002
1249
#define PG2                                     0x0004
1250
#define PG3                                     0x0008
1251
#define PG4                                     0x0010
1252
#define PG5                                     0x0020
1253
#define PG6                                     0x0040
1254
#define PG7                                     0x0080
1255
#define PG8                                     0x0100
1256
#define PG9                                     0x0200
1257
#define PG10                            0x0400
1258
#define PG11                            0x0800
1259
#define PG12                            0x1000
1260
#define PG13                            0x2000
1261
#define PG14                            0x4000
1262
#define PG15                            0x8000
1263
 
1264
/* Port H Masks */
1265
#define PH0                                     0x0001
1266
#define PH1                                     0x0002
1267
#define PH2                                     0x0004
1268
#define PH3                                     0x0008
1269
#define PH4                                     0x0010
1270
#define PH5                                     0x0020
1271
#define PH6                                     0x0040
1272
#define PH7                                     0x0080
1273
#define PH8                                     0x0100
1274
 
1275
/* **************************************  SERIAL PORT MASKS  *****************************************************/
1276
/* SPORTx_TCR1 Masks */
1277
#define TSPEN                           0x0001  /* Transmit Enable                                                              */
1278
#define ITCLK                           0x0002  /* Internal Transmit Clock Select                                               */
1279
#define DTYPE_NORM                      0x0004  /* Data Format Normal                                                           */
1280
#define DTYPE_ULAW                      0x0008  /* Compand Using u-Law                                                          */
1281
#define DTYPE_ALAW                      0x000C  /* Compand Using A-Law                                                          */
1282
#define TLSBIT                          0x0010  /* Transmit Bit Order                                                           */
1283
#define ITFS                            0x0200  /* Internal Transmit Frame Sync Select                                  */
1284
#define TFSR                            0x0400  /* Transmit Frame Sync Required Select                                  */
1285
#define DITFS                           0x0800  /* Data-Independent Transmit Frame Sync Select                          */
1286
#define LTFS                            0x1000  /* Low Transmit Frame Sync Select                                               */
1287
#define LATFS                           0x2000  /* Late Transmit Frame Sync Select                                              */
1288
#define TCKFE                           0x4000  /* Clock Falling Edge Select                                                    */
1289
 
1290
/* SPORTx_TCR2 Masks and Macro */
1291
#ifdef _MISRA_RULES
1292
#define SLEN(x)                         ((x)&0x1Fu)     /* SPORT TX Word Length (2 - 31)                                                */
1293
#else
1294
#define SLEN(x)                         ((x)&0x1F)      /* SPORT TX Word Length (2 - 31)                                                */
1295
#endif /* _MISRA_RULES */
1296
 
1297
#define TXSE                            0x0100  /* TX Secondary Enable                                                          */
1298
#define TSFSE                           0x0200  /* Transmit Stereo Frame Sync Enable                                    */
1299
#define TRFST                           0x0400  /* Left/Right Order (1 = Right Channel 1st)                             */
1300
 
1301
/* SPORTx_RCR1 Masks */
1302
#define RSPEN                           0x0001  /* Receive Enable                                                               */
1303
#define IRCLK                           0x0002  /* Internal Receive Clock Select                                                */
1304
#define DTYPE_NORM                      0x0004  /* Data Format Normal                                                           */
1305
#define DTYPE_ULAW                      0x0008  /* Compand Using u-Law                                                          */
1306
#define DTYPE_ALAW                      0x000C  /* Compand Using A-Law                                                          */
1307
#define RLSBIT                          0x0010  /* Receive Bit Order                                                            */
1308
#define IRFS                            0x0200  /* Internal Receive Frame Sync Select                                   */
1309
#define RFSR                            0x0400  /* Receive Frame Sync Required Select                                   */
1310
#define LRFS                            0x1000  /* Low Receive Frame Sync Select                                                */
1311
#define LARFS                           0x2000  /* Late Receive Frame Sync Select                                               */
1312
#define RCKFE                           0x4000  /* Clock Falling Edge Select                                                    */
1313
 
1314
/* SPORTx_RCR2 Masks */
1315
#ifdef _MISRA_RULES
1316
#define SLEN(x)                         ((x)&0x1Fu)     /* SPORT RX Word Length (2 - 31)                                                */
1317
#else
1318
#define SLEN(x)                         ((x)&0x1F)      /* SPORT RX Word Length (2 - 31)                                                */
1319
#endif /* _MISRA_RULES */
1320
 
1321
#define RXSE                            0x0100  /* RX Secondary Enable                                                          */
1322
#define RSFSE                           0x0200  /* RX Stereo Frame Sync Enable                                          */
1323
#define RRFST                           0x0400  /* Right-First Data Order                                                       */
1324
 
1325
/* SPORTx_STAT Masks */
1326
#define RXNE                            0x0001  /* Receive FIFO Not Empty Status                                                */
1327
#define RUVF                            0x0002  /* Sticky Receive Underflow Status                                              */
1328
#define ROVF                            0x0004  /* Sticky Receive Overflow Status                                               */
1329
#define TXF                                     0x0008  /* Transmit FIFO Full Status                                                    */
1330
#define TUVF                            0x0010  /* Sticky Transmit Underflow Status                                             */
1331
#define TOVF                            0x0020  /* Sticky Transmit Overflow Status                                              */
1332
#define TXHRE                           0x0040  /* Transmit Hold Register Empty                                         */
1333
 
1334
/* SPORTx_MCMC1 Macros */
1335
#ifdef _MISRA_RULES
1336
#define WOFF(x)         ((x) & 0x3FFu)          /* Multichannel Window Offset Field                                             */
1337
/* Only use WSIZE Macro With Logic OR While Setting Lower Order Bits*/
1338
#define WSIZE(x)                (((((x)>>0x3)-1u)&0xFu) << 0xC) /* Multichannel Window Size = (x/8)-1                           */
1339
#else
1340
#define WOFF(x)         ((x) & 0x3FF)           /* Multichannel Window Offset Field                                             */
1341
/* Only use WSIZE Macro With Logic OR While Setting Lower Order Bits                                                            */
1342
#define WSIZE(x)        (((((x)>>0x3)-1)&0xF) << 0xC)   /* Multichannel Window Size = (x/8)-1                                   */
1343
#endif /* _MISRA_RULES */
1344
 
1345
/* SPORTx_MCMC2 Masks */
1346
#define REC_BYPASS                      0x0000  /* Bypass Mode (No Clock Recovery)                                              */
1347
#define REC_2FROM4                      0x0002  /* Recover 2 MHz Clock from 4 MHz Clock                                 */
1348
#define REC_8FROM16                     0x0003  /* Recover 8 MHz Clock from 16 MHz Clock                                        */
1349
#define MCDTXPE                         0x0004  /* Multichannel DMA Transmit Packing                                    */
1350
#define MCDRXPE                         0x0008  /* Multichannel DMA Receive Packing                                             */
1351
#define MCMEN                           0x0010  /* Multichannel Frame Mode Enable                                               */
1352
#define FSDR                            0x0080  /* Multichannel Frame Sync to Data Relationship                         */
1353
#define MFD_0                           0x0000  /* Multichannel Frame Delay = 0                                         */
1354
#define MFD_1                           0x1000  /* Multichannel Frame Delay = 1                                         */
1355
#define MFD_2                           0x2000  /* Multichannel Frame Delay = 2                                         */
1356
#define MFD_3                           0x3000  /* Multichannel Frame Delay = 3                                         */
1357
#define MFD_4                           0x4000  /* Multichannel Frame Delay = 4                                         */
1358
#define MFD_5                           0x5000  /* Multichannel Frame Delay = 5                                         */
1359
#define MFD_6                           0x6000  /* Multichannel Frame Delay = 6                                         */
1360
#define MFD_7                           0x7000  /* Multichannel Frame Delay = 7                                         */
1361
#define MFD_8                           0x8000  /* Multichannel Frame Delay = 8                                         */
1362
#define MFD_9                           0x9000  /* Multichannel Frame Delay = 9                                         */
1363
#define MFD_10                          0xA000  /* Multichannel Frame Delay = 10                                                */
1364
#define MFD_11                          0xB000  /* Multichannel Frame Delay = 11                                                */
1365
#define MFD_12                          0xC000  /* Multichannel Frame Delay = 12                                                */
1366
#define MFD_13                          0xD000  /* Multichannel Frame Delay = 13                                                */
1367
#define MFD_14                          0xE000  /* Multichannel Frame Delay = 14                                                */
1368
#define MFD_15                          0xF000  /* Multichannel Frame Delay = 15                                                */
1369
 
1370
 
1371
/***********************************  ASYNCHRONOUS MEMORY CONTROLLER MASKS  ***************************************/
1372
 
1373
/* EBIU_AMGCTL Masks */
1374
#define AMCKEN                          0x0001  /* Enable CLKOUT                                                                        */
1375
#define AMBEN                           0x000e      /* Async bank enable                                                */
1376
#define AMBEN_NONE                      0x0000  /* All Banks Disabled                                                           */
1377
#define AMBEN_B0                                0x0002  /* Enable Async Memory Bank 0 only                                              */
1378
#define AMBEN_B0_B1                     0x0004  /* Enable Async Memory Banks 0 & 1 only                                 */
1379
#define AMBEN_B0_B1_B2                  0x0006  /* Enable Async Memory Banks 0, 1, and 2                                        */
1380
#define AMBEN_ALL                               0x0008  /* Enable Async Memory Banks (all) 0, 1, 2, and 3                       */
1381
#define CDPRIO                          0x0100  /* DMA has priority over core for for external accesses                 */
1382
 
1383
/* EBIU_AMBCTL0 Masks */
1384
#define B0RDYEN                         0x00000001  /* Bank 0 (B0) RDY Enable                                                   */
1385
#define B0RDYPOL                                0x00000002  /* B0 RDY Active High                                                               */
1386
#define B0TT_1                          0x00000004  /* B0 Transition Time (Read to Write) = 1 cycle                             */
1387
#define B0TT_2                          0x00000008  /* B0 Transition Time (Read to Write) = 2 cycles                    */
1388
#define B0TT_3                          0x0000000C  /* B0 Transition Time (Read to Write) = 3 cycles                    */
1389
#define B0TT_4                          0x00000000  /* B0 Transition Time (Read to Write) = 4 cycles                    */
1390
#define B0ST_1                          0x00000010  /* B0 Setup Time (AOE to Read/Write) = 1 cycle                              */
1391
#define B0ST_2                          0x00000020  /* B0 Setup Time (AOE to Read/Write) = 2 cycles                             */
1392
#define B0ST_3                          0x00000030  /* B0 Setup Time (AOE to Read/Write) = 3 cycles                             */
1393
#define B0ST_4                          0x00000000  /* B0 Setup Time (AOE to Read/Write) = 4 cycles                             */
1394
#define B0HT_1                          0x00000040  /* B0 Hold Time (~Read/Write to ~AOE) = 1 cycle                             */
1395
#define B0HT_2                          0x00000080  /* B0 Hold Time (~Read/Write to ~AOE) = 2 cycles                    */
1396
#define B0HT_3                          0x000000C0  /* B0 Hold Time (~Read/Write to ~AOE) = 3 cycles                    */
1397
#define B0HT_0                          0x00000000  /* B0 Hold Time (~Read/Write to ~AOE) = 0 cycles                    */
1398
#define B0RAT_1                         0x00000100  /* B0 Read Access Time = 1 cycle                                            */
1399
#define B0RAT_2                         0x00000200  /* B0 Read Access Time = 2 cycles                                           */
1400
#define B0RAT_3                         0x00000300  /* B0 Read Access Time = 3 cycles                                           */
1401
#define B0RAT_4                         0x00000400  /* B0 Read Access Time = 4 cycles                                           */
1402
#define B0RAT_5                         0x00000500  /* B0 Read Access Time = 5 cycles                                           */
1403
#define B0RAT_6                         0x00000600  /* B0 Read Access Time = 6 cycles                                           */
1404
#define B0RAT_7                         0x00000700  /* B0 Read Access Time = 7 cycles                                           */
1405
#define B0RAT_8                         0x00000800  /* B0 Read Access Time = 8 cycles                                           */
1406
#define B0RAT_9                         0x00000900  /* B0 Read Access Time = 9 cycles                                           */
1407
#define B0RAT_10                                0x00000A00  /* B0 Read Access Time = 10 cycles                                          */
1408
#define B0RAT_11                                0x00000B00  /* B0 Read Access Time = 11 cycles                                          */
1409
#define B0RAT_12                                0x00000C00  /* B0 Read Access Time = 12 cycles                                          */
1410
#define B0RAT_13                                0x00000D00  /* B0 Read Access Time = 13 cycles                                          */
1411
#define B0RAT_14                                0x00000E00  /* B0 Read Access Time = 14 cycles                                          */
1412
#define B0RAT_15                                0x00000F00  /* B0 Read Access Time = 15 cycles                                          */
1413
#define B0WAT_1                         0x00001000  /* B0 Write Access Time = 1 cycle                                           */
1414
#define B0WAT_2                         0x00002000  /* B0 Write Access Time = 2 cycles                                          */
1415
#define B0WAT_3                         0x00003000  /* B0 Write Access Time = 3 cycles                                          */
1416
#define B0WAT_4                         0x00004000  /* B0 Write Access Time = 4 cycles                                          */
1417
#define B0WAT_5                         0x00005000  /* B0 Write Access Time = 5 cycles                                          */
1418
#define B0WAT_6                         0x00006000  /* B0 Write Access Time = 6 cycles                                          */
1419
#define B0WAT_7                         0x00007000  /* B0 Write Access Time = 7 cycles                                          */
1420
#define B0WAT_8                         0x00008000  /* B0 Write Access Time = 8 cycles                                          */
1421
#define B0WAT_9                         0x00009000  /* B0 Write Access Time = 9 cycles                                          */
1422
#define B0WAT_10                                0x0000A000  /* B0 Write Access Time = 10 cycles                                         */
1423
#define B0WAT_11                                0x0000B000  /* B0 Write Access Time = 11 cycles                                         */
1424
#define B0WAT_12                                0x0000C000  /* B0 Write Access Time = 12 cycles                                         */
1425
#define B0WAT_13                                0x0000D000  /* B0 Write Access Time = 13 cycles                                         */
1426
#define B0WAT_14                                0x0000E000  /* B0 Write Access Time = 14 cycles                                         */
1427
#define B0WAT_15                                0x0000F000  /* B0 Write Access Time = 15 cycles                                         */
1428
 
1429
#define B1RDYEN                         0x00010000  /* Bank 1 (B1) RDY Enable                                           */
1430
#define B1RDYPOL                                0x00020000  /* B1 RDY Active High                                               */
1431
#define B1TT_1                          0x00040000  /* B1 Transition Time (Read to Write) = 1 cycle                     */
1432
#define B1TT_2                          0x00080000  /* B1 Transition Time (Read to Write) = 2 cycles                    */
1433
#define B1TT_3                          0x000C0000  /* B1 Transition Time (Read to Write) = 3 cycles                    */
1434
#define B1TT_4                          0x00000000  /* B1 Transition Time (Read to Write) = 4 cycles                    */
1435
#define B1ST_1                          0x00100000  /* B1 Setup Time (AOE to Read/Write) = 1 cycle                      */
1436
#define B1ST_2                          0x00200000  /* B1 Setup Time (AOE to Read/Write) = 2 cycles                     */
1437
#define B1ST_3                          0x00300000  /* B1 Setup Time (AOE to Read/Write) = 3 cycles                     */
1438
#define B1ST_4                          0x00000000  /* B1 Setup Time (AOE to Read/Write) = 4 cycles                     */
1439
#define B1HT_1                          0x00400000  /* B1 Hold Time (~Read/Write to ~AOE) = 1 cycle                     */
1440
#define B1HT_2                          0x00800000  /* B1 Hold Time (~Read/Write to ~AOE) = 2 cycles                    */
1441
#define B1HT_3                          0x00C00000  /* B1 Hold Time (~Read/Write to ~AOE) = 3 cycles                    */
1442
#define B1HT_0                          0x00000000  /* B1 Hold Time (~Read/Write to ~AOE) = 0 cycles                    */
1443
#define B1RAT_1                         0x01000000  /* B1 Read Access Time = 1 cycle                                            */
1444
#define B1RAT_2                         0x02000000  /* B1 Read Access Time = 2 cycles                                           */
1445
#define B1RAT_3                         0x03000000  /* B1 Read Access Time = 3 cycles                                           */
1446
#define B1RAT_4                         0x04000000  /* B1 Read Access Time = 4 cycles                                           */
1447
#define B1RAT_5                         0x05000000  /* B1 Read Access Time = 5 cycles                                           */
1448
#define B1RAT_6                         0x06000000  /* B1 Read Access Time = 6 cycles                                           */
1449
#define B1RAT_7                         0x07000000  /* B1 Read Access Time = 7 cycles                                           */
1450
#define B1RAT_8                         0x08000000  /* B1 Read Access Time = 8 cycles                                           */
1451
#define B1RAT_9                         0x09000000  /* B1 Read Access Time = 9 cycles                                           */
1452
#define B1RAT_10                                0x0A000000  /* B1 Read Access Time = 10 cycles                                          */
1453
#define B1RAT_11                                0x0B000000  /* B1 Read Access Time = 11 cycles                                          */
1454
#define B1RAT_12                                0x0C000000  /* B1 Read Access Time = 12 cycles                                          */
1455
#define B1RAT_13                                0x0D000000  /* B1 Read Access Time = 13 cycles                                          */
1456
#define B1RAT_14                                0x0E000000  /* B1 Read Access Time = 14 cycles                                          */
1457
#define B1RAT_15                                0x0F000000  /* B1 Read Access Time = 15 cycles                                          */
1458
#define B1WAT_1                         0x10000000  /* B1 Write Access Time = 1 cycle                                           */
1459
#define B1WAT_2                         0x20000000  /* B1 Write Access Time = 2 cycles                                          */
1460
#define B1WAT_3                         0x30000000  /* B1 Write Access Time = 3 cycles                                          */
1461
#define B1WAT_4                         0x40000000  /* B1 Write Access Time = 4 cycles                                          */
1462
#define B1WAT_5                         0x50000000  /* B1 Write Access Time = 5 cycles                                          */
1463
#define B1WAT_6                         0x60000000  /* B1 Write Access Time = 6 cycles                                          */
1464
#define B1WAT_7                         0x70000000  /* B1 Write Access Time = 7 cycles                                          */
1465
#define B1WAT_8                         0x80000000  /* B1 Write Access Time = 8 cycles                                          */
1466
#define B1WAT_9                         0x90000000  /* B1 Write Access Time = 9 cycles                                          */
1467
#define B1WAT_10                                0xA0000000  /* B1 Write Access Time = 10 cycles                                         */
1468
#define B1WAT_11                                0xB0000000  /* B1 Write Access Time = 11 cycles                                         */
1469
#define B1WAT_12                                0xC0000000  /* B1 Write Access Time = 12 cycles                                         */
1470
#define B1WAT_13                                0xD0000000  /* B1 Write Access Time = 13 cycles                                         */
1471
#define B1WAT_14                                0xE0000000  /* B1 Write Access Time = 14 cycles                                         */
1472
#define B1WAT_15                                0xF0000000  /* B1 Write Access Time = 15 cycles                                         */
1473
 
1474
/* EBIU_AMBCTL1 Masks */
1475
#define B2RDYEN                         0x00000001  /* Bank 2 (B2) RDY Enable                                                   */
1476
#define B2RDYPOL                                0x00000002  /* B2 RDY Active High                                                               */
1477
#define B2TT_1                          0x00000004  /* B2 Transition Time (Read to Write) = 1 cycle                             */
1478
#define B2TT_2                          0x00000008  /* B2 Transition Time (Read to Write) = 2 cycles                    */
1479
#define B2TT_3                          0x0000000C  /* B2 Transition Time (Read to Write) = 3 cycles                    */
1480
#define B2TT_4                          0x00000000  /* B2 Transition Time (Read to Write) = 4 cycles                    */
1481
#define B2ST_1                          0x00000010  /* B2 Setup Time (AOE to Read/Write) = 1 cycle                              */
1482
#define B2ST_2                          0x00000020  /* B2 Setup Time (AOE to Read/Write) = 2 cycles                             */
1483
#define B2ST_3                          0x00000030  /* B2 Setup Time (AOE to Read/Write) = 3 cycles                             */
1484
#define B2ST_4                          0x00000000  /* B2 Setup Time (AOE to Read/Write) = 4 cycles                             */
1485
#define B2HT_1                          0x00000040  /* B2 Hold Time (~Read/Write to ~AOE) = 1 cycle                             */
1486
#define B2HT_2                          0x00000080  /* B2 Hold Time (~Read/Write to ~AOE) = 2 cycles                    */
1487
#define B2HT_3                          0x000000C0  /* B2 Hold Time (~Read/Write to ~AOE) = 3 cycles                    */
1488
#define B2HT_0                          0x00000000  /* B2 Hold Time (~Read/Write to ~AOE) = 0 cycles                    */
1489
#define B2RAT_1                         0x00000100  /* B2 Read Access Time = 1 cycle                                            */
1490
#define B2RAT_2                         0x00000200  /* B2 Read Access Time = 2 cycles                                           */
1491
#define B2RAT_3                         0x00000300  /* B2 Read Access Time = 3 cycles                                           */
1492
#define B2RAT_4                         0x00000400  /* B2 Read Access Time = 4 cycles                                           */
1493
#define B2RAT_5                         0x00000500  /* B2 Read Access Time = 5 cycles                                           */
1494
#define B2RAT_6                         0x00000600  /* B2 Read Access Time = 6 cycles                                           */
1495
#define B2RAT_7                         0x00000700  /* B2 Read Access Time = 7 cycles                                           */
1496
#define B2RAT_8                         0x00000800  /* B2 Read Access Time = 8 cycles                                           */
1497
#define B2RAT_9                         0x00000900  /* B2 Read Access Time = 9 cycles                                           */
1498
#define B2RAT_10                                0x00000A00  /* B2 Read Access Time = 10 cycles                                          */
1499
#define B2RAT_11                                0x00000B00  /* B2 Read Access Time = 11 cycles                                          */
1500
#define B2RAT_12                                0x00000C00  /* B2 Read Access Time = 12 cycles                                          */
1501
#define B2RAT_13                                0x00000D00  /* B2 Read Access Time = 13 cycles                                          */
1502
#define B2RAT_14                                0x00000E00  /* B2 Read Access Time = 14 cycles                                          */
1503
#define B2RAT_15                                0x00000F00  /* B2 Read Access Time = 15 cycles                                          */
1504
#define B2WAT_1                         0x00001000  /* B2 Write Access Time = 1 cycle                                           */
1505
#define B2WAT_2                         0x00002000  /* B2 Write Access Time = 2 cycles                                          */
1506
#define B2WAT_3                         0x00003000  /* B2 Write Access Time = 3 cycles                                          */
1507
#define B2WAT_4                         0x00004000  /* B2 Write Access Time = 4 cycles                                          */
1508
#define B2WAT_5                         0x00005000  /* B2 Write Access Time = 5 cycles                                          */
1509
#define B2WAT_6                         0x00006000  /* B2 Write Access Time = 6 cycles                                          */
1510
#define B2WAT_7                         0x00007000  /* B2 Write Access Time = 7 cycles                                          */
1511
#define B2WAT_8                         0x00008000  /* B2 Write Access Time = 8 cycles                                          */
1512
#define B2WAT_9                         0x00009000  /* B2 Write Access Time = 9 cycles                                          */
1513
#define B2WAT_10                                0x0000A000  /* B2 Write Access Time = 10 cycles                                         */
1514
#define B2WAT_11                                0x0000B000  /* B2 Write Access Time = 11 cycles                                         */
1515
#define B2WAT_12                                0x0000C000  /* B2 Write Access Time = 12 cycles                                         */
1516
#define B2WAT_13                                0x0000D000  /* B2 Write Access Time = 13 cycles                                         */
1517
#define B2WAT_14                                0x0000E000  /* B2 Write Access Time = 14 cycles                                         */
1518
#define B2WAT_15                                0x0000F000  /* B2 Write Access Time = 15 cycles                                         */
1519
 
1520
#define B3RDYEN                         0x00010000  /* Bank 3 (B3) RDY Enable                                                   */
1521
#define B3RDYPOL                                0x00020000  /* B3 RDY Active High                                                               */
1522
#define B3TT_1                          0x00040000  /* B3 Transition Time (Read to Write) = 1 cycle                             */
1523
#define B3TT_2                          0x00080000  /* B3 Transition Time (Read to Write) = 2 cycles                    */
1524
#define B3TT_3                          0x000C0000  /* B3 Transition Time (Read to Write) = 3 cycles                    */
1525
#define B3TT_4                          0x00000000  /* B3 Transition Time (Read to Write) = 4 cycles                    */
1526
#define B3ST_1                          0x00100000  /* B3 Setup Time (AOE to Read/Write) = 1 cycle                              */
1527
#define B3ST_2                          0x00200000  /* B3 Setup Time (AOE to Read/Write) = 2 cycles                             */
1528
#define B3ST_3                          0x00300000  /* B3 Setup Time (AOE to Read/Write) = 3 cycles                             */
1529
#define B3ST_4                          0x00000000  /* B3 Setup Time (AOE to Read/Write) = 4 cycles                             */
1530
#define B3HT_1                          0x00400000  /* B3 Hold Time (~Read/Write to ~AOE) = 1 cycle                             */
1531
#define B3HT_2                          0x00800000  /* B3 Hold Time (~Read/Write to ~AOE) = 2 cycles                    */
1532
#define B3HT_3                          0x00C00000  /* B3 Hold Time (~Read/Write to ~AOE) = 3 cycles                    */
1533
#define B3HT_0                          0x00000000  /* B3 Hold Time (~Read/Write to ~AOE) = 0 cycles                    */
1534
#define B3RAT_1                         0x01000000  /* B3 Read Access Time = 1 cycle                                            */
1535
#define B3RAT_2                         0x02000000  /* B3 Read Access Time = 2 cycles                                           */
1536
#define B3RAT_3                         0x03000000  /* B3 Read Access Time = 3 cycles                                           */
1537
#define B3RAT_4                         0x04000000  /* B3 Read Access Time = 4 cycles                                           */
1538
#define B3RAT_5                         0x05000000  /* B3 Read Access Time = 5 cycles                                           */
1539
#define B3RAT_6                         0x06000000  /* B3 Read Access Time = 6 cycles                                           */
1540
#define B3RAT_7                         0x07000000  /* B3 Read Access Time = 7 cycles                                           */
1541
#define B3RAT_8                         0x08000000  /* B3 Read Access Time = 8 cycles                                           */
1542
#define B3RAT_9                         0x09000000  /* B3 Read Access Time = 9 cycles                                           */
1543
#define B3RAT_10                                0x0A000000  /* B3 Read Access Time = 10 cycles                                          */
1544
#define B3RAT_11                                0x0B000000  /* B3 Read Access Time = 11 cycles                                          */
1545
#define B3RAT_12                                0x0C000000  /* B3 Read Access Time = 12 cycles                                          */
1546
#define B3RAT_13                                0x0D000000  /* B3 Read Access Time = 13 cycles                                          */
1547
#define B3RAT_14                                0x0E000000  /* B3 Read Access Time = 14 cycles                                          */
1548
#define B3RAT_15                                0x0F000000  /* B3 Read Access Time = 15 cycles                                          */
1549
#define B3WAT_1                         0x10000000  /* B3 Write Access Time = 1 cycle                                           */
1550
#define B3WAT_2                         0x20000000  /* B3 Write Access Time = 2 cycles                                          */
1551
#define B3WAT_3                         0x30000000  /* B3 Write Access Time = 3 cycles                                          */
1552
#define B3WAT_4                         0x40000000  /* B3 Write Access Time = 4 cycles                                          */
1553
#define B3WAT_5                         0x50000000  /* B3 Write Access Time = 5 cycles                                          */
1554
#define B3WAT_6                         0x60000000  /* B3 Write Access Time = 6 cycles                                          */
1555
#define B3WAT_7                         0x70000000  /* B3 Write Access Time = 7 cycles                                          */
1556
#define B3WAT_8                         0x80000000  /* B3 Write Access Time = 8 cycles                                          */
1557
#define B3WAT_9                         0x90000000  /* B3 Write Access Time = 9 cycles                                          */
1558
#define B3WAT_10                                0xA0000000  /* B3 Write Access Time = 10 cycles                                         */
1559
#define B3WAT_11                                0xB0000000  /* B3 Write Access Time = 11 cycles                                         */
1560
#define B3WAT_12                                0xC0000000  /* B3 Write Access Time = 12 cycles                                         */
1561
#define B3WAT_13                                0xD0000000  /* B3 Write Access Time = 13 cycles                                         */
1562
#define B3WAT_14                                0xE0000000  /* B3 Write Access Time = 14 cycles                                         */
1563
#define B3WAT_15                                0xF0000000  /* B3 Write Access Time = 15 cycles                                         */
1564
 
1565
 
1566
/*****************************************  SDRAM CONTROLLER MASKS  ***********************************************/
1567
 
1568
/* EBIU_SDGCTL Masks */
1569
#define CL                                      0x0000000C      /* SDRAM CAS latency                                                            */
1570
#define PASR                            0x00000030      /* SDRAM partial array self-refresh                                     */
1571
#define TRAS                            0x000003C0      /* SDRAM tRAS in SCLK cycles                                                    */
1572
#define TRP                             0x00003800      /* SDRAM tRP in SCLK cycles                                                     */
1573
#define TRCD                            0x00030000      /* SDRAM tRCD in SCLK cycles                                                    */
1574
#define TWR                             0x00180000      /* SDRAM tWR in SCLK cycles                                                     */
1575
 
1576
#define SCTLE                           0x00000001      /* Enable SDRAM Signals                                                         */
1577
#define CL_2                            0x00000008      /* SDRAM CAS Latency = 2 cycles                                         */
1578
#define CL_3                            0x0000000C      /* SDRAM CAS Latency = 3 cycles                                         */
1579
#define PASR_ALL                                0x00000000      /* All 4 SDRAM Banks Refreshed In Self-Refresh                          */
1580
#define PASR_B0_B1                      0x00000010      /* SDRAM Banks 0 and 1 Are Refreshed In Self-Refresh                    */
1581
#define PASR_B0                         0x00000020      /* Only SDRAM Bank 0 Is Refreshed In Self-Refresh                       */
1582
#define TRAS_1                          0x00000040      /* SDRAM tRAS = 1 cycle                                                         */
1583
#define TRAS_2                          0x00000080      /* SDRAM tRAS = 2 cycles                                                        */
1584
#define TRAS_3                          0x000000C0      /* SDRAM tRAS = 3 cycles                                                        */
1585
#define TRAS_4                          0x00000100      /* SDRAM tRAS = 4 cycles                                                        */
1586
#define TRAS_5                          0x00000140      /* SDRAM tRAS = 5 cycles                                                        */
1587
#define TRAS_6                          0x00000180      /* SDRAM tRAS = 6 cycles                                                        */
1588
#define TRAS_7                          0x000001C0      /* SDRAM tRAS = 7 cycles                                                        */
1589
#define TRAS_8                          0x00000200      /* SDRAM tRAS = 8 cycles                                                        */
1590
#define TRAS_9                          0x00000240      /* SDRAM tRAS = 9 cycles                                                        */
1591
#define TRAS_10                         0x00000280      /* SDRAM tRAS = 10 cycles                                                       */
1592
#define TRAS_11                         0x000002C0      /* SDRAM tRAS = 11 cycles                                                       */
1593
#define TRAS_12                         0x00000300      /* SDRAM tRAS = 12 cycles                                                       */
1594
#define TRAS_13                         0x00000340      /* SDRAM tRAS = 13 cycles                                                       */
1595
#define TRAS_14                         0x00000380      /* SDRAM tRAS = 14 cycles                                                       */
1596
#define TRAS_15                         0x000003C0      /* SDRAM tRAS = 15 cycles                                                       */
1597
#define TRP_1                           0x00000800      /* SDRAM tRP = 1 cycle                                                          */
1598
#define TRP_2                           0x00001000      /* SDRAM tRP = 2 cycles                                                         */
1599
#define TRP_3                           0x00001800      /* SDRAM tRP = 3 cycles                                                         */
1600
#define TRP_4                           0x00002000      /* SDRAM tRP = 4 cycles                                                         */
1601
#define TRP_5                           0x00002800      /* SDRAM tRP = 5 cycles                                                         */
1602
#define TRP_6                           0x00003000      /* SDRAM tRP = 6 cycles                                                         */
1603
#define TRP_7                           0x00003800      /* SDRAM tRP = 7 cycles                                                         */
1604
#define TRCD_1                          0x00008000      /* SDRAM tRCD = 1 cycle                                                         */
1605
#define TRCD_2                          0x00010000      /* SDRAM tRCD = 2 cycles                                                        */
1606
#define TRCD_3                          0x00018000      /* SDRAM tRCD = 3 cycles                                                        */
1607
#define TRCD_4                          0x00020000      /* SDRAM tRCD = 4 cycles                                                        */
1608
#define TRCD_5                          0x00028000      /* SDRAM tRCD = 5 cycles                                                        */
1609
#define TRCD_6                          0x00030000      /* SDRAM tRCD = 6 cycles                                                        */
1610
#define TRCD_7                          0x00038000      /* SDRAM tRCD = 7 cycles                                                        */
1611
#define TWR_1                           0x00080000      /* SDRAM tWR = 1 cycle                                                          */
1612
#define TWR_2                           0x00100000      /* SDRAM tWR = 2 cycles                                                         */
1613
#define TWR_3                           0x00180000      /* SDRAM tWR = 3 cycles                                                         */
1614
#define PUPSD                           0x00200000      /* Power-Up Start Delay (15 SCLK Cycles Delay)                          */
1615
#define PSM                                     0x00400000      /* Power-Up Sequence (Mode Register Before/After* Refresh)              */
1616
#define PSS                                     0x00800000      /* Enable Power-Up Sequence on Next SDRAM Access                        */
1617
#define SRFS                            0x01000000      /* Enable SDRAM Self-Refresh Mode                                               */
1618
#define EBUFE                           0x02000000      /* Enable External Buffering Timing                                             */
1619
#define FBBRW                           0x04000000      /* Enable Fast Back-To-Back Read To Write                                       */
1620
#define EMREN                           0x10000000      /* Extended Mode Register Enable                                                */
1621
#define TCSR                            0x20000000      /* Temp-Compensated Self-Refresh Value (85/45* Deg C)                   */
1622
#define CDDBG                           0x40000000      /* Tristate SDRAM Controls During Bus Grant                             */
1623
 
1624
/* EBIU_SDBCTL Masks */
1625
#define EBE                                     0x0001  /* Enable SDRAM External Bank                                                   */
1626
#define EBSZ_16                         0x0000  /* SDRAM External Bank Size = 16MB                                              */
1627
#define EBSZ_32                         0x0002  /* SDRAM External Bank Size = 32MB                                              */
1628
#define EBSZ_64                         0x0004  /* SDRAM External Bank Size = 64MB                                              */
1629
#define EBSZ_128                                0x0006  /* SDRAM External Bank Size = 128MB                                             */
1630
#define EBCAW_8                         0x0000  /* SDRAM External Bank Column Address Width = 8 Bits                    */
1631
#define EBCAW_9                         0x0010  /* SDRAM External Bank Column Address Width = 9 Bits                    */
1632
#define EBCAW_10                                0x0020  /* SDRAM External Bank Column Address Width = 10 Bits                   */
1633
#define EBCAW_11                                0x0030  /* SDRAM External Bank Column Address Width = 11 Bits                   */
1634
 
1635
#define EBSZ                            0x0006  /* SDRAM external bank size                                                     */
1636
#define EBCAW                           0x0030  /* SDRAM external bank column address width                             */
1637
 
1638
/* EBIU_SDSTAT Masks */
1639
#define SDCI                            0x0001  /* SDRAM Controller Idle                                                        */
1640
#define SDSRA                           0x0002  /* SDRAM Self-Refresh Active                                                    */
1641
#define SDPUA                           0x0004  /* SDRAM Power-Up Active                                                        */
1642
#define SDRS                            0x0008  /* SDRAM Will Power-Up On Next Access                                   */
1643
#define SDEASE                          0x0010  /* SDRAM EAB Sticky Error Status                                                */
1644
#define BGSTAT                          0x0020  /* Bus Grant Status                                                             */
1645
 
1646
 
1647
/****************************************  DMA CONTROLLER MASKS  **************************************************/
1648
 
1649
/* DMAx_CONFIG, MDMA_yy_CONFIG Masks */
1650
#define DMAEN                           0x0001  /* DMA Channel Enable                                                           */
1651
#define WNR                                     0x0002  /* Channel Direction (W/R*)                                                     */
1652
#define WDSIZE_8                                0x0000  /* Transfer Word Size = 8                                                       */
1653
#define WDSIZE_16                               0x0004  /* Transfer Word Size = 16                                                      */
1654
#define WDSIZE_32                               0x0008  /* Transfer Word Size = 32                                                      */
1655
#define DMA2D                           0x0010  /* DMA Mode (2D/1D*)                                                            */
1656
#define SYNC                            0x0020  /* DMA Buffer Clear                                                             */
1657
#define DI_SEL                          0x0040  /* Data Interrupt Timing Select                                         */
1658
#define DI_EN                           0x0080  /* Data Interrupt Enable                                                        */
1659
#define NDSIZE_0                                0x0000  /* Next Descriptor Size = 0 (Stop/Autobuffer)                           */
1660
#define NDSIZE_1                                0x0100  /* Next Descriptor Size = 1                                                     */
1661
#define NDSIZE_2                                0x0200  /* Next Descriptor Size = 2                                                     */
1662
#define NDSIZE_3                                0x0300  /* Next Descriptor Size = 3                                                     */
1663
#define NDSIZE_4                                0x0400  /* Next Descriptor Size = 4                                                     */
1664
#define NDSIZE_5                                0x0500  /* Next Descriptor Size = 5                                                     */
1665
#define NDSIZE_6                                0x0600  /* Next Descriptor Size = 6                                                     */
1666
#define NDSIZE_7                                0x0700  /* Next Descriptor Size = 7                                                     */
1667
#define NDSIZE_8                                0x0800  /* Next Descriptor Size = 8                                                     */
1668
#define NDSIZE_9                                0x0900  /* Next Descriptor Size = 9                                                     */
1669
#define FLOW_STOP                               0x0000  /* Stop Mode                                                                    */
1670
#define FLOW_AUTO                               0x1000  /* Autobuffer Mode                                                              */
1671
#define FLOW_ARRAY                      0x4000  /* Descriptor Array Mode                                                        */
1672
#define FLOW_SMALL                      0x6000  /* Small Model Descriptor List Mode                                             */
1673
#define FLOW_LARGE                      0x7000  /* Large Model Descriptor List Mode                                             */
1674
 
1675
/* DMAx_PERIPHERAL_MAP, MDMA_yy_PERIPHERAL_MAP Masks */
1676
#define CTYPE                           0x0040  /* DMA Channel Type Indicator (Memory/Peripheral*)                      */
1677
#define PMAP                            0xF000  /* Peripheral Mapped To This Channel                                    */
1678
#define PMAP_PPI                                0x0000  /* PPI Port DMA                                                                 */
1679
#define PMAP_EMACRX                     0x1000  /* Ethernet Receive DMA                                                         */
1680
#define PMAP_EMACTX                     0x2000  /* Ethernet Transmit DMA                                                        */
1681
#define PMAP_SPORT0RX                   0x3000  /* SPORT0 Receive DMA                                                           */
1682
#define PMAP_SPORT0TX                   0x4000  /* SPORT0 Transmit DMA                                                          */
1683
#define PMAP_RSI                                0x4000  /* RSI DMA                                                                              */
1684
#define PMAP_SPORT1RX                   0x5000  /* SPORT1 Receive DMA                                                           */
1685
#define PMAP_SPI1                               0x5000  /* SPI1 Transmit/Receive DMA                                                    */
1686
#define PMAP_SPORT1TX                   0x6000  /* SPORT1 Transmit DMA                                                          */
1687
#define PMAP_SPI                                0x7000  /* SPI DMA                                                                              */
1688
#define PMAP_SPI0                               0x7000  /* SPI0 DMA                                                                             */
1689
#define PMAP_UART0RX                    0x8000  /* UART0 Port Receive DMA                                                       */
1690
#define PMAP_UART0TX                    0x9000  /* UART0 Port Transmit DMA                                                      */
1691
#define PMAP_UART1RX                    0xA000  /* UART1 Port Receive DMA                                                       */
1692
#define PMAP_UART1TX                    0xB000  /* UART1 Port Transmit DMA                                                      */
1693
 
1694
/* DMAx_IRQ_STATUS, MDMA_yy_IRQ_STATUS Masks */
1695
#define DMA_DONE                                0x0001  /* DMA Completion Interrupt Status                                              */
1696
#define DMA_ERR                         0x0002  /* DMA Error Interrupt Status                                                   */
1697
#define DFETCH                          0x0004  /* DMA Descriptor Fetch Indicator                                               */
1698
#define DMA_RUN                         0x0008  /* DMA Channel Running Indicator                                                */
1699
 
1700
 
1701
/*********************************  PARALLEL PERIPHERAL INTERFACE (PPI) MASKS *************************************/
1702
 
1703
/*  PPI_CONTROL Masks */
1704
#define PORT_EN                         0x0001  /* PPI Port Enable                                                              */
1705
#define PORT_DIR                                0x0002  /* PPI Port Direction                                                           */
1706
#define XFR_TYPE                                0x000C  /* PPI Transfer Type                                                            */
1707
#define PORT_CFG                                0x0030  /* PPI Port Configuration                                                       */
1708
#define FLD_SEL                         0x0040  /* PPI Active Field Select                                                      */
1709
#define PACK_EN                         0x0080  /* PPI Packing Mode                                                             */ /* previous versions of defBF532.h erroneously included DMA32 (PPI 32-bit DMA Enable) */
1710
#define SKIP_EN                         0x0200  /* PPI Skip Element Enable                                                      */
1711
#define SKIP_EO                         0x0400  /* PPI Skip Even/Odd Elements                                                   */
1712
#define DLEN_8                          0x0000  /* Data Length = 8 Bits                                                         */
1713
#define DLEN_10                         0x0800  /* Data Length = 10 Bits                                                        */
1714
#define DLEN_11                         0x1000  /* Data Length = 11 Bits                                                        */
1715
#define DLEN_12                         0x1800  /* Data Length = 12 Bits                                                        */
1716
#define DLEN_13                         0x2000  /* Data Length = 13 Bits                                                        */
1717
#define DLEN_14                         0x2800  /* Data Length = 14 Bits                                                        */
1718
#define DLEN_15                         0x3000  /* Data Length = 15 Bits                                                        */
1719
#define DLEN_16                         0x3800  /* Data Length = 16 Bits                                                        */
1720
#define POLC                            0x4000  /* PPI Clock Polarity                                                           */
1721
#define POLS                            0x8000  /* PPI Frame Sync Polarity                                                      */
1722
 
1723
/* PPI_STATUS Masks */
1724
#define LT_ERR_OVR                      0x0100  /* Line Track Overflow Error                                                    */
1725
#define LT_ERR_UNDR                     0x0200  /* Line Track Underflow Error                                                   */
1726
#define FLD                                     0x0400  /* Field Indicator                                                              */
1727
#define FT_ERR                          0x0800  /* Frame Track Error                                                            */
1728
#define OVR                                     0x1000  /* FIFO Overflow Error                                                          */
1729
#define UNDR                            0x2000  /* FIFO Underrun Error                                                          */
1730
#define ERR_DET                         0x4000  /* Error Detected Indicator                                                     */
1731
#define ERR_NCOR                                0x8000  /* Error Not Corrected Indicator                                                */
1732
 
1733
 
1734
/***************************************  TWO-WIRE INTERFACE (TWI) MASKS  *****************************************/
1735
 
1736
/* TWI_CLKDIV Macros (Use: *pTWI_CLKDIV = CLKLOW(x)|CLKHI(y);  ) */
1737
#ifdef _MISRA_RULES
1738
#define CLKLOW(x)                               ((x) & 0xFFu)/* Periods Clock Is Held Low                                                       */
1739
#define CLKHI(y)                                (((y)&0xFFu)<<0x8)/* Periods Before New Clock Low                                       */
1740
#else
1741
#define CLKLOW(x)                               ((x) & 0xFF)/* Periods Clock Is Held Low                                                        */
1742
#define CLKHI(y)                                (((y)&0xFF)<<0x8)       /* Periods Before New Clock Low                                 */
1743
#endif /* _MISRA_RULES */
1744
 
1745
/* TWI_PRESCALE Masks */
1746
#define PRESCALE                                0x007F  /* SCLKs Per Internal Time Reference (10MHz)                            */
1747
#define TWI_ENA                         0x0080  /* TWI Enable                                                                   */
1748
#define SCCB                            0x0200  /* SCCB Compatibility Enable                                                    */
1749
 
1750
/* TWI_SLAVE_CTRL Masks */
1751
#define SEN                                     0x0001  /* Slave Enable                                                                 */
1752
#define SADD_LEN                                0x0002  /* Slave Address Length                                                         */
1753
#define STDVAL                          0x0004  /* Slave Transmit Data Valid                                                    */
1754
#define NAK                                     0x0008  /* NAK/ACK* Generated At Conclusion Of Transfer                         */
1755
#define GEN                                     0x0010  /* General Call Adrress Matching Enabled                                        */
1756
 
1757
/* TWI_SLAVE_STAT Masks */
1758
#define SDIR                            0x0001  /* Slave Transfer Direction (Transmit/Receive*)                         */
1759
#define GCALL                           0x0002  /* General Call Indicator                                                       */
1760
 
1761
/* TWI_MASTER_CTRL Masks */
1762
#define MEN                                     0x0001  /* Master Mode Enable                                                           */
1763
#define MADD_LEN                                0x0002  /* Master Address Length                                                        */
1764
#define MDIR                            0x0004  /* Master Transmit Direction (RX/TX*)                                   */
1765
#define FAST                            0x0008  /* Use Fast Mode Timing Specs                                                   */
1766
#define STOP                            0x0010  /* Issue Stop Condition                                                         */
1767
#define RSTART                          0x0020  /* Repeat Start or Stop* At End Of Transfer                             */
1768
#define DCNT                            0x3FC0  /* Data Bytes To Transfer                                                       */
1769
#define SDAOVR                          0x4000  /* Serial Data Override                                                         */
1770
#define SCLOVR                          0x8000  /* Serial Clock Override                                                        */
1771
 
1772
/* TWI_MASTER_STAT Masks */
1773
#define MPROG                           0x0001  /* Master Transfer In Progress                                          */
1774
#define LOSTARB                         0x0002  /* Lost Arbitration Indicator (Xfer Aborted)                            */
1775
#define ANAK                            0x0004  /* Address Not Acknowledged                                                     */
1776
#define DNAK                            0x0008  /* Data Not Acknowledged                                                        */
1777
#define BUFRDERR                                0x0010  /* Buffer Read Error                                                            */
1778
#define BUFWRERR                                0x0020  /* Buffer Write Error                                                           */
1779
#define SDASEN                          0x0040  /* Serial Data Sense                                                            */
1780
#define SCLSEN                          0x0080  /* Serial Clock Sense                                                           */
1781
#define BUSBUSY                         0x0100  /* Bus Busy Indicator                                                           */
1782
 
1783
/* TWI_INT_SRC and TWI_INT_ENABLE Masks */
1784
#define SINIT                           0x0001  /* Slave Transfer Initiated                                                     */
1785
#define SCOMP                           0x0002  /* Slave Transfer Complete                                                      */
1786
#define SERR                            0x0004  /* Slave Transfer Error                                                         */
1787
#define SOVF                            0x0008  /* Slave Overflow                                                                       */
1788
#define MCOMP                           0x0010  /* Master Transfer Complete                                                     */
1789
#define MERR                            0x0020  /* Master Transfer Error                                                        */
1790
#define XMTSERV                         0x0040  /* Transmit FIFO Service                                                        */
1791
#define RCVSERV                         0x0080  /* Receive FIFO Service                                                         */
1792
 
1793
/* TWI_FIFO_CTRL Masks */
1794
#define XMTFLUSH                                0x0001  /* Transmit Buffer Flush                                                        */
1795
#define RCVFLUSH                                0x0002  /* Receive Buffer Flush                                                         */
1796
#define XMTINTLEN                               0x0004  /* Transmit Buffer Interrupt Length                                             */
1797
#define RCVINTLEN                               0x0008  /* Receive Buffer Interrupt Length                                              */
1798
 
1799
/* TWI_FIFO_STAT Masks */
1800
#define XMTSTAT                         0x0003  /* Transmit FIFO Status                                                         */
1801
#define XMT_EMPTY                               0x0000  /* Transmit FIFO Empty                                                          */
1802
#define XMT_HALF                                0x0001  /* Transmit FIFO Has 1 Byte To Write                                    */
1803
#define XMT_FULL                                0x0003  /* Transmit FIFO Full (2 Bytes To Write)                                        */
1804
 
1805
#define RCVSTAT                         0x000C  /* Receive FIFO Status                                                          */
1806
#define RCV_EMPTY                               0x0000  /* Receive FIFO Empty                                                           */
1807
#define RCV_HALF                                0x0004  /* Receive FIFO Has 1 Byte To Read                                              */
1808
#define RCV_FULL                                0x000C  /* Receive FIFO Full (2 Bytes To Read)                                  */
1809
 
1810
 
1811
/*************************************  PIN CONTROL REGISTER MASKS  ***********************************************/
1812
 
1813
/* PORT_MUX deleted in VisualDSP++ 5.0 Update 3 */
1814
 
1815
 
1816
/***********************************  HANDSHAKE DMA (HMDMA) MASKS  ************************************************/
1817
 
1818
/* HMDMAx_CTL Masks */
1819
#define HMDMAEN                         0x0001  /* Enable Handshake DMA 0/1                                                     */
1820
#define REP                                     0x0002  /* HMDMA Request Polarity                                                       */
1821
#define UTE                                     0x0004  /* Urgency Threshold Enable                                                     */
1822
#define OIE                                     0x0010  /* Overflow Interrupt Enable                                                    */
1823
#define BDIE                            0x0020  /* Block Done Interrupt Enable                                          */
1824
#define MBDI                            0x0040  /* Mask Block Done IRQ If Pending ECNT                                  */
1825
#define DRQ                                     0x0300  /* HMDMA Request Type                                                           */
1826
#define DRQ_NONE                                0x0000  /* No Request                                                                   */
1827
#define DRQ_SINGLE                      0x0100  /* Channels Request Single                                                      */
1828
#define DRQ_MULTI                               0x0200  /* Channels Request Multi (Default)                                             */
1829
#define DRQ_URGENT                      0x0300  /* Channels Request Multi Urgent                                                */
1830
#define RBC                                     0x1000  /* Reload BCNT With IBCNT                                                       */
1831
#define PS                                      0x2000  /* HMDMA Pin Status                                                             */
1832
#define OI                                      0x4000  /* Overflow Interrupt Generated                                         */
1833
#define BDI                                     0x8000  /* Block Done Interrupt Generated                                               */
1834
 
1835
/* entry addresses of the user-callable Boot ROM functions */
1836
#define _BOOTROM_RESET                          0xEF000000
1837
#define _BOOTROM_FINAL_INIT                     0xEF000002
1838
#define _BOOTROM_DO_MEMORY_DMA          0xEF000006
1839
#define _BOOTROM_BOOT_DXE_FLASH                 0xEF000008
1840
#define _BOOTROM_BOOT_DXE_SPI           0xEF00000A
1841
#define _BOOTROM_BOOT_DXE_TWI           0xEF00000C
1842
#define _BOOTROM_GET_DXE_ADDRESS_FLASH  0xEF000010
1843
#define _BOOTROM_GET_DXE_ADDRESS_SPI    0xEF000012
1844
#define _BOOTROM_GET_DXE_ADDRESS_TWI    0xEF000014
1845
 
1846
/* Alternate Deprecated Macros Provided For Backwards Code Compatibility */
1847
#define PGDE_UART                               PFDE_UART
1848
#define PGDE_DMA                                PFDE_DMA
1849
#define CKELOW                                  SCKELOW
1850
 
1851
 
1852
/****************************************   COUNTER MASKS    ******************************************************/
1853
 
1854
/* Bit masks for CNT_CONFIG */
1855
#define CNTE                            0x1        /* Counter Enable                                                                    */
1856
#define nCNTE                           0x0
1857
#define DEBE                            0x2        /* Debounce Enable                                                           */
1858
#define nDEBE                           0x0
1859
#define CDGINV                                  0x10       /* CDG Pin Polarity Invert                                                   */
1860
#define nCDGINV                                 0x0
1861
#define CUDINV                                  0x20       /* CUD Pin Polarity Invert                                                   */
1862
#define nCUDINV                                 0x0
1863
#define CZMINV                                  0x40       /* CZM Pin Polarity Invert                                                   */
1864
#define nCZMINV                                 0x0
1865
#define CNTMODE                                 0x700      /* Counter Operating Mode                                                    */
1866
#define ZMZC                            0x800      /* CZM Zeroes Counter Enable                                                         */
1867
#define nZMZC                           0x0
1868
#define BNDMODE                                 0x3000     /* Boundary register Mode                                                    */
1869
#define INPDIS                                  0x8000     /* CUG and CDG Input Disable                                                         */
1870
#define nINPDIS                                 0x0
1871
 
1872
/* Bit masks for CNT_IMASK */
1873
#define ICIE                            0x1        /* Illegal Gray/Binary Code Interrupt Enable                                 */
1874
#define nICIE                           0x0
1875
#define UCIE                            0x2        /* Up count Interrupt Enable                                                         */
1876
#define nUCIE                           0x0
1877
#define DCIE                            0x4        /* Down count Interrupt Enable                                               */
1878
#define nDCIE                           0x0
1879
#define MINCIE                                  0x8        /* Min Count Interrupt Enable                                                        */
1880
#define nMINCIE                                 0x0
1881
#define MAXCIE                                  0x10       /* Max Count Interrupt Enable                                                        */
1882
#define nMAXCIE                                 0x0
1883
#define COV31IE                                 0x20       /* Bit 31 Overflow Interrupt Enable                                          */
1884
#define nCOV31IE                        0x0
1885
#define COV15IE                                 0x40       /* Bit 15 Overflow Interrupt Enable                                          */
1886
#define nCOV15IE                        0x0
1887
#define CZEROIE                                 0x80       /* Count to Zero Interrupt Enable                                            */
1888
#define nCZEROIE                        0x0
1889
#define CZMIE                           0x100      /* CZM Pin Interrupt Enable                                                  */
1890
#define nCZMIE                          0x0
1891
#define CZMEIE                                  0x200      /* CZM Error Interrupt Enable                                                        */
1892
#define nCZMEIE                                 0x0
1893
#define CZMZIE                                  0x400      /* CZM Zeroes Counter Interrupt Enable                                       */
1894
#define nCZMZIE                                 0x0
1895
 
1896
/* Bit masks for CNT_STATUS */
1897
#define ICII                            0x1        /* Illegal Gray/Binary Code Interrupt Identifier                     */
1898
#define nICII                           0x0
1899
#define UCII                            0x2        /* Up count Interrupt Identifier                                             */
1900
#define nUCII                           0x0
1901
#define DCII                            0x4        /* Down count Interrupt Identifier                                           */
1902
#define nDCII                           0x0
1903
#define MINCII                                  0x8        /* Min Count Interrupt Identifier                                            */
1904
#define nMINCII                                 0x0
1905
#define MAXCII                                  0x10       /* Max Count Interrupt Identifier                                            */
1906
#define nMAXCII                                 0x0
1907
#define COV31II                                 0x20       /* Bit 31 Overflow Interrupt Identifier                                      */
1908
#define nCOV31II                        0x0
1909
#define COV15II                                 0x40       /* Bit 15 Overflow Interrupt Identifier                                      */
1910
#define nCOV15II                        0x0
1911
#define CZEROII                                 0x80       /* Count to Zero Interrupt Identifier                                        */
1912
#define nCZEROII                        0x0
1913
#define CZMII                           0x100      /* CZM Pin Interrupt Identifier                                              */
1914
#define nCZMII                                  0x0
1915
#define CZMEII                                  0x200      /* CZM Error Interrupt Identifier                                            */
1916
#define nCZMEII                                 0x0
1917
#define CZMZII                                  0x400      /* CZM Zeroes Counter Interrupt Identifier                           */
1918
#define nCZMZII                                 0x0
1919
 
1920
/* Bit masks for CNT_COMMAND */
1921
#define W1LCNT                                  0xf        /* Load Counter Register                                                     */
1922
#define W1LMIN                                  0xf0       /* Load Min Register                                                                 */
1923
#define W1LMAX                                  0xf00      /* Load Max Register                                                                 */
1924
#define W1ZMONCE                        0x1000     /* Enable CZM Clear Counter Once                                             */
1925
#define nW1ZMONCE                       0x0
1926
 
1927
/* Bit masks for CNT_DEBOUNCE */
1928
#define DPRESCALE                               0xf        /* Load Counter Register                                                     */
1929
 
1930
 
1931
/*************************************  SECURITY REGISTER MASKs  **************************************************/
1932
 
1933
/* Bit masks for SECURE_SYSSWT */
1934
#define EMUDABL                                 0x1        /* Emulation Disable.                                                                */
1935
#define nEMUDABL                        0x0
1936
#define RSTDABL                                 0x2        /* Reset Disable                                                                     */
1937
#define nRSTDABL                        0x0
1938
#define L1IDABL                                 0x1c       /* L1 Instruction Memory Disable.                                            */
1939
#define L1DADABL                        0xe0       /* L1 Data Bank A Memory Disable.                                            */
1940
#define L1DBDABL                        0x700      /* L1 Data Bank B Memory Disable.                                            */
1941
#define DMA0OVR                                 0x800      /* DMA0 Memory Access Override                                               */
1942
#define nDMA0OVR                                0x0
1943
#define DMA1OVR                                 0x1000     /* DMA1 Memory Access Override                                               */
1944
#define nDMA1OVR                        0x0
1945
#define EMUOVR                                  0x4000     /* Emulation Override                                                                */
1946
#define nEMUOVR                                 0x0
1947
#define OTPSEN                                  0x8000     /* OTP Secrets Enable.                                                               */
1948
#define nOTPSEN                                 0x0
1949
 
1950
/* Bit masks for SECURE_CONTROL */
1951
#define SECURE0                                 0x1        /* SECURE 0                                                                          */
1952
#define nSECURE0                        0x0
1953
#define SECURE1                                 0x2        /* SECURE 1                                                                          */
1954
#define nSECURE1                        0x0
1955
#define SECURE2                                 0x4        /* SECURE 2                                                                          */
1956
#define nSECURE2                        0x0
1957
#define SECURE3                                 0x8        /* SECURE 3                                                                          */
1958
#define nSECURE3                        0x0
1959
 
1960
/* Bit masks for SECURE_STATUS */
1961
#define SECMODE                                 0x3        /* Secured Mode Control State                                                        */
1962
#define NMI                             0x4        /* Non Maskable Interrupt                                                    */
1963
#define nNMI                            0x0
1964
#define AFVALID                                 0x8        /* Authentication Firmware Valid                                             */
1965
#define nAFVALID                        0x0
1966
#define AFEXIT                                  0x10       /* Authentication Firmware Exit                                              */
1967
#define nAFEXIT                                 0x0
1968
#define SECSTAT                                 0xe0       /* Secure Status                                                                     */
1969
 
1970
 
1971
/**********************************************  PWM Masks  *******************************************************/
1972
 
1973
/* Bit masks for PWM_CTRL */
1974
#define PWM_EN                          0x1             /* PWM Enable                                                                   */
1975
#define PWM_SYNC_EN                     0X2             /* Enable Sync Enable                                                           */
1976
#define PWM_DBL                                 0x4             /* Double Update Mode                                                           */
1977
#define PWM_EXTSYNC                     0x8             /* External Sync                                                                        */
1978
#define PWM_SYNCSEL                     0x10            /* External Sync Select                                                         */
1979
#define PWM_POLARITY                    0x20            /* PWM Output Polarity                                                          */
1980
#define PWM_SRMODE                      0x40            /* PWM SR MODE                                                                  */
1981
#define PWMTRIPINT_EN                   0x80            /* Trip Interrupt Enable                                                        */
1982
#define PWMSYNCINT_EN                   0x100           /* Sync Interrupt Enable                                                        */
1983
#define PWMTRIP_DSBL                    0x200           /* Trip Input Disable                                                           */
1984
 
1985
/* Bit masks for PWM_STAT */
1986
#define PWM_PHASE                               0x1             /* PWM phase                                                                    */
1987
#define PWM_POL                                 0x2             /* PWM polarity                                                                         */
1988
#define PWM_SR                          0x4             /* PWM SR mode                                                                  */
1989
#define PWM_TRIP                                0x8             /* PWM Trip mode                                                                        */
1990
#define PWM_TRIPINT                     0x100           /* PWM Trip Interrupt                                                           */
1991
#define PWM_SYNCINT                     0x200           /* PWM Sync Interrupt                                                           */
1992
 
1993
/* Bit masks for PWMGATE Register */
1994
 
1995
#define CHOPHI                          0x100           /* Gate Chopping Enable High Side                                               */
1996
#define CHOPLO                          0x200           /* Gate Chopping Enable Low Side                                                */
1997
 
1998
/* Bit masks for PWMSEG Register */
1999
 
2000
#define CH_EN                           0x1             /* CH output Enable                                                             */
2001
#define CL_EN                           0x2             /* CL output Enable                                                             */
2002
#define BH_EN                           0x4             /* BH output Enable                                                             */
2003
#define BL_EN                           0x8             /* BL output Enable                                                             */
2004
#define AH_EN                           0x10            /* AH output Enable                                                             */
2005
#define AL_EN                           0x20            /* AL output Enable                                                             */
2006
#define CHCL_XOVR                       0x40            /* Channel C output Crossover                                           */
2007
#define BHBL_XOVR                       0x80            /* Channel B output Crossover                                           */
2008
#define AHAL_XOVR                       0x100           /* Channel A output Crossover                                           */
2009
 
2010
/* Bit masks for PWMLSI Register */
2011
#define PWM_SR_LSI_A                    0x1             /* PWM SR Low Side Invert Channel A                                     */
2012
#define PWM_SR_LSI_B                    0x2             /* PWM SR Low Side Invert Channel A                                     */
2013
#define PWM_SR_LSI_C                    0x4             /* PWM SR Low Side Invert Channel A                                     */
2014
 
2015
/* Bit masks for PWM_STAT2 Register */
2016
#define PWM_AL                          0x1             /* pwm_al output signal for S/W observation                             */
2017
#define PWM_AH                          0x2             /* pwm_ah output signal for S/W observation                             */
2018
#define PWM_BL                          0x4             /* pwm_bl output signal for S/W observation                             */
2019
#define PWM_BH                          0x8             /* pwm_bh output signal for S/W observation                             */
2020
#define PWM_CL                          0x10            /* pwm_cl output signal for S/W observation                             */
2021
#define PWM_CH                          0x20            /* pwm_ch output signal for S/W observation                             */
2022
 
2023
#ifdef _MISRA_RULES
2024
#pragma diag(pop)
2025
#endif /* _MISRA_RULES */
2026
 
2027
#endif /* _DEF_BF51x_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.