xref: /netbsd-src/sys/arch/powerpc/include/ibm4xx/ibm405gp.h (revision 2692e2e238fd00b4477c93bd308bca5c3a5c1fce)
1*2692e2e2Skiyohara /*	$NetBSD: ibm405gp.h,v 1.11 2010/03/18 13:47:04 kiyohara Exp $	*/
289806555Ssimonb 
389806555Ssimonb /*
489806555Ssimonb  * Copyright 2001 Wasabi Systems, Inc.
589806555Ssimonb  * All rights reserved.
689806555Ssimonb  *
789806555Ssimonb  * Written by Simon Burge and Eduardo Horvath for Wasabi Systems, Inc.
889806555Ssimonb  *
989806555Ssimonb  * Redistribution and use in source and binary forms, with or without
1089806555Ssimonb  * modification, are permitted provided that the following conditions
1189806555Ssimonb  * are met:
1289806555Ssimonb  * 1. Redistributions of source code must retain the above copyright
1389806555Ssimonb  *    notice, this list of conditions and the following disclaimer.
1489806555Ssimonb  * 2. Redistributions in binary form must reproduce the above copyright
1589806555Ssimonb  *    notice, this list of conditions and the following disclaimer in the
1689806555Ssimonb  *    documentation and/or other materials provided with the distribution.
1789806555Ssimonb  * 3. All advertising materials mentioning features or use of this software
1889806555Ssimonb  *    must display the following acknowledgement:
1989806555Ssimonb  *      This product includes software developed for the NetBSD Project by
2089806555Ssimonb  *      Wasabi Systems, Inc.
2189806555Ssimonb  * 4. The name of Wasabi Systems, Inc. may not be used to endorse
2289806555Ssimonb  *    or promote products derived from this software without specific prior
2389806555Ssimonb  *    written permission.
2489806555Ssimonb  *
2589806555Ssimonb  * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
2689806555Ssimonb  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
2789806555Ssimonb  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
2889806555Ssimonb  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL WASABI SYSTEMS, INC
2989806555Ssimonb  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
3089806555Ssimonb  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
3189806555Ssimonb  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
3289806555Ssimonb  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
3389806555Ssimonb  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
3489806555Ssimonb  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
3589806555Ssimonb  * POSSIBILITY OF SUCH DAMAGE.
3689806555Ssimonb  */
3789806555Ssimonb 
3818b2f7e6Ssimonb #ifndef _IBM4XX_IBM405GP_H_
3918b2f7e6Ssimonb #define	_IBM4XX_IBM405GP_H_
4018b2f7e6Ssimonb 
4189806555Ssimonb /*
4289806555Ssimonb  * Memory and PCI addresses
4389806555Ssimonb  */
4489806555Ssimonb 
4589806555Ssimonb /* Local Memory and Peripherals */
46497d6762Ssimonb #define	IBM405GP_LOCAL_MEM_START	0x00000000
47497d6762Ssimonb #define	IBM405GP_LOCAL_MEM_END		0x7fffffff
4889806555Ssimonb 
4989806555Ssimonb /* PCI Memory - 1.625GB */
50497d6762Ssimonb #define	IBM405GP_PCI_MEM_START		0x80000000
51497d6762Ssimonb #define	IBM405GP_PCI_MEM_END		0xe7ffffff
5289806555Ssimonb 
5389806555Ssimonb /* PCI I/O - PCI I/O accesses from 0 to 64kB-1 (64kB) */
54497d6762Ssimonb #define	IBM405GP_PCI_IO_LOW_START	0xe8000000
55497d6762Ssimonb #define	IBM405GP_PCI_IO_LOW_END		0xe800ffff
5689806555Ssimonb 
5789806555Ssimonb /* PCI I/O - PCI I/O accesses from 8MB to 64MB-1 (56MB) */
58497d6762Ssimonb #define	IBM405GP_PCI_IO_HIGH_START	0xe8800000
59497d6762Ssimonb #define	IBM405GP_PCI_IO_HIGH_END	0xebffffff
6089806555Ssimonb 
61fc29eb23Sshige /* PCI I/O - PLB side of PCI I/O address space */
62fc29eb23Sshige #define	IBM405GP_PLB_PCI_IO_START	0xe8000000
63fc29eb23Sshige /* PCI I/O - PCI side of PCI I/O address space */
64fc29eb23Sshige #define	IBM405GP_PCI_PCI_IO_START	0x00000000
65fc29eb23Sshige 
66497d6762Ssimonb #define	IBM405GP_PCIC0_BASE		0xeec00000
6789806555Ssimonb 
6889806555Ssimonb /* PCI Interrupt Acknowledge (read: 0xeed00000 0xeed00003 - 4 bytes) */
69497d6762Ssimonb #define	IBM405GP_PCIIA0			0xeed00000
7089806555Ssimonb 
7189806555Ssimonb /* PCI Special Cycle (write: 0xeed00000 0xeed00003 - 4 bytes) */
72497d6762Ssimonb #define	IBM405GP_PCISC0			0xeed00000
73497d6762Ssimonb #define	IBM405GP_PCIL0_BASE		0xef400000
7489806555Ssimonb 
7589806555Ssimonb /*
76497d6762Ssimonb  * Internal peripheral addresses
7789806555Ssimonb  */
78*2692e2e2Skiyohara #define	IBM405GP_IP_BASE		0xef600000
7989806555Ssimonb 
80497d6762Ssimonb #define	IBM405GP_UART0_BASE		0xef600300
81497d6762Ssimonb #define	IBM405GP_UART1_BASE		0xef600400
82497d6762Ssimonb #define	IBM405GP_IIC0_BASE		0xef600500
83497d6762Ssimonb #define	IBM405GP_OPBA0_BASE		0xef600600
84497d6762Ssimonb #define	IBM405GP_GPIO0_BASE		0xef600700
85497d6762Ssimonb #define	IBM405GP_EMAC0_BASE		0xef600800
8689806555Ssimonb 
8789806555Ssimonb 
8889806555Ssimonb /* Expansion ROM - 254MB */
89497d6762Ssimonb #define	IBM405GP_EXPANSION_ROM_START	0xf0000000
90497d6762Ssimonb #define	IBM405GP_EXPANSION_ROM_END	0xffdfffff
9189806555Ssimonb 
9289806555Ssimonb /* Boot ROM - 2MB */
93497d6762Ssimonb #define	IBM405GP_BOOT_ROM_START		0xffe00000
94497d6762Ssimonb #define	IBM405GP_BOOT_ROM_END		0xffffffff
9589806555Ssimonb 
9689806555Ssimonb #ifndef _LOCORE
97f0302072Ssimonb void ibm4xx_show_pci_map(void);
98f0302072Ssimonb void ibm4xx_setup_pci(void);
9989806555Ssimonb #endif /* _LOCORE */
10018b2f7e6Ssimonb #endif	/* _IBM4XX_IBM405GP_H_ */
101