]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - arch/m68k/include/asm/m547x_8x.h
Move architecture-specific includes to arch/$ARCH/include/asm
[karo-tx-uboot.git] / arch / m68k / include / asm / m547x_8x.h
1 /*
2  * mcf547x_8x.h -- Definitions for Freescale Coldfire 547x_8x
3  *
4  * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
5  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
6  *
7  * See file CREDITS for list of people who contributed to this
8  * project.
9  *
10  * This program is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU General Public License as
12  * published by the Free Software Foundation; either version 2 of
13  * the License, or (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
23  * MA 02111-1307 USA
24  */
25
26 #ifndef mcf547x_8x_h
27 #define mcf547x_8x_h
28
29 /*********************************************************************
30 * XLB Arbiter (XLB)
31 *********************************************************************/
32 /* Bit definitions and macros for XARB_CFG */
33 #define XARB_CFG_AT                     (0x00000002)
34 #define XARB_CFG_DT                     (0x00000004)
35 #define XARB_CFG_BA                     (0x00000008)
36 #define XARB_CFG_PM(x)                  (((x)&0x00000003)<<5)
37 #define XARB_CFG_SP(x)                  (((x)&0x00000007)<<8)
38 #define XARB_CFG_PLDIS                  (0x80000000)
39
40 /* Bit definitions and macros for XARB_SR */
41 #define XARB_SR_AT                      (0x00000001)
42 #define XARB_SR_DT                      (0x00000002)
43 #define XARB_SR_BA                      (0x00000004)
44 #define XARB_SR_TTM                     (0x00000008)
45 #define XARB_SR_ECW                     (0x00000010)
46 #define XARB_SR_TTR                     (0x00000020)
47 #define XARB_SR_TTA                     (0x00000040)
48 #define XARB_SR_MM                      (0x00000080)
49 #define XARB_SR_SEA                     (0x00000100)
50
51 /* Bit definitions and macros for XARB_IMR */
52 #define XARB_IMR_ATE                    (0x00000001)
53 #define XARB_IMR_DTE                    (0x00000002)
54 #define XARB_IMR_BAE                    (0x00000004)
55 #define XARB_IMR_TTME                   (0x00000008)
56 #define XARB_IMR_ECWE                   (0x00000010)
57 #define XARB_IMR_TTRE                   (0x00000020)
58 #define XARB_IMR_TTAE                   (0x00000040)
59 #define XARB_IMR_MME                    (0x00000080)
60 #define XARB_IMR_SEAE                   (0x00000100)
61
62 /* Bit definitions and macros for XARB_SIGCAP */
63 #define XARB_SIGCAP_TT(x)               ((x)&0x0000001F)
64 #define XARB_SIGCAP_TBST                (0x00000020)
65 #define XARB_SIGCAP_TSIZ(x)             (((x)&0x00000007)<<7)
66
67 /* Bit definitions and macros for XARB_PRIEN */
68 #define XARB_PRIEN_M0                   (0x00000001)
69 #define XARB_PRIEN_M2                   (0x00000004)
70 #define XARB_PRIEN_M3                   (0x00000008)
71
72 /* Bit definitions and macros for XARB_PRI */
73 #define XARB_PRI_M0P(x)                 (((x)&0x00000007)<<0)
74 #define XARB_PRI_M2P(x)                 (((x)&0x00000007)<<8)
75 #define XARB_PRI_M3P(x)                 (((x)&0x00000007)<<12)
76
77 /*********************************************************************
78 * General Purpose I/O (GPIO)
79 *********************************************************************/
80 /* Bit definitions and macros for GPIO_PAR_FBCTL */
81 #define GPIO_PAR_FBCTL_TS(x)            (((x)&0x0003)<<0)
82 #define GPIO_PAR_FBCTL_TA               (0x0004)
83 #define GPIO_PAR_FBCTL_RWB(x)           (((x)&0x0003)<<4)
84 #define GPIO_PAR_FBCTL_OE               (0x0040)
85 #define GPIO_PAR_FBCTL_BWE0             (0x0100)
86 #define GPIO_PAR_FBCTL_BWE1             (0x0400)
87 #define GPIO_PAR_FBCTL_BWE2             (0x1000)
88 #define GPIO_PAR_FBCTL_BWE3             (0x4000)
89 #define GPIO_PAR_FBCTL_TS_GPIO          (0)
90 #define GPIO_PAR_FBCTL_TS_TBST          (2)
91 #define GPIO_PAR_FBCTL_TS_TS            (3)
92 #define GPIO_PAR_FBCTL_RWB_GPIO         (0x0000)
93 #define GPIO_PAR_FBCTL_RWB_TBST         (0x0020)
94 #define GPIO_PAR_FBCTL_RWB_RWB          (0x0030)
95
96 /* Bit definitions and macros for GPIO_PAR_FBCS */
97 #define GPIO_PAR_FBCS_CS1               (0x02)
98 #define GPIO_PAR_FBCS_CS2               (0x04)
99 #define GPIO_PAR_FBCS_CS3               (0x08)
100 #define GPIO_PAR_FBCS_CS4               (0x10)
101 #define GPIO_PAR_FBCS_CS5               (0x20)
102
103 /* Bit definitions and macros for GPIO_PAR_DMA */
104 #define GPIO_PAR_DMA_DREQ0(x)           (((x)&0x03)<<0)
105 #define GPIO_PAR_DMA_DREQ1(x)           (((x)&0x03)<<2)
106 #define GPIO_PAR_DMA_DACK0(x)           (((x)&0x03)<<4)
107 #define GPIO_PAR_DMA_DACK1(x)           (((x)&0x03)<<6)
108 #define GPIO_PAR_DMA_DACKx_GPIO         (0)
109 #define GPIO_PAR_DMA_DACKx_TOUT         (2)
110 #define GPIO_PAR_DMA_DACKx_DACK         (3)
111 #define GPIO_PAR_DMA_DREQx_GPIO         (0)
112 #define GPIO_PAR_DMA_DREQx_TIN          (2)
113 #define GPIO_PAR_DMA_DREQx_DREQ         (3)
114
115 /* Bit definitions and macros for GPIO_PAR_FECI2CIRQ */
116 #define GPIO_PAR_FECI2CIRQ_IRQ5         (0x0001)
117 #define GPIO_PAR_FECI2CIRQ_IRQ6         (0x0002)
118 #define GPIO_PAR_FECI2CIRQ_SCL          (0x0004)
119 #define GPIO_PAR_FECI2CIRQ_SDA          (0x0008)
120 #define GPIO_PAR_FECI2CIRQ_E1MDC(x)     (((x)&0x0003)<<6)
121 #define GPIO_PAR_FECI2CIRQ_E1MDIO(x)    (((x)&0x0003)<<8)
122 #define GPIO_PAR_FECI2CIRQ_E1MII        (0x0400)
123 #define GPIO_PAR_FECI2CIRQ_E17          (0x0800)
124 #define GPIO_PAR_FECI2CIRQ_E0MDC        (0x1000)
125 #define GPIO_PAR_FECI2CIRQ_E0MDIO       (0x2000)
126 #define GPIO_PAR_FECI2CIRQ_E0MII        (0x4000)
127 #define GPIO_PAR_FECI2CIRQ_E07          (0x8000)
128 #define GPIO_PAR_FECI2CIRQ_E1MDIO_CANRX (0x0000)
129 #define GPIO_PAR_FECI2CIRQ_E1MDIO_SDA   (0x0200)
130 #define GPIO_PAR_FECI2CIRQ_E1MDIO_EMDIO (0x0300)
131 #define GPIO_PAR_FECI2CIRQ_E1MDC_CANTX  (0x0000)
132 #define GPIO_PAR_FECI2CIRQ_E1MDC_SCL    (0x0080)
133 #define GPIO_PAR_FECI2CIRQ_E1MDC_EMDC   (0x00C0)
134
135 /* Bit definitions and macros for GPIO_PAR_PCIBG */
136 #define GPIO_PAR_PCIBG_PCIBG0(x)        (((x)&0x0003)<<0)
137 #define GPIO_PAR_PCIBG_PCIBG1(x)        (((x)&0x0003)<<2)
138 #define GPIO_PAR_PCIBG_PCIBG2(x)        (((x)&0x0003)<<4)
139 #define GPIO_PAR_PCIBG_PCIBG3(x)        (((x)&0x0003)<<6)
140 #define GPIO_PAR_PCIBG_PCIBG4(x)        (((x)&0x0003)<<8)
141
142 /* Bit definitions and macros for GPIO_PAR_PCIBR */
143 #define GPIO_PAR_PCIBR_PCIBR0(x)        (((x)&0x0003)<<0)
144 #define GPIO_PAR_PCIBR_PCIBR1(x)        (((x)&0x0003)<<2)
145 #define GPIO_PAR_PCIBR_PCIBR2(x)        (((x)&0x0003)<<4)
146 #define GPIO_PAR_PCIBR_PCIBR3(x)        (((x)&0x0003)<<6)
147 #define GPIO_PAR_PCIBR_PCIBR4(x)        (((x)&0x0003)<<8)
148
149 /* Bit definitions and macros for GPIO_PAR_PSC3 */
150 #define GPIO_PAR_PSC3_TXD3              (0x04)
151 #define GPIO_PAR_PSC3_RXD3              (0x08)
152 #define GPIO_PAR_PSC3_RTS3(x)           (((x)&0x03)<<4)
153 #define GPIO_PAR_PSC3_CTS3(x)           (((x)&0x03)<<6)
154 #define GPIO_PAR_PSC3_CTS3_GPIO         (0x00)
155 #define GPIO_PAR_PSC3_CTS3_BCLK         (0x80)
156 #define GPIO_PAR_PSC3_CTS3_CTS          (0xC0)
157 #define GPIO_PAR_PSC3_RTS3_GPIO         (0x00)
158 #define GPIO_PAR_PSC3_RTS3_FSYNC        (0x20)
159 #define GPIO_PAR_PSC3_RTS3_RTS          (0x30)
160 #define GPIO_PAR_PSC3_CTS2_CANRX        (0x40)
161
162 /* Bit definitions and macros for GPIO_PAR_PSC2 */
163 #define GPIO_PAR_PSC2_TXD2              (0x04)
164 #define GPIO_PAR_PSC2_RXD2              (0x08)
165 #define GPIO_PAR_PSC2_RTS2(x)           (((x)&0x03)<<4)
166 #define GPIO_PAR_PSC2_CTS2(x)           (((x)&0x03)<<6)
167 #define GPIO_PAR_PSC2_CTS2_GPIO         (0x00)
168 #define GPIO_PAR_PSC2_CTS2_BCLK         (0x80)
169 #define GPIO_PAR_PSC2_CTS2_CTS          (0xC0)
170 #define GPIO_PAR_PSC2_RTS2_GPIO         (0x00)
171 #define GPIO_PAR_PSC2_RTS2_CANTX        (0x10)
172 #define GPIO_PAR_PSC2_RTS2_FSYNC        (0x20)
173 #define GPIO_PAR_PSC2_RTS2_RTS          (0x30)
174
175 /* Bit definitions and macros for GPIO_PAR_PSC1 */
176 #define GPIO_PAR_PSC1_TXD1              (0x04)
177 #define GPIO_PAR_PSC1_RXD1              (0x08)
178 #define GPIO_PAR_PSC1_RTS1(x)           (((x)&0x03)<<4)
179 #define GPIO_PAR_PSC1_CTS1(x)           (((x)&0x03)<<6)
180 #define GPIO_PAR_PSC1_CTS1_GPIO         (0x00)
181 #define GPIO_PAR_PSC1_CTS1_BCLK         (0x80)
182 #define GPIO_PAR_PSC1_CTS1_CTS          (0xC0)
183 #define GPIO_PAR_PSC1_RTS1_GPIO         (0x00)
184 #define GPIO_PAR_PSC1_RTS1_FSYNC        (0x20)
185 #define GPIO_PAR_PSC1_RTS1_RTS          (0x30)
186
187 /* Bit definitions and macros for GPIO_PAR_PSC0 */
188 #define GPIO_PAR_PSC0_TXD0              (0x04)
189 #define GPIO_PAR_PSC0_RXD0              (0x08)
190 #define GPIO_PAR_PSC0_RTS0(x)           (((x)&0x03)<<4)
191 #define GPIO_PAR_PSC0_CTS0(x)           (((x)&0x03)<<6)
192 #define GPIO_PAR_PSC0_CTS0_GPIO         (0x00)
193 #define GPIO_PAR_PSC0_CTS0_BCLK         (0x80)
194 #define GPIO_PAR_PSC0_CTS0_CTS          (0xC0)
195 #define GPIO_PAR_PSC0_RTS0_GPIO         (0x00)
196 #define GPIO_PAR_PSC0_RTS0_FSYNC        (0x20)
197 #define GPIO_PAR_PSC0_RTS0_RTS          (0x30)
198
199 /* Bit definitions and macros for GPIO_PAR_DSPI */
200 #define GPIO_PAR_DSPI_SOUT(x)           (((x)&0x0003)<<0)
201 #define GPIO_PAR_DSPI_SIN(x)            (((x)&0x0003)<<2)
202 #define GPIO_PAR_DSPI_SCK(x)            (((x)&0x0003)<<4)
203 #define GPIO_PAR_DSPI_CS0(x)            (((x)&0x0003)<<6)
204 #define GPIO_PAR_DSPI_CS2(x)            (((x)&0x0003)<<8)
205 #define GPIO_PAR_DSPI_CS3(x)            (((x)&0x0003)<<10)
206 #define GPIO_PAR_DSPI_CS5               (0x1000)
207 #define GPIO_PAR_DSPI_CS3_GPIO          (0x0000)
208 #define GPIO_PAR_DSPI_CS3_CANTX         (0x0400)
209 #define GPIO_PAR_DSPI_CS3_TOUT          (0x0800)
210 #define GPIO_PAR_DSPI_CS3_DSPICS        (0x0C00)
211 #define GPIO_PAR_DSPI_CS2_GPIO          (0x0000)
212 #define GPIO_PAR_DSPI_CS2_CANTX         (0x0100)
213 #define GPIO_PAR_DSPI_CS2_TOUT          (0x0200)
214 #define GPIO_PAR_DSPI_CS2_DSPICS        (0x0300)
215 #define GPIO_PAR_DSPI_CS0_GPIO          (0x0000)
216 #define GPIO_PAR_DSPI_CS0_FSYNC         (0x0040)
217 #define GPIO_PAR_DSPI_CS0_RTS           (0x0080)
218 #define GPIO_PAR_DSPI_CS0_DSPICS        (0x00C0)
219 #define GPIO_PAR_DSPI_SCK_GPIO          (0x0000)
220 #define GPIO_PAR_DSPI_SCK_BCLK          (0x0010)
221 #define GPIO_PAR_DSPI_SCK_CTS           (0x0020)
222 #define GPIO_PAR_DSPI_SCK_SCK           (0x0030)
223 #define GPIO_PAR_DSPI_SIN_GPIO          (0x0000)
224 #define GPIO_PAR_DSPI_SIN_RXD           (0x0008)
225 #define GPIO_PAR_DSPI_SIN_SIN           (0x000C)
226 #define GPIO_PAR_DSPI_SOUT_GPIO         (0x0000)
227 #define GPIO_PAR_DSPI_SOUT_TXD          (0x0002)
228 #define GPIO_PAR_DSPI_SOUT_SOUT         (0x0003)
229
230 /* Bit definitions and macros for GPIO_PAR_TIMER */
231 #define GPIO_PAR_TIMER_TOUT2            (0x01)
232 #define GPIO_PAR_TIMER_TIN2(x)          (((x)&0x03)<<1)
233 #define GPIO_PAR_TIMER_TOUT3            (0x08)
234 #define GPIO_PAR_TIMER_TIN3(x)          (((x)&0x03)<<4)
235 #define GPIO_PAR_TIMER_TIN3_CANRX       (0x00)
236 #define GPIO_PAR_TIMER_TIN3_IRQ         (0x20)
237 #define GPIO_PAR_TIMER_TIN3_TIN         (0x30)
238 #define GPIO_PAR_TIMER_TIN2_CANRX       (0x00)
239 #define GPIO_PAR_TIMER_TIN2_IRQ         (0x04)
240 #define GPIO_PAR_TIMER_TIN2_TIN         (0x06)
241
242 /*********************************************************************
243 * Slice Timer (SLT)
244 *********************************************************************/
245 #define SLT_CR_RUN                      (0x04000000)
246 #define SLT_CR_IEN                      (0x02000000)
247 #define SLT_CR_TEN                      (0x01000000)
248
249 #define SLT_SR_BE                       (0x02000000)
250 #define SLT_SR_ST                       (0x01000000)
251
252 /*********************************************************************
253 * Interrupt Controller (INTC)
254 *********************************************************************/
255 #define INT0_LO_RSVD0                   (0)
256 #define INT0_LO_EPORT1                  (1)
257 #define INT0_LO_EPORT2                  (2)
258 #define INT0_LO_EPORT3                  (3)
259 #define INT0_LO_EPORT4                  (4)
260 #define INT0_LO_EPORT5                  (5)
261 #define INT0_LO_EPORT6                  (6)
262 #define INT0_LO_EPORT7                  (7)
263 #define INT0_LO_EP0ISR                  (15)
264 #define INT0_LO_EP1ISR                  (16)
265 #define INT0_LO_EP2ISR                  (17)
266 #define INT0_LO_EP3ISR                  (18)
267 #define INT0_LO_EP4ISR                  (19)
268 #define INT0_LO_EP5ISR                  (20)
269 #define INT0_LO_EP6ISR                  (21)
270 #define INT0_LO_USBISR                  (22)
271 #define INT0_LO_USBAISR                 (23)
272 #define INT0_LO_USB                     (24)
273 #define INT1_LO_DSPI_RFOF_TFUF          (25)
274 #define INT1_LO_DSPI_RFOF               (26)
275 #define INT1_LO_DSPI_RFDF               (27)
276 #define INT1_LO_DSPI_TFUF               (28)
277 #define INT1_LO_DSPI_TCF                (29)
278 #define INT1_LO_DSPI_TFFF               (30)
279 #define INT1_LO_DSPI_EOQF               (31)
280
281 #define INT0_HI_UART3                   (32)
282 #define INT0_HI_UART2                   (33)
283 #define INT0_HI_UART1                   (34)
284 #define INT0_HI_UART0                   (35)
285 #define INT0_HI_COMMTIM_TC              (36)
286 #define INT0_HI_SEC                     (37)
287 #define INT0_HI_FEC1                    (38)
288 #define INT0_HI_FEC0                    (39)
289 #define INT0_HI_I2C                     (40)
290 #define INT0_HI_PCIARB                  (41)
291 #define INT0_HI_CBPCI                   (42)
292 #define INT0_HI_XLBPCI                  (43)
293 #define INT0_HI_XLBARB                  (47)
294 #define INT0_HI_DMA                     (48)
295 #define INT0_HI_CAN0_ERROR              (49)
296 #define INT0_HI_CAN0_BUSOFF             (50)
297 #define INT0_HI_CAN0_MBOR               (51)
298 #define INT0_HI_SLT1                    (53)
299 #define INT0_HI_SLT0                    (54)
300 #define INT0_HI_CAN1_ERROR              (55)
301 #define INT0_HI_CAN1_BUSOFF             (56)
302 #define INT0_HI_CAN1_MBOR               (57)
303 #define INT0_HI_GPT3                    (59)
304 #define INT0_HI_GPT2                    (60)
305 #define INT0_HI_GPT1                    (61)
306 #define INT0_HI_GPT0                    (62)
307
308 /*********************************************************************
309 * General Purpose Timers (GPTMR)
310 *********************************************************************/
311 /* Enable and Mode Select */
312 #define GPT_OCT(x)                      (x & 0x3)<<4    /* Output Compare Type */
313 #define GPT_ICT(x)                      (x & 0x3)       /* Input Capture Type */
314 #define GPT_CTRL_WDEN                   0x80            /* Watchdog Enable */
315 #define GPT_CTRL_CE                     0x10            /* Counter Enable */
316 #define GPT_CTRL_STPCNT                 0x04            /* Stop continous */
317 #define GPT_CTRL_ODRAIN                 0x02            /* Open Drain */
318 #define GPT_CTRL_INTEN                  0x01            /* Interrupt Enable */
319 #define GPT_MODE_GPIO(x)                (x & 0x3)<<4    /* Gpio Mode Type */
320 #define GPT_TMS_ICT                     0x01            /* Input Capture Enable */
321 #define GPT_TMS_OCT                     0x02            /* Output Capture Enable */
322 #define GPT_TMS_PWM                     0x03            /* PWM Capture Enable */
323 #define GPT_TMS_SGPIO                   0x04            /* PWM Capture Enable */
324
325 #define GPT_PWM_WIDTH(x)                (x & 0xffff)
326
327 /* Status */
328 #define GPT_STA_CAPTURE(x)              (x & 0xffff)
329
330 #define GPT_OVFPIN_OVF(x)               (x & 0x70)
331 #define GPT_OVFPIN_PIN                  0x01
332
333 #define GPT_INT_TEXP                    0x08
334 #define GPT_INT_PWMP                    0x04
335 #define GPT_INT_COMP                    0x02
336 #define GPT_INT_CAPT                    0x01
337
338 /*********************************************************************
339 * PCI
340 *********************************************************************/
341
342 /* Bit definitions and macros for SCR */
343 #define PCI_SCR_PE                      (0x80000000)    /* Parity Error detected */
344 #define PCI_SCR_SE                      (0x40000000)    /* System error signalled */
345 #define PCI_SCR_MA                      (0x20000000)    /* Master aboart received */
346 #define PCI_SCR_TR                      (0x10000000)    /* Target abort received */
347 #define PCI_SCR_TS                      (0x08000000)    /* Target abort signalled */
348 #define PCI_SCR_DT                      (0x06000000)    /* PCI_DEVSEL timing */
349 #define PCI_SCR_DP                      (0x01000000)    /* Master data parity err */
350 #define PCI_SCR_FC                      (0x00800000)    /* Fast back-to-back */
351 #define PCI_SCR_R                       (0x00400000)    /* Reserved */
352 #define PCI_SCR_66M                     (0x00200000)    /* 66Mhz */
353 #define PCI_SCR_C                       (0x00100000)    /* Capabilities list */
354 #define PCI_SCR_F                       (0x00000200)    /* Fast back-to-back enable */
355 #define PCI_SCR_S                       (0x00000100)    /* SERR enable */
356 #define PCI_SCR_ST                      (0x00000080)    /* Addr and Data stepping */
357 #define PCI_SCR_PER                     (0x00000040)    /* Parity error response */
358 #define PCI_SCR_V                       (0x00000020)    /* VGA palette snoop enable */
359 #define PCI_SCR_MW                      (0x00000010)    /* Memory write and invalidate enable */
360 #define PCI_SCR_SP                      (0x00000008)    /* Special cycle monitor or ignore */
361 #define PCI_SCR_B                       (0x00000004)    /* Bus master enable */
362 #define PCI_SCR_M                       (0x00000002)    /* Memory access control */
363 #define PCI_SCR_IO                      (0x00000001)    /* I/O access control */
364
365 #define PCI_CR1_BIST(x)                 ((x & 0xFF) << 24)      /* Built in self test */
366 #define PCI_CR1_HDR(x)                  ((x & 0xFF) << 16)      /* Header type */
367 #define PCI_CR1_LTMR(x)                 ((x & 0xF8) << 8)       /* Latency timer */
368 #define PCI_CR1_CLS(x)                  (x & 0x0F)              /* Cache line size */
369
370 #define PCI_BAR_BAR0(x)                 (x & 0xFFFC0000)
371 #define PCI_BAR_BAR1(x)                 (x & 0xC0000000)
372 #define PCI_BAR_PREF                    (0x00000004)    /* Prefetchable access */
373 #define PCI_BAR_RANGE                   (0x00000002)    /* Fixed to 00 */
374 #define PCI_BAR_IO_M                    (0x00000001)    /* IO / memory space */
375
376 #define PCI_CR2_MAXLAT(x)               ((x & 0xFF) << 24)      /* Maximum latency */
377 #define PCI_CR2_MINGNT(x)               ((x & 0xFF) << 16)      /* Minimum grant */
378 #define PCI_CR2_INTPIN(x)               ((x & 0xFF) << 8)       /* Interrupt Pin */
379 #define PCI_CR2_INTLIN(x)               (x & 0xFF)      /* Interrupt Line */
380
381 #define PCI_GSCR_DRD                    (0x80000000)    /* Delayed read discarded */
382 #define PCI_GSCR_PE                     (0x20000000)    /* PCI_PERR detected */
383 #define PCI_GSCR_SE                     (0x10000000)    /* SERR detected */
384 #define PCI_GSCR_ER                     (0x08000000)    /* Error response detected */
385 #define PCI_GSCR_DRDE                   (0x00008000)    /* Delayed read discarded enable */
386 #define PCI_GSCR_PEE                    (0x00002000)    /* PERR detected interrupt enable */
387 #define PCI_GSCR_SEE                    (0x00001000)    /* SERR detected interrupt enable */
388 #define PCI_GSCR_PR                     (0x00000001)    /* PCI reset */
389
390 #define PCI_TCR1_LD                     (0x01000000)    /* Latency rule disable */
391 #define PCI_TCR1_PID                    (0x00020000)    /* Prefetch invalidate and disable */
392 #define PCI_TCR1_P                      (0x00010000)    /* Prefetch reads */
393 #define PCI_TCR1_WCD                    (0x00000100)    /* Write combine disable */
394
395 #define PCI_TCR1_B5E                    (0x00002000)    /*  */
396 #define PCI_TCR1_B4E                    (0x00001000)    /*  */
397 #define PCI_TCR1_B3E                    (0x00000800)    /*  */
398 #define PCI_TCR1_B2E                    (0x00000400)    /*  */
399 #define PCI_TCR1_B1E                    (0x00000200)    /*  */
400 #define PCI_TCR1_B0E                    (0x00000100)    /*  */
401 #define PCI_TCR1_CR                     (0x00000001)    /*  */
402
403 #define PCI_TBATR_BAT0(x)               (x & 0xFFFC0000)
404 #define PCI_TBATR_BAT1(x)               (x & 0xC0000000)
405 #define PCI_TBATR_EN                    (0x00000001)    /* Enable */
406
407 #define PCI_IWCR_W0C_IO                 (0x08000000)    /* Windows Maps to PCI I/O */
408 #define PCI_IWCR_W0C_PRC_RDMUL          (0x04000000)    /* PCI Memory Read multiple */
409 #define PCI_IWCR_W0C_PRC_RDLN           (0x02000000)    /* PCI Memory Read line */
410 #define PCI_IWCR_W0C_PRC_RD             (0x00000000)    /* PCI Memory Read */
411 #define PCI_IWCR_W0C_EN                 (0x01000000)    /* Enable - Register initialize */
412 #define PCI_IWCR_W1C_IO                 (0x00080000)    /* Windows Maps to PCI I/O */
413 #define PCI_IWCR_W1C_PRC_RDMUL          (0x00040000)    /* PCI Memory Read multiple */
414 #define PCI_IWCR_W1C_PRC_RDLN           (0x00020000)    /* PCI Memory Read line */
415 #define PCI_IWCR_W1C_PRC_RD             (0x00000000)    /* PCI Memory Read */
416 #define PCI_IWCR_W1C_EN                 (0x00010000)    /* Enable - Register initialize */
417 #define PCI_IWCR_W2C_IO                 (0x00000800)    /* Windows Maps to PCI I/O */
418 #define PCI_IWCR_W2C_PRC_RDMUL          (0x00000400)    /* PCI Memory Read multiple */
419 #define PCI_IWCR_W2C_PRC_RDLN           (0x00000200)    /* PCI Memory Read line */
420 #define PCI_IWCR_W2C_PRC_RD             (0x00000000)    /* PCI Memory Read */
421 #define PCI_IWCR_W2C_EN                 (0x00000100)    /* Enable - Register initialize */
422
423 #define PCI_ICR_REE                     (0x04000000)    /* Retry error enable */
424 #define PCI_ICR_IAE                     (0x02000000)    /* Initiator abort enable */
425 #define PCI_ICR_TAE                     (0x01000000)    /* Target abort enable */
426 #define PCI_ICR_MAXRETRY(x)             ((x) & 0x000000FF)
427
428 #define PCIARB_ACR_DS                   (0x80000000)
429 #define PCIARB_ARC_EXTMINTEN(x)         (((x)&0x1F) << 17)
430 #define PCIARB_ARC_INTMINTEN            (0x00010000)
431 #define PCIARB_ARC_EXTMPRI(x)           (((x)&0x1F) << 1)
432 #define PCIARB_ARC_INTMPRI              (0x00000001)
433
434 #endif                          /* mcf547x_8x_h */