aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-mips/mips-boards
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:20:36 -0400
commit1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch)
tree0bba044c4ce775e45a88a51686b5d9f90697ea9d /include/asm-mips/mips-boards
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
Diffstat (limited to 'include/asm-mips/mips-boards')
-rw-r--r--include/asm-mips/mips-boards/atlas.h64
-rw-r--r--include/asm-mips/mips-boards/atlasint.h84
-rw-r--r--include/asm-mips/mips-boards/bonito64.h431
-rw-r--r--include/asm-mips/mips-boards/generic.h82
-rw-r--r--include/asm-mips/mips-boards/malta.h75
-rw-r--r--include/asm-mips/mips-boards/maltaint.h33
-rw-r--r--include/asm-mips/mips-boards/msc01_pci.h256
-rw-r--r--include/asm-mips/mips-boards/piix4.h80
-rw-r--r--include/asm-mips/mips-boards/prom.h49
-rw-r--r--include/asm-mips/mips-boards/saa9730_uart.h69
-rw-r--r--include/asm-mips/mips-boards/sead.h36
-rw-r--r--include/asm-mips/mips-boards/seadint.h28
12 files changed, 1287 insertions, 0 deletions
diff --git a/include/asm-mips/mips-boards/atlas.h b/include/asm-mips/mips-boards/atlas.h
new file mode 100644
index 000000000000..0998151fb3a1
--- /dev/null
+++ b/include/asm-mips/mips-boards/atlas.h
@@ -0,0 +1,64 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * Defines of the Atlas board specific address-MAP, registers, etc.
23 *
24 */
25#ifndef _MIPS_ATLAS_H
26#define _MIPS_ATLAS_H
27
28#include <asm/addrspace.h>
29
30/*
31 * Atlas RTC-device indirect register access.
32 */
33#define ATLAS_RTC_ADR_REG 0x1f000800
34#define ATLAS_RTC_DAT_REG 0x1f000808
35
36
37/*
38 * Atlas interrupt controller register base.
39 */
40#define ATLAS_ICTRL_REGS_BASE 0x1f000000
41
42/*
43 * Atlas UART register base.
44 */
45#define ATLAS_UART_REGS_BASE 0x1f000900
46#define ATLAS_BASE_BAUD ( 3686400 / 16 )
47
48/*
49 * Atlas PSU standby register.
50 */
51#define ATLAS_PSUSTBY_REG 0x1f000600
52#define ATLAS_GOSTBY 0x4d
53
54/*
55 * We make a universal assumption about the way the bootloader (YAMON)
56 * have located the Philips SAA9730 chip.
57 * This is not ideal, but is needed for setting up remote debugging as
58 * soon as possible.
59 */
60#define ATLAS_SAA9730_REG 0x10800000
61
62#define ATLAS_SAA9730_BAUDCLOCK 3692300
63
64#endif /* !(_MIPS_ATLAS_H) */
diff --git a/include/asm-mips/mips-boards/atlasint.h b/include/asm-mips/mips-boards/atlasint.h
new file mode 100644
index 000000000000..bba35c183d08
--- /dev/null
+++ b/include/asm-mips/mips-boards/atlasint.h
@@ -0,0 +1,84 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 1999 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * Defines for the Atlas interrupt controller.
23 *
24 */
25#ifndef _MIPS_ATLASINT_H
26#define _MIPS_ATLASINT_H
27
28#define ATLASINT_BASE 1
29#define ATLASINT_UART (ATLASINT_BASE+0)
30#define ATLASINT_TIM0 (ATLASINT_BASE+1)
31#define ATLASINT_RES2 (ATLASINT_BASE+2)
32#define ATLASINT_RES3 (ATLASINT_BASE+3)
33#define ATLASINT_RTC (ATLASINT_BASE+4)
34#define ATLASINT_COREHI (ATLASINT_BASE+5)
35#define ATLASINT_CORELO (ATLASINT_BASE+6)
36#define ATLASINT_RES7 (ATLASINT_BASE+7)
37#define ATLASINT_PCIA (ATLASINT_BASE+8)
38#define ATLASINT_PCIB (ATLASINT_BASE+9)
39#define ATLASINT_PCIC (ATLASINT_BASE+10)
40#define ATLASINT_PCID (ATLASINT_BASE+11)
41#define ATLASINT_ENUM (ATLASINT_BASE+12)
42#define ATLASINT_DEG (ATLASINT_BASE+13)
43#define ATLASINT_ATXFAIL (ATLASINT_BASE+14)
44#define ATLASINT_INTA (ATLASINT_BASE+15)
45#define ATLASINT_INTB (ATLASINT_BASE+16)
46#define ATLASINT_ETH ATLASINT_INTB
47#define ATLASINT_INTC (ATLASINT_BASE+17)
48#define ATLASINT_SCSI ATLASINT_INTC
49#define ATLASINT_INTD (ATLASINT_BASE+18)
50#define ATLASINT_SERR (ATLASINT_BASE+19)
51#define ATLASINT_RES20 (ATLASINT_BASE+20)
52#define ATLASINT_RES21 (ATLASINT_BASE+21)
53#define ATLASINT_RES22 (ATLASINT_BASE+22)
54#define ATLASINT_RES23 (ATLASINT_BASE+23)
55#define ATLASINT_RES24 (ATLASINT_BASE+24)
56#define ATLASINT_RES25 (ATLASINT_BASE+25)
57#define ATLASINT_RES26 (ATLASINT_BASE+26)
58#define ATLASINT_RES27 (ATLASINT_BASE+27)
59#define ATLASINT_RES28 (ATLASINT_BASE+28)
60#define ATLASINT_RES29 (ATLASINT_BASE+29)
61#define ATLASINT_RES30 (ATLASINT_BASE+30)
62#define ATLASINT_RES31 (ATLASINT_BASE+31)
63#define ATLASINT_END (ATLASINT_BASE+31)
64
65/*
66 * Atlas registers are memory mapped on 64-bit aligned boundaries and
67 * only word access are allowed.
68 */
69struct atlas_ictrl_regs {
70 volatile unsigned int intraw;
71 int dummy1;
72 volatile unsigned int intseten;
73 int dummy2;
74 volatile unsigned int intrsten;
75 int dummy3;
76 volatile unsigned int intenable;
77 int dummy4;
78 volatile unsigned int intstatus;
79 int dummy5;
80};
81
82extern void atlasint_init(void);
83
84#endif /* !(_MIPS_ATLASINT_H) */
diff --git a/include/asm-mips/mips-boards/bonito64.h b/include/asm-mips/mips-boards/bonito64.h
new file mode 100644
index 000000000000..cd7125610100
--- /dev/null
+++ b/include/asm-mips/mips-boards/bonito64.h
@@ -0,0 +1,431 @@
1/*
2 * Bonito Register Map
3 *
4 * This file is the original bonito.h from Algorithmics with minor changes
5 * to fit into linux.
6 *
7 * Copyright (c) 1999 Algorithmics Ltd
8 *
9 * Carsten Langgaard, carstenl@mips.com
10 * Copyright (C) 2001 MIPS Technologies, Inc. All rights reserved.
11 *
12 * Algorithmics gives permission for anyone to use and modify this file
13 * without any obligation or license condition except that you retain
14 * this copyright message in any source redistribution in whole or part.
15 *
16 */
17
18/* Revision 1.48 autogenerated on 08/17/99 15:20:01 */
19/* This bonito64 version editted from bonito.h Revision 1.48 on 11/09/00 */
20
21#ifndef _ASM_MIPS_BOARDS_BONITO64_H
22#define _ASM_MIPS_BOARDS_BONITO64_H
23
24#ifdef __ASSEMBLY__
25
26/* offsets from base register */
27#define BONITO(x) (x)
28
29#else /* !__ASSEMBLY__ */
30
31/*
32 * Algorithmics Bonito64 system controller register base.
33 */
34extern unsigned long _pcictrl_bonito;
35extern unsigned long _pcictrl_bonito_pcicfg;
36
37#define BONITO(x) *(volatile u32 *)(_pcictrl_bonito + (x))
38
39#endif /* __ASSEMBLY__ */
40
41
42#define BONITO_BOOT_BASE 0x1fc00000
43#define BONITO_BOOT_SIZE 0x00100000
44#define BONITO_BOOT_TOP (BONITO_BOOT_BASE+BONITO_BOOT_SIZE-1)
45#define BONITO_FLASH_BASE 0x1c000000
46#define BONITO_FLASH_SIZE 0x03000000
47#define BONITO_FLASH_TOP (BONITO_FLASH_BASE+BONITO_FLASH_SIZE-1)
48#define BONITO_SOCKET_BASE 0x1f800000
49#define BONITO_SOCKET_SIZE 0x00400000
50#define BONITO_SOCKET_TOP (BONITO_SOCKET_BASE+BONITO_SOCKET_SIZE-1)
51#define BONITO_REG_BASE 0x1fe00000
52#define BONITO_REG_SIZE 0x00040000
53#define BONITO_REG_TOP (BONITO_REG_BASE+BONITO_REG_SIZE-1)
54#define BONITO_DEV_BASE 0x1ff00000
55#define BONITO_DEV_SIZE 0x00100000
56#define BONITO_DEV_TOP (BONITO_DEV_BASE+BONITO_DEV_SIZE-1)
57#define BONITO_PCILO_BASE 0x10000000
58#define BONITO_PCILO_SIZE 0x0c000000
59#define BONITO_PCILO_TOP (BONITO_PCILO_BASE+BONITO_PCILO_SIZE-1)
60#define BONITO_PCILO0_BASE 0x10000000
61#define BONITO_PCILO1_BASE 0x14000000
62#define BONITO_PCILO2_BASE 0x18000000
63#define BONITO_PCIHI_BASE 0x20000000
64#define BONITO_PCIHI_SIZE 0x20000000
65#define BONITO_PCIHI_TOP (BONITO_PCIHI_BASE+BONITO_PCIHI_SIZE-1)
66#define BONITO_PCIIO_BASE 0x1fd00000
67#define BONITO_PCIIO_SIZE 0x00100000
68#define BONITO_PCIIO_TOP (BONITO_PCIIO_BASE+BONITO_PCIIO_SIZE-1)
69#define BONITO_PCICFG_BASE 0x1fe80000
70#define BONITO_PCICFG_SIZE 0x00080000
71#define BONITO_PCICFG_TOP (BONITO_PCICFG_BASE+BONITO_PCICFG_SIZE-1)
72
73
74/* Bonito Register Bases */
75
76#define BONITO_PCICONFIGBASE 0x00
77#define BONITO_REGBASE 0x100
78
79
80/* PCI Configuration Registers */
81
82#define BONITO_PCI_REG(x) BONITO(BONITO_PCICONFIGBASE + (x))
83#define BONITO_PCIDID BONITO_PCI_REG(0x00)
84#define BONITO_PCICMD BONITO_PCI_REG(0x04)
85#define BONITO_PCICLASS BONITO_PCI_REG(0x08)
86#define BONITO_PCILTIMER BONITO_PCI_REG(0x0c)
87#define BONITO_PCIBASE0 BONITO_PCI_REG(0x10)
88#define BONITO_PCIBASE1 BONITO_PCI_REG(0x14)
89#define BONITO_PCIBASE2 BONITO_PCI_REG(0x18)
90#define BONITO_PCIEXPRBASE BONITO_PCI_REG(0x30)
91#define BONITO_PCIINT BONITO_PCI_REG(0x3c)
92
93#define BONITO_PCICMD_PERR_CLR 0x80000000
94#define BONITO_PCICMD_SERR_CLR 0x40000000
95#define BONITO_PCICMD_MABORT_CLR 0x20000000
96#define BONITO_PCICMD_MTABORT_CLR 0x10000000
97#define BONITO_PCICMD_TABORT_CLR 0x08000000
98#define BONITO_PCICMD_MPERR_CLR 0x01000000
99#define BONITO_PCICMD_PERRRESPEN 0x00000040
100#define BONITO_PCICMD_ASTEPEN 0x00000080
101#define BONITO_PCICMD_SERREN 0x00000100
102#define BONITO_PCILTIMER_BUSLATENCY 0x0000ff00
103#define BONITO_PCILTIMER_BUSLATENCY_SHIFT 8
104
105
106
107
108/* 1. Bonito h/w Configuration */
109/* Power on register */
110
111#define BONITO_BONPONCFG BONITO(BONITO_REGBASE + 0x00)
112
113#define BONITO_BONPONCFG_SYSCONTROLLERRD 0x00040000
114#define BONITO_BONPONCFG_ROMCS1SAMP 0x00020000
115#define BONITO_BONPONCFG_ROMCS0SAMP 0x00010000
116#define BONITO_BONPONCFG_CPUBIGEND 0x00004000
117/* Added by RPF 11-9-00 */
118#define BONITO_BONPONCFG_BURSTORDER 0x00001000
119/* --- */
120#define BONITO_BONPONCFG_CPUPARITY 0x00002000
121#define BONITO_BONPONCFG_CPUTYPE 0x00000007
122#define BONITO_BONPONCFG_CPUTYPE_SHIFT 0
123#define BONITO_BONPONCFG_PCIRESET_OUT 0x00000008
124#define BONITO_BONPONCFG_IS_ARBITER 0x00000010
125#define BONITO_BONPONCFG_ROMBOOT 0x000000c0
126#define BONITO_BONPONCFG_ROMBOOT_SHIFT 6
127
128#define BONITO_BONPONCFG_ROMBOOT_FLASH (0x0<<BONITO_BONPONCFG_ROMBOOT_SHIFT)
129#define BONITO_BONPONCFG_ROMBOOT_SOCKET (0x1<<BONITO_BONPONCFG_ROMBOOT_SHIFT)
130#define BONITO_BONPONCFG_ROMBOOT_SDRAM (0x2<<BONITO_BONPONCFG_ROMBOOT_SHIFT)
131#define BONITO_BONPONCFG_ROMBOOT_CPURESET (0x3<<BONITO_BONPONCFG_ROMBOOT_SHIFT)
132
133#define BONITO_BONPONCFG_ROMCS0WIDTH 0x00000100
134#define BONITO_BONPONCFG_ROMCS1WIDTH 0x00000200
135#define BONITO_BONPONCFG_ROMCS0FAST 0x00000400
136#define BONITO_BONPONCFG_ROMCS1FAST 0x00000800
137#define BONITO_BONPONCFG_CONFIG_DIS 0x00000020
138
139
140/* Other Bonito configuration */
141
142#define BONITO_BONGENCFG_OFFSET 0x4
143#define BONITO_BONGENCFG BONITO(BONITO_REGBASE + BONITO_BONGENCFG_OFFSET)
144
145#define BONITO_BONGENCFG_DEBUGMODE 0x00000001
146#define BONITO_BONGENCFG_SNOOPEN 0x00000002
147#define BONITO_BONGENCFG_CPUSELFRESET 0x00000004
148
149#define BONITO_BONGENCFG_FORCE_IRQA 0x00000008
150#define BONITO_BONGENCFG_IRQA_ISOUT 0x00000010
151#define BONITO_BONGENCFG_IRQA_FROM_INT1 0x00000020
152#define BONITO_BONGENCFG_BYTESWAP 0x00000040
153
154#define BONITO_BONGENCFG_UNCACHED 0x00000080
155#define BONITO_BONGENCFG_PREFETCHEN 0x00000100
156#define BONITO_BONGENCFG_WBEHINDEN 0x00000200
157#define BONITO_BONGENCFG_CACHEALG 0x00000c00
158#define BONITO_BONGENCFG_CACHEALG_SHIFT 10
159#define BONITO_BONGENCFG_PCIQUEUE 0x00001000
160#define BONITO_BONGENCFG_CACHESTOP 0x00002000
161#define BONITO_BONGENCFG_MSTRBYTESWAP 0x00004000
162#define BONITO_BONGENCFG_BUSERREN 0x00008000
163#define BONITO_BONGENCFG_NORETRYTIMEOUT 0x00010000
164#define BONITO_BONGENCFG_SHORTCOPYTIMEOUT 0x00020000
165
166/* 2. IO & IDE configuration */
167
168#define BONITO_IODEVCFG BONITO(BONITO_REGBASE + 0x08)
169
170/* 3. IO & IDE configuration */
171
172#define BONITO_SDCFG BONITO(BONITO_REGBASE + 0x0c)
173
174/* 4. PCI address map control */
175
176#define BONITO_PCIMAP BONITO(BONITO_REGBASE + 0x10)
177#define BONITO_PCIMEMBASECFG BONITO(BONITO_REGBASE + 0x14)
178#define BONITO_PCIMAP_CFG BONITO(BONITO_REGBASE + 0x18)
179
180/* 5. ICU & GPIO regs */
181
182/* GPIO Regs - r/w */
183
184#define BONITO_GPIODATA_OFFSET 0x1c
185#define BONITO_GPIODATA BONITO(BONITO_REGBASE + BONITO_GPIODATA_OFFSET)
186#define BONITO_GPIOIE BONITO(BONITO_REGBASE + 0x20)
187
188/* ICU Configuration Regs - r/w */
189
190#define BONITO_INTEDGE BONITO(BONITO_REGBASE + 0x24)
191#define BONITO_INTSTEER BONITO(BONITO_REGBASE + 0x28)
192#define BONITO_INTPOL BONITO(BONITO_REGBASE + 0x2c)
193
194/* ICU Enable Regs - IntEn & IntISR are r/o. */
195
196#define BONITO_INTENSET BONITO(BONITO_REGBASE + 0x30)
197#define BONITO_INTENCLR BONITO(BONITO_REGBASE + 0x34)
198#define BONITO_INTEN BONITO(BONITO_REGBASE + 0x38)
199#define BONITO_INTISR BONITO(BONITO_REGBASE + 0x3c)
200
201/* PCI mail boxes */
202
203#define BONITO_PCIMAIL0_OFFSET 0x40
204#define BONITO_PCIMAIL1_OFFSET 0x44
205#define BONITO_PCIMAIL2_OFFSET 0x48
206#define BONITO_PCIMAIL3_OFFSET 0x4c
207#define BONITO_PCIMAIL0 BONITO(BONITO_REGBASE + 0x40)
208#define BONITO_PCIMAIL1 BONITO(BONITO_REGBASE + 0x44)
209#define BONITO_PCIMAIL2 BONITO(BONITO_REGBASE + 0x48)
210#define BONITO_PCIMAIL3 BONITO(BONITO_REGBASE + 0x4c)
211
212
213/* 6. PCI cache */
214
215#define BONITO_PCICACHECTRL BONITO(BONITO_REGBASE + 0x50)
216#define BONITO_PCICACHETAG BONITO(BONITO_REGBASE + 0x54)
217
218#define BONITO_PCIBADADDR BONITO(BONITO_REGBASE + 0x58)
219#define BONITO_PCIMSTAT BONITO(BONITO_REGBASE + 0x5c)
220
221
222/*
223#define BONITO_PCIRDPOST BONITO(BONITO_REGBASE + 0x60)
224#define BONITO_PCIDATA BONITO(BONITO_REGBASE + 0x64)
225*/
226
227/* 7. IDE DMA & Copier */
228
229#define BONITO_CONFIGBASE 0x000
230#define BONITO_BONITOBASE 0x100
231#define BONITO_LDMABASE 0x200
232#define BONITO_COPBASE 0x300
233#define BONITO_REG_BLOCKMASK 0x300
234
235#define BONITO_LDMACTRL BONITO(BONITO_LDMABASE + 0x0)
236#define BONITO_LDMASTAT BONITO(BONITO_LDMABASE + 0x0)
237#define BONITO_LDMAADDR BONITO(BONITO_LDMABASE + 0x4)
238#define BONITO_LDMAGO BONITO(BONITO_LDMABASE + 0x8)
239#define BONITO_LDMADATA BONITO(BONITO_LDMABASE + 0xc)
240
241#define BONITO_COPCTRL BONITO(BONITO_COPBASE + 0x0)
242#define BONITO_COPSTAT BONITO(BONITO_COPBASE + 0x0)
243#define BONITO_COPPADDR BONITO(BONITO_COPBASE + 0x4)
244#define BONITO_COPDADDR BONITO(BONITO_COPBASE + 0x8)
245#define BONITO_COPGO BONITO(BONITO_COPBASE + 0xc)
246
247
248/* ###### Bit Definitions for individual Registers #### */
249
250/* Gen DMA. */
251
252#define BONITO_IDECOPDADDR_DMA_DADDR 0x0ffffffc
253#define BONITO_IDECOPDADDR_DMA_DADDR_SHIFT 2
254#define BONITO_IDECOPPADDR_DMA_PADDR 0xfffffffc
255#define BONITO_IDECOPPADDR_DMA_PADDR_SHIFT 2
256#define BONITO_IDECOPGO_DMA_SIZE 0x0000fffe
257#define BONITO_IDECOPGO_DMA_SIZE_SHIFT 0
258#define BONITO_IDECOPGO_DMA_WRITE 0x00010000
259#define BONITO_IDECOPGO_DMAWCOUNT 0x000f0000
260#define BONITO_IDECOPGO_DMAWCOUNT_SHIFT 16
261
262#define BONITO_IDECOPCTRL_DMA_STARTBIT 0x80000000
263#define BONITO_IDECOPCTRL_DMA_RSTBIT 0x40000000
264
265/* DRAM - sdCfg */
266
267#define BONITO_SDCFG_AROWBITS 0x00000003
268#define BONITO_SDCFG_AROWBITS_SHIFT 0
269#define BONITO_SDCFG_ACOLBITS 0x0000000c
270#define BONITO_SDCFG_ACOLBITS_SHIFT 2
271#define BONITO_SDCFG_ABANKBIT 0x00000010
272#define BONITO_SDCFG_ASIDES 0x00000020
273#define BONITO_SDCFG_AABSENT 0x00000040
274#define BONITO_SDCFG_AWIDTH64 0x00000080
275
276#define BONITO_SDCFG_BROWBITS 0x00000300
277#define BONITO_SDCFG_BROWBITS_SHIFT 8
278#define BONITO_SDCFG_BCOLBITS 0x00000c00
279#define BONITO_SDCFG_BCOLBITS_SHIFT 10
280#define BONITO_SDCFG_BBANKBIT 0x00001000
281#define BONITO_SDCFG_BSIDES 0x00002000
282#define BONITO_SDCFG_BABSENT 0x00004000
283#define BONITO_SDCFG_BWIDTH64 0x00008000
284
285#define BONITO_SDCFG_EXTRDDATA 0x00010000
286#define BONITO_SDCFG_EXTRASCAS 0x00020000
287#define BONITO_SDCFG_EXTPRECH 0x00040000
288#define BONITO_SDCFG_EXTRASWIDTH 0x00180000
289#define BONITO_SDCFG_EXTRASWIDTH_SHIFT 19
290/* Changed by RPF 11-9-00 */
291#define BONITO_SDCFG_DRAMMODESET 0x00200000
292/* --- */
293#define BONITO_SDCFG_DRAMEXTREGS 0x00400000
294#define BONITO_SDCFG_DRAMPARITY 0x00800000
295/* Added by RPF 11-9-00 */
296#define BONITO_SDCFG_DRAMBURSTLEN 0x03000000
297#define BONITO_SDCFG_DRAMBURSTLEN_SHIFT 24
298#define BONITO_SDCFG_DRAMMODESET_DONE 0x80000000
299/* --- */
300
301/* PCI Cache - pciCacheCtrl */
302
303#define BONITO_PCICACHECTRL_CACHECMD 0x00000007
304#define BONITO_PCICACHECTRL_CACHECMD_SHIFT 0
305#define BONITO_PCICACHECTRL_CACHECMDLINE 0x00000018
306#define BONITO_PCICACHECTRL_CACHECMDLINE_SHIFT 3
307#define BONITO_PCICACHECTRL_CMDEXEC 0x00000020
308
309#define BONITO_PCICACHECTRL_IOBCCOH_PRES 0x00000100
310#define BONITO_PCICACHECTRL_IOBCCOH_EN 0x00000200
311#define BONITO_PCICACHECTRL_CPUCOH_PRES 0x00000400
312#define BONITO_PCICACHECTRL_CPUCOH_EN 0x00000800
313
314#define BONITO_IODEVCFG_BUFFBIT_CS0 0x00000001
315#define BONITO_IODEVCFG_SPEEDBIT_CS0 0x00000002
316#define BONITO_IODEVCFG_MOREABITS_CS0 0x00000004
317
318#define BONITO_IODEVCFG_BUFFBIT_CS1 0x00000008
319#define BONITO_IODEVCFG_SPEEDBIT_CS1 0x00000010
320#define BONITO_IODEVCFG_MOREABITS_CS1 0x00000020
321
322#define BONITO_IODEVCFG_BUFFBIT_CS2 0x00000040
323#define BONITO_IODEVCFG_SPEEDBIT_CS2 0x00000080
324#define BONITO_IODEVCFG_MOREABITS_CS2 0x00000100
325
326#define BONITO_IODEVCFG_BUFFBIT_CS3 0x00000200
327#define BONITO_IODEVCFG_SPEEDBIT_CS3 0x00000400
328#define BONITO_IODEVCFG_MOREABITS_CS3 0x00000800
329
330#define BONITO_IODEVCFG_BUFFBIT_IDE 0x00001000
331#define BONITO_IODEVCFG_SPEEDBIT_IDE 0x00002000
332#define BONITO_IODEVCFG_WORDSWAPBIT_IDE 0x00004000
333#define BONITO_IODEVCFG_MODEBIT_IDE 0x00008000
334#define BONITO_IODEVCFG_DMAON_IDE 0x001f0000
335#define BONITO_IODEVCFG_DMAON_IDE_SHIFT 16
336#define BONITO_IODEVCFG_DMAOFF_IDE 0x01e00000
337#define BONITO_IODEVCFG_DMAOFF_IDE_SHIFT 21
338#define BONITO_IODEVCFG_EPROMSPLIT 0x02000000
339/* Added by RPF 11-9-00 */
340#define BONITO_IODEVCFG_CPUCLOCKPERIOD 0xfc000000
341#define BONITO_IODEVCFG_CPUCLOCKPERIOD_SHIFT 26
342/* --- */
343
344/* gpio */
345#define BONITO_GPIO_GPIOW 0x000003ff
346#define BONITO_GPIO_GPIOW_SHIFT 0
347#define BONITO_GPIO_GPIOR 0x01ff0000
348#define BONITO_GPIO_GPIOR_SHIFT 16
349#define BONITO_GPIO_GPINR 0xfe000000
350#define BONITO_GPIO_GPINR_SHIFT 25
351#define BONITO_GPIO_IOW(N) (1<<(BONITO_GPIO_GPIOW_SHIFT+(N)))
352#define BONITO_GPIO_IOR(N) (1<<(BONITO_GPIO_GPIOR_SHIFT+(N)))
353#define BONITO_GPIO_INR(N) (1<<(BONITO_GPIO_GPINR_SHIFT+(N)))
354
355/* ICU */
356#define BONITO_ICU_MBOXES 0x0000000f
357#define BONITO_ICU_MBOXES_SHIFT 0
358#define BONITO_ICU_DMARDY 0x00000010
359#define BONITO_ICU_DMAEMPTY 0x00000020
360#define BONITO_ICU_COPYRDY 0x00000040
361#define BONITO_ICU_COPYEMPTY 0x00000080
362#define BONITO_ICU_COPYERR 0x00000100
363#define BONITO_ICU_PCIIRQ 0x00000200
364#define BONITO_ICU_MASTERERR 0x00000400
365#define BONITO_ICU_SYSTEMERR 0x00000800
366#define BONITO_ICU_DRAMPERR 0x00001000
367#define BONITO_ICU_RETRYERR 0x00002000
368#define BONITO_ICU_GPIOS 0x01ff0000
369#define BONITO_ICU_GPIOS_SHIFT 16
370#define BONITO_ICU_GPINS 0x7e000000
371#define BONITO_ICU_GPINS_SHIFT 25
372#define BONITO_ICU_MBOX(N) (1<<(BONITO_ICU_MBOXES_SHIFT+(N)))
373#define BONITO_ICU_GPIO(N) (1<<(BONITO_ICU_GPIOS_SHIFT+(N)))
374#define BONITO_ICU_GPIN(N) (1<<(BONITO_ICU_GPINS_SHIFT+(N)))
375
376/* pcimap */
377
378#define BONITO_PCIMAP_PCIMAP_LO0 0x0000003f
379#define BONITO_PCIMAP_PCIMAP_LO0_SHIFT 0
380#define BONITO_PCIMAP_PCIMAP_LO1 0x00000fc0
381#define BONITO_PCIMAP_PCIMAP_LO1_SHIFT 6
382#define BONITO_PCIMAP_PCIMAP_LO2 0x0003f000
383#define BONITO_PCIMAP_PCIMAP_LO2_SHIFT 12
384#define BONITO_PCIMAP_PCIMAP_2 0x00040000
385#define BONITO_PCIMAP_WIN(WIN,ADDR) ((((ADDR)>>26) & BONITO_PCIMAP_PCIMAP_LO0) << ((WIN)*6))
386
387#define BONITO_PCIMAP_WINSIZE (1<<26)
388#define BONITO_PCIMAP_WINOFFSET(ADDR) ((ADDR) & (BONITO_PCIMAP_WINSIZE - 1))
389#define BONITO_PCIMAP_WINBASE(ADDR) ((ADDR) << 26)
390
391/* pcimembaseCfg */
392
393#define BONITO_PCIMEMBASECFG_MASK 0xf0000000
394#define BONITO_PCIMEMBASECFG_MEMBASE0_MASK 0x0000001f
395#define BONITO_PCIMEMBASECFG_MEMBASE0_MASK_SHIFT 0
396#define BONITO_PCIMEMBASECFG_MEMBASE0_TRANS 0x000003e0
397#define BONITO_PCIMEMBASECFG_MEMBASE0_TRANS_SHIFT 5
398#define BONITO_PCIMEMBASECFG_MEMBASE0_CACHED 0x00000400
399#define BONITO_PCIMEMBASECFG_MEMBASE0_IO 0x00000800
400
401#define BONITO_PCIMEMBASECFG_MEMBASE1_MASK 0x0001f000
402#define BONITO_PCIMEMBASECFG_MEMBASE1_MASK_SHIFT 12
403#define BONITO_PCIMEMBASECFG_MEMBASE1_TRANS 0x003e0000
404#define BONITO_PCIMEMBASECFG_MEMBASE1_TRANS_SHIFT 17
405#define BONITO_PCIMEMBASECFG_MEMBASE1_CACHED 0x00400000
406#define BONITO_PCIMEMBASECFG_MEMBASE1_IO 0x00800000
407
408#define BONITO_PCIMEMBASECFG_ASHIFT 23
409#define BONITO_PCIMEMBASECFG_AMASK 0x007fffff
410#define BONITO_PCIMEMBASECFGSIZE(WIN,SIZE) (((~((SIZE)-1))>>(BONITO_PCIMEMBASECFG_ASHIFT-BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK)
411#define BONITO_PCIMEMBASECFGBASE(WIN,BASE) (((BASE)>>(BONITO_PCIMEMBASECFG_ASHIFT-BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS_SHIFT)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS)
412
413#define BONITO_PCIMEMBASECFG_SIZE(WIN,CFG) (((((~(CFG)) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK)) << (BONITO_PCIMEMBASECFG_ASHIFT - BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT)) | BONITO_PCIMEMBASECFG_AMASK)
414
415
416#define BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)
417#define BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_MASK_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)
418#define BONITO_PCIMEMBASECFG_ADDRTRANS(WIN,CFG) ((((CFG) & BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS) >> BONITO_PCIMEMBASECFG_MEMBASE##WIN##_TRANS_SHIFT) << BONITO_PCIMEMBASECFG_ASHIFT)
419
420#define BONITO_PCITOPHYS(WIN,ADDR,CFG) ( \
421 (((ADDR) & (~(BONITO_PCIMEMBASECFG_MASK))) & (~(BONITO_PCIMEMBASECFG_ADDRMASK(WIN,CFG)))) | \
422 (BONITO_PCIMEMBASECFG_ADDRTRANS(WIN,CFG)) \
423 )
424
425/* PCICmd */
426
427#define BONITO_PCICMD_MEMEN 0x00000002
428#define BONITO_PCICMD_MSTREN 0x00000004
429
430
431#endif /* _ASM_MIPS_BOARDS_BONITO64_H */
diff --git a/include/asm-mips/mips-boards/generic.h b/include/asm-mips/mips-boards/generic.h
new file mode 100644
index 000000000000..65d1d16eab16
--- /dev/null
+++ b/include/asm-mips/mips-boards/generic.h
@@ -0,0 +1,82 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * This program is free software; you can distribute it and/or modify it
6 * under the terms of the GNU General Public License (Version 2) as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
17 *
18 * Defines of the MIPS boards specific address-MAP, registers, etc.
19 */
20#ifndef __ASM_MIPS_BOARDS_GENERIC_H
21#define __ASM_MIPS_BOARDS_GENERIC_H
22
23#include <linux/config.h>
24#include <asm/addrspace.h>
25#include <asm/byteorder.h>
26#include <asm/mips-boards/bonito64.h>
27
28/*
29 * Display register base.
30 */
31#ifdef CONFIG_MIPS_SEAD
32#define ASCII_DISPLAY_POS_BASE 0x1f0005c0
33#else
34#define ASCII_DISPLAY_WORD_BASE 0x1f000410
35#define ASCII_DISPLAY_POS_BASE 0x1f000418
36#endif
37
38
39/*
40 * Yamon Prom print address.
41 */
42#define YAMON_PROM_PRINT_ADDR 0x1fc00504
43
44
45/*
46 * Reset register.
47 */
48#ifdef CONFIG_MIPS_SEAD
49#define SOFTRES_REG 0x1e800050
50#define GORESET 0x4d
51#else
52#define SOFTRES_REG 0x1f000500
53#define GORESET 0x42
54#endif
55
56/*
57 * Revision register.
58 */
59#define MIPS_REVISION_REG 0x1fc00010
60#define MIPS_REVISION_CORID_QED_RM5261 0
61#define MIPS_REVISION_CORID_CORE_LV 1
62#define MIPS_REVISION_CORID_BONITO64 2
63#define MIPS_REVISION_CORID_CORE_20K 3
64#define MIPS_REVISION_CORID_CORE_FPGA 4
65#define MIPS_REVISION_CORID_CORE_MSC 5
66#define MIPS_REVISION_CORID_CORE_EMUL 6
67#define MIPS_REVISION_CORID_CORE_FPGA2 7
68#define MIPS_REVISION_CORID_CORE_FPGAR2 8
69
70/**** Artificial corid defines ****/
71/*
72 * CoreEMUL with Bonito System Controller is treated like a Core20K
73 * CoreEMUL with SOC-it 101 System Controller is treated like a CoreMSC
74 */
75#define MIPS_REVISION_CORID_CORE_EMUL_BON 0x63
76#define MIPS_REVISION_CORID_CORE_EMUL_MSC 0x65
77
78#define MIPS_REVISION_CORID (((*(volatile u32 *)ioremap(MIPS_REVISION_REG, 4)) >> 10) & 0x3f)
79
80extern unsigned int mips_revision_corid;
81
82#endif /* __ASM_MIPS_BOARDS_GENERIC_H */
diff --git a/include/asm-mips/mips-boards/malta.h b/include/asm-mips/mips-boards/malta.h
new file mode 100644
index 000000000000..b0ba3c5a921e
--- /dev/null
+++ b/include/asm-mips/mips-boards/malta.h
@@ -0,0 +1,75 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * This program is free software; you can distribute it and/or modify it
6 * under the terms of the GNU General Public License (Version 2) as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
17 *
18 * Defines of the Malta board specific address-MAP, registers, etc.
19 */
20#ifndef __ASM_MIPS_BOARDS_MALTA_H
21#define __ASM_MIPS_BOARDS_MALTA_H
22
23#include <asm/addrspace.h>
24#include <asm/io.h>
25#include <asm/mips-boards/msc01_pci.h>
26#include <asm/gt64120.h>
27
28/*
29 * Malta I/O ports base address for the Galileo GT64120 and Algorithmics
30 * Bonito system controllers.
31 */
32#define MALTA_GT_PORT_BASE get_gt_port_base(GT_PCI0IOLD_OFS)
33#define MALTA_BONITO_PORT_BASE ((unsigned long)ioremap (0x1fd00000, 0x10000))
34#define MALTA_MSC_PORT_BASE get_msc_port_base(MSC01_PCI_SC2PIOBASL)
35
36static inline unsigned long get_gt_port_base(unsigned long reg)
37{
38 unsigned long addr;
39 addr = GT_READ(reg);
40 return (unsigned long) ioremap (((addr & 0xffff) << 21), 0x10000);
41}
42
43static inline unsigned long get_msc_port_base(unsigned long reg)
44{
45 unsigned long addr;
46 MSC_READ(reg, addr);
47 return (unsigned long) ioremap(addr, 0x10000);
48}
49
50/*
51 * Malta RTC-device indirect register access.
52 */
53#define MALTA_RTC_ADR_REG 0x70
54#define MALTA_RTC_DAT_REG 0x71
55
56/*
57 * Malta SMSC FDC37M817 Super I/O Controller register.
58 */
59#define SMSC_CONFIG_REG 0x3f0
60#define SMSC_DATA_REG 0x3f1
61
62#define SMSC_CONFIG_DEVNUM 0x7
63#define SMSC_CONFIG_ACTIVATE 0x30
64#define SMSC_CONFIG_ENTER 0x55
65#define SMSC_CONFIG_EXIT 0xaa
66
67#define SMSC_CONFIG_DEVNUM_FLOPPY 0
68
69#define SMSC_CONFIG_ACTIVATE_ENABLE 1
70
71#define SMSC_WRITE(x,a) outb(x,a)
72
73#define MALTA_JMPRS_REG 0x1f000210
74
75#endif /* __ASM_MIPS_BOARDS_MALTA_H */
diff --git a/include/asm-mips/mips-boards/maltaint.h b/include/asm-mips/mips-boards/maltaint.h
new file mode 100644
index 000000000000..376181882e81
--- /dev/null
+++ b/include/asm-mips/mips-boards/maltaint.h
@@ -0,0 +1,33 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * Defines for the Malta interrupt controller.
23 *
24 */
25#ifndef _MIPS_MALTAINT_H
26#define _MIPS_MALTAINT_H
27
28/* Number of IRQ supported on hw interrupt 0. */
29#define MALTAINT_END 16
30
31extern void maltaint_init(void);
32
33#endif /* !(_MIPS_MALTAINT_H) */
diff --git a/include/asm-mips/mips-boards/msc01_pci.h b/include/asm-mips/mips-boards/msc01_pci.h
new file mode 100644
index 000000000000..6b2a87a38f4b
--- /dev/null
+++ b/include/asm-mips/mips-boards/msc01_pci.h
@@ -0,0 +1,256 @@
1/*
2 * PCI Register definitions for the MIPS System Controller.
3 *
4 * Carsten Langgaard, carstenl@mips.com
5 * Copyright (C) 2002 MIPS Technologies, Inc. All rights reserved.
6 *
7 * This file is subject to the terms and conditions of the GNU General Public
8 * License. See the file "COPYING" in the main directory of this archive
9 * for more details.
10 */
11#ifndef __ASM_MIPS_BOARDS_MSC01_PCI_H
12#define __ASM_MIPS_BOARDS_MSC01_PCI_H
13
14/*
15 * Register offset addresses
16 */
17
18#define MSC01_PCI_ID_OFS 0x0000
19#define MSC01_PCI_SC2PMBASL_OFS 0x0208
20#define MSC01_PCI_SC2PMMSKL_OFS 0x0218
21#define MSC01_PCI_SC2PMMAPL_OFS 0x0228
22#define MSC01_PCI_SC2PIOBASL_OFS 0x0248
23#define MSC01_PCI_SC2PIOMSKL_OFS 0x0258
24#define MSC01_PCI_SC2PIOMAPL_OFS 0x0268
25#define MSC01_PCI_P2SCMSKL_OFS 0x0308
26#define MSC01_PCI_P2SCMAPL_OFS 0x0318
27#define MSC01_PCI_INTCFG_OFS 0x0600
28#define MSC01_PCI_INTSTAT_OFS 0x0608
29#define MSC01_PCI_CFGADDR_OFS 0x0610
30#define MSC01_PCI_CFGDATA_OFS 0x0618
31#define MSC01_PCI_IACK_OFS 0x0620
32#define MSC01_PCI_HEAD0_OFS 0x2000 /* DevID, VendorID */
33#define MSC01_PCI_HEAD1_OFS 0x2008 /* Status, Command */
34#define MSC01_PCI_HEAD2_OFS 0x2010 /* Class code, RevID */
35#define MSC01_PCI_HEAD3_OFS 0x2018 /* bist, header, latency */
36#define MSC01_PCI_HEAD4_OFS 0x2020 /* BAR 0 */
37#define MSC01_PCI_HEAD5_OFS 0x2028 /* BAR 1 */
38#define MSC01_PCI_HEAD6_OFS 0x2030 /* BAR 2 */
39#define MSC01_PCI_HEAD7_OFS 0x2038 /* BAR 3 */
40#define MSC01_PCI_HEAD8_OFS 0x2040 /* BAR 4 */
41#define MSC01_PCI_HEAD9_OFS 0x2048 /* BAR 5 */
42#define MSC01_PCI_HEAD10_OFS 0x2050 /* CardBus CIS Ptr */
43#define MSC01_PCI_HEAD11_OFS 0x2058 /* SubSystem ID, -VendorID */
44#define MSC01_PCI_HEAD12_OFS 0x2060 /* ROM BAR */
45#define MSC01_PCI_HEAD13_OFS 0x2068 /* Capabilities ptr */
46#define MSC01_PCI_HEAD14_OFS 0x2070 /* reserved */
47#define MSC01_PCI_HEAD15_OFS 0x2078 /* Maxl, ming, intpin, int */
48#define MSC01_PCI_BAR0_OFS 0x2220
49#define MSC01_PCI_CFG_OFS 0x2380
50#define MSC01_PCI_SWAP_OFS 0x2388
51
52
53/*****************************************************************************
54 * Register encodings
55 ****************************************************************************/
56
57#define MSC01_PCI_ID_ID_SHF 16
58#define MSC01_PCI_ID_ID_MSK 0x00ff0000
59#define MSC01_PCI_ID_ID_HOSTBRIDGE 82
60#define MSC01_PCI_ID_MAR_SHF 8
61#define MSC01_PCI_ID_MAR_MSK 0x0000ff00
62#define MSC01_PCI_ID_MIR_SHF 0
63#define MSC01_PCI_ID_MIR_MSK 0x000000ff
64
65#define MSC01_PCI_SC2PMBASL_BAS_SHF 24
66#define MSC01_PCI_SC2PMBASL_BAS_MSK 0xff000000
67
68#define MSC01_PCI_SC2PMMSKL_MSK_SHF 24
69#define MSC01_PCI_SC2PMMSKL_MSK_MSK 0xff000000
70
71#define MSC01_PCI_SC2PMMAPL_MAP_SHF 24
72#define MSC01_PCI_SC2PMMAPL_MAP_MSK 0xff000000
73
74#define MSC01_PCI_SC2PIOBASL_BAS_SHF 24
75#define MSC01_PCI_SC2PIOBASL_BAS_MSK 0xff000000
76
77#define MSC01_PCI_SC2PIOMSKL_MSK_SHF 24
78#define MSC01_PCI_SC2PIOMSKL_MSK_MSK 0xff000000
79
80#define MSC01_PCI_SC2PIOMAPL_MAP_SHF 24
81#define MSC01_PCI_SC2PIOMAPL_MAP_MSK 0xff000000
82
83#define MSC01_PCI_P2SCMSKL_MSK_SHF 24
84#define MSC01_PCI_P2SCMSKL_MSK_MSK 0xff000000
85
86#define MSC01_PCI_P2SCMAPL_MAP_SHF 24
87#define MSC01_PCI_P2SCMAPL_MAP_MSK 0xff000000
88
89#define MSC01_PCI_INTCFG_RST_SHF 10
90#define MSC01_PCI_INTCFG_RST_MSK 0x00000400
91#define MSC01_PCI_INTCFG_RST_BIT 0x00000400
92#define MSC01_PCI_INTCFG_MWE_SHF 9
93#define MSC01_PCI_INTCFG_MWE_MSK 0x00000200
94#define MSC01_PCI_INTCFG_MWE_BIT 0x00000200
95#define MSC01_PCI_INTCFG_DTO_SHF 8
96#define MSC01_PCI_INTCFG_DTO_MSK 0x00000100
97#define MSC01_PCI_INTCFG_DTO_BIT 0x00000100
98#define MSC01_PCI_INTCFG_MA_SHF 7
99#define MSC01_PCI_INTCFG_MA_MSK 0x00000080
100#define MSC01_PCI_INTCFG_MA_BIT 0x00000080
101#define MSC01_PCI_INTCFG_TA_SHF 6
102#define MSC01_PCI_INTCFG_TA_MSK 0x00000040
103#define MSC01_PCI_INTCFG_TA_BIT 0x00000040
104#define MSC01_PCI_INTCFG_RTY_SHF 5
105#define MSC01_PCI_INTCFG_RTY_MSK 0x00000020
106#define MSC01_PCI_INTCFG_RTY_BIT 0x00000020
107#define MSC01_PCI_INTCFG_MWP_SHF 4
108#define MSC01_PCI_INTCFG_MWP_MSK 0x00000010
109#define MSC01_PCI_INTCFG_MWP_BIT 0x00000010
110#define MSC01_PCI_INTCFG_MRP_SHF 3
111#define MSC01_PCI_INTCFG_MRP_MSK 0x00000008
112#define MSC01_PCI_INTCFG_MRP_BIT 0x00000008
113#define MSC01_PCI_INTCFG_SWP_SHF 2
114#define MSC01_PCI_INTCFG_SWP_MSK 0x00000004
115#define MSC01_PCI_INTCFG_SWP_BIT 0x00000004
116#define MSC01_PCI_INTCFG_SRP_SHF 1
117#define MSC01_PCI_INTCFG_SRP_MSK 0x00000002
118#define MSC01_PCI_INTCFG_SRP_BIT 0x00000002
119#define MSC01_PCI_INTCFG_SE_SHF 0
120#define MSC01_PCI_INTCFG_SE_MSK 0x00000001
121#define MSC01_PCI_INTCFG_SE_BIT 0x00000001
122
123#define MSC01_PCI_INTSTAT_RST_SHF 10
124#define MSC01_PCI_INTSTAT_RST_MSK 0x00000400
125#define MSC01_PCI_INTSTAT_RST_BIT 0x00000400
126#define MSC01_PCI_INTSTAT_MWE_SHF 9
127#define MSC01_PCI_INTSTAT_MWE_MSK 0x00000200
128#define MSC01_PCI_INTSTAT_MWE_BIT 0x00000200
129#define MSC01_PCI_INTSTAT_DTO_SHF 8
130#define MSC01_PCI_INTSTAT_DTO_MSK 0x00000100
131#define MSC01_PCI_INTSTAT_DTO_BIT 0x00000100
132#define MSC01_PCI_INTSTAT_MA_SHF 7
133#define MSC01_PCI_INTSTAT_MA_MSK 0x00000080
134#define MSC01_PCI_INTSTAT_MA_BIT 0x00000080
135#define MSC01_PCI_INTSTAT_TA_SHF 6
136#define MSC01_PCI_INTSTAT_TA_MSK 0x00000040
137#define MSC01_PCI_INTSTAT_TA_BIT 0x00000040
138#define MSC01_PCI_INTSTAT_RTY_SHF 5
139#define MSC01_PCI_INTSTAT_RTY_MSK 0x00000020
140#define MSC01_PCI_INTSTAT_RTY_BIT 0x00000020
141#define MSC01_PCI_INTSTAT_MWP_SHF 4
142#define MSC01_PCI_INTSTAT_MWP_MSK 0x00000010
143#define MSC01_PCI_INTSTAT_MWP_BIT 0x00000010
144#define MSC01_PCI_INTSTAT_MRP_SHF 3
145#define MSC01_PCI_INTSTAT_MRP_MSK 0x00000008
146#define MSC01_PCI_INTSTAT_MRP_BIT 0x00000008
147#define MSC01_PCI_INTSTAT_SWP_SHF 2
148#define MSC01_PCI_INTSTAT_SWP_MSK 0x00000004
149#define MSC01_PCI_INTSTAT_SWP_BIT 0x00000004
150#define MSC01_PCI_INTSTAT_SRP_SHF 1
151#define MSC01_PCI_INTSTAT_SRP_MSK 0x00000002
152#define MSC01_PCI_INTSTAT_SRP_BIT 0x00000002
153#define MSC01_PCI_INTSTAT_SE_SHF 0
154#define MSC01_PCI_INTSTAT_SE_MSK 0x00000001
155#define MSC01_PCI_INTSTAT_SE_BIT 0x00000001
156
157#define MSC01_PCI_CFGADDR_BNUM_SHF 16
158#define MSC01_PCI_CFGADDR_BNUM_MSK 0x00ff0000
159#define MSC01_PCI_CFGADDR_DNUM_SHF 11
160#define MSC01_PCI_CFGADDR_DNUM_MSK 0x0000f800
161#define MSC01_PCI_CFGADDR_FNUM_SHF 8
162#define MSC01_PCI_CFGADDR_FNUM_MSK 0x00000700
163#define MSC01_PCI_CFGADDR_RNUM_SHF 2
164#define MSC01_PCI_CFGADDR_RNUM_MSK 0x000000fc
165
166#define MSC01_PCI_CFGDATA_DATA_SHF 0
167#define MSC01_PCI_CFGDATA_DATA_MSK 0xffffffff
168
169/* The defines below are ONLY valid for a MEM bar! */
170#define MSC01_PCI_BAR0_SIZE_SHF 4
171#define MSC01_PCI_BAR0_SIZE_MSK 0xfffffff0
172#define MSC01_PCI_BAR0_P_SHF 3
173#define MSC01_PCI_BAR0_P_MSK 0x00000008
174#define MSC01_PCI_BAR0_P_BIT MSC01_PCI_BAR0_P_MSK
175#define MSC01_PCI_BAR0_D_SHF 1
176#define MSC01_PCI_BAR0_D_MSK 0x00000006
177#define MSC01_PCI_BAR0_T_SHF 0
178#define MSC01_PCI_BAR0_T_MSK 0x00000001
179#define MSC01_PCI_BAR0_T_BIT MSC01_PCI_BAR0_T_MSK
180
181
182#define MSC01_PCI_CFG_RA_SHF 17
183#define MSC01_PCI_CFG_RA_MSK 0x00020000
184#define MSC01_PCI_CFG_RA_BIT MSC01_PCI_CFG_RA_MSK
185#define MSC01_PCI_CFG_G_SHF 16
186#define MSC01_PCI_CFG_G_MSK 0x00010000
187#define MSC01_PCI_CFG_G_BIT MSC01_PCI_CFG_G_MSK
188#define MSC01_PCI_CFG_EN_SHF 15
189#define MSC01_PCI_CFG_EN_MSK 0x00008000
190#define MSC01_PCI_CFG_EN_BIT MSC01_PCI_CFG_EN_MSK
191#define MSC01_PCI_CFG_MAXRTRY_SHF 0
192#define MSC01_PCI_CFG_MAXRTRY_MSK 0x000000ff
193
194#define MSC01_PCI_SWAP_IO_SHF 18
195#define MSC01_PCI_SWAP_IO_MSK 0x000c0000
196#define MSC01_PCI_SWAP_MEM_SHF 16
197#define MSC01_PCI_SWAP_MEM_MSK 0x00030000
198#define MSC01_PCI_SWAP_BAR0_SHF 0
199#define MSC01_PCI_SWAP_BAR0_MSK 0x00000003
200#define MSC01_PCI_SWAP_NOSWAP 0
201#define MSC01_PCI_SWAP_BYTESWAP 1
202
203/*
204 * MIPS System controller PCI register base.
205 *
206 * FIXME - are these macros specific to Malta and co or to the MSC? If the
207 * latter, they should be moved elsewhere.
208 */
209#define MIPS_MSC01_PCI_REG_BASE 0x1bd00000
210
211extern unsigned long _pcictrl_msc;
212
213#define MSC01_PCI_REG_BASE _pcictrl_msc
214
215#define MSC_WRITE(reg, data) do { *(volatile u32 *)(reg) = data; } while (0)
216#define MSC_READ(reg, data) do { data = *(volatile u32 *)(reg); } while (0)
217
218/*
219 * Registers absolute addresses
220 */
221
222#define MSC01_PCI_ID (MSC01_PCI_REG_BASE + MSC01_PCI_ID_OFS)
223#define MSC01_PCI_SC2PMBASL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PMBASL_OFS)
224#define MSC01_PCI_SC2PMMSKL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PMMSKL_OFS)
225#define MSC01_PCI_SC2PMMAPL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PMMAPL_OFS)
226#define MSC01_PCI_SC2PIOBASL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PIOBASL_OFS)
227#define MSC01_PCI_SC2PIOMSKL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PIOMSKL_OFS)
228#define MSC01_PCI_SC2PIOMAPL (MSC01_PCI_REG_BASE + MSC01_PCI_SC2PIOMAPL_OFS)
229#define MSC01_PCI_P2SCMSKL (MSC01_PCI_REG_BASE + MSC01_PCI_P2SCMSKL_OFS)
230#define MSC01_PCI_P2SCMAPL (MSC01_PCI_REG_BASE + MSC01_PCI_P2SCMAPL_OFS)
231#define MSC01_PCI_INTCFG (MSC01_PCI_REG_BASE + MSC01_PCI_INTCFG_OFS)
232#define MSC01_PCI_INTSTAT (MSC01_PCI_REG_BASE + MSC01_PCI_INTSTAT_OFS)
233#define MSC01_PCI_CFGADDR (MSC01_PCI_REG_BASE + MSC01_PCI_CFGADDR_OFS)
234#define MSC01_PCI_CFGDATA (MSC01_PCI_REG_BASE + MSC01_PCI_CFGDATA_OFS)
235#define MSC01_PCI_IACK (MSC01_PCI_REG_BASE + MSC01_PCI_IACK_OFS)
236#define MSC01_PCI_HEAD0 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD0_OFS)
237#define MSC01_PCI_HEAD1 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD1_OFS)
238#define MSC01_PCI_HEAD2 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD2_OFS)
239#define MSC01_PCI_HEAD3 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD3_OFS)
240#define MSC01_PCI_HEAD4 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD4_OFS)
241#define MSC01_PCI_HEAD5 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD5_OFS)
242#define MSC01_PCI_HEAD6 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD6_OFS)
243#define MSC01_PCI_HEAD7 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD7_OFS)
244#define MSC01_PCI_HEAD8 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD8_OFS)
245#define MSC01_PCI_HEAD9 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD9_OFS)
246#define MSC01_PCI_HEAD10 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD10_OFS)
247#define MSC01_PCI_HEAD11 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD11_OFS)
248#define MSC01_PCI_HEAD12 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD11_OFS)
249#define MSC01_PCI_HEAD13 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD11_OFS)
250#define MSC01_PCI_HEAD14 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD11_OFS)
251#define MSC01_PCI_HEAD15 (MSC01_PCI_REG_BASE + MSC01_PCI_HEAD11_OFS)
252#define MSC01_PCI_BAR0 (MSC01_PCI_REG_BASE + MSC01_PCI_BAR0_OFS)
253#define MSC01_PCI_CFG (MSC01_PCI_REG_BASE + MSC01_PCI_CFG_OFS)
254#define MSC01_PCI_SWAP (MSC01_PCI_REG_BASE + MSC01_PCI_SWAP_OFS)
255
256#endif /* __ASM_MIPS_BOARDS_MSC01_PCI_H */
diff --git a/include/asm-mips/mips-boards/piix4.h b/include/asm-mips/mips-boards/piix4.h
new file mode 100644
index 000000000000..2971d60f2e95
--- /dev/null
+++ b/include/asm-mips/mips-boards/piix4.h
@@ -0,0 +1,80 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * This program is free software; you can distribute it and/or modify it
6 * under the terms of the GNU General Public License (Version 2) as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
17 *
18 * Register definitions for Intel PIIX4 South Bridge Device.
19 */
20#ifndef __ASM_MIPS_BOARDS_PIIX4_H
21#define __ASM_MIPS_BOARDS_PIIX4_H
22
23/************************************************************************
24 * IO register offsets
25 ************************************************************************/
26#define PIIX4_ICTLR1_ICW1 0x20
27#define PIIX4_ICTLR1_ICW2 0x21
28#define PIIX4_ICTLR1_ICW3 0x21
29#define PIIX4_ICTLR1_ICW4 0x21
30#define PIIX4_ICTLR2_ICW1 0xa0
31#define PIIX4_ICTLR2_ICW2 0xa1
32#define PIIX4_ICTLR2_ICW3 0xa1
33#define PIIX4_ICTLR2_ICW4 0xa1
34#define PIIX4_ICTLR1_OCW1 0x21
35#define PIIX4_ICTLR1_OCW2 0x20
36#define PIIX4_ICTLR1_OCW3 0x20
37#define PIIX4_ICTLR1_OCW4 0x20
38#define PIIX4_ICTLR2_OCW1 0xa1
39#define PIIX4_ICTLR2_OCW2 0xa0
40#define PIIX4_ICTLR2_OCW3 0xa0
41#define PIIX4_ICTLR2_OCW4 0xa0
42
43
44/************************************************************************
45 * Register encodings.
46 ************************************************************************/
47#define PIIX4_OCW2_NSEOI (0x1 << 5)
48#define PIIX4_OCW2_SEOI (0x3 << 5)
49#define PIIX4_OCW2_RNSEOI (0x5 << 5)
50#define PIIX4_OCW2_RAEOIS (0x4 << 5)
51#define PIIX4_OCW2_RAEOIC (0x0 << 5)
52#define PIIX4_OCW2_RSEOI (0x7 << 5)
53#define PIIX4_OCW2_SP (0x6 << 5)
54#define PIIX4_OCW2_NOP (0x2 << 5)
55
56#define PIIX4_OCW2_SEL (0x0 << 3)
57
58#define PIIX4_OCW2_ILS_0 0
59#define PIIX4_OCW2_ILS_1 1
60#define PIIX4_OCW2_ILS_2 2
61#define PIIX4_OCW2_ILS_3 3
62#define PIIX4_OCW2_ILS_4 4
63#define PIIX4_OCW2_ILS_5 5
64#define PIIX4_OCW2_ILS_6 6
65#define PIIX4_OCW2_ILS_7 7
66#define PIIX4_OCW2_ILS_8 0
67#define PIIX4_OCW2_ILS_9 1
68#define PIIX4_OCW2_ILS_10 2
69#define PIIX4_OCW2_ILS_11 3
70#define PIIX4_OCW2_ILS_12 4
71#define PIIX4_OCW2_ILS_13 5
72#define PIIX4_OCW2_ILS_14 6
73#define PIIX4_OCW2_ILS_15 7
74
75#define PIIX4_OCW3_SEL (0x1 << 3)
76
77#define PIIX4_OCW3_IRR 0x2
78#define PIIX4_OCW3_ISR 0x3
79
80#endif /* __ASM_MIPS_BOARDS_PIIX4_H */
diff --git a/include/asm-mips/mips-boards/prom.h b/include/asm-mips/mips-boards/prom.h
new file mode 100644
index 000000000000..4168c7fcd43e
--- /dev/null
+++ b/include/asm-mips/mips-boards/prom.h
@@ -0,0 +1,49 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * MIPS boards bootprom interface for the Linux kernel.
23 *
24 */
25
26#ifndef _MIPS_PROM_H
27#define _MIPS_PROM_H
28
29extern char *prom_getcmdline(void);
30extern char *prom_getenv(char *name);
31extern void setup_prom_printf(int tty_no);
32extern void prom_printf(char *fmt, ...);
33extern void prom_init_cmdline(void);
34extern void prom_meminit(void);
35extern void prom_fixup_mem_map(unsigned long start_mem, unsigned long end_mem);
36extern unsigned long prom_free_prom_memory (void);
37extern void mips_display_message(const char *str);
38extern void mips_display_word(unsigned int num);
39extern int get_ethernet_addr(char *ethernet_addr);
40
41/* Memory descriptor management. */
42#define PROM_MAX_PMEMBLOCKS 32
43struct prom_pmemblock {
44 unsigned long base; /* Within KSEG0. */
45 unsigned int size; /* In bytes. */
46 unsigned int type; /* free or prom memory */
47};
48
49#endif /* !(_MIPS_PROM_H) */
diff --git a/include/asm-mips/mips-boards/saa9730_uart.h b/include/asm-mips/mips-boards/saa9730_uart.h
new file mode 100644
index 000000000000..c913143d58ec
--- /dev/null
+++ b/include/asm-mips/mips-boards/saa9730_uart.h
@@ -0,0 +1,69 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2000 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * Register definitions for the UART part of the Philips SAA9730 chip.
23 *
24 */
25
26#ifndef SAA9730_UART_H
27#define SAA9730_UART_H
28
29/* The SAA9730 UART register map, as seen via the PCI bus */
30
31#define SAA9730_UART_REGS_ADDR 0x21800
32
33struct uart_saa9730_regmap {
34 volatile unsigned char Thr_Rbr;
35 volatile unsigned char Ier;
36 volatile unsigned char Iir_Fcr;
37 volatile unsigned char Lcr;
38 volatile unsigned char Mcr;
39 volatile unsigned char Lsr;
40 volatile unsigned char Msr;
41 volatile unsigned char Scr;
42 volatile unsigned char BaudDivLsb;
43 volatile unsigned char BaudDivMsb;
44 volatile unsigned char Junk0;
45 volatile unsigned char Junk1;
46 volatile unsigned int Config; /* 0x2180c */
47 volatile unsigned int TxStart; /* 0x21810 */
48 volatile unsigned int TxLength; /* 0x21814 */
49 volatile unsigned int TxCounter; /* 0x21818 */
50 volatile unsigned int RxStart; /* 0x2181c */
51 volatile unsigned int RxLength; /* 0x21820 */
52 volatile unsigned int RxCounter; /* 0x21824 */
53};
54typedef volatile struct uart_saa9730_regmap t_uart_saa9730_regmap;
55
56/*
57 * Only a subset of the UART control bits are defined here,
58 * enough to make the serial debug port work.
59 */
60
61#define SAA9730_LCR_DATA8 0x03
62
63#define SAA9730_MCR_DTR 0x01
64#define SAA9730_MCR_RTS 0x02
65
66#define SAA9730_LSR_DR 0x01
67#define SAA9730_LSR_THRE 0x20
68
69#endif /* !(SAA9730_UART_H) */
diff --git a/include/asm-mips/mips-boards/sead.h b/include/asm-mips/mips-boards/sead.h
new file mode 100644
index 000000000000..68c69de0b66f
--- /dev/null
+++ b/include/asm-mips/mips-boards/sead.h
@@ -0,0 +1,36 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2002 MIPS Technologies, Inc. All rights reserved.
4 *
5 * ########################################################################
6 *
7 * This program is free software; you can distribute it and/or modify it
8 * under the terms of the GNU General Public License (Version 2) as
9 * published by the Free Software Foundation.
10 *
11 * This program is distributed in the hope it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * for more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
19 *
20 * ########################################################################
21 *
22 * Defines of the SEAD board specific address-MAP, registers, etc.
23 *
24 */
25#ifndef _MIPS_SEAD_H
26#define _MIPS_SEAD_H
27
28#include <asm/addrspace.h>
29
30/*
31 * SEAD UART register base.
32 */
33#define SEAD_UART0_REGS_BASE (0x1f000800)
34#define SEAD_BASE_BAUD ( 3686400 / 16 )
35
36#endif /* !(_MIPS_SEAD_H) */
diff --git a/include/asm-mips/mips-boards/seadint.h b/include/asm-mips/mips-boards/seadint.h
new file mode 100644
index 000000000000..c3dcfcb928b6
--- /dev/null
+++ b/include/asm-mips/mips-boards/seadint.h
@@ -0,0 +1,28 @@
1/*
2 * Carsten Langgaard, carstenl@mips.com
3 * Copyright (C) 2002 MIPS Technologies, Inc. All rights reserved.
4 *
5 * This program is free software; you can distribute it and/or modify it
6 * under the terms of the GNU General Public License (Version 2) as
7 * published by the Free Software Foundation.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * for more details.
13 *
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
17 *
18 * Defines for the SEAD interrupt controller.
19 */
20#ifndef _MIPS_SEADINT_H
21#define _MIPS_SEADINT_H
22
23#define SEADINT_UART0 2
24#define SEADINT_UART1 3
25
26extern void seadint_init(void);
27
28#endif /* !(_MIPS_SEADINT_H) */