| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
| Uwe Zeisberger | f30c226 | 2006-10-03 23:01:26 +0200 | [diff] [blame] | 2 |  * arch/ppc/platforms/spruce.h | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 |  * | 
 | 4 |  * Definitions for IBM Spruce reference board support | 
 | 5 |  * | 
 | 6 |  * Authors: Matt Porter and Johnnie Peters | 
 | 7 |  *          mporter@mvista.com | 
 | 8 |  *          jpeters@mvista.com | 
 | 9 |  * | 
 | 10 |  * 2001 (c) MontaVista, Software, Inc.  This file is licensed under | 
 | 11 |  * the terms of the GNU General Public License version 2.  This program | 
 | 12 |  * is licensed "as is" without any warranty of any kind, whether express | 
 | 13 |  * or implied. | 
 | 14 |  */ | 
 | 15 |  | 
 | 16 | #ifdef __KERNEL__ | 
 | 17 | #ifndef __ASM_SPRUCE_H__ | 
 | 18 | #define __ASM_SPRUCE_H__ | 
 | 19 |  | 
 | 20 | #define SPRUCE_PCI_CONFIG_ADDR	0xfec00000 | 
 | 21 | #define SPRUCE_PCI_CONFIG_DATA	0xfec00004 | 
 | 22 |  | 
 | 23 | #define SPRUCE_PCI_PHY_IO_BASE	0xf8000000 | 
 | 24 | #define SPRUCE_PCI_IO_BASE	SPRUCE_PCI_PHY_IO_BASE | 
 | 25 |  | 
 | 26 | #define SPRUCE_PCI_SYS_MEM_BASE	0x00000000 | 
 | 27 |  | 
 | 28 | #define SPRUCE_PCI_LOWER_MEM	0x80000000 | 
 | 29 | #define SPRUCE_PCI_UPPER_MEM	0x9fffffff | 
 | 30 | #define SPRUCE_PCI_LOWER_IO	0x00000000 | 
 | 31 | #define SPRUCE_PCI_UPPER_IO	0x03ffffff | 
 | 32 |  | 
 | 33 | #define	SPRUCE_ISA_IO_BASE	SPRUCE_PCI_IO_BASE | 
 | 34 |  | 
 | 35 | #define SPRUCE_MEM_SIZE		0x04000000 | 
 | 36 | #define SPRUCE_BUS_SPEED	66666667 | 
 | 37 |  | 
 | 38 | #define SPRUCE_NVRAM_BASE_ADDR	0xff800000 | 
 | 39 | #define SPRUCE_RTC_BASE_ADDR	SPRUCE_NVRAM_BASE_ADDR | 
 | 40 |  | 
 | 41 | /* | 
 | 42 |  * Serial port defines | 
 | 43 |  */ | 
 | 44 | #define SPRUCE_FPGA_REG_A	0xff820000 | 
 | 45 | #define SPRUCE_UARTCLK_33M	0x02 | 
 | 46 | #define SPRUCE_UARTCLK_IS_33M(reg)	(reg & SPRUCE_UARTCLK_33M) | 
 | 47 |  | 
 | 48 | #define UART0_IO_BASE	0xff600300 | 
 | 49 | #define UART1_IO_BASE	0xff600400 | 
 | 50 |  | 
 | 51 | #define RS_TABLE_SIZE	2 | 
 | 52 |  | 
 | 53 | #define SPRUCE_BAUD_33M	(33000000/64) | 
 | 54 | #define SPRUCE_BAUD_30M	(30000000/64) | 
 | 55 | #define BASE_BAUD	SPRUCE_BAUD_33M | 
 | 56 |  | 
 | 57 | #define UART0_INT	3 | 
 | 58 | #define UART1_INT	4 | 
 | 59 |  | 
 | 60 | #define STD_UART_OP(num)						\ | 
 | 61 | 	{ 0, BASE_BAUD, 0, UART##num##_INT,				\ | 
 | 62 | 		ASYNC_BOOT_AUTOCONF,					\ | 
 | 63 | 		iomem_base: (unsigned char *) UART##num##_IO_BASE,	\ | 
 | 64 | 		io_type: SERIAL_IO_MEM}, | 
 | 65 |  | 
 | 66 | #define SERIAL_PORT_DFNS	\ | 
 | 67 | 	STD_UART_OP(0)		\ | 
 | 68 | 	STD_UART_OP(1) | 
 | 69 |  | 
 | 70 | #endif /* __ASM_SPRUCE_H__ */ | 
 | 71 | #endif /* __KERNEL__ */ |