xref: /rk3399_rockchip-uboot/include/configs/socrates.h (revision 5d108ac8f435924c624cd6aaacd44f35f5cf94c0)
1*5d108ac8SSergei Poselenov /*
2*5d108ac8SSergei Poselenov  * (C) Copyright 2008
3*5d108ac8SSergei Poselenov  * Sergei Poselenov, Emcraft Systems, sposelenov@emcraft.com.
4*5d108ac8SSergei Poselenov  *
5*5d108ac8SSergei Poselenov  * Wolfgang Denk <wd@denx.de>
6*5d108ac8SSergei Poselenov  * Copyright 2004 Freescale Semiconductor.
7*5d108ac8SSergei Poselenov  * (C) Copyright 2002,2003 Motorola,Inc.
8*5d108ac8SSergei Poselenov  * Xianghua Xiao <X.Xiao@motorola.com>
9*5d108ac8SSergei Poselenov  *
10*5d108ac8SSergei Poselenov  * See file CREDITS for list of people who contributed to this
11*5d108ac8SSergei Poselenov  * project.
12*5d108ac8SSergei Poselenov  *
13*5d108ac8SSergei Poselenov  * This program is free software; you can redistribute it and/or
14*5d108ac8SSergei Poselenov  * modify it under the terms of the GNU General Public License as
15*5d108ac8SSergei Poselenov  * published by the Free Software Foundation; either version 2 of
16*5d108ac8SSergei Poselenov  * the License, or (at your option) any later version.
17*5d108ac8SSergei Poselenov  *
18*5d108ac8SSergei Poselenov  * This program is distributed in the hope that it will be useful,
19*5d108ac8SSergei Poselenov  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20*5d108ac8SSergei Poselenov  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
21*5d108ac8SSergei Poselenov  * GNU General Public License for more details.
22*5d108ac8SSergei Poselenov  *
23*5d108ac8SSergei Poselenov  * You should have received a copy of the GNU General Public License
24*5d108ac8SSergei Poselenov  * along with this program; if not, write to the Free Software
25*5d108ac8SSergei Poselenov  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
26*5d108ac8SSergei Poselenov  * MA 02111-1307 USA
27*5d108ac8SSergei Poselenov  */
28*5d108ac8SSergei Poselenov 
29*5d108ac8SSergei Poselenov /*
30*5d108ac8SSergei Poselenov  * Socrates
31*5d108ac8SSergei Poselenov  */
32*5d108ac8SSergei Poselenov 
33*5d108ac8SSergei Poselenov #ifndef __CONFIG_H
34*5d108ac8SSergei Poselenov #define __CONFIG_H
35*5d108ac8SSergei Poselenov 
36*5d108ac8SSergei Poselenov /* High Level Configuration Options */
37*5d108ac8SSergei Poselenov #define CONFIG_BOOKE		1	/* BOOKE			*/
38*5d108ac8SSergei Poselenov #define CONFIG_E500		1	/* BOOKE e500 family		*/
39*5d108ac8SSergei Poselenov #define CONFIG_MPC85xx		1	/* MPC8540/60/55/41		*/
40*5d108ac8SSergei Poselenov #define CONFIG_MPC8544		1
41*5d108ac8SSergei Poselenov #define CONFIG_SOCRATES		1
42*5d108ac8SSergei Poselenov 
43*5d108ac8SSergei Poselenov #define CONFIG_PCI
44*5d108ac8SSergei Poselenov 
45*5d108ac8SSergei Poselenov #define CONFIG_TSEC_ENET		/* tsec ethernet support	*/
46*5d108ac8SSergei Poselenov 
47*5d108ac8SSergei Poselenov #define CONFIG_MISC_INIT_R	1	/* Call misc_init_r		*/
48*5d108ac8SSergei Poselenov 
49*5d108ac8SSergei Poselenov #define CONFIG_FSL_LAW		1	/* Use common FSL init code */
50*5d108ac8SSergei Poselenov 
51*5d108ac8SSergei Poselenov /*
52*5d108ac8SSergei Poselenov  * Only possible on E500 Version 2 or newer cores.
53*5d108ac8SSergei Poselenov  */
54*5d108ac8SSergei Poselenov #define CONFIG_ENABLE_36BIT_PHYS	1
55*5d108ac8SSergei Poselenov 
56*5d108ac8SSergei Poselenov /*
57*5d108ac8SSergei Poselenov  * sysclk for MPC85xx
58*5d108ac8SSergei Poselenov  *
59*5d108ac8SSergei Poselenov  * Two valid values are:
60*5d108ac8SSergei Poselenov  *    33000000
61*5d108ac8SSergei Poselenov  *    66000000
62*5d108ac8SSergei Poselenov  *
63*5d108ac8SSergei Poselenov  * Most PCI cards are still 33Mhz, so in the presence of PCI, 33MHz
64*5d108ac8SSergei Poselenov  * is likely the desired value here, so that is now the default.
65*5d108ac8SSergei Poselenov  * The board, however, can run at 66MHz.  In any event, this value
66*5d108ac8SSergei Poselenov  * must match the settings of some switches.  Details can be found
67*5d108ac8SSergei Poselenov  * in the README.mpc85xxads.
68*5d108ac8SSergei Poselenov  */
69*5d108ac8SSergei Poselenov 
70*5d108ac8SSergei Poselenov #ifndef CONFIG_SYS_CLK_FREQ
71*5d108ac8SSergei Poselenov #define CONFIG_SYS_CLK_FREQ	66666666
72*5d108ac8SSergei Poselenov #endif
73*5d108ac8SSergei Poselenov 
74*5d108ac8SSergei Poselenov /*
75*5d108ac8SSergei Poselenov  * These can be toggled for performance analysis, otherwise use default.
76*5d108ac8SSergei Poselenov  */
77*5d108ac8SSergei Poselenov #define CONFIG_L2_CACHE			/* toggle L2 cache		*/
78*5d108ac8SSergei Poselenov #define CONFIG_BTB			/* toggle branch predition	*/
79*5d108ac8SSergei Poselenov #define CONFIG_ADDR_STREAMING		/* toggle addr streaming	*/
80*5d108ac8SSergei Poselenov 
81*5d108ac8SSergei Poselenov #define CFG_INIT_DBCR DBCR_IDM		/* Enable Debug Exceptions	*/
82*5d108ac8SSergei Poselenov 
83*5d108ac8SSergei Poselenov #undef	CFG_DRAM_TEST			/* memory test, takes time	*/
84*5d108ac8SSergei Poselenov #define CFG_MEMTEST_START	0x00000000
85*5d108ac8SSergei Poselenov #define CFG_MEMTEST_END		0x10000000
86*5d108ac8SSergei Poselenov 
87*5d108ac8SSergei Poselenov /*
88*5d108ac8SSergei Poselenov  * Base addresses -- Note these are effective addresses where the
89*5d108ac8SSergei Poselenov  * actual resources get mapped (not physical addresses)
90*5d108ac8SSergei Poselenov  */
91*5d108ac8SSergei Poselenov #define CFG_CCSRBAR_DEFAULT	0xFF700000	/* CCSRBAR Default	*/
92*5d108ac8SSergei Poselenov #define CFG_CCSRBAR		0xE0000000	/* relocated CCSRBAR	*/
93*5d108ac8SSergei Poselenov #define CFG_CCSRBAR_PHYS	CFG_CCSRBAR	/* physical addr of CCSRBAR */
94*5d108ac8SSergei Poselenov #define CFG_IMMR		CFG_CCSRBAR	/* PQII uses CFG_IMMR	*/
95*5d108ac8SSergei Poselenov 
96*5d108ac8SSergei Poselenov /*
97*5d108ac8SSergei Poselenov  * DDR Setup
98*5d108ac8SSergei Poselenov  */
99*5d108ac8SSergei Poselenov #define CFG_DDR_SDRAM_BASE	0x00000000	/* DDR is system memory	*/
100*5d108ac8SSergei Poselenov #define CFG_SDRAM_BASE		CFG_DDR_SDRAM_BASE
101*5d108ac8SSergei Poselenov 
102*5d108ac8SSergei Poselenov #define CONFIG_DDR_DEFAULT_CL	30		/* CAS latency 3	*/
103*5d108ac8SSergei Poselenov 
104*5d108ac8SSergei Poselenov /* Hardcoded values, to use instead of SPD */
105*5d108ac8SSergei Poselenov #define CFG_DDR_CS0_BNDS		0x0000000f
106*5d108ac8SSergei Poselenov #define CFG_DDR_CS0_CONFIG		0x80010102
107*5d108ac8SSergei Poselenov #define CFG_DDR_TIMING_0		0x00260802
108*5d108ac8SSergei Poselenov #define CFG_DDR_TIMING_1		0x3935D322
109*5d108ac8SSergei Poselenov #define CFG_DDR_TIMING_2		0x14904CC8
110*5d108ac8SSergei Poselenov #define CFG_DDR_MODE			0x00480432
111*5d108ac8SSergei Poselenov #define CFG_DDR_INTERVAL		0x030C0100
112*5d108ac8SSergei Poselenov #define CFG_DDR_CONFIG_2		0x04400000
113*5d108ac8SSergei Poselenov #define CFG_DDR_CONFIG			0xC3008000
114*5d108ac8SSergei Poselenov #define CFG_DDR_CLK_CONTROL		0x03800000
115*5d108ac8SSergei Poselenov #define CFG_SDRAM_SIZE			256 /* in Megs */
116*5d108ac8SSergei Poselenov 
117*5d108ac8SSergei Poselenov #if 1
118*5d108ac8SSergei Poselenov #define CONFIG_SPD_EEPROM	1 	/* Use SPD EEPROM for DDR setup*/
119*5d108ac8SSergei Poselenov #define SPD_EEPROM_ADDRESS	0x50		/* DDR DIMM */
120*5d108ac8SSergei Poselenov #define MPC85xx_DDR_SDRAM_CLK_CNTL	/* 85xx has clock control reg */
121*5d108ac8SSergei Poselenov #endif
122*5d108ac8SSergei Poselenov 
123*5d108ac8SSergei Poselenov /*
124*5d108ac8SSergei Poselenov  * Flash on the Local Bus
125*5d108ac8SSergei Poselenov  */
126*5d108ac8SSergei Poselenov /*
127*5d108ac8SSergei Poselenov  * Flash on the LocalBus
128*5d108ac8SSergei Poselenov  */
129*5d108ac8SSergei Poselenov #define CFG_LBC_CACHE_BASE	0xf0000000	/* Localbus cacheable	 */
130*5d108ac8SSergei Poselenov 
131*5d108ac8SSergei Poselenov #define CFG_FLASH0		0xFE000000
132*5d108ac8SSergei Poselenov #define CFG_FLASH1		0xFC000000
133*5d108ac8SSergei Poselenov #define CFG_FLASH_BANKS_LIST	{ CFG_FLASH1, CFG_FLASH0 }
134*5d108ac8SSergei Poselenov 
135*5d108ac8SSergei Poselenov #define CFG_LBC_FLASH_BASE	CFG_FLASH1	/* Localbus flash start	*/
136*5d108ac8SSergei Poselenov #define CFG_FLASH_BASE		CFG_LBC_FLASH_BASE /* start of FLASH	*/
137*5d108ac8SSergei Poselenov 
138*5d108ac8SSergei Poselenov #define CFG_BR0_PRELIM		0xfe001001	/* port size 16bit	*/
139*5d108ac8SSergei Poselenov #define CFG_OR0_PRELIM		0xfe000ff7	/* 32MB Flash		*/
140*5d108ac8SSergei Poselenov #define CFG_BR1_PRELIM		0xfc001001	/* port size 16bit	*/
141*5d108ac8SSergei Poselenov #define CFG_OR1_PRELIM		0xfe000ff7	/* 32MB Flash		*/
142*5d108ac8SSergei Poselenov 
143*5d108ac8SSergei Poselenov #define CFG_FLASH_CFI				/* flash is CFI compat.	*/
144*5d108ac8SSergei Poselenov #define CFG_FLASH_CFI_DRIVER			/* Use common CFI driver*/
145*5d108ac8SSergei Poselenov #define CFG_FLASH_EMPTY_INFO		/* print 'E' for empty sector	*/
146*5d108ac8SSergei Poselenov 
147*5d108ac8SSergei Poselenov #define CFG_MAX_FLASH_BANKS	2		/* number of banks	*/
148*5d108ac8SSergei Poselenov #define CFG_MAX_FLASH_SECT	512		/* sectors per device	*/
149*5d108ac8SSergei Poselenov #undef	CFG_FLASH_CHECKSUM
150*5d108ac8SSergei Poselenov #define CFG_FLASH_ERASE_TOUT	60000	/* Flash Erase Timeout (ms)	*/
151*5d108ac8SSergei Poselenov #define CFG_FLASH_WRITE_TOUT	500	/* Flash Write Timeout (ms)	*/
152*5d108ac8SSergei Poselenov 
153*5d108ac8SSergei Poselenov #define CFG_MONITOR_BASE	TEXT_BASE	/* start of monitor	*/
154*5d108ac8SSergei Poselenov 
155*5d108ac8SSergei Poselenov #define CFG_LBC_LCRR		0x00030008    /* LB clock ratio reg	*/
156*5d108ac8SSergei Poselenov #define CFG_LBC_LBCR		0x00000000    /* LB config reg		*/
157*5d108ac8SSergei Poselenov #define CFG_LBC_LSRT		0x20000000    /* LB sdram refresh timer	*/
158*5d108ac8SSergei Poselenov #define CFG_LBC_MRTPR		0x20000000    /* LB refresh timer presc.*/
159*5d108ac8SSergei Poselenov 
160*5d108ac8SSergei Poselenov #define CONFIG_L1_INIT_RAM
161*5d108ac8SSergei Poselenov #define CFG_INIT_RAM_LOCK	1
162*5d108ac8SSergei Poselenov #define CFG_INIT_RAM_ADDR	0xe4010000	/* Initial RAM address	*/
163*5d108ac8SSergei Poselenov #define CFG_INIT_RAM_END	0x4000		/* End used area in RAM	*/
164*5d108ac8SSergei Poselenov 
165*5d108ac8SSergei Poselenov #define CFG_GBL_DATA_SIZE	128		/* num bytes initial data*/
166*5d108ac8SSergei Poselenov #define CFG_GBL_DATA_OFFSET	(CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
167*5d108ac8SSergei Poselenov #define CFG_INIT_SP_OFFSET	CFG_GBL_DATA_OFFSET
168*5d108ac8SSergei Poselenov 
169*5d108ac8SSergei Poselenov #define CFG_MONITOR_LEN		(256 * 1024)	/* Reserve 256kB for Mon*/
170*5d108ac8SSergei Poselenov #define CFG_MALLOC_LEN		(128 * 1024)	/* Reserved for malloc	*/
171*5d108ac8SSergei Poselenov 
172*5d108ac8SSergei Poselenov /* Serial Port */
173*5d108ac8SSergei Poselenov 
174*5d108ac8SSergei Poselenov #define CONFIG_CONS_INDEX     1
175*5d108ac8SSergei Poselenov #undef	CONFIG_SERIAL_SOFTWARE_FIFO
176*5d108ac8SSergei Poselenov #define CFG_NS16550
177*5d108ac8SSergei Poselenov #define CFG_NS16550_SERIAL
178*5d108ac8SSergei Poselenov #define CFG_NS16550_REG_SIZE	1
179*5d108ac8SSergei Poselenov #define CFG_NS16550_CLK		get_bus_freq(0)
180*5d108ac8SSergei Poselenov 
181*5d108ac8SSergei Poselenov #define CFG_NS16550_COM1	(CFG_CCSRBAR+0x4500)
182*5d108ac8SSergei Poselenov #define CFG_NS16550_COM2	(CFG_CCSRBAR+0x4600)
183*5d108ac8SSergei Poselenov 
184*5d108ac8SSergei Poselenov #define CONFIG_BAUDRATE         115200
185*5d108ac8SSergei Poselenov 
186*5d108ac8SSergei Poselenov #define CFG_BAUDRATE_TABLE  \
187*5d108ac8SSergei Poselenov 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400,115200}
188*5d108ac8SSergei Poselenov 
189*5d108ac8SSergei Poselenov #define CONFIG_CMDLINE_EDITING	1	/* add command line history	*/
190*5d108ac8SSergei Poselenov #define CFG_HUSH_PARSER		1	/* Use the HUSH parser		*/
191*5d108ac8SSergei Poselenov #ifdef	CFG_HUSH_PARSER
192*5d108ac8SSergei Poselenov #define	CFG_PROMPT_HUSH_PS2	"> "
193*5d108ac8SSergei Poselenov #endif
194*5d108ac8SSergei Poselenov 
195*5d108ac8SSergei Poselenov 
196*5d108ac8SSergei Poselenov /*
197*5d108ac8SSergei Poselenov  * I2C
198*5d108ac8SSergei Poselenov  */
199*5d108ac8SSergei Poselenov #define CONFIG_FSL_I2C		/* Use FSL common I2C driver */
200*5d108ac8SSergei Poselenov #define CONFIG_HARD_I2C			/* I2C with hardware support	*/
201*5d108ac8SSergei Poselenov #undef	CONFIG_SOFT_I2C			/* I2C bit-banged		*/
202*5d108ac8SSergei Poselenov #define CFG_I2C_SPEED		400000	/* I2C speed and slave address	*/
203*5d108ac8SSergei Poselenov #define CFG_I2C_SLAVE		0x7F
204*5d108ac8SSergei Poselenov #define CFG_I2C_NOPROBES	{0x48}	/* Don't probe these addrs	*/
205*5d108ac8SSergei Poselenov #define CFG_I2C_OFFSET		0x3000
206*5d108ac8SSergei Poselenov 
207*5d108ac8SSergei Poselenov /* I2C RTC */
208*5d108ac8SSergei Poselenov #define CONFIG_RTC_DS1337		/* Use ds1337 rtc via i2c	*/
209*5d108ac8SSergei Poselenov #define CFG_I2C_RTC_ADDR	0x68	/* at address 0x68		*/
210*5d108ac8SSergei Poselenov 
211*5d108ac8SSergei Poselenov #if 0
212*5d108ac8SSergei Poselenov /* I2C EEPROM */
213*5d108ac8SSergei Poselenov /*
214*5d108ac8SSergei Poselenov  * EEPROM configuration for onboard EEPROM M24C32 (M24C64 should work also).
215*5d108ac8SSergei Poselenov  */
216*5d108ac8SSergei Poselenov #define CFG_I2C_EEPROM_ADDR		0x50	/* 1010000x		*/
217*5d108ac8SSergei Poselenov #define CFG_I2C_EEPROM_ADDR_LEN		2
218*5d108ac8SSergei Poselenov #define CFG_EEPROM_PAGE_WRITE_BITS	5	/* =32 Bytes per write	*/
219*5d108ac8SSergei Poselenov #define CFG_EEPROM_PAGE_WRITE_ENABLE
220*5d108ac8SSergei Poselenov #define CFG_EEPROM_PAGE_WRITE_DELAY_MS	20
221*5d108ac8SSergei Poselenov #define CFG_I2C_MULTI_EEPROMS		1       /* more than one eeprom */
222*5d108ac8SSergei Poselenov 
223*5d108ac8SSergei Poselenov /* I2C SYSMON (LM75) */
224*5d108ac8SSergei Poselenov #define CONFIG_DTT_LM75		1		/* ON Semi's LM75	*/
225*5d108ac8SSergei Poselenov #define CONFIG_DTT_SENSORS	{0}		/* Sensor addresses	*/
226*5d108ac8SSergei Poselenov #define CFG_DTT_MAX_TEMP	70
227*5d108ac8SSergei Poselenov #define CFG_DTT_LOW_TEMP	-30
228*5d108ac8SSergei Poselenov #define CFG_DTT_HYSTERESIS	3
229*5d108ac8SSergei Poselenov #endif
230*5d108ac8SSergei Poselenov 
231*5d108ac8SSergei Poselenov /* RapidIO MMU */
232*5d108ac8SSergei Poselenov #define CFG_RIO_MEM_BASE	0xc0000000	/* base address		*/
233*5d108ac8SSergei Poselenov #define CFG_RIO_MEM_PHYS	CFG_RIO_MEM_BASE
234*5d108ac8SSergei Poselenov #define CFG_RIO_MEM_SIZE	0x20000000	/* 128M			*/
235*5d108ac8SSergei Poselenov 
236*5d108ac8SSergei Poselenov /*
237*5d108ac8SSergei Poselenov  * General PCI
238*5d108ac8SSergei Poselenov  * Memory space is mapped 1-1.
239*5d108ac8SSergei Poselenov  */
240*5d108ac8SSergei Poselenov #define CFG_PCI_PHYS		0x80000000	/* 1G PCI TLB */
241*5d108ac8SSergei Poselenov 
242*5d108ac8SSergei Poselenov 
243*5d108ac8SSergei Poselenov #define CFG_PCI1_MEM_BASE	0x80000000
244*5d108ac8SSergei Poselenov #define CFG_PCI1_MEM_PHYS	CFG_PCI1_MEM_BASE
245*5d108ac8SSergei Poselenov #define CFG_PCI1_MEM_SIZE	0x20000000	/* 512M			*/
246*5d108ac8SSergei Poselenov #define CFG_PCI1_IO_BASE	0xE2000000
247*5d108ac8SSergei Poselenov #define CFG_PCI1_IO_PHYS	CFG_PCI1_IO_BASE
248*5d108ac8SSergei Poselenov #define CFG_PCI1_IO_SIZE	0x01000000	/* 16M			*/
249*5d108ac8SSergei Poselenov 
250*5d108ac8SSergei Poselenov #if defined(CONFIG_PCI)
251*5d108ac8SSergei Poselenov 
252*5d108ac8SSergei Poselenov #define CONFIG_PCI_PNP			/* do pci plug-and-play		*/
253*5d108ac8SSergei Poselenov 
254*5d108ac8SSergei Poselenov #define CONFIG_EEPRO100
255*5d108ac8SSergei Poselenov #undef CONFIG_TULIP
256*5d108ac8SSergei Poselenov 
257*5d108ac8SSergei Poselenov #undef CONFIG_PCI_SCAN_SHOW		/* show pci devices on startup	*/
258*5d108ac8SSergei Poselenov #define CFG_PCI_SUBSYS_VENDORID 0x1057	/* Motorola			*/
259*5d108ac8SSergei Poselenov 
260*5d108ac8SSergei Poselenov #endif	/* CONFIG_PCI */
261*5d108ac8SSergei Poselenov 
262*5d108ac8SSergei Poselenov 
263*5d108ac8SSergei Poselenov #define CONFIG_NET_MULTI	1
264*5d108ac8SSergei Poselenov #define CONFIG_MII		1	/* MII PHY management */
265*5d108ac8SSergei Poselenov #define CONFIG_TSEC1	1
266*5d108ac8SSergei Poselenov #define CONFIG_TSEC1_NAME	"TSEC0"
267*5d108ac8SSergei Poselenov #define CONFIG_TSEC2	1
268*5d108ac8SSergei Poselenov #define CONFIG_TSEC2_NAME	"TSEC1"
269*5d108ac8SSergei Poselenov #undef CONFIG_MPC85XX_FEC
270*5d108ac8SSergei Poselenov 
271*5d108ac8SSergei Poselenov #define TSEC1_PHY_ADDR		0
272*5d108ac8SSergei Poselenov #define TSEC2_PHY_ADDR		1
273*5d108ac8SSergei Poselenov 
274*5d108ac8SSergei Poselenov #define TSEC1_PHYIDX		0
275*5d108ac8SSergei Poselenov #define TSEC2_PHYIDX		0
276*5d108ac8SSergei Poselenov #define TSEC1_FLAGS		TSEC_GIGABIT
277*5d108ac8SSergei Poselenov #define TSEC2_FLAGS		TSEC_GIGABIT
278*5d108ac8SSergei Poselenov 
279*5d108ac8SSergei Poselenov /* Options are: TSEC[0-1] */
280*5d108ac8SSergei Poselenov #define CONFIG_ETHPRIME		"TSEC0"
281*5d108ac8SSergei Poselenov #define CONFIG_PHY_GIGE		1	/* Include GbE speed/duplex detection */
282*5d108ac8SSergei Poselenov 
283*5d108ac8SSergei Poselenov /*
284*5d108ac8SSergei Poselenov  * Environment
285*5d108ac8SSergei Poselenov  */
286*5d108ac8SSergei Poselenov #define CFG_ENV_IS_IN_FLASH	1
287*5d108ac8SSergei Poselenov #define CFG_ENV_SECT_SIZE	0x20000 /* 128K(one sector) for env	*/
288*5d108ac8SSergei Poselenov #define CFG_ENV_ADDR		(CFG_MONITOR_BASE - CFG_ENV_SECT_SIZE)
289*5d108ac8SSergei Poselenov #define CFG_ENV_SIZE		0x4000
290*5d108ac8SSergei Poselenov #define CFG_ENV_ADDR_REDUND	(CFG_ENV_ADDR-CFG_ENV_SECT_SIZE)
291*5d108ac8SSergei Poselenov #define CFG_ENV_SIZE_REDUND	(CFG_ENV_SIZE)
292*5d108ac8SSergei Poselenov 
293*5d108ac8SSergei Poselenov #define CONFIG_LOADS_ECHO	1	/* echo on for serial download	*/
294*5d108ac8SSergei Poselenov #define CFG_LOADS_BAUD_CHANGE	1	/* allow baudrate change	*/
295*5d108ac8SSergei Poselenov 
296*5d108ac8SSergei Poselenov #define	CONFIG_TIMESTAMP		/* Print image info with ts	*/
297*5d108ac8SSergei Poselenov 
298*5d108ac8SSergei Poselenov 
299*5d108ac8SSergei Poselenov /*
300*5d108ac8SSergei Poselenov  * BOOTP options
301*5d108ac8SSergei Poselenov  */
302*5d108ac8SSergei Poselenov #define CONFIG_BOOTP_BOOTFILESIZE
303*5d108ac8SSergei Poselenov #define CONFIG_BOOTP_BOOTPATH
304*5d108ac8SSergei Poselenov #define CONFIG_BOOTP_GATEWAY
305*5d108ac8SSergei Poselenov #define CONFIG_BOOTP_HOSTNAME
306*5d108ac8SSergei Poselenov 
307*5d108ac8SSergei Poselenov 
308*5d108ac8SSergei Poselenov /*
309*5d108ac8SSergei Poselenov  * Command line configuration.
310*5d108ac8SSergei Poselenov  */
311*5d108ac8SSergei Poselenov #include <config_cmd_default.h>
312*5d108ac8SSergei Poselenov 
313*5d108ac8SSergei Poselenov #define CONFIG_CMD_DATE
314*5d108ac8SSergei Poselenov #define CONFIG_CMD_DHCP
315*5d108ac8SSergei Poselenov #undef CONFIG_CMD_DTT
316*5d108ac8SSergei Poselenov #undef CONFIG_CMD_EEPROM
317*5d108ac8SSergei Poselenov #define CONFIG_CMD_I2C
318*5d108ac8SSergei Poselenov #define CONFIG_CMD_MII
319*5d108ac8SSergei Poselenov #define CONFIG_CMD_NFS
320*5d108ac8SSergei Poselenov #define CONFIG_CMD_PING
321*5d108ac8SSergei Poselenov #undef CONFIG_CMD_RTC
322*5d108ac8SSergei Poselenov #define CONFIG_CMD_SNTP
323*5d108ac8SSergei Poselenov 
324*5d108ac8SSergei Poselenov 
325*5d108ac8SSergei Poselenov #if defined(CONFIG_PCI)
326*5d108ac8SSergei Poselenov     #define CONFIG_CMD_PCI
327*5d108ac8SSergei Poselenov #endif
328*5d108ac8SSergei Poselenov 
329*5d108ac8SSergei Poselenov 
330*5d108ac8SSergei Poselenov #undef CONFIG_WATCHDOG			/* watchdog disabled		*/
331*5d108ac8SSergei Poselenov 
332*5d108ac8SSergei Poselenov /*
333*5d108ac8SSergei Poselenov  * Miscellaneous configurable options
334*5d108ac8SSergei Poselenov  */
335*5d108ac8SSergei Poselenov #define CFG_LONGHELP			/* undef to save memory		*/
336*5d108ac8SSergei Poselenov #define CFG_LOAD_ADDR	0x2000000	/* default load address		*/
337*5d108ac8SSergei Poselenov #define CFG_PROMPT	"=> "		/* Monitor Command Prompt	*/
338*5d108ac8SSergei Poselenov 
339*5d108ac8SSergei Poselenov #if defined(CONFIG_CMD_KGDB)
340*5d108ac8SSergei Poselenov     #define CFG_CBSIZE	1024		/* Console I/O Buffer Size	*/
341*5d108ac8SSergei Poselenov #else
342*5d108ac8SSergei Poselenov     #define CFG_CBSIZE	256		/* Console I/O Buffer Size	*/
343*5d108ac8SSergei Poselenov #endif
344*5d108ac8SSergei Poselenov 
345*5d108ac8SSergei Poselenov #define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buf Size	*/
346*5d108ac8SSergei Poselenov #define CFG_MAXARGS	16		/* max number of command args	*/
347*5d108ac8SSergei Poselenov #define CFG_BARGSIZE	CFG_CBSIZE	/* Boot Argument Buffer Size	*/
348*5d108ac8SSergei Poselenov #define CFG_HZ		1000		/* decrementer freq: 1ms ticks	*/
349*5d108ac8SSergei Poselenov 
350*5d108ac8SSergei Poselenov /*
351*5d108ac8SSergei Poselenov  * For booting Linux, the board info and command line data
352*5d108ac8SSergei Poselenov  * have to be in the first 8 MB of memory, since this is
353*5d108ac8SSergei Poselenov  * the maximum mapped by the Linux kernel during initialization.
354*5d108ac8SSergei Poselenov  */
355*5d108ac8SSergei Poselenov #define CFG_BOOTMAPSZ	(8 << 20)	/* Initial Memory map for Linux	*/
356*5d108ac8SSergei Poselenov 
357*5d108ac8SSergei Poselenov /*
358*5d108ac8SSergei Poselenov  * Internal Definitions
359*5d108ac8SSergei Poselenov  *
360*5d108ac8SSergei Poselenov  * Boot Flags
361*5d108ac8SSergei Poselenov  */
362*5d108ac8SSergei Poselenov #define BOOTFLAG_COLD	0x01		/* Power-On: Boot from FLASH	*/
363*5d108ac8SSergei Poselenov #define BOOTFLAG_WARM	0x02		/* Software reboot		*/
364*5d108ac8SSergei Poselenov 
365*5d108ac8SSergei Poselenov #if defined(CONFIG_CMD_KGDB)
366*5d108ac8SSergei Poselenov #define CONFIG_KGDB_BAUDRATE	230400	/* speed to run kgdb serial port*/
367*5d108ac8SSergei Poselenov #define CONFIG_KGDB_SER_INDEX	2	/* which serial port to use	*/
368*5d108ac8SSergei Poselenov #endif
369*5d108ac8SSergei Poselenov 
370*5d108ac8SSergei Poselenov 
371*5d108ac8SSergei Poselenov #define CONFIG_LOADADDR	 200000		/* default addr for tftp & bootm*/
372*5d108ac8SSergei Poselenov 
373*5d108ac8SSergei Poselenov #define CONFIG_BOOTDELAY 5		/* -1 disables auto-boot	*/
374*5d108ac8SSergei Poselenov 
375*5d108ac8SSergei Poselenov #define CONFIG_PREBOOT	"echo;"	\
376*5d108ac8SSergei Poselenov 	"echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \
377*5d108ac8SSergei Poselenov 	"echo"
378*5d108ac8SSergei Poselenov 
379*5d108ac8SSergei Poselenov #undef	CONFIG_BOOTARGS		/* the boot command will set bootargs	*/
380*5d108ac8SSergei Poselenov 
381*5d108ac8SSergei Poselenov #define	CONFIG_EXTRA_ENV_SETTINGS					\
382*5d108ac8SSergei Poselenov 	"bootfile=/tftpboot/socrates\0"				\
383*5d108ac8SSergei Poselenov 	"netdev=eth0\0"							\
384*5d108ac8SSergei Poselenov 	"consdev=ttyS0\0"						\
385*5d108ac8SSergei Poselenov 	"nfsargs=setenv bootargs root=/dev/nfs rw "			\
386*5d108ac8SSergei Poselenov 		"nfsroot=$serverip:$rootpath\0"				\
387*5d108ac8SSergei Poselenov 	"ramargs=setenv bootargs root=/dev/ram rw\0"			\
388*5d108ac8SSergei Poselenov 	"addip=setenv bootargs $bootargs "				\
389*5d108ac8SSergei Poselenov 		"ip=$ipaddr:$serverip:$gatewayip:$netmask"		\
390*5d108ac8SSergei Poselenov 		":$hostname:$netdev:off panic=1\0"			\
391*5d108ac8SSergei Poselenov 	"addcons=setenv bootargs $bootargs "				\
392*5d108ac8SSergei Poselenov 		"console=$consdev,$baudrate\0"				\
393*5d108ac8SSergei Poselenov 	"flash_nfs=run nfsargs addip addcons;"				\
394*5d108ac8SSergei Poselenov 		"bootm $kernel_addr\0"					\
395*5d108ac8SSergei Poselenov 	"flash_self=run ramargs addip addcons;"				\
396*5d108ac8SSergei Poselenov 		"bootm $kernel_addr $ramdisk_addr\0"			\
397*5d108ac8SSergei Poselenov 	"net_nfs=tftp $loadaddr $bootfile;"				\
398*5d108ac8SSergei Poselenov 		"run nfsargs addip addcons;bootm\0"			\
399*5d108ac8SSergei Poselenov 	"rootpath=/opt/eldk/ppc_85xx\0"					\
400*5d108ac8SSergei Poselenov 	"kernel_addr=FE000000\0"					\
401*5d108ac8SSergei Poselenov 	"ramdisk_addr=FE180000\0"					\
402*5d108ac8SSergei Poselenov 	"load=tftp 100000 /tftpboot/$hostname/u-boot.bin\0"		\
403*5d108ac8SSergei Poselenov 	"update=protect off fffc0000 ffffffff;era fffc0000 ffffffff;"	\
404*5d108ac8SSergei Poselenov 		"cp.b 100000 fffc0000 40000;"			        \
405*5d108ac8SSergei Poselenov 		"setenv filesize;saveenv\0"				\
406*5d108ac8SSergei Poselenov 	"upd=run load update\0"						\
407*5d108ac8SSergei Poselenov 	""
408*5d108ac8SSergei Poselenov #define CONFIG_BOOTCOMMAND	"run flash_self"
409*5d108ac8SSergei Poselenov 
410*5d108ac8SSergei Poselenov #endif	/* __CONFIG_H */
411