more changes on original files
[linux-2.4.git] / include / asm-arm / arch-at91rm9200 / AT91RM9200.h
1 // ----------------------------------------------------------------------------
2 //          ATMEL Microcontroller Software Support  -  ROUSSET  -
3 // ----------------------------------------------------------------------------
4 //  The software is delivered "AS IS" without warranty or condition of any
5 //  kind, either express, implied or statutory. This includes without
6 //  limitation any warranty or condition with respect to merchantability or
7 //  fitness for any particular purpose, or against the infringements of
8 //  intellectual property rights of others.
9 // ----------------------------------------------------------------------------
10 // File Name           : AT91RM9200.h
11 // Object              : AT91RM9200 definitions
12 // Generated           : AT91 SW Application Group  04/16/2003 (12:30:06)
13 //
14 // ----------------------------------------------------------------------------
15
16 #ifndef AT91RM9200_H
17 #define AT91RM9200_H
18
19 #ifndef __ASSEMBLY__
20
21  /* Hardware register definition */
22 typedef volatile unsigned int AT91_REG;
23
24 #endif  /* __ASSEMBLY__ */
25
26 // *****************************************************************************
27 //               PERIPHERAL ID DEFINITIONS FOR AT91RM9200
28 // *****************************************************************************
29 #define AT91C_ID_FIQ    ( 0) // Advanced Interrupt Controller (FIQ)
30 #define AT91C_ID_SYS    ( 1) // System Peripheral
31 #define AT91C_ID_PIOA   ( 2) // Parallel IO Controller A
32 #define AT91C_ID_PIOB   ( 3) // Parallel IO Controller B
33 #define AT91C_ID_PIOC   ( 4) // Parallel IO Controller C
34 #define AT91C_ID_PIOD   ( 5) // Parallel IO Controller D
35 #define AT91C_ID_US0    ( 6) // USART 0
36 #define AT91C_ID_US1    ( 7) // USART 1
37 #define AT91C_ID_US2    ( 8) // USART 2
38 #define AT91C_ID_US3    ( 9) // USART 3
39 #define AT91C_ID_MCI    (10) // Multimedia Card Interface
40 #define AT91C_ID_UDP    (11) // USB Device Port
41 #define AT91C_ID_TWI    (12) // Two-Wire Interface
42 #define AT91C_ID_SPI    (13) // Serial Peripheral Interface
43 #define AT91C_ID_SSC0   (14) // Serial Synchronous Controller 0
44 #define AT91C_ID_SSC1   (15) // Serial Synchronous Controller 1
45 #define AT91C_ID_SSC2   (16) // Serial Synchronous Controller 2
46 #define AT91C_ID_TC0    (17) // Timer Counter 0
47 #define AT91C_ID_TC1    (18) // Timer Counter 1
48 #define AT91C_ID_TC2    (19) // Timer Counter 2
49 #define AT91C_ID_TC3    (20) // Timer Counter 3
50 #define AT91C_ID_TC4    (21) // Timer Counter 4
51 #define AT91C_ID_TC5    (22) // Timer Counter 5
52 #define AT91C_ID_UHP    (23) // USB Host port
53 #define AT91C_ID_EMAC   (24) // Ethernet MAC
54 #define AT91C_ID_IRQ0   (25) // Advanced Interrupt Controller (IRQ0)
55 #define AT91C_ID_IRQ1   (26) // Advanced Interrupt Controller (IRQ1)
56 #define AT91C_ID_IRQ2   (27) // Advanced Interrupt Controller (IRQ2)
57 #define AT91C_ID_IRQ3   (28) // Advanced Interrupt Controller (IRQ3)
58 #define AT91C_ID_IRQ4   (29) // Advanced Interrupt Controller (IRQ4)
59 #define AT91C_ID_IRQ5   (30) // Advanced Interrupt Controller (IRQ5)
60 #define AT91C_ID_IRQ6   (31) // Advanced Interrupt Controller (IRQ6)
61
62
63 // *****************************************************************************
64 //               BASE ADDRESS DEFINITIONS FOR AT91RM9200
65 // *****************************************************************************
66 #define AT91C_BASE_SYS          (0xFFFFF000) // (SYS) Base Address
67 #define AT91C_BASE_PDC_SPI      (0xFFFE0100) // (PDC_SPI) Base Address
68 #define AT91C_BASE_SPI          (0xFFFE0000) // (SPI) Base Address
69 #define AT91C_BASE_PDC_SSC2     (0xFFFD8100) // (PDC_SSC2) Base Address
70 #define AT91C_BASE_SSC2         (0xFFFD8000) // (SSC2) Base Address
71 #define AT91C_BASE_PDC_SSC1     (0xFFFD4100) // (PDC_SSC1) Base Address
72 #define AT91C_BASE_SSC1         (0xFFFD4000) // (SSC1) Base Address
73 #define AT91C_BASE_PDC_SSC0     (0xFFFD0100) // (PDC_SSC0) Base Address
74 #define AT91C_BASE_SSC0         (0xFFFD0000) // (SSC0) Base Address
75 #define AT91C_BASE_PDC_US3      (0xFFFCC100) // (PDC_US3) Base Address
76 #define AT91C_BASE_US3          (0xFFFCC000) // (US3) Base Address
77 #define AT91C_BASE_PDC_US2      (0xFFFC8100) // (PDC_US2) Base Address
78 #define AT91C_BASE_US2          (0xFFFC8000) // (US2) Base Address
79 #define AT91C_BASE_PDC_US1      (0xFFFC4100) // (PDC_US1) Base Address
80 #define AT91C_BASE_US1          (0xFFFC4000) // (US1) Base Address
81 #define AT91C_BASE_PDC_US0      (0xFFFC0100) // (PDC_US0) Base Address
82 #define AT91C_BASE_US0          (0xFFFC0000) // (US0) Base Address
83 #define AT91C_BASE_EMAC         (0xFFFBC000) // (EMAC) Base Address
84 #define AT91C_BASE_PDC_MCI      (0xFFFB4100) // (PDC_MCI) Base Address
85 #define AT91C_BASE_TWI          (0xFFFB8000) // (TWI) Base Address
86 #define AT91C_BASE_MCI          (0xFFFB4000) // (MCI) Base Address
87 #define AT91C_BASE_UDP          (0xFFFB0000) // (UDP) Base Address
88 #define AT91C_BASE_TC5          (0xFFFA4080) // (TC5) Base Address
89 #define AT91C_BASE_TC4          (0xFFFA4040) // (TC4) Base Address
90 #define AT91C_BASE_TC3          (0xFFFA4000) // (TC3) Base Address
91 #define AT91C_BASE_TCB1         (0xFFFA4000) // (TCB1) Base Address
92 #define AT91C_BASE_TC2          (0xFFFA0080) // (TC2) Base Address
93 #define AT91C_BASE_TC1          (0xFFFA0040) // (TC1) Base Address
94 #define AT91C_BASE_TC0          (0xFFFA0000) // (TC0) Base Address
95 #define AT91C_BASE_TCB0         (0xFFFA0000) // (TCB0) Base Address
96
97
98 // *****************************************************************************
99 //               PIO DEFINITIONS FOR AT91RM9200
100 // *****************************************************************************
101 #define AT91C_PIO_PA0           (1 <<  0)
102 #define AT91C_PA0_MISO          (AT91C_PIO_PA0) //  SPI Master In Slave
103 #define AT91C_PA0_PCK3          (AT91C_PIO_PA0) //  PMC Programmable Clock Output 3
104 #define AT91C_PIO_PA1           (1 <<  1)
105 #define AT91C_PA1_MOSI          (AT91C_PIO_PA1) //  SPI Master Out Slave
106 #define AT91C_PA1_PCK0          (AT91C_PIO_PA1) //  PMC Programmable Clock Output 0
107 #define AT91C_PIO_PA2           (1 <<  2)
108 #define AT91C_PA2_SPCK          (AT91C_PIO_PA2) //  SPI Serial Clock
109 #define AT91C_PA2_IRQ4          (AT91C_PIO_PA2) //  AIC Interrupt Input 4
110 #define AT91C_PIO_PA3           (1 <<  3)
111 #define AT91C_PA3_NPCS0         (AT91C_PIO_PA3) //  SPI Peripheral Chip Select 0
112 #define AT91C_PA3_IRQ5          (AT91C_PIO_PA3) //  AIC Interrupt Input 5
113 #define AT91C_PIO_PA4           (1 <<  4)
114 #define AT91C_PA4_NPCS1         (AT91C_PIO_PA4) //  SPI Peripheral Chip Select 1
115 #define AT91C_PA4_PCK1          (AT91C_PIO_PA4) //  PMC Programmable Clock Output 1
116 #define AT91C_PIO_PA5           (1 <<  5)
117 #define AT91C_PA5_NPCS2         (AT91C_PIO_PA5) //  SPI Peripheral Chip Select 2
118 #define AT91C_PA5_TXD3          (AT91C_PIO_PA5) //  USART 3 Transmit Data
119 #define AT91C_PIO_PA6           (1 <<  6)
120 #define AT91C_PA6_NPCS3         (AT91C_PIO_PA6) //  SPI Peripheral Chip Select 3
121 #define AT91C_PA6_RXD3          (AT91C_PIO_PA6) //  USART 3 Receive Data
122 #define AT91C_PIO_PA7           (1 <<  7)
123 #define AT91C_PA7_ETXCK_EREFCK  (AT91C_PIO_PA7) //  Ethernet MAC Transmit Clock/Reference Clock
124 #define AT91C_PA7_PCK2          (AT91C_PIO_PA7) //  PMC Programmable Clock 2
125 #define AT91C_PIO_PA8           (1 <<  8)
126 #define AT91C_PA8_ETXEN         (AT91C_PIO_PA8) //  Ethernet MAC Transmit Enable
127 #define AT91C_PA8_MCCDB         (AT91C_PIO_PA8) //  Multimedia Card B Command
128 #define AT91C_PIO_PA9           (1 <<  9)
129 #define AT91C_PA9_ETX0          (AT91C_PIO_PA9) //  Ethernet MAC Transmit Data 0
130 #define AT91C_PA9_MCDB0         (AT91C_PIO_PA9) //  Multimedia Card B Data 0
131 #define AT91C_PIO_PA10          (1 << 10)
132 #define AT91C_PA10_ETX1         (AT91C_PIO_PA10) //  Ethernet MAC Transmit Data 1
133 #define AT91C_PA10_MCDB1        (AT91C_PIO_PA10) //  Multimedia Card B Data 1
134 #define AT91C_PIO_PA11          (1 << 11)
135 #define AT91C_PA11_ECRS_ECRSDV  (AT91C_PIO_PA11) //  Ethernet MAC Carrier Sense/Carrier Sense and Data Valid
136 #define AT91C_PA11_MCDB2        (AT91C_PIO_PA11) //  Multimedia Card B Data 2
137 #define AT91C_PIO_PA12          (1 << 12)
138 #define AT91C_PA12_ERX0         (AT91C_PIO_PA12) //  Ethernet MAC Receive Data 0
139 #define AT91C_PA12_MCDB3        (AT91C_PIO_PA12) //  Multimedia Card B Data 3
140 #define AT91C_PIO_PA13          (1 << 13)
141 #define AT91C_PA13_ERX1         (AT91C_PIO_PA13) //  Ethernet MAC Receive Data 1
142 #define AT91C_PA13_TCLK0        (AT91C_PIO_PA13) //  Timer Counter 0 external clock input
143 #define AT91C_PIO_PA14          (1 << 14)
144 #define AT91C_PA14_ERXER        (AT91C_PIO_PA14) //  Ethernet MAC Receive Error
145 #define AT91C_PA14_TCLK1        (AT91C_PIO_PA14) //  Timer Counter 1 external clock input
146 #define AT91C_PIO_PA15          (1 << 15)
147 #define AT91C_PA15_EMDC         (AT91C_PIO_PA15) //  Ethernet MAC Management Data Clock
148 #define AT91C_PA15_TCLK2        (AT91C_PIO_PA15) //  Timer Counter 2 external clock input
149 #define AT91C_PIO_PA16          (1 << 16)
150 #define AT91C_PA16_EMDIO        (AT91C_PIO_PA16) //  Ethernet MAC Management Data Input/Output
151 #define AT91C_PA16_IRQ6         (AT91C_PIO_PA16) //  AIC Interrupt input 6
152 #define AT91C_PIO_PA17          (1 << 17)
153 #define AT91C_PA17_TXD0         (AT91C_PIO_PA17) //  USART 0 Transmit Data
154 #define AT91C_PA17_TIOA0        (AT91C_PIO_PA17) //  Timer Counter 0 Multipurpose Timer I/O Pin A
155 #define AT91C_PIO_PA18          (1 << 18)
156 #define AT91C_PA18_RXD0         (AT91C_PIO_PA18) //  USART 0 Receive Data
157 #define AT91C_PA18_TIOB0        (AT91C_PIO_PA18) //  Timer Counter 0 Multipurpose Timer I/O Pin B
158 #define AT91C_PIO_PA19          (1 << 19)
159 #define AT91C_PA19_SCK0         (AT91C_PIO_PA19) //  USART 0 Serial Clock
160 #define AT91C_PA19_TIOA1        (AT91C_PIO_PA19) //  Timer Counter 1 Multipurpose Timer I/O Pin A
161 #define AT91C_PIO_PA20          (1 << 20)
162 #define AT91C_PA20_CTS0         (AT91C_PIO_PA20) //  USART 0 Clear To Send
163 #define AT91C_PA20_TIOB1        (AT91C_PIO_PA20) //  Timer Counter 1 Multipurpose Timer I/O Pin B
164 #define AT91C_PIO_PA21          (1 << 21)
165 #define AT91C_PA21_RTS0         (AT91C_PIO_PA21) //  USART 0 Ready To Send
166 #define AT91C_PA21_TIOA2        (AT91C_PIO_PA21) //  Timer Counter 2 Multipurpose Timer I/O Pin A
167 #define AT91C_PIO_PA22          (1 << 22)
168 #define AT91C_PA22_RXD2         (AT91C_PIO_PA22) //  USART 2 Receive Data
169 #define AT91C_PA22_TIOB2        (AT91C_PIO_PA22) //  Timer Counter 2 Multipurpose Timer I/O Pin B
170 #define AT91C_PIO_PA23          (1 << 23)
171 #define AT91C_PA23_TXD2         (AT91C_PIO_PA23) //  USART 2 Transmit Data
172 #define AT91C_PA23_IRQ3         (AT91C_PIO_PA23) //  Interrupt input 3
173 #define AT91C_PIO_PA24          (1 << 24)
174 #define AT91C_PA24_SCK2         (AT91C_PIO_PA24) //  USART2 Serial Clock
175 #define AT91C_PA24_PCK1         (AT91C_PIO_PA24) //  PMC Programmable Clock Output 1
176 #define AT91C_PIO_PA25          (1 << 25)
177 #define AT91C_PA25_TWD          (AT91C_PIO_PA25) //  TWI Two-wire Serial Data
178 #define AT91C_PA25_IRQ2         (AT91C_PIO_PA25) //  Interrupt input 2
179 #define AT91C_PIO_PA26          (1 << 26)
180 #define AT91C_PA26_TWCK         (AT91C_PIO_PA26) //  TWI Two-wire Serial Clock
181 #define AT91C_PA26_IRQ1         (AT91C_PIO_PA26) //  Interrupt input 1
182 #define AT91C_PIO_PA27          (1 << 27)
183 #define AT91C_PA27_MCCK         (AT91C_PIO_PA27) //  Multimedia Card Clock
184 #define AT91C_PA27_TCLK3        (AT91C_PIO_PA27) //  Timer Counter 3 External Clock Input
185 #define AT91C_PIO_PA28          (1 << 28)
186 #define AT91C_PA28_MCCDA        (AT91C_PIO_PA28) //  Multimedia Card A Command
187 #define AT91C_PA28_TCLK4        (AT91C_PIO_PA28) //  Timer Counter 4 external Clock Input
188 #define AT91C_PIO_PA29          (1 << 29)
189 #define AT91C_PA29_MCDA0        (AT91C_PIO_PA29) //  Multimedia Card A Data 0
190 #define AT91C_PA29_TCLK5        (AT91C_PIO_PA29) //  Timer Counter 5 external clock input
191 #define AT91C_PIO_PA30          (1 << 30)
192 #define AT91C_PA30_DRXD         (AT91C_PIO_PA30) //  DBGU Debug Receive Data
193 #define AT91C_PA30_CTS2         (AT91C_PIO_PA30) //  USART 2 Clear To Send
194 #define AT91C_PIO_PA31          (1 << 31)
195 #define AT91C_PA31_DTXD         (AT91C_PIO_PA31) //  DBGU Debug Transmit Data
196 #define AT91C_PA31_RTS2         (AT91C_PIO_PA31) //  USART 2 Ready To Send
197
198 #define AT91C_PIO_PB0           (1 <<  0)
199 #define AT91C_PB0_TF0           (AT91C_PIO_PB0) //  SSC Transmit Frame Sync 0
200 #define AT91C_PB0_RTS3          (AT91C_PIO_PB0) //  USART 3 Ready To Send
201 #define AT91C_PIO_PB1           (1 <<  1)
202 #define AT91C_PB1_TK0           (AT91C_PIO_PB1) //  SSC Transmit Clock 0
203 #define AT91C_PB1_CTS3          (AT91C_PIO_PB1) //  USART 3 Clear To Send
204 #define AT91C_PIO_PB2           (1 <<  2)
205 #define AT91C_PB2_TD0           (AT91C_PIO_PB2) //  SSC Transmit data
206 #define AT91C_PB2_SCK3          (AT91C_PIO_PB2) //  USART 3 Serial Clock
207 #define AT91C_PIO_PB3           (1 <<  3)
208 #define AT91C_PB3_RD0           (AT91C_PIO_PB3) //  SSC Receive Data
209 #define AT91C_PB3_MCDA1         (AT91C_PIO_PB3) //  Multimedia Card A Data 1
210 #define AT91C_PIO_PB4           (1 <<  4)
211 #define AT91C_PB4_RK0           (AT91C_PIO_PB4) //  SSC Receive Clock
212 #define AT91C_PB4_MCDA2         (AT91C_PIO_PB4) //  Multimedia Card A Data 2
213 #define AT91C_PIO_PB5           (1 <<  5)
214 #define AT91C_PB5_RF0           (AT91C_PIO_PB5) //  SSC Receive Frame Sync 0
215 #define AT91C_PB5_MCDA3         (AT91C_PIO_PB5) //  Multimedia Card A Data 3
216 #define AT91C_PIO_PB6           (1 <<  6)
217 #define AT91C_PB6_TF1           (AT91C_PIO_PB6) //  SSC Transmit Frame Sync 1
218 #define AT91C_PB6_TIOA3         (AT91C_PIO_PB6) //  Timer Counter 4 Multipurpose Timer I/O Pin A
219 #define AT91C_PIO_PB7           (1 <<  7)
220 #define AT91C_PB7_TK1           (AT91C_PIO_PB7) //  SSC Transmit Clock 1
221 #define AT91C_PB7_TIOB3         (AT91C_PIO_PB7) //  Timer Counter 3 Multipurpose Timer I/O Pin B
222 #define AT91C_PIO_PB8           (1 <<  8)
223 #define AT91C_PB8_TD1           (AT91C_PIO_PB8) //  SSC Transmit Data 1
224 #define AT91C_PB8_TIOA4         (AT91C_PIO_PB8) //  Timer Counter 4 Multipurpose Timer I/O Pin A
225 #define AT91C_PIO_PB9           (1 <<  9)
226 #define AT91C_PB9_RD1           (AT91C_PIO_PB9) //  SSC Receive Data 1
227 #define AT91C_PB9_TIOB4         (AT91C_PIO_PB9) //  Timer Counter 4 Multipurpose Timer I/O Pin B
228 #define AT91C_PIO_PB10          (1 << 10)
229 #define AT91C_PB10_RK1          (AT91C_PIO_PB10) //  SSC Receive Clock 1
230 #define AT91C_PB10_TIOA5        (AT91C_PIO_PB10) //  Timer Counter 5 Multipurpose Timer I/O Pin A
231 #define AT91C_PIO_PB11          (1 << 11)
232 #define AT91C_PB11_RF1          (AT91C_PIO_PB11) //  SSC Receive Frame Sync 1
233 #define AT91C_PB11_TIOB5        (AT91C_PIO_PB11) //  Timer Counter 5 Multipurpose Timer I/O Pin B
234 #define AT91C_PIO_PB12          (1 << 12)
235 #define AT91C_PB12_TF2          (AT91C_PIO_PB12) //  SSC Transmit Frame Sync 2
236 #define AT91C_PB12_ETX2         (AT91C_PIO_PB12) //  Ethernet MAC Transmit Data 2
237 #define AT91C_PIO_PB13          (1 << 13)
238 #define AT91C_PB13_TK2          (AT91C_PIO_PB13) //  SSC Transmit Clock 2
239 #define AT91C_PB13_ETX3         (AT91C_PIO_PB13) //  Ethernet MAC Transmit Data 3
240 #define AT91C_PIO_PB14          (1 << 14)
241 #define AT91C_PB14_TD2          (AT91C_PIO_PB14) //  SSC Transmit Data 2
242 #define AT91C_PB14_ETXER        (AT91C_PIO_PB14) //  Ethernet MAC Transmikt Coding Error
243 #define AT91C_PIO_PB15          (1 << 15)
244 #define AT91C_PB15_RD2          (AT91C_PIO_PB15) //  SSC Receive Data 2
245 #define AT91C_PB15_ERX2         (AT91C_PIO_PB15) //  Ethernet MAC Receive Data 2
246 #define AT91C_PIO_PB16          (1 << 16)
247 #define AT91C_PB16_RK2          (AT91C_PIO_PB16) //  SSC Receive Clock 2
248 #define AT91C_PB16_ERX3         (AT91C_PIO_PB16) //  Ethernet MAC Receive Data 3
249 #define AT91C_PIO_PB17          (1 << 17)
250 #define AT91C_PB17_RF2          (AT91C_PIO_PB17) //  SSC Receive Frame Sync 2
251 #define AT91C_PB17_ERXDV        (AT91C_PIO_PB17) //  Ethernet MAC Receive Data Valid
252 #define AT91C_PIO_PB18          (1 << 18)
253 #define AT91C_PB18_RI1          (AT91C_PIO_PB18) //  USART 1 Ring Indicator
254 #define AT91C_PB18_ECOL         (AT91C_PIO_PB18) //  Ethernet MAC Collision Detected
255 #define AT91C_PIO_PB19          (1 << 19)
256 #define AT91C_PB19_DTR1         (AT91C_PIO_PB19) //  USART 1 Data Terminal ready
257 #define AT91C_PB19_ERXCK        (AT91C_PIO_PB19) //  Ethernet MAC Receive Clock
258 #define AT91C_PIO_PB20          (1 << 20)
259 #define AT91C_PB20_TXD1         (AT91C_PIO_PB20) //  USART 1 Transmit Data
260 #define AT91C_PIO_PB21          (1 << 21)
261 #define AT91C_PB21_RXD1         (AT91C_PIO_PB21) //  USART 1 Receive Data
262 #define AT91C_PIO_PB22          (1 << 22)
263 #define AT91C_PB22_SCK1         (AT91C_PIO_PB22) //  USART1 Serial Clock
264 #define AT91C_PIO_PB23          (1 << 23)
265 #define AT91C_PB23_DCD1         (AT91C_PIO_PB23) //  USART 1 Data Carrier Detect
266 #define AT91C_PIO_PB24          (1 << 24)
267 #define AT91C_PB24_CTS1         (AT91C_PIO_PB24) //  USART 1 Clear To Send
268 #define AT91C_PIO_PB25          (1 << 25)
269 #define AT91C_PB25_DSR1         (AT91C_PIO_PB25) //  USART 1 Data Set ready
270 #define AT91C_PB25_EF100        (AT91C_PIO_PB25) //  Ethernet MAC Force 100 Mbits/sec
271 #define AT91C_PIO_PB26          (1 << 26)
272 #define AT91C_PB26_RTS1         (AT91C_PIO_PB26) //  USART 1 Ready To Send
273 #define AT91C_PIO_PB27          (1 << 27)
274 #define AT91C_PB27_PCK0         (AT91C_PIO_PB27) //  PMC Programmable Clock Output 0
275 #define AT91C_PIO_PB28          (1 << 28)
276 #define AT91C_PB28_FIQ          (AT91C_PIO_PB28) //  AIC Fast Interrupt Input
277 #define AT91C_PIO_PB29          (1 << 29)
278 #define AT91C_PB29_IRQ0         (AT91C_PIO_PB29) //  Interrupt input 0
279
280 #define AT91C_PIO_PC0           (1 <<  0)
281 #define AT91C_PC0_BFCK          (AT91C_PIO_PC0) //  Burst Flash Clock
282 #define AT91C_PIO_PC1           (1 <<  1)
283 #define AT91C_PC1_BFRDY_SMOE    (AT91C_PIO_PC1) //  Burst Flash Ready
284 #define AT91C_PIO_PC2           (1 <<  2)
285 #define AT91C_PC2_BFAVD         (AT91C_PIO_PC2) //  Burst Flash Address Valid
286 #define AT91C_PIO_PC3           (1 <<  3)
287 #define AT91C_PC3_BFBAA_SMWE    (AT91C_PIO_PC3) //  Burst Flash Address Advance / SmartMedia Write Enable
288 #define AT91C_PIO_PC4           (1 <<  4)
289 #define AT91C_PC4_BFOE          (AT91C_PIO_PC4) //  Burst Flash Output Enable
290 #define AT91C_PIO_PC5           (1 <<  5)
291 #define AT91C_PC5_BFWE          (AT91C_PIO_PC5) //  Burst Flash Write Enable
292 #define AT91C_PIO_PC6           (1 <<  6)
293 #define AT91C_PC6_NWAIT         (AT91C_PIO_PC6) //  NWAIT
294 #define AT91C_PIO_PC7           (1 <<  7)
295 #define AT91C_PC7_A23           (AT91C_PIO_PC7) //  Address Bus[23]
296 #define AT91C_PIO_PC8           (1 <<  8)
297 #define AT91C_PC8_A24           (AT91C_PIO_PC8) //  Address Bus[24]
298 #define AT91C_PIO_PC9           (1 <<  9)
299 #define AT91C_PC9_A25_CFRNW     (AT91C_PIO_PC9) //  Address Bus[25] /  Compact Flash Read Not Write
300 #define AT91C_PIO_PC10          (1 << 10)
301 #define AT91C_PC10_NCS4_CFCS    (AT91C_PIO_PC10) //  Compact Flash Chip Select
302 #define AT91C_PIO_PC11          (1 << 11)
303 #define AT91C_PC11_NCS5_CFCE1   (AT91C_PIO_PC11) //  Chip Select 5 / Compact Flash Chip Enable 1
304 #define AT91C_PIO_PC12          (1 << 12)
305 #define AT91C_PC12_NCS6_CFCE2   (AT91C_PIO_PC12) //  Chip Select 6 / Compact Flash Chip Enable 2
306 #define AT91C_PIO_PC13          (1 << 13)
307 #define AT91C_PC13_NCS7         (AT91C_PIO_PC13) //  Chip Select 7
308 #define AT91C_PIO_PC14          (1 << 14)
309 #define AT91C_PIO_PC15          (1 << 15)
310 #define AT91C_PIO_PC16          (1 << 16)
311 #define AT91C_PC16_D16          (AT91C_PIO_PC16) //  Data Bus [16]
312 #define AT91C_PIO_PC17          (1 << 17)
313 #define AT91C_PC17_D17          (AT91C_PIO_PC17) //  Data Bus [17]
314 #define AT91C_PIO_PC18          (1 << 18)
315 #define AT91C_PC18_D18          (AT91C_PIO_PC18) //  Data Bus [18]
316 #define AT91C_PIO_PC19          (1 << 19)
317 #define AT91C_PC19_D19          (AT91C_PIO_PC19) //  Data Bus [19]
318 #define AT91C_PIO_PC20          (1 << 20)
319 #define AT91C_PC20_D20          (AT91C_PIO_PC20) //  Data Bus [20]
320 #define AT91C_PIO_PC21          (1 << 21)
321 #define AT91C_PC21_D21          (AT91C_PIO_PC21) //  Data Bus [21]
322 #define AT91C_PIO_PC22          (1 << 22)
323 #define AT91C_PC22_D22          (AT91C_PIO_PC22) //  Data Bus [22]
324 #define AT91C_PIO_PC23          (1 << 23)
325 #define AT91C_PC23_D23          (AT91C_PIO_PC23) //  Data Bus [23]
326 #define AT91C_PIO_PC24          (1 << 24)
327 #define AT91C_PC24_D24          (AT91C_PIO_PC24) //  Data Bus [24]
328 #define AT91C_PIO_PC25          (1 << 25)
329 #define AT91C_PC25_D25          (AT91C_PIO_PC25) //  Data Bus [25]
330 #define AT91C_PIO_PC26          (1 << 26)
331 #define AT91C_PC26_D26          (AT91C_PIO_PC26) //  Data Bus [26]
332 #define AT91C_PIO_PC27          (1 << 27)
333 #define AT91C_PC27_D27          (AT91C_PIO_PC27) //  Data Bus [27]
334 #define AT91C_PIO_PC28          (1 << 28)
335 #define AT91C_PC28_D28          (AT91C_PIO_PC28) //  Data Bus [28]
336 #define AT91C_PIO_PC29          (1 << 29)
337 #define AT91C_PC29_D29          (AT91C_PIO_PC29) //  Data Bus [29]
338 #define AT91C_PIO_PC30          (1 << 30)
339 #define AT91C_PC30_D30          (AT91C_PIO_PC30) //  Data Bus [30]
340 #define AT91C_PIO_PC31          (1 << 31)
341 #define AT91C_PC31_D31          (AT91C_PIO_PC31) //  Data Bus [31]
342
343 #define AT91C_PIO_PD0           (1 <<  0)
344 #define AT91C_PD0_ETX0          (AT91C_PIO_PD0) //  Ethernet MAC Transmit Data 0
345 #define AT91C_PIO_PD1           (1 <<  1)
346 #define AT91C_PD1_ETX1          (AT91C_PIO_PD1) //  Ethernet MAC Transmit Data 1
347 #define AT91C_PIO_PD2           (1 <<  2)
348 #define AT91C_PD2_ETX2          (AT91C_PIO_PD2) //  Ethernet MAC Transmit Data 2
349 #define AT91C_PIO_PD3           (1 <<  3)
350 #define AT91C_PD3_ETX3          (AT91C_PIO_PD3) //  Ethernet MAC Transmit Data 3
351 #define AT91C_PIO_PD4           (1 <<  4)
352 #define AT91C_PD4_ETXEN         (AT91C_PIO_PD4) //  Ethernet MAC Transmit Enable
353 #define AT91C_PIO_PD5           (1 <<  5)
354 #define AT91C_PD5_ETXER         (AT91C_PIO_PD5) //  Ethernet MAC Transmit Coding Error
355 #define AT91C_PIO_PD6           (1 <<  6)
356 #define AT91C_PD6_DTXD          (AT91C_PIO_PD6) //  DBGU Debug Transmit Data
357 #define AT91C_PIO_PD7           (1 <<  7)
358 #define AT91C_PD7_PCK0          (AT91C_PIO_PD7) //  PMC Programmable Clock Output 0
359 #define AT91C_PD7_TSYNC         (AT91C_PIO_PD7) //  ETM Synchronization signal
360 #define AT91C_PIO_PD8           (1 <<  8)
361 #define AT91C_PD8_PCK1          (AT91C_PIO_PD8) //  PMC Programmable Clock Output 1
362 #define AT91C_PD8_TCLK          (AT91C_PIO_PD8) //  ETM Trace Clock signal
363 #define AT91C_PIO_PD9           (1 <<  9)
364 #define AT91C_PD9_PCK2          (AT91C_PIO_PD9) //  PMC Programmable Clock 2
365 #define AT91C_PD9_TPS0          (AT91C_PIO_PD9) //  ETM ARM9 pipeline status 0
366 #define AT91C_PIO_PD10          (1 << 10)
367 #define AT91C_PD10_PCK3         (AT91C_PIO_PD10) //  PMC Programmable Clock Output 3
368 #define AT91C_PD10_TPS1         (AT91C_PIO_PD10) //  ETM ARM9 pipeline status 1
369 #define AT91C_PIO_PD11          (1 << 11)
370 #define AT91C_PD11_TPS2         (AT91C_PIO_PD11) //  ETM ARM9 pipeline status 2
371 #define AT91C_PIO_PD12          (1 << 12)
372 #define AT91C_PD12_TPK0         (AT91C_PIO_PD12) //  ETM Trace Packet 0
373 #define AT91C_PIO_PD13          (1 << 13)
374 #define AT91C_PD13_TPK1         (AT91C_PIO_PD13) //  ETM Trace Packet 1
375 #define AT91C_PIO_PD14          (1 << 14)
376 #define AT91C_PD14_TPK2         (AT91C_PIO_PD14) //  ETM Trace Packet 2
377 #define AT91C_PIO_PD15          (1 << 15)
378 #define AT91C_PD15_TD0          (AT91C_PIO_PD15) //  SSC Transmit data
379 #define AT91C_PD15_TPK3         (AT91C_PIO_PD15) //  ETM Trace Packet 3
380 #define AT91C_PIO_PD16          (1 << 16)
381 #define AT91C_PD16_TD1          (AT91C_PIO_PD16) //  SSC Transmit Data 1
382 #define AT91C_PD16_TPK4         (AT91C_PIO_PD16) //  ETM Trace Packet 4
383 #define AT91C_PIO_PD17          (1 << 17)
384 #define AT91C_PD17_TD2          (AT91C_PIO_PD17) //  SSC Transmit Data 2
385 #define AT91C_PD17_TPK5         (AT91C_PIO_PD17) //  ETM Trace Packet 5
386 #define AT91C_PIO_PD18          (1 << 18)
387 #define AT91C_PD18_NPCS1        (AT91C_PIO_PD18) //  SPI Peripheral Chip Select 1
388 #define AT91C_PD18_TPK6         (AT91C_PIO_PD18) //  ETM Trace Packet 6
389 #define AT91C_PIO_PD19          (1 << 19)
390 #define AT91C_PD19_NPCS2        (AT91C_PIO_PD19) //  SPI Peripheral Chip Select 2
391 #define AT91C_PD19_TPK7         (AT91C_PIO_PD19) //  ETM Trace Packet 7
392 #define AT91C_PIO_PD20          (1 << 20)
393 #define AT91C_PD20_NPCS3        (AT91C_PIO_PD20) //  SPI Peripheral Chip Select 3
394 #define AT91C_PD20_TPK8         (AT91C_PIO_PD20) //  ETM Trace Packet 8
395 #define AT91C_PIO_PD21          (1 << 21)
396 #define AT91C_PD21_RTS0         (AT91C_PIO_PD21) //  Usart 0 Ready To Send
397 #define AT91C_PD21_TPK9         (AT91C_PIO_PD21) //  ETM Trace Packet 9
398 #define AT91C_PIO_PD22          (1 << 22)
399 #define AT91C_PD22_RTS1         (AT91C_PIO_PD22) //  Usart 0 Ready To Send
400 #define AT91C_PD22_TPK10        (AT91C_PIO_PD22) //  ETM Trace Packet 10
401 #define AT91C_PIO_PD23          (1 << 23)
402 #define AT91C_PD23_RTS2         (AT91C_PIO_PD23) //  USART 2 Ready To Send
403 #define AT91C_PD23_TPK11        (AT91C_PIO_PD23) //  ETM Trace Packet 11
404 #define AT91C_PIO_PD24          (1 << 24)
405 #define AT91C_PD24_RTS3         (AT91C_PIO_PD24) //  USART 3 Ready To Send
406 #define AT91C_PD24_TPK12        (AT91C_PIO_PD24) //  ETM Trace Packet 12
407 #define AT91C_PIO_PD25          (1 << 25)
408 #define AT91C_PD25_DTR1         (AT91C_PIO_PD25) //  USART 1 Data Terminal ready
409 #define AT91C_PD25_TPK13        (AT91C_PIO_PD25) //  ETM Trace Packet 13
410 #define AT91C_PIO_PD26          (1 << 26)
411 #define AT91C_PD26_TPK14        (AT91C_PIO_PD26) //  ETM Trace Packet 14
412 #define AT91C_PIO_PD27          (1 << 27)
413 #define AT91C_PD27_TPK15        (AT91C_PIO_PD27) //  ETM Trace Packet 15
414
415 #endif