xref: /openbmc/u-boot/include/configs/vme8349.h (revision cf033e04)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
2c2e49f70SReinhard Arlt /*
3c2e49f70SReinhard Arlt  * esd vme8349 U-Boot configuration file
4c2e49f70SReinhard Arlt  * Copyright (c) 2008, 2009 esd gmbh Hannover Germany
5c2e49f70SReinhard Arlt  *
62ae18241SWolfgang Denk  * (C) Copyright 2006-2010
7c2e49f70SReinhard Arlt  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
8c2e49f70SReinhard Arlt  *
9c2e49f70SReinhard Arlt  * reinhard.arlt@esd-electronics.de
10c2e49f70SReinhard Arlt  * Based on the MPC8349EMDS config.
11c2e49f70SReinhard Arlt  */
12c2e49f70SReinhard Arlt 
13c2e49f70SReinhard Arlt /*
14c2e49f70SReinhard Arlt  * vme8349 board configuration file.
15c2e49f70SReinhard Arlt  */
16c2e49f70SReinhard Arlt 
17c2e49f70SReinhard Arlt #ifndef __CONFIG_H
18c2e49f70SReinhard Arlt #define __CONFIG_H
19c2e49f70SReinhard Arlt 
20c2e49f70SReinhard Arlt /*
211dee9be6SReinhard Arlt  * Top level Makefile configuration choices
221dee9be6SReinhard Arlt  */
232ae18241SWolfgang Denk #ifdef CONFIG_CADDY2
241dee9be6SReinhard Arlt #define VME_CADDY2
251dee9be6SReinhard Arlt #endif
261dee9be6SReinhard Arlt 
271dee9be6SReinhard Arlt /*
28c2e49f70SReinhard Arlt  * High Level Configuration Options
29c2e49f70SReinhard Arlt  */
30c2e49f70SReinhard Arlt #define CONFIG_E300		1	/* E300 Family */
31c2e49f70SReinhard Arlt #define CONFIG_MPC834x		1	/* MPC834x family */
32c2e49f70SReinhard Arlt #define CONFIG_MPC8349		1	/* MPC8349 specific */
33c2e49f70SReinhard Arlt #define CONFIG_VME8349		1	/* ESD VME8349 board specific */
34c2e49f70SReinhard Arlt 
35c2e49f70SReinhard Arlt /* Don't enable PCI2 on vme834x - it doesn't exist physically. */
36c2e49f70SReinhard Arlt #undef CONFIG_MPC83XX_PCI2		/* support for 2nd PCI controller */
37c2e49f70SReinhard Arlt 
382ae18241SWolfgang Denk #define CONFIG_PCI_66M
392ae18241SWolfgang Denk #ifdef CONFIG_PCI_66M
40c2e49f70SReinhard Arlt #define CONFIG_83XX_CLKIN	66000000	/* in Hz */
41c2e49f70SReinhard Arlt #else
42c2e49f70SReinhard Arlt #define CONFIG_83XX_CLKIN	33000000	/* in Hz */
43c2e49f70SReinhard Arlt #endif
44c2e49f70SReinhard Arlt 
45c2e49f70SReinhard Arlt #ifndef CONFIG_SYS_CLK_FREQ
462ae18241SWolfgang Denk #ifdef CONFIG_PCI_66M
47c2e49f70SReinhard Arlt #define CONFIG_SYS_CLK_FREQ	66000000
48c2e49f70SReinhard Arlt #define HRCWL_CSB_TO_CLKIN	HRCWL_CSB_TO_CLKIN_4X1
49c2e49f70SReinhard Arlt #else
50c2e49f70SReinhard Arlt #define CONFIG_SYS_CLK_FREQ	33000000
51c2e49f70SReinhard Arlt #define HRCWL_CSB_TO_CLKIN	HRCWL_CSB_TO_CLKIN_8X1
52c2e49f70SReinhard Arlt #endif
53c2e49f70SReinhard Arlt #endif
54c2e49f70SReinhard Arlt 
55c2e49f70SReinhard Arlt #define CONFIG_SYS_IMMR		0xE0000000
56c2e49f70SReinhard Arlt 
57c2e49f70SReinhard Arlt #undef CONFIG_SYS_DRAM_TEST			/* memory test, takes time */
58c2e49f70SReinhard Arlt #define CONFIG_SYS_MEMTEST_START	0x00000000	/* memtest region */
59c2e49f70SReinhard Arlt #define CONFIG_SYS_MEMTEST_END		0x00100000
60c2e49f70SReinhard Arlt 
61c2e49f70SReinhard Arlt /*
62c2e49f70SReinhard Arlt  * DDR Setup
63c2e49f70SReinhard Arlt  */
64c2e49f70SReinhard Arlt #define CONFIG_DDR_ECC			/* only for ECC DDR module */
65c2e49f70SReinhard Arlt #define CONFIG_DDR_ECC_CMD		/* use DDR ECC user commands */
661dee9be6SReinhard Arlt #define CONFIG_SPD_EEPROM
671dee9be6SReinhard Arlt #define SPD_EEPROM_ADDRESS		0x54
681dee9be6SReinhard Arlt #define CONFIG_SYS_READ_SPD		vme8349_read_spd
69c2e49f70SReinhard Arlt #define CONFIG_SYS_83XX_DDR_USES_CS0	/* esd; Fsl board uses CS2/CS3 */
70c2e49f70SReinhard Arlt 
71c2e49f70SReinhard Arlt /*
72c2e49f70SReinhard Arlt  * 32-bit data path mode.
73c2e49f70SReinhard Arlt  *
74c2e49f70SReinhard Arlt  * Please note that using this mode for devices with the real density of 64-bit
75c2e49f70SReinhard Arlt  * effectively reduces the amount of available memory due to the effect of
76c2e49f70SReinhard Arlt  * wrapping around while translating address to row/columns, for example in the
77c2e49f70SReinhard Arlt  * 256MB module the upper 128MB get aliased with contents of the lower
78c2e49f70SReinhard Arlt  * 128MB); normally this define should be used for devices with real 32-bit
79c2e49f70SReinhard Arlt  * data path.
80c2e49f70SReinhard Arlt  */
81c2e49f70SReinhard Arlt #undef CONFIG_DDR_32BIT
82c2e49f70SReinhard Arlt 
83c2e49f70SReinhard Arlt #define CONFIG_SYS_DDR_BASE		0x00000000	/* DDR is sys memory*/
84c2e49f70SReinhard Arlt #define CONFIG_SYS_SDRAM_BASE		CONFIG_SYS_DDR_BASE
85c2e49f70SReinhard Arlt #define CONFIG_SYS_DDR_SDRAM_BASE	CONFIG_SYS_DDR_BASE
862fef4020SJoe Hershberger #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL	(DDR_SDRAM_CLK_CNTL_SS_EN \
872fef4020SJoe Hershberger 					| DDR_SDRAM_CLK_CNTL_CLK_ADJUST_075)
88c2e49f70SReinhard Arlt #define CONFIG_DDR_2T_TIMING
892fef4020SJoe Hershberger #define CONFIG_SYS_DDRCDR		(DDRCDR_DHC_EN \
902fef4020SJoe Hershberger 					| DDRCDR_ODT \
912fef4020SJoe Hershberger 					| DDRCDR_Q_DRN)
922fef4020SJoe Hershberger 					/* 0x80080001 */
93c2e49f70SReinhard Arlt 
94c2e49f70SReinhard Arlt /*
95c2e49f70SReinhard Arlt  * FLASH on the Local Bus
96c2e49f70SReinhard Arlt  */
971dee9be6SReinhard Arlt #ifdef VME_CADDY2
981dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_BASE		0xffc00000	/* start of FLASH   */
991dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_SIZE		4		/* flash size in MB */
100c2e49f70SReinhard Arlt #define CONFIG_SYS_BR0_PRELIM		(CONFIG_SYS_FLASH_BASE | \
1017d6a0982SJoe Hershberger 					 BR_PS_16 |	/*  16bit */ \
1027d6a0982SJoe Hershberger 					 BR_MS_GPCM |	/*  MSEL = GPCM */ \
103c2e49f70SReinhard Arlt 					 BR_V)		/* valid */
104c2e49f70SReinhard Arlt 
1057d6a0982SJoe Hershberger #define CONFIG_SYS_OR0_PRELIM		(MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \
1067d6a0982SJoe Hershberger 					| OR_GPCM_XAM \
1077d6a0982SJoe Hershberger 					| OR_GPCM_CSNT \
1087d6a0982SJoe Hershberger 					| OR_GPCM_ACS_DIV2 \
1097d6a0982SJoe Hershberger 					| OR_GPCM_XACS \
1107d6a0982SJoe Hershberger 					| OR_GPCM_SCY_15 \
1117d6a0982SJoe Hershberger 					| OR_GPCM_TRLX_SET \
1127d6a0982SJoe Hershberger 					| OR_GPCM_EHTR_SET \
1137d6a0982SJoe Hershberger 					| OR_GPCM_EAD)
1147d6a0982SJoe Hershberger 					/* 0xffc06ff7 */
115c2e49f70SReinhard Arlt #define CONFIG_SYS_LBLAWBAR0_PRELIM	CONFIG_SYS_FLASH_BASE
1167d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM	(LBLAWAR_EN | LBLAWAR_4MB)
1171dee9be6SReinhard Arlt #else
1181dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_BASE		0xf8000000	/* start of FLASH   */
1191dee9be6SReinhard Arlt #define CONFIG_SYS_FLASH_SIZE		128		/* flash size in MB */
1201dee9be6SReinhard Arlt #define CONFIG_SYS_BR0_PRELIM		(CONFIG_SYS_FLASH_BASE | \
1217d6a0982SJoe Hershberger 					 BR_PS_16 |	/*  16bit */ \
1227d6a0982SJoe Hershberger 					 BR_MS_GPCM |	/*  MSEL = GPCM */ \
1231dee9be6SReinhard Arlt 					 BR_V)		/* valid */
1241dee9be6SReinhard Arlt 
1257d6a0982SJoe Hershberger #define CONFIG_SYS_OR0_PRELIM		(MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \
1267d6a0982SJoe Hershberger 					| OR_GPCM_XAM \
1277d6a0982SJoe Hershberger 					| OR_GPCM_CSNT \
1287d6a0982SJoe Hershberger 					| OR_GPCM_ACS_DIV2 \
1297d6a0982SJoe Hershberger 					| OR_GPCM_XACS \
1307d6a0982SJoe Hershberger 					| OR_GPCM_SCY_15 \
1317d6a0982SJoe Hershberger 					| OR_GPCM_TRLX_SET \
1327d6a0982SJoe Hershberger 					| OR_GPCM_EHTR_SET \
1337d6a0982SJoe Hershberger 					| OR_GPCM_EAD)
1347d6a0982SJoe Hershberger 					/* 0xf8006ff7 */
1351dee9be6SReinhard Arlt #define CONFIG_SYS_LBLAWBAR0_PRELIM	CONFIG_SYS_FLASH_BASE
1367d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR0_PRELIM	(LBLAWAR_EN | LBLAWAR_128MB)
1371dee9be6SReinhard Arlt #endif
138c2e49f70SReinhard Arlt 
1397d6a0982SJoe Hershberger #define CONFIG_SYS_WINDOW1_BASE		0xf0000000
1407d6a0982SJoe Hershberger #define CONFIG_SYS_BR1_PRELIM		(CONFIG_SYS_WINDOW1_BASE \
1417d6a0982SJoe Hershberger 					| BR_PS_32 \
1427d6a0982SJoe Hershberger 					| BR_MS_GPCM \
1437d6a0982SJoe Hershberger 					| BR_V)
1447d6a0982SJoe Hershberger 					/* 0xF0001801 */
1457d6a0982SJoe Hershberger #define CONFIG_SYS_OR1_PRELIM		(OR_AM_256KB \
1467d6a0982SJoe Hershberger 					| OR_GPCM_SETA)
1477d6a0982SJoe Hershberger 					/* 0xfffc0208 */
1487d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWBAR1_PRELIM	CONFIG_SYS_WINDOW1_BASE
1497d6a0982SJoe Hershberger #define CONFIG_SYS_LBLAWAR1_PRELIM	(LBLAWAR_EN | LBLAWAR_256KB)
150c2e49f70SReinhard Arlt 
151c2e49f70SReinhard Arlt #define CONFIG_SYS_MAX_FLASH_BANKS	1	/* number of banks */
152c2e49f70SReinhard Arlt #define CONFIG_SYS_MAX_FLASH_SECT	1024	/* sectors per device*/
153c2e49f70SReinhard Arlt 
154c2e49f70SReinhard Arlt #undef CONFIG_SYS_FLASH_CHECKSUM
155c2e49f70SReinhard Arlt #define CONFIG_SYS_FLASH_ERASE_TOUT	60000	/* Flash Erase TO (ms) */
156c2e49f70SReinhard Arlt #define CONFIG_SYS_FLASH_WRITE_TOUT	500	/* Flash Write TO (ms) */
157c2e49f70SReinhard Arlt 
15814d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE	/* start of monitor */
159c2e49f70SReinhard Arlt 
160c2e49f70SReinhard Arlt #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE)
161c2e49f70SReinhard Arlt #define CONFIG_SYS_RAMBOOT
162c2e49f70SReinhard Arlt #else
163c2e49f70SReinhard Arlt #undef CONFIG_SYS_RAMBOOT
164c2e49f70SReinhard Arlt #endif
165c2e49f70SReinhard Arlt 
166c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_RAM_LOCK	1
167c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_RAM_ADDR	0xF7000000	/* Initial RAM addr */
168553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE		0x1000		/* size */
169c2e49f70SReinhard Arlt 
170553f0982SWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - \
17125ddd1fbSWolfgang Denk 					 GENERATED_GBL_DATA_SIZE)
172c2e49f70SReinhard Arlt #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
173c2e49f70SReinhard Arlt 
174c2e49f70SReinhard Arlt #define CONFIG_SYS_MONITOR_LEN		(256 * 1024)	/* Reserve 256 kB */
175c8a90646SKim Phillips #define CONFIG_SYS_MALLOC_LEN		(256 * 1024)	/* Malloc size */
176c2e49f70SReinhard Arlt 
177c2e49f70SReinhard Arlt /*
178c2e49f70SReinhard Arlt  * Local Bus LCRR and LBCR regs
1791dee9be6SReinhard Arlt  *    LCRR:  no DLL bypass, Clock divider is 4
180c2e49f70SReinhard Arlt  * External Local Bus rate is
181c2e49f70SReinhard Arlt  *    CLKIN * HRCWL_CSB_TO_CLKIN / HRCWL_LCL_BUS_TO_SCB_CLK / LCRR_CLKDIV
182c2e49f70SReinhard Arlt  */
183c7190f02SKim Phillips #define CONFIG_SYS_LCRR_CLKDIV	LCRR_CLKDIV_4
184c2e49f70SReinhard Arlt #define CONFIG_SYS_LBC_LBCR	0x00000000
185c2e49f70SReinhard Arlt 
186c2e49f70SReinhard Arlt #undef CONFIG_SYS_LB_SDRAM	/* if board has SDRAM on local bus */
187c2e49f70SReinhard Arlt 
188c2e49f70SReinhard Arlt /*
189c2e49f70SReinhard Arlt  * Serial Port
190c2e49f70SReinhard Arlt  */
191c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_SERIAL
192c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_REG_SIZE	1
193c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_CLK		get_bus_freq(0)
194c2e49f70SReinhard Arlt 
195c2e49f70SReinhard Arlt #define CONFIG_SYS_BAUDRATE_TABLE  \
196c2e49f70SReinhard Arlt 		{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200}
197c2e49f70SReinhard Arlt 
198c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_COM1		(CONFIG_SYS_IMMR + 0x4500)
199c2e49f70SReinhard Arlt #define CONFIG_SYS_NS16550_COM2		(CONFIG_SYS_IMMR + 0x4600)
200c2e49f70SReinhard Arlt 
201c2e49f70SReinhard Arlt /* I2C */
20200f792e0SHeiko Schocher #define CONFIG_SYS_I2C
20300f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL
20400f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED	400000
20500f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
20600f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_OFFSET	0x3000
20700f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SPEED	400000
20800f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_SLAVE	0x7F
20900f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C2_OFFSET	0x3100
21000f792e0SHeiko Schocher #define CONFIG_SYS_I2C_NOPROBES		{ {0, 0x69} }
211efaf6f1bSPaul Gortmaker /* could also use CONFIG_I2C_MULTI_BUS and CONFIG_SYS_SPD_BUS_NUM... */
212c2e49f70SReinhard Arlt 
213c2e49f70SReinhard Arlt #define CONFIG_SYS_I2C_8574_ADDR2       0x20    /* I2C1, PCF8574 */
214c2e49f70SReinhard Arlt 
215c2e49f70SReinhard Arlt /* TSEC */
216c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC1_OFFSET	0x24000
217c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC1	(CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET)
218c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC2_OFFSET 0x25000
219c2e49f70SReinhard Arlt #define CONFIG_SYS_TSEC2	(CONFIG_SYS_IMMR + CONFIG_SYS_TSEC2_OFFSET)
220c2e49f70SReinhard Arlt 
221c2e49f70SReinhard Arlt /*
222c2e49f70SReinhard Arlt  * General PCI
223c2e49f70SReinhard Arlt  * Addresses are mapped 1-1.
224c2e49f70SReinhard Arlt  */
225c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_BASE	0x80000000
226c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_PHYS	CONFIG_SYS_PCI1_MEM_BASE
227c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MEM_SIZE	0x10000000	/* 256M */
228c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_BASE	0x90000000
229c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_PHYS	CONFIG_SYS_PCI1_MMIO_BASE
230c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_MMIO_SIZE	0x10000000	/* 256M */
231c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_BASE		0x00000000
232c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_PHYS		0xE2000000
233c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI1_IO_SIZE		0x00100000	/* 1M */
234c2e49f70SReinhard Arlt 
235c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_BASE	0xA0000000
236c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_PHYS	CONFIG_SYS_PCI2_MEM_BASE
237c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MEM_SIZE	0x10000000	/* 256M */
238c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_BASE	0xB0000000
239c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_PHYS	CONFIG_SYS_PCI2_MMIO_BASE
240c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_MMIO_SIZE	0x10000000	/* 256M */
241c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_BASE		0x00000000
242c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_PHYS		0xE2100000
243c2e49f70SReinhard Arlt #define CONFIG_SYS_PCI2_IO_SIZE		0x00100000	/* 1M */
244c2e49f70SReinhard Arlt 
245c2e49f70SReinhard Arlt #if defined(CONFIG_PCI)
246c2e49f70SReinhard Arlt 
247c2e49f70SReinhard Arlt #define PCI_64BIT
248c2e49f70SReinhard Arlt #define PCI_ONE_PCI1
249c2e49f70SReinhard Arlt #if defined(PCI_64BIT)
250c2e49f70SReinhard Arlt #undef PCI_ALL_PCI1
251c2e49f70SReinhard Arlt #undef PCI_TWO_PCI1
252c2e49f70SReinhard Arlt #undef PCI_ONE_PCI1
253c2e49f70SReinhard Arlt #endif
254c2e49f70SReinhard Arlt 
255c2e49f70SReinhard Arlt #undef CONFIG_EEPRO100
256c2e49f70SReinhard Arlt #undef CONFIG_TULIP
257c2e49f70SReinhard Arlt 
258c2e49f70SReinhard Arlt #if !defined(CONFIG_PCI_PNP)
259c2e49f70SReinhard Arlt 	#define PCI_ENET0_IOADDR	0xFIXME
260c2e49f70SReinhard Arlt 	#define PCI_ENET0_MEMADDR	0xFIXME
261c2e49f70SReinhard Arlt 	#define PCI_IDSEL_NUMBER	0xFIXME
262c2e49f70SReinhard Arlt #endif
263c2e49f70SReinhard Arlt 
2641dee9be6SReinhard Arlt #define CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup */
2651dee9be6SReinhard Arlt #define CONFIG_SYS_PCI_SUBSYS_VENDORID	0x1957	/* Freescale */
2661dee9be6SReinhard Arlt 
267c2e49f70SReinhard Arlt #endif	/* CONFIG_PCI */
268c2e49f70SReinhard Arlt 
269c2e49f70SReinhard Arlt /*
270c2e49f70SReinhard Arlt  * TSEC configuration
271c2e49f70SReinhard Arlt  */
272c2e49f70SReinhard Arlt 
273c2e49f70SReinhard Arlt #if defined(CONFIG_TSEC_ENET)
274c2e49f70SReinhard Arlt 
275c2e49f70SReinhard Arlt #define CONFIG_GMII			/* MII PHY management */
276c2e49f70SReinhard Arlt #define CONFIG_TSEC1
277c2e49f70SReinhard Arlt #define CONFIG_TSEC1_NAME	"TSEC0"
278c2e49f70SReinhard Arlt #define CONFIG_TSEC2
279c2e49f70SReinhard Arlt #define CONFIG_TSEC2_NAME	"TSEC1"
280c2e49f70SReinhard Arlt #define CONFIG_PHY_M88E1111
281c2e49f70SReinhard Arlt #define TSEC1_PHY_ADDR		0x08
282c2e49f70SReinhard Arlt #define TSEC2_PHY_ADDR		0x10
283c2e49f70SReinhard Arlt #define TSEC1_PHYIDX		0
284c2e49f70SReinhard Arlt #define TSEC2_PHYIDX		0
285c2e49f70SReinhard Arlt #define TSEC1_FLAGS		TSEC_GIGABIT
286c2e49f70SReinhard Arlt #define TSEC2_FLAGS		TSEC_GIGABIT
287c2e49f70SReinhard Arlt 
288c2e49f70SReinhard Arlt /* Options are: TSEC[0-1] */
289c2e49f70SReinhard Arlt #define CONFIG_ETHPRIME		"TSEC0"
290c2e49f70SReinhard Arlt 
291c2e49f70SReinhard Arlt #endif	/* CONFIG_TSEC_ENET */
292c2e49f70SReinhard Arlt 
293c2e49f70SReinhard Arlt /*
294c2e49f70SReinhard Arlt  * Environment
295c2e49f70SReinhard Arlt  */
296c2e49f70SReinhard Arlt #ifndef CONFIG_SYS_RAMBOOT
297c2e49f70SReinhard Arlt 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE + 0xc0000)
298c2e49f70SReinhard Arlt 	#define CONFIG_ENV_SECT_SIZE	0x20000	/* 128K(one sector) for env */
299c2e49f70SReinhard Arlt 	#define CONFIG_ENV_SIZE		0x2000
300c2e49f70SReinhard Arlt 
301c2e49f70SReinhard Arlt /* Address and size of Redundant Environment Sector	*/
302c2e49f70SReinhard Arlt #define CONFIG_ENV_ADDR_REDUND	(CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
303c2e49f70SReinhard Arlt #define CONFIG_ENV_SIZE_REDUND	(CONFIG_ENV_SIZE)
304c2e49f70SReinhard Arlt 
305c2e49f70SReinhard Arlt #else
306c2e49f70SReinhard Arlt 	#define CONFIG_ENV_ADDR		(CONFIG_SYS_MONITOR_BASE - 0x1000)
307c2e49f70SReinhard Arlt 	#define CONFIG_ENV_SIZE		0x2000
308c2e49f70SReinhard Arlt #endif
309c2e49f70SReinhard Arlt 
310c2e49f70SReinhard Arlt #define CONFIG_LOADS_ECHO		/* echo on for serial download */
311c2e49f70SReinhard Arlt #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
312c2e49f70SReinhard Arlt 
313c2e49f70SReinhard Arlt /*
314c2e49f70SReinhard Arlt  * BOOTP options
315c2e49f70SReinhard Arlt  */
316c2e49f70SReinhard Arlt #define CONFIG_BOOTP_BOOTFILESIZE
317c2e49f70SReinhard Arlt 
318c2e49f70SReinhard Arlt /*
319c2e49f70SReinhard Arlt  * Command line configuration.
320c2e49f70SReinhard Arlt  */
321c2e49f70SReinhard Arlt #define CONFIG_SYS_RTC_BUS_NUM  0x01
322c2e49f70SReinhard Arlt #define CONFIG_SYS_I2C_RTC_ADDR	0x32
323c2e49f70SReinhard Arlt #define CONFIG_RTC_RX8025
324c2e49f70SReinhard Arlt 
325c2e49f70SReinhard Arlt /* Pass Ethernet MAC to VxWorks */
326c2e49f70SReinhard Arlt #define CONFIG_SYS_VXWORKS_MAC_PTR	0x000043f0
327c2e49f70SReinhard Arlt 
328c2e49f70SReinhard Arlt #undef CONFIG_WATCHDOG			/* watchdog disabled */
329c2e49f70SReinhard Arlt 
330c2e49f70SReinhard Arlt /*
331c2e49f70SReinhard Arlt  * Miscellaneous configurable options
332c2e49f70SReinhard Arlt  */
333c2e49f70SReinhard Arlt #define CONFIG_SYS_LOAD_ADDR	0x2000000	/* default load address */
334c2e49f70SReinhard Arlt 
335c2e49f70SReinhard Arlt /*
336c2e49f70SReinhard Arlt  * For booting Linux, the board info and command line data
3379f530d59SIra W. Snyder  * have to be in the first 256 MB of memory, since this is
338c2e49f70SReinhard Arlt  * the maximum mapped by the Linux kernel during initialization.
339c2e49f70SReinhard Arlt  */
3409f530d59SIra W. Snyder #define CONFIG_SYS_BOOTMAPSZ	(256 << 20)	/* Init Memory map for Linux*/
341c2e49f70SReinhard Arlt 
342c2e49f70SReinhard Arlt #define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST  */
343c2e49f70SReinhard Arlt 
344c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_LOW (\
345c2e49f70SReinhard Arlt 	HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\
346c2e49f70SReinhard Arlt 	HRCWL_DDR_TO_SCB_CLK_1X1 |\
347c2e49f70SReinhard Arlt 	HRCWL_CSB_TO_CLKIN |\
348c2e49f70SReinhard Arlt 	HRCWL_VCO_1X2 |\
349c2e49f70SReinhard Arlt 	HRCWL_CORE_TO_CSB_2X1)
350c2e49f70SReinhard Arlt 
351c2e49f70SReinhard Arlt #if defined(PCI_64BIT)
352c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_HIGH (\
353c2e49f70SReinhard Arlt 	HRCWH_PCI_HOST |\
354c2e49f70SReinhard Arlt 	HRCWH_64_BIT_PCI |\
355c2e49f70SReinhard Arlt 	HRCWH_PCI1_ARBITER_ENABLE |\
356c2e49f70SReinhard Arlt 	HRCWH_PCI2_ARBITER_DISABLE |\
357c2e49f70SReinhard Arlt 	HRCWH_CORE_ENABLE |\
358c2e49f70SReinhard Arlt 	HRCWH_FROM_0X00000100 |\
359c2e49f70SReinhard Arlt 	HRCWH_BOOTSEQ_DISABLE |\
360c2e49f70SReinhard Arlt 	HRCWH_SW_WATCHDOG_DISABLE |\
361c2e49f70SReinhard Arlt 	HRCWH_ROM_LOC_LOCAL_16BIT |\
362c2e49f70SReinhard Arlt 	HRCWH_TSEC1M_IN_GMII |\
363c2e49f70SReinhard Arlt 	HRCWH_TSEC2M_IN_GMII)
364c2e49f70SReinhard Arlt #else
365c2e49f70SReinhard Arlt #define CONFIG_SYS_HRCW_HIGH (\
366c2e49f70SReinhard Arlt 	HRCWH_PCI_HOST |\
367c2e49f70SReinhard Arlt 	HRCWH_32_BIT_PCI |\
368c2e49f70SReinhard Arlt 	HRCWH_PCI1_ARBITER_ENABLE |\
369c2e49f70SReinhard Arlt 	HRCWH_PCI2_ARBITER_ENABLE |\
370c2e49f70SReinhard Arlt 	HRCWH_CORE_ENABLE |\
371c2e49f70SReinhard Arlt 	HRCWH_FROM_0X00000100 |\
372c2e49f70SReinhard Arlt 	HRCWH_BOOTSEQ_DISABLE |\
373c2e49f70SReinhard Arlt 	HRCWH_SW_WATCHDOG_DISABLE |\
374c2e49f70SReinhard Arlt 	HRCWH_ROM_LOC_LOCAL_16BIT |\
375c2e49f70SReinhard Arlt 	HRCWH_TSEC1M_IN_GMII |\
376c2e49f70SReinhard Arlt 	HRCWH_TSEC2M_IN_GMII)
377c2e49f70SReinhard Arlt #endif
378c2e49f70SReinhard Arlt 
379c2e49f70SReinhard Arlt /* System IO Config */
380c2e49f70SReinhard Arlt #define CONFIG_SYS_SICRH 0
381c2e49f70SReinhard Arlt #define CONFIG_SYS_SICRL SICRL_LDP_A
382c2e49f70SReinhard Arlt 
383c2e49f70SReinhard Arlt #define CONFIG_SYS_HID0_INIT	0x000000000
3841a2e203bSKim Phillips #define CONFIG_SYS_HID0_FINAL	(HID0_ENABLE_MACHINE_CHECK | \
3851a2e203bSKim Phillips 				 HID0_ENABLE_INSTRUCTION_CACHE)
386c2e49f70SReinhard Arlt 
387c2e49f70SReinhard Arlt #define CONFIG_SYS_HID2		HID2_HBE
388c2e49f70SReinhard Arlt 
389c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_PRELIM
390c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_DIR	0x00100000
391c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO1_DAT	0x00100000
392c2e49f70SReinhard Arlt 
393c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_PRELIM
394c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_DIR	0x78900000
395c2e49f70SReinhard Arlt #define CONFIG_SYS_GPIO2_DAT	0x70100000
396c2e49f70SReinhard Arlt 
397c2e49f70SReinhard Arlt #define CONFIG_HIGH_BATS		/* High BATs supported */
398c2e49f70SReinhard Arlt 
399c2e49f70SReinhard Arlt /* DDR @ 0x00000000 */
40072cd4087SJoe Hershberger #define CONFIG_SYS_IBAT0L	(CONFIG_SYS_SDRAM_BASE | BATL_PP_RW | \
401c2e49f70SReinhard Arlt 				 BATL_MEMCOHERENCE)
402c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT0U	(CONFIG_SYS_SDRAM_BASE | BATU_BL_256M | \
403c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
404c2e49f70SReinhard Arlt 
405c2e49f70SReinhard Arlt /* PCI @ 0x80000000 */
406c2e49f70SReinhard Arlt #ifdef CONFIG_PCI
407842033e6SGabor Juhos #define CONFIG_PCI_INDIRECT_BRIDGE
40872cd4087SJoe Hershberger #define CONFIG_SYS_IBAT1L	(CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW | \
409c2e49f70SReinhard Arlt 				 BATL_MEMCOHERENCE)
410c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1U	(CONFIG_SYS_PCI1_MEM_BASE | BATU_BL_256M | \
411c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
41272cd4087SJoe Hershberger #define CONFIG_SYS_IBAT2L	(CONFIG_SYS_PCI1_MMIO_BASE | BATL_PP_RW | \
413c2e49f70SReinhard Arlt 				 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
414c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2U	(CONFIG_SYS_PCI1_MMIO_BASE | BATU_BL_256M | \
415c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
416c2e49f70SReinhard Arlt #else
417c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1L	(0)
418c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT1U	(0)
419c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2L	(0)
420c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT2U	(0)
421c2e49f70SReinhard Arlt #endif
422c2e49f70SReinhard Arlt 
423c2e49f70SReinhard Arlt #ifdef CONFIG_MPC83XX_PCI2
42472cd4087SJoe Hershberger #define CONFIG_SYS_IBAT3L	(CONFIG_SYS_PCI2_MEM_BASE | BATL_PP_RW | \
425c2e49f70SReinhard Arlt 				 BATL_MEMCOHERENCE)
426c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3U	(CONFIG_SYS_PCI2_MEM_BASE | BATU_BL_256M | \
427c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
42872cd4087SJoe Hershberger #define CONFIG_SYS_IBAT4L	(CONFIG_SYS_PCI2_MMIO_BASE | BATL_PP_RW | \
429c2e49f70SReinhard Arlt 				 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
430c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4U	(CONFIG_SYS_PCI2_MMIO_BASE | BATU_BL_256M | \
431c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
432c2e49f70SReinhard Arlt #else
433c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3L	(0)
434c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT3U	(0)
435c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4L	(0)
436c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT4U	(0)
437c2e49f70SReinhard Arlt #endif
438c2e49f70SReinhard Arlt 
439c2e49f70SReinhard Arlt /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 */
44072cd4087SJoe Hershberger #define CONFIG_SYS_IBAT5L	(CONFIG_SYS_IMMR | BATL_PP_RW | \
441c2e49f70SReinhard Arlt 				 BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE)
442c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT5U	(CONFIG_SYS_IMMR | BATU_BL_256M | \
443c2e49f70SReinhard Arlt 				 BATU_VS | BATU_VP)
444c2e49f70SReinhard Arlt 
44572cd4087SJoe Hershberger #define CONFIG_SYS_IBAT6L	(0xF0000000 | BATL_PP_RW | BATL_MEMCOHERENCE)
446c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT6U	(0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP)
447c2e49f70SReinhard Arlt 
448c2e49f70SReinhard Arlt #if (CONFIG_SYS_DDR_SIZE == 512)
449c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7L	(CONFIG_SYS_SDRAM_BASE+0x10000000 | \
45072cd4087SJoe Hershberger 				 BATL_PP_RW | BATL_MEMCOHERENCE)
451c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7U	(CONFIG_SYS_SDRAM_BASE+0x10000000 | \
452c2e49f70SReinhard Arlt 				 BATU_BL_256M | BATU_VS | BATU_VP)
453c2e49f70SReinhard Arlt #else
454c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7L	(0)
455c2e49f70SReinhard Arlt #define CONFIG_SYS_IBAT7U	(0)
456c2e49f70SReinhard Arlt #endif
457c2e49f70SReinhard Arlt 
458c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT0L	CONFIG_SYS_IBAT0L
459c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT0U	CONFIG_SYS_IBAT0U
460c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT1L	CONFIG_SYS_IBAT1L
461c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT1U	CONFIG_SYS_IBAT1U
462c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT2L	CONFIG_SYS_IBAT2L
463c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT2U	CONFIG_SYS_IBAT2U
464c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT3L	CONFIG_SYS_IBAT3L
465c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT3U	CONFIG_SYS_IBAT3U
466c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT4L	CONFIG_SYS_IBAT4L
467c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT4U	CONFIG_SYS_IBAT4U
468c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT5L	CONFIG_SYS_IBAT5L
469c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT5U	CONFIG_SYS_IBAT5U
470c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT6L	CONFIG_SYS_IBAT6L
471c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT6U	CONFIG_SYS_IBAT6U
472c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT7L	CONFIG_SYS_IBAT7L
473c2e49f70SReinhard Arlt #define CONFIG_SYS_DBAT7U	CONFIG_SYS_IBAT7U
474c2e49f70SReinhard Arlt 
475c2e49f70SReinhard Arlt #if defined(CONFIG_CMD_KGDB)
476c2e49f70SReinhard Arlt #define CONFIG_KGDB_BAUDRATE	230400	/* speed of kgdb serial port */
477c2e49f70SReinhard Arlt #endif
478c2e49f70SReinhard Arlt 
479c2e49f70SReinhard Arlt /*
480c2e49f70SReinhard Arlt  * Environment Configuration
481c2e49f70SReinhard Arlt  */
482c2e49f70SReinhard Arlt #define CONFIG_ENV_OVERWRITE
483c2e49f70SReinhard Arlt 
484c2e49f70SReinhard Arlt #if defined(CONFIG_TSEC_ENET)
485c2e49f70SReinhard Arlt #define CONFIG_HAS_ETH0
486c2e49f70SReinhard Arlt #define CONFIG_HAS_ETH1
487c2e49f70SReinhard Arlt #endif
488c2e49f70SReinhard Arlt 
4895bc0543dSMario Six #define CONFIG_HOSTNAME		"VME8349"
4908b3637c6SJoe Hershberger #define CONFIG_ROOTPATH		"/tftpboot/rootfs"
491b3f44c21SJoe Hershberger #define CONFIG_BOOTFILE		"uImage"
492c2e49f70SReinhard Arlt 
49379f516bcSKim Phillips #define CONFIG_LOADADDR		800000	/* def location for tftp and bootm */
494c2e49f70SReinhard Arlt 
495c2e49f70SReinhard Arlt #define	CONFIG_EXTRA_ENV_SETTINGS					\
496c2e49f70SReinhard Arlt 	"netdev=eth0\0"							\
497c2e49f70SReinhard Arlt 	"hostname=vme8349\0"						\
498c2e49f70SReinhard Arlt 	"nfsargs=setenv bootargs root=/dev/nfs rw "			\
499c2e49f70SReinhard Arlt 		"nfsroot=${serverip}:${rootpath}\0"			\
500c2e49f70SReinhard Arlt 	"ramargs=setenv bootargs root=/dev/ram rw\0"			\
501c2e49f70SReinhard Arlt 	"addip=setenv bootargs ${bootargs} "				\
502c2e49f70SReinhard Arlt 		"ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"	\
503c2e49f70SReinhard Arlt 		":${hostname}:${netdev}:off panic=1\0"			\
504c2e49f70SReinhard Arlt 	"addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate}\0"\
505c2e49f70SReinhard Arlt 	"flash_nfs=run nfsargs addip addtty;"				\
506c2e49f70SReinhard Arlt 		"bootm ${kernel_addr}\0"				\
507c2e49f70SReinhard Arlt 	"flash_self=run ramargs addip addtty;"				\
508c2e49f70SReinhard Arlt 		"bootm ${kernel_addr} ${ramdisk_addr}\0"		\
509c2e49f70SReinhard Arlt 	"net_nfs=tftp 200000 ${bootfile};run nfsargs addip addtty;"	\
510c2e49f70SReinhard Arlt 		"bootm\0"						\
511c2e49f70SReinhard Arlt 	"load=tftp 100000 /tftpboot/bdi2000/vme8349.bin\0"		\
512c2e49f70SReinhard Arlt 	"update=protect off fff00000 fff3ffff; "			\
513c2e49f70SReinhard Arlt 		"era fff00000 fff3ffff; cp.b 100000 fff00000 ${filesize}\0" \
514c2e49f70SReinhard Arlt 	"upd=run load update\0"						\
51579f516bcSKim Phillips 	"fdtaddr=780000\0"						\
516c2e49f70SReinhard Arlt 	"fdtfile=vme8349.dtb\0"						\
517c2e49f70SReinhard Arlt 	""
518c2e49f70SReinhard Arlt 
519c2e49f70SReinhard Arlt #define CONFIG_NFSBOOTCOMMAND						\
520c2e49f70SReinhard Arlt 	"setenv bootargs root=/dev/nfs rw "				\
521c2e49f70SReinhard Arlt 		"nfsroot=$serverip:$rootpath "				\
522c7357a2bSJoe Hershberger 		"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:"	\
523c7357a2bSJoe Hershberger 							"$netdev:off "	\
524c2e49f70SReinhard Arlt 		"console=$consoledev,$baudrate $othbootargs;"		\
525c2e49f70SReinhard Arlt 	"tftp $loadaddr $bootfile;"					\
526c2e49f70SReinhard Arlt 	"tftp $fdtaddr $fdtfile;"					\
527c2e49f70SReinhard Arlt 	"bootm $loadaddr - $fdtaddr"
528c2e49f70SReinhard Arlt 
529c2e49f70SReinhard Arlt #define CONFIG_RAMBOOTCOMMAND						\
530c2e49f70SReinhard Arlt 	"setenv bootargs root=/dev/ram rw "				\
531c2e49f70SReinhard Arlt 		"console=$consoledev,$baudrate $othbootargs;"		\
532c2e49f70SReinhard Arlt 	"tftp $ramdiskaddr $ramdiskfile;"				\
533c2e49f70SReinhard Arlt 	"tftp $loadaddr $bootfile;"					\
534c2e49f70SReinhard Arlt 	"tftp $fdtaddr $fdtfile;"					\
535c2e49f70SReinhard Arlt 	"bootm $loadaddr $ramdiskaddr $fdtaddr"
536c2e49f70SReinhard Arlt 
537c2e49f70SReinhard Arlt #define CONFIG_BOOTCOMMAND	"run flash_self"
538c2e49f70SReinhard Arlt 
5391dee9be6SReinhard Arlt #ifndef __ASSEMBLY__
5401dee9be6SReinhard Arlt int vme8349_read_spd(unsigned char chip, unsigned int addr, int alen,
5411dee9be6SReinhard Arlt 		     unsigned char *buffer, int len);
5421dee9be6SReinhard Arlt #endif
5431dee9be6SReinhard Arlt 
544c2e49f70SReinhard Arlt #endif	/* __CONFIG_H */
545