xref: /openbmc/u-boot/include/configs/ve8313.h (revision 2fe88d452268d61b5ca9cb0b1dda2974cc43faeb)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
24e43b2e8SHeiko Schocher /*
34e43b2e8SHeiko Schocher  * Copyright (C) Freescale Semiconductor, Inc. 2006.
44e43b2e8SHeiko Schocher  *
54e43b2e8SHeiko Schocher  * (C) Copyright 2010
64e43b2e8SHeiko Schocher  * Heiko Schocher, DENX Software Engineering, hs@denx.de.
74e43b2e8SHeiko Schocher  */
84e43b2e8SHeiko Schocher /*
94e43b2e8SHeiko Schocher  * ve8313 board configuration file
104e43b2e8SHeiko Schocher  */
114e43b2e8SHeiko Schocher 
124e43b2e8SHeiko Schocher #ifndef __CONFIG_H
134e43b2e8SHeiko Schocher #define __CONFIG_H
144e43b2e8SHeiko Schocher 
154e43b2e8SHeiko Schocher /*
164e43b2e8SHeiko Schocher  * High Level Configuration Options
174e43b2e8SHeiko Schocher  */
184e43b2e8SHeiko Schocher #define CONFIG_E300		1
194e43b2e8SHeiko Schocher #define CONFIG_MPC831x		1
204e43b2e8SHeiko Schocher #define CONFIG_MPC8313		1
214e43b2e8SHeiko Schocher 
22842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE 1
23a2243b84SKumar Gala #define CONFIG_FSL_ELBC		1
244e43b2e8SHeiko Schocher 
254e43b2e8SHeiko Schocher /*
264e43b2e8SHeiko Schocher  * On-board devices
274e43b2e8SHeiko Schocher  *
284e43b2e8SHeiko Schocher  */
294e43b2e8SHeiko Schocher #define CONFIG_83XX_CLKIN	32000000	/* in Hz */
304e43b2e8SHeiko Schocher 
314e43b2e8SHeiko Schocher #define CONFIG_SYS_CLK_FREQ	CONFIG_83XX_CLKIN
324e43b2e8SHeiko Schocher 
334e43b2e8SHeiko Schocher #define CONFIG_SYS_IMMR		0xE0000000
344e43b2e8SHeiko Schocher 
354e43b2e8SHeiko Schocher #define CONFIG_SYS_MEMTEST_START	0x00001000
364e43b2e8SHeiko Schocher #define CONFIG_SYS_MEMTEST_END		0x07000000
374e43b2e8SHeiko Schocher 
384e43b2e8SHeiko Schocher #define CONFIG_SYS_ACR_PIPE_DEP		3	/* Arbiter pipeline depth */
394e43b2e8SHeiko Schocher #define CONFIG_SYS_ACR_RPTCNT		3	/* Arbiter repeat count */
404e43b2e8SHeiko Schocher 
414e43b2e8SHeiko Schocher /*
424e43b2e8SHeiko Schocher  * Device configurations
434e43b2e8SHeiko Schocher  */
444e43b2e8SHeiko Schocher 
454e43b2e8SHeiko Schocher /*
464e43b2e8SHeiko Schocher  * DDR Setup
474e43b2e8SHeiko Schocher  */
484e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_BASE		0x00000000 /* DDR is system memory*/
494e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_BASE
504e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_SDRAM_BASE	CONFIG_SYS_DDR_BASE
514e43b2e8SHeiko Schocher 
524e43b2e8SHeiko Schocher /*
534e43b2e8SHeiko Schocher  * Manually set up DDR parameters, as this board does not
544e43b2e8SHeiko Schocher  * have the SPD connected to I2C.
554e43b2e8SHeiko Schocher  */
564e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_SIZE	128	/* MB */
572e651b24SJoe Hershberger #define CONFIG_SYS_DDR_CS0_CONFIG	(CSCONFIG_EN \
584e43b2e8SHeiko Schocher 				| CSCONFIG_AP \
592fef4020SJoe Hershberger 				| CSCONFIG_ODT_RD_NEVER \
602fef4020SJoe Hershberger 				| CSCONFIG_ODT_WR_ALL \
61be29fa71SJoe Hershberger 				| CSCONFIG_ROW_BIT_13 \
62be29fa71SJoe Hershberger 				| CSCONFIG_COL_BIT_10)
634e43b2e8SHeiko Schocher 				/* 0x80840102 */
644e43b2e8SHeiko Schocher 
654e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_3	0x00000000
664e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_0	((0 << TIMING_CFG0_RWT_SHIFT) \
674e43b2e8SHeiko Schocher 				| (0 << TIMING_CFG0_WRT_SHIFT) \
684e43b2e8SHeiko Schocher 				| (3 << TIMING_CFG0_RRT_SHIFT) \
694e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG0_WWT_SHIFT) \
704e43b2e8SHeiko Schocher 				| (7 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \
714e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \
724e43b2e8SHeiko Schocher 				| (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \
734e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG0_MRS_CYC_SHIFT))
744e43b2e8SHeiko Schocher 				/* 0x0e720802 */
754e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_1	((2 << TIMING_CFG1_PRETOACT_SHIFT) \
764e43b2e8SHeiko Schocher 				| (6 << TIMING_CFG1_ACTTOPRE_SHIFT) \
774e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG1_ACTTORW_SHIFT) \
784e43b2e8SHeiko Schocher 				| (5 << TIMING_CFG1_CASLAT_SHIFT) \
794e43b2e8SHeiko Schocher 				| (6 << TIMING_CFG1_REFREC_SHIFT) \
804e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG1_WRREC_SHIFT) \
814e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG1_ACTTOACT_SHIFT) \
824e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG1_WRTORD_SHIFT))
834e43b2e8SHeiko Schocher 				/* 0x26256222 */
844e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_2	((0 << TIMING_CFG2_ADD_LAT_SHIFT) \
854e43b2e8SHeiko Schocher 				| (5 << TIMING_CFG2_CPO_SHIFT) \
864e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT) \
874e43b2e8SHeiko Schocher 				| (1 << TIMING_CFG2_RD_TO_PRE_SHIFT) \
884e43b2e8SHeiko Schocher 				| (2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT) \
894e43b2e8SHeiko Schocher 				| (3 << TIMING_CFG2_CKE_PLS_SHIFT) \
904e43b2e8SHeiko Schocher 				| (7 << TIMING_CFG2_FOUR_ACT_SHIFT))
914e43b2e8SHeiko Schocher 				/* 0x029028c7 */
924e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_INTERVAL	((0x320 << SDRAM_INTERVAL_REFINT_SHIFT) \
934e43b2e8SHeiko Schocher 				| (0x2000 << SDRAM_INTERVAL_BSTOPRE_SHIFT))
944e43b2e8SHeiko Schocher 				/* 0x03202000 */
954e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_CFG	(SDRAM_CFG_SREN \
964e43b2e8SHeiko Schocher 				| SDRAM_CFG_SDRAM_TYPE_DDR2 \
972fef4020SJoe Hershberger 				| SDRAM_CFG_DBW_32)
984e43b2e8SHeiko Schocher 				/* 0x43080000 */
994e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_CFG2	0x00401000
1004e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_MODE	((0x4440 << SDRAM_MODE_ESD_SHIFT) \
1014e43b2e8SHeiko Schocher 				| (0x0232 << SDRAM_MODE_SD_SHIFT))
1024e43b2e8SHeiko Schocher 				/* 0x44400232 */
1034e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_MODE_2	0x8000C000
1044e43b2e8SHeiko Schocher 
1054e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_CLK_CNTL	DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05
1064e43b2e8SHeiko Schocher 				/*0x02000000*/
1074e43b2e8SHeiko Schocher #define CONFIG_SYS_DDRCDR_VALUE	(DDRCDR_EN \
1084e43b2e8SHeiko Schocher 				| DDRCDR_PZ_NOMZ \
1094e43b2e8SHeiko Schocher 				| DDRCDR_NZ_NOMZ \
1104e43b2e8SHeiko Schocher 				| DDRCDR_M_ODR)
1114e43b2e8SHeiko Schocher 				/* 0x73000002 */
1124e43b2e8SHeiko Schocher 
1134e43b2e8SHeiko Schocher /*
1144e43b2e8SHeiko Schocher  * FLASH on the Local Bus
1154e43b2e8SHeiko Schocher  */
1164e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_BASE		0xFE000000
1174e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_SIZE		32	/* size in MB */
1184e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_EMPTY_INFO		/* display empty sectors */
1194e43b2e8SHeiko Schocher 
120be29fa71SJoe Hershberger #define CONFIG_SYS_NOR_BR_PRELIM	(CONFIG_SYS_FLASH_BASE \
1217d6a0982SJoe Hershberger 					| BR_PS_16	/* 16 bit */ \
1227d6a0982SJoe Hershberger 					| BR_MS_GPCM	/* MSEL = GPCM */ \
123be29fa71SJoe Hershberger 					| BR_V)		/* valid */
1244e43b2e8SHeiko Schocher #define CONFIG_SYS_NOR_OR_PRELIM	(MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \
1254e43b2e8SHeiko Schocher 					| OR_GPCM_CSNT \
1264e43b2e8SHeiko Schocher 					| OR_GPCM_ACS_DIV4 \
1274e43b2e8SHeiko Schocher 					| OR_GPCM_SCY_5 \
1287d6a0982SJoe Hershberger 					| OR_GPCM_TRLX_SET \
1294e43b2e8SHeiko Schocher 					| OR_GPCM_EAD)
1304e43b2e8SHeiko Schocher 					/* 0xfe000c55 */
1314e43b2e8SHeiko Schocher 
1324e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWBAR0_PRELIM	CONFIG_SYS_FLASH_BASE
1337d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM	(LBLAWAR_EN | LBLAWAR_32MB)
1344e43b2e8SHeiko Schocher 
1354e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_BANKS	1		/* number of banks */
1364e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_SECT	256		/* sectors per dev */
1374e43b2e8SHeiko Schocher 
1384e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms) */
1394e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms) */
1404e43b2e8SHeiko Schocher 
14114d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE	/* start of monitor */
1424e43b2e8SHeiko Schocher 
1434e43b2e8SHeiko Schocher #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE)
1444e43b2e8SHeiko Schocher #define CONFIG_SYS_RAMBOOT
1454e43b2e8SHeiko Schocher #endif
1464e43b2e8SHeiko Schocher 
1474e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_RAM_LOCK	1
1484e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_RAM_ADDR	0xFD000000 /* Initial RAM address */
149553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE	0x1000	/* Size of used area in RAM*/
1504e43b2e8SHeiko Schocher 
151be29fa71SJoe Hershberger #define CONFIG_SYS_GBL_DATA_OFFSET	\
152be29fa71SJoe Hershberger 			(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
1534e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
1544e43b2e8SHeiko Schocher 
1554e43b2e8SHeiko Schocher /* CONFIG_SYS_MONITOR_LEN must be a multiple of CONFIG_ENV_SECT_SIZE */
1564e43b2e8SHeiko Schocher #define CONFIG_SYS_MONITOR_LEN		(384 * 1024)
1574e43b2e8SHeiko Schocher #define CONFIG_SYS_MALLOC_LEN		(512 * 1024)
1584e43b2e8SHeiko Schocher 
1594e43b2e8SHeiko Schocher /*
1604e43b2e8SHeiko Schocher  * Local Bus LCRR and LBCR regs
1614e43b2e8SHeiko Schocher  */
1624e43b2e8SHeiko Schocher #define CONFIG_SYS_LCRR_EADC	LCRR_EADC_3
1634e43b2e8SHeiko Schocher #define CONFIG_SYS_LCRR_CLKDIV	LCRR_CLKDIV_2
1644e43b2e8SHeiko Schocher 
1654e43b2e8SHeiko Schocher #define CONFIG_SYS_LBC_LBCR	0x00040000
1664e43b2e8SHeiko Schocher 
1674e43b2e8SHeiko Schocher #define CONFIG_SYS_LBC_MRTPR	0x20000000
1684e43b2e8SHeiko Schocher 
1694e43b2e8SHeiko Schocher /*
1704e43b2e8SHeiko Schocher  * NAND settings
1714e43b2e8SHeiko Schocher  */
1724e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BASE		0x61000000
1734e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_NAND_DEVICE	1
1744e43b2e8SHeiko Schocher #define CONFIG_NAND_FSL_ELBC 1
1754e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BLOCK_SIZE 16384
1764e43b2e8SHeiko Schocher 
1774e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BR_PRELIM	(CONFIG_SYS_NAND_BASE \
1784e43b2e8SHeiko Schocher 					| BR_PS_8		\
1794e43b2e8SHeiko Schocher 					| BR_DECC_CHK_GEN	\
1804e43b2e8SHeiko Schocher 					| BR_MS_FCM		\
1814e43b2e8SHeiko Schocher 					| BR_V)	/* valid */
1824e43b2e8SHeiko Schocher 					/* 0x61000c21 */
1837d6a0982SJoe Hershberger #define CONFIG_SYS_NAND_OR_PRELIM	(OR_AM_32KB \
1844e43b2e8SHeiko Schocher 					| OR_FCM_BCTLD \
1854e43b2e8SHeiko Schocher 					| OR_FCM_CHT \
1864e43b2e8SHeiko Schocher 					| OR_FCM_SCY_2 \
1874e43b2e8SHeiko Schocher 					| OR_FCM_RST \
1884e43b2e8SHeiko Schocher 					| OR_FCM_TRLX)
1894e43b2e8SHeiko Schocher 					/* 0xffff90ac */
1904e43b2e8SHeiko Schocher 
1914e43b2e8SHeiko Schocher #define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NOR_BR_PRELIM
1924e43b2e8SHeiko Schocher #define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NOR_OR_PRELIM
1934e43b2e8SHeiko Schocher #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NAND_BR_PRELIM
1944e43b2e8SHeiko Schocher #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NAND_OR_PRELIM
1954e43b2e8SHeiko Schocher 
1964e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWBAR1_PRELIM	CONFIG_SYS_NAND_BASE
1977d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR1_PRELIM	(LBLAWAR_EN | LBLAWAR_32KB)
1984e43b2e8SHeiko Schocher 
1994e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_LBLAWBAR_PRELIM CONFIG_SYS_LBLAWBAR1_PRELIM
2004e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_LBLAWAR_PRELIM CONFIG_SYS_LBLAWAR1_PRELIM
2014e43b2e8SHeiko Schocher 
2024e43b2e8SHeiko Schocher /* CS2 NvRAM */
2034e43b2e8SHeiko Schocher #define CONFIG_SYS_BR2_PRELIM	(0x60000000 \
2044e43b2e8SHeiko Schocher 				| BR_PS_8 \
2054e43b2e8SHeiko Schocher 				| BR_V)
2064e43b2e8SHeiko Schocher 				/* 0x60000801 */
2077d6a0982SJoe Hershberger #define CONFIG_SYS_OR2_PRELIM	(OR_AM_128KB \
2084e43b2e8SHeiko Schocher 				| OR_GPCM_CSNT \
2094e43b2e8SHeiko Schocher 				| OR_GPCM_XACS \
2104e43b2e8SHeiko Schocher 				| OR_GPCM_SCY_3 \
2117d6a0982SJoe Hershberger 				| OR_GPCM_TRLX_SET \
2127d6a0982SJoe Hershberger 				| OR_GPCM_EHTR_SET \
2134e43b2e8SHeiko Schocher 				| OR_GPCM_EAD)
2144e43b2e8SHeiko Schocher 				/* 0xfffe0937 */
2154e43b2e8SHeiko Schocher /* local bus read write buffer mapping SRAM@0x64000000 */
2164e43b2e8SHeiko Schocher #define CONFIG_SYS_BR3_PRELIM	(0x62000000 \
2174e43b2e8SHeiko Schocher 				| BR_PS_16 \
2184e43b2e8SHeiko Schocher 				| BR_V)
2194e43b2e8SHeiko Schocher 				/* 0x62001001 */
2204e43b2e8SHeiko Schocher 
2217d6a0982SJoe Hershberger #define CONFIG_SYS_OR3_PRELIM	(OR_AM_32MB \
2224e43b2e8SHeiko Schocher 				| OR_GPCM_CSNT \
2234e43b2e8SHeiko Schocher 				| OR_GPCM_XACS \
2244e43b2e8SHeiko Schocher 				| OR_GPCM_SCY_15 \
2257d6a0982SJoe Hershberger 				| OR_GPCM_TRLX_SET \
2267d6a0982SJoe Hershberger 				| OR_GPCM_EHTR_SET \
2274e43b2e8SHeiko Schocher 				| OR_GPCM_EAD)
2284e43b2e8SHeiko Schocher 				/* 0xfe0009f7 */
2294e43b2e8SHeiko Schocher 
2304e43b2e8SHeiko Schocher /*
2314e43b2e8SHeiko Schocher  * Serial Port
2324e43b2e8SHeiko Schocher  */
2334e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_SERIAL
2344e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_REG_SIZE	1
2354e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_CLK		get_bus_freq(0)
2364e43b2e8SHeiko Schocher 
2374e43b2e8SHeiko Schocher #define CONFIG_SYS_BAUDRATE_TABLE	\
2384e43b2e8SHeiko Schocher 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200}
2394e43b2e8SHeiko Schocher 
2404e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_COM1	(CONFIG_SYS_IMMR+0x4500)
2414e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_COM2	(CONFIG_SYS_IMMR+0x4600)
2424e43b2e8SHeiko Schocher 
2434e43b2e8SHeiko Schocher #if defined(CONFIG_PCI)
2444e43b2e8SHeiko Schocher /*
2454e43b2e8SHeiko Schocher  * General PCI
2464e43b2e8SHeiko Schocher  * Addresses are mapped 1-1.
2474e43b2e8SHeiko Schocher  */
2484e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_BASE	0x80000000
2494e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_PHYS	CONFIG_SYS_PCI1_MEM_BASE
2504e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_SIZE	0x10000000	/* 256M */
2514e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_BASE	0x90000000
2524e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_PHYS	CONFIG_SYS_PCI1_MMIO_BASE
2534e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_SIZE	0x10000000	/* 256M */
2544e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_BASE		0x00000000
2554e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_PHYS		0xE2000000
2564e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_SIZE		0x00100000	/* 1M */
2574e43b2e8SHeiko Schocher 
2584e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957	/* Freescale */
2594e43b2e8SHeiko Schocher #endif
2604e43b2e8SHeiko Schocher 
2614e43b2e8SHeiko Schocher /*
2624e43b2e8SHeiko Schocher  * TSEC
2634e43b2e8SHeiko Schocher  */
2644e43b2e8SHeiko Schocher 
2654e43b2e8SHeiko Schocher #define CONFIG_TSEC1
2664e43b2e8SHeiko Schocher #ifdef CONFIG_TSEC1
2674e43b2e8SHeiko Schocher #define CONFIG_HAS_ETH0
2684e43b2e8SHeiko Schocher #define CONFIG_TSEC1_NAME	"TSEC1"
2694e43b2e8SHeiko Schocher #define CONFIG_SYS_TSEC1_OFFSET	0x24000
2704e43b2e8SHeiko Schocher #define TSEC1_PHY_ADDR		0x01
2714e43b2e8SHeiko Schocher #define TSEC1_FLAGS		0
2724e43b2e8SHeiko Schocher #define TSEC1_PHYIDX		0
2734e43b2e8SHeiko Schocher #endif
2744e43b2e8SHeiko Schocher 
2754e43b2e8SHeiko Schocher /* Options are: TSEC[0-1] */
2764e43b2e8SHeiko Schocher #define CONFIG_ETHPRIME			"TSEC1"
2774e43b2e8SHeiko Schocher 
2784e43b2e8SHeiko Schocher /*
2794e43b2e8SHeiko Schocher  * Environment
2804e43b2e8SHeiko Schocher  */
281be29fa71SJoe Hershberger #define CONFIG_ENV_ADDR		\
282be29fa71SJoe Hershberger 			(CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN)
2834e43b2e8SHeiko Schocher #define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
2844e43b2e8SHeiko Schocher #define CONFIG_ENV_SIZE		0x4000
2854e43b2e8SHeiko Schocher /* Address and size of Redundant Environment Sector */
286be29fa71SJoe Hershberger #define CONFIG_ENV_OFFSET_REDUND	\
287be29fa71SJoe Hershberger 			(CONFIG_ENV_OFFSET + CONFIG_ENV_SECT_SIZE)
2884e43b2e8SHeiko Schocher #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
2894e43b2e8SHeiko Schocher 
2904e43b2e8SHeiko Schocher #define CONFIG_LOADS_ECHO	1	/* echo on for serial download */
2914e43b2e8SHeiko Schocher #define CONFIG_SYS_LOADS_BAUD_CHANGE	1	/* allow baudrate change */
2924e43b2e8SHeiko Schocher 
2934e43b2e8SHeiko Schocher /*
2944e43b2e8SHeiko Schocher  * BOOTP options
2954e43b2e8SHeiko Schocher  */
2964e43b2e8SHeiko Schocher #define CONFIG_BOOTP_BOOTFILESIZE
2974e43b2e8SHeiko Schocher 
2984e43b2e8SHeiko Schocher /*
2994e43b2e8SHeiko Schocher  * Command line configuration.
3004e43b2e8SHeiko Schocher  */
3014e43b2e8SHeiko Schocher 
3024e43b2e8SHeiko Schocher /*
3034e43b2e8SHeiko Schocher  * Miscellaneous configurable options
3044e43b2e8SHeiko Schocher  */
3054e43b2e8SHeiko Schocher #define CONFIG_SYS_LOAD_ADDR	0x100000	/* default load address */
3064e43b2e8SHeiko Schocher #define CONFIG_SYS_CBSIZE	1024		/* Console I/O Buffer Size */
3074e43b2e8SHeiko Schocher 
3084e43b2e8SHeiko Schocher #define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE /* Boot arg Buffer size */
3094e43b2e8SHeiko Schocher 
3104e43b2e8SHeiko Schocher /*
3114e43b2e8SHeiko Schocher  * For booting Linux, the board info and command line data
3129f530d59SIra W. Snyder  * have to be in the first 256 MB of memory, since this is
3134e43b2e8SHeiko Schocher  * the maximum mapped by the Linux kernel during initialization.
3144e43b2e8SHeiko Schocher  */
315be29fa71SJoe Hershberger 				/* Initial Memory map for Linux*/
316be29fa71SJoe Hershberger #define CONFIG_SYS_BOOTMAPSZ	(256 << 20)
3174e43b2e8SHeiko Schocher 
3184e43b2e8SHeiko Schocher /* 0x64050000 */
3194e43b2e8SHeiko Schocher #define CONFIG_SYS_HRCW_LOW (\
3204e43b2e8SHeiko Schocher 	0x20000000 /* reserved, must be set */ |\
3214e43b2e8SHeiko Schocher 	HRCWL_DDRCM |\
3224e43b2e8SHeiko Schocher 	HRCWL_CSB_TO_CLKIN_4X1 | \
3234e43b2e8SHeiko Schocher 	HRCWL_CORE_TO_CSB_2_5X1)
3244e43b2e8SHeiko Schocher 
3254e43b2e8SHeiko Schocher /* 0xa0600004 */
3264e43b2e8SHeiko Schocher #define CONFIG_SYS_HRCW_HIGH (HRCWH_PCI_HOST | \
3274e43b2e8SHeiko Schocher 	HRCWH_PCI_ARBITER_ENABLE | \
3284e43b2e8SHeiko Schocher 	HRCWH_CORE_ENABLE | \
3294e43b2e8SHeiko Schocher 	HRCWH_FROM_0X00000100 | \
3304e43b2e8SHeiko Schocher 	HRCWH_BOOTSEQ_DISABLE |\
3314e43b2e8SHeiko Schocher 	HRCWH_SW_WATCHDOG_DISABLE |\
3324e43b2e8SHeiko Schocher 	HRCWH_ROM_LOC_LOCAL_16BIT | \
3334e43b2e8SHeiko Schocher 	HRCWH_TSEC1M_IN_MII | \
3344e43b2e8SHeiko Schocher 	HRCWH_BIG_ENDIAN | \
3354e43b2e8SHeiko Schocher 	HRCWH_LALE_EARLY)
3364e43b2e8SHeiko Schocher 
3374e43b2e8SHeiko Schocher /* System IO Config */
3384e43b2e8SHeiko Schocher #define CONFIG_SYS_SICRH	(0x01000000 | \
3394e43b2e8SHeiko Schocher 				SICRH_ETSEC2_B | \
3404e43b2e8SHeiko Schocher 				SICRH_ETSEC2_C | \
3414e43b2e8SHeiko Schocher 				SICRH_ETSEC2_D | \
3424e43b2e8SHeiko Schocher 				SICRH_ETSEC2_E | \
3434e43b2e8SHeiko Schocher 				SICRH_ETSEC2_F | \
3444e43b2e8SHeiko Schocher 				SICRH_ETSEC2_G | \
3454e43b2e8SHeiko Schocher 				SICRH_TSOBI1 | \
3464e43b2e8SHeiko Schocher 				SICRH_TSOBI2)
3474e43b2e8SHeiko Schocher 				/* 0x010fff03 */
3484e43b2e8SHeiko Schocher #define CONFIG_SYS_SICRL	(SICRL_LBC | \
3494e43b2e8SHeiko Schocher 				SICRL_SPI_A | \
3504e43b2e8SHeiko Schocher 				SICRL_SPI_B | \
3514e43b2e8SHeiko Schocher 				SICRL_SPI_C | \
3524e43b2e8SHeiko Schocher 				SICRL_SPI_D | \
3534e43b2e8SHeiko Schocher 				SICRL_ETSEC2_A)
3544e43b2e8SHeiko Schocher 				/* 0x33fc0003) */
3554e43b2e8SHeiko Schocher 
3564e43b2e8SHeiko Schocher #define CONFIG_SYS_HID0_INIT	0x000000000
3574e43b2e8SHeiko Schocher #define CONFIG_SYS_HID0_FINAL	(HID0_ENABLE_MACHINE_CHECK | \
3584e43b2e8SHeiko Schocher 				 HID0_ENABLE_INSTRUCTION_CACHE)
3594e43b2e8SHeiko Schocher 
3604e43b2e8SHeiko Schocher #define CONFIG_SYS_HID2 HID2_HBE
3614e43b2e8SHeiko Schocher 
3624e43b2e8SHeiko Schocher #define CONFIG_HIGH_BATS	1	/* High BATs supported */
3634e43b2e8SHeiko Schocher 
3644e43b2e8SHeiko Schocher /* DDR @ 0x00000000 */
36572cd4087SJoe Hershberger #define CONFIG_SYS_IBAT0L	(CONFIG_SYS_SDRAM_BASE | BATL_PP_RW)
366be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT0U	(CONFIG_SYS_SDRAM_BASE \
367be29fa71SJoe Hershberger 				| BATU_BL_256M \
368be29fa71SJoe Hershberger 				| BATU_VS \
369be29fa71SJoe Hershberger 				| BATU_VP)
3704e43b2e8SHeiko Schocher 
3714e43b2e8SHeiko Schocher #if defined(CONFIG_PCI)
3724e43b2e8SHeiko Schocher /* PCI @ 0x80000000 */
37372cd4087SJoe Hershberger #define CONFIG_SYS_IBAT1L	(CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW)
374be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT1U	(CONFIG_SYS_PCI1_MEM_BASE \
375be29fa71SJoe Hershberger 				| BATU_BL_256M \
376be29fa71SJoe Hershberger 				| BATU_VS \
377be29fa71SJoe Hershberger 				| BATU_VP)
378be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT2L	(CONFIG_SYS_PCI1_MMIO_BASE \
37972cd4087SJoe Hershberger 				| BATL_PP_RW \
380be29fa71SJoe Hershberger 				| BATL_CACHEINHIBIT \
381be29fa71SJoe Hershberger 				| BATL_GUARDEDSTORAGE)
382be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT2U	(CONFIG_SYS_PCI1_MMIO_BASE \
383be29fa71SJoe Hershberger 				| BATU_BL_256M \
384be29fa71SJoe Hershberger 				| BATU_VS \
385be29fa71SJoe Hershberger 				| BATU_VP)
3864e43b2e8SHeiko Schocher #else
3874e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1L	(0)
3884e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1U	(0)
3894e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2L	(0)
3904e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2U	(0)
3914e43b2e8SHeiko Schocher #endif
3924e43b2e8SHeiko Schocher 
3934e43b2e8SHeiko Schocher /* PCI2 not supported on 8313 */
3944e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT3L	(0)
3954e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT3U	(0)
3964e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT4L	(0)
3974e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT4U	(0)
3984e43b2e8SHeiko Schocher 
3994e43b2e8SHeiko Schocher /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 & BCSR @ 0xE2400000 */
400be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT5L	(CONFIG_SYS_IMMR \
40172cd4087SJoe Hershberger 				| BATL_PP_RW \
402be29fa71SJoe Hershberger 				| BATL_CACHEINHIBIT \
403be29fa71SJoe Hershberger 				| BATL_GUARDEDSTORAGE)
404be29fa71SJoe Hershberger #define CONFIG_SYS_IBAT5U	(CONFIG_SYS_IMMR \
405be29fa71SJoe Hershberger 				| BATU_BL_256M \
406be29fa71SJoe Hershberger 				| BATU_VS \
407be29fa71SJoe Hershberger 				| BATU_VP)
4084e43b2e8SHeiko Schocher 
4094e43b2e8SHeiko Schocher /* stack in DCACHE 0xFDF00000 & FLASH @ 0xFE000000 */
41072cd4087SJoe Hershberger #define CONFIG_SYS_IBAT6L	(0xF0000000 | BATL_PP_RW | BATL_GUARDEDSTORAGE)
4114e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT6U	(0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP)
4124e43b2e8SHeiko Schocher 
4134e43b2e8SHeiko Schocher /*  FPGA, SRAM, NAND @ 0x60000000 */
41472cd4087SJoe Hershberger #define CONFIG_SYS_IBAT7L	(0x60000000 | BATL_PP_RW | BATL_GUARDEDSTORAGE)
4154e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT7U	(0x60000000 | BATU_BL_256M | BATU_VS | BATU_VP)
4164e43b2e8SHeiko Schocher 
4174e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT0L	CONFIG_SYS_IBAT0L
4184e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT0U	CONFIG_SYS_IBAT0U
4194e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT1L	CONFIG_SYS_IBAT1L
4204e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT1U	CONFIG_SYS_IBAT1U
4214e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT2L	CONFIG_SYS_IBAT2L
4224e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT2U	CONFIG_SYS_IBAT2U
4234e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT3L	CONFIG_SYS_IBAT3L
4244e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT3U	CONFIG_SYS_IBAT3U
4254e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT4L	CONFIG_SYS_IBAT4L
4264e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT4U	CONFIG_SYS_IBAT4U
4274e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT5L	CONFIG_SYS_IBAT5L
4284e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT5U	CONFIG_SYS_IBAT5U
4294e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT6L	CONFIG_SYS_IBAT6L
4304e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT6U	CONFIG_SYS_IBAT6U
4314e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT7L	CONFIG_SYS_IBAT7L
4324e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT7U	CONFIG_SYS_IBAT7U
4334e43b2e8SHeiko Schocher 
4344e43b2e8SHeiko Schocher #define CONFIG_NETDEV		eth0
4354e43b2e8SHeiko Schocher 
4365bc0543dSMario Six #define CONFIG_HOSTNAME		"ve8313"
4374e43b2e8SHeiko Schocher #define CONFIG_UBOOTPATH	ve8313/u-boot.bin
4384e43b2e8SHeiko Schocher 
4394e43b2e8SHeiko Schocher #define CONFIG_EXTRA_ENV_SETTINGS \
4405368c55dSMarek Vasut 	"netdev=" __stringify(CONFIG_NETDEV) "\0"			\
4415368c55dSMarek Vasut 	"ethprime=" __stringify(CONFIG_TSEC1_NAME) "\0"			\
4425368c55dSMarek Vasut 	"u-boot=" __stringify(CONFIG_UBOOTPATH) "\0"			\
4434e43b2e8SHeiko Schocher 	"u-boot_addr_r=100000\0"					\
4444e43b2e8SHeiko Schocher 	"load=tftp ${u-boot_addr_r} ${u-boot}\0"			\
4455368c55dSMarek Vasut 	"update=protect off " __stringify(CONFIG_SYS_FLASH_BASE)	\
4465368c55dSMarek Vasut 		" +${filesize};"	\
4475368c55dSMarek Vasut 	"erase " __stringify(CONFIG_SYS_FLASH_BASE) " +${filesize};"	\
4485368c55dSMarek Vasut 	"cp.b ${u-boot_addr_r} " __stringify(CONFIG_SYS_FLASH_BASE)	\
4494e43b2e8SHeiko Schocher 	" ${filesize};"							\
4505368c55dSMarek Vasut 	"protect on " __stringify(CONFIG_SYS_FLASH_BASE) " +${filesize}\0" \
4514e43b2e8SHeiko Schocher 
4524e43b2e8SHeiko Schocher #endif	/* __CONFIG_H */
453