xref: /rk3399_rockchip-uboot/include/configs/M5282EVB.h (revision 2acefa72ee0026f862ab65597ca687428f63a973)
1bf9e3b38Swdenk /*
2bf9e3b38Swdenk  * Configuation settings for the Motorola MC5282EVB board.
3bf9e3b38Swdenk  *
4bf9e3b38Swdenk  * (C) Copyright 2003 Josef Baumgartner <josef.baumgartner@telex.de>
5bf9e3b38Swdenk  *
6bf9e3b38Swdenk  * See file CREDITS for list of people who contributed to this
7bf9e3b38Swdenk  * project.
8bf9e3b38Swdenk  *
9bf9e3b38Swdenk  * This program is free software; you can redistribute it and/or
10bf9e3b38Swdenk  * modify it under the terms of the GNU General Public License as
11bf9e3b38Swdenk  * published by the Free Software Foundation; either version 2 of
12bf9e3b38Swdenk  * the License, or (at your option) any later version.
13bf9e3b38Swdenk  *
14bf9e3b38Swdenk  * This program is distributed in the hope that it will be useful,
15bf9e3b38Swdenk  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16bf9e3b38Swdenk  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17bf9e3b38Swdenk  * GNU General Public License for more details.
18bf9e3b38Swdenk  *
19bf9e3b38Swdenk  * You should have received a copy of the GNU General Public License
20bf9e3b38Swdenk  * along with this program; if not, write to the Free Software
21bf9e3b38Swdenk  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22bf9e3b38Swdenk  * MA 02111-1307 USA
23bf9e3b38Swdenk  */
24bf9e3b38Swdenk 
25bf9e3b38Swdenk /*
26bf9e3b38Swdenk  * board/config.h - configuration options, board specific
27bf9e3b38Swdenk  */
28bf9e3b38Swdenk 
294e5ca3ebSwdenk #ifndef _CONFIG_M5282EVB_H
304e5ca3ebSwdenk #define _CONFIG_M5282EVB_H
314e5ca3ebSwdenk 
32bf9e3b38Swdenk /*
33bf9e3b38Swdenk  * High Level Configuration Options
34bf9e3b38Swdenk  * (easy to change)
35bf9e3b38Swdenk  */
36bf9e3b38Swdenk #define	CONFIG_MCF52x2		/* define processor family */
37bf9e3b38Swdenk #define CONFIG_M5282		/* define processor type */
384e5ca3ebSwdenk 
39f28e1bd9STsiChungLiew #define CONFIG_MCFTMR
404e5ca3ebSwdenk 
41f28e1bd9STsiChungLiew #define CONFIG_MCFUART
42f28e1bd9STsiChungLiew #define CFG_UART_PORT		(0)
43bf9e3b38Swdenk #define CONFIG_BAUDRATE 19200
44bf9e3b38Swdenk #define CFG_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 }
45bf9e3b38Swdenk 
46f28e1bd9STsiChungLiew #undef	CONFIG_MONITOR_IS_IN_RAM	/* define if monitor is started from a pre-loader */
47bf9e3b38Swdenk 
48bf9e3b38Swdenk /* Configuration for environment
49bf9e3b38Swdenk  * Environment is embedded in u-boot in the second sector of the flash
50bf9e3b38Swdenk  */
51bf9e3b38Swdenk #define CFG_ENV_ADDR		0xffe04000
52bf9e3b38Swdenk #define CFG_ENV_SIZE		0x2000
53bf9e3b38Swdenk #define CFG_ENV_IS_IN_FLASH	1
54bf9e3b38Swdenk 
558353e139SJon Loeliger /*
56659e2f67SJon Loeliger  * BOOTP options
57659e2f67SJon Loeliger  */
58659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTFILESIZE
59659e2f67SJon Loeliger #define CONFIG_BOOTP_BOOTPATH
60659e2f67SJon Loeliger #define CONFIG_BOOTP_GATEWAY
61659e2f67SJon Loeliger #define CONFIG_BOOTP_HOSTNAME
62659e2f67SJon Loeliger 
63659e2f67SJon Loeliger /*
648353e139SJon Loeliger  * Command line configuration.
658353e139SJon Loeliger  */
668353e139SJon Loeliger #include <config_cmd_default.h>
67f28e1bd9STsiChungLiew #define CONFIG_CMD_NET
68f28e1bd9STsiChungLiew #define CONFIG_CMD_PING
69f28e1bd9STsiChungLiew #define CONFIG_CMD_MII
70bf9e3b38Swdenk 
718353e139SJon Loeliger #undef CONFIG_CMD_LOADS
728353e139SJon Loeliger #undef CONFIG_CMD_LOADB
738353e139SJon Loeliger 
74f28e1bd9STsiChungLiew #define CONFIG_MCFFEC
75f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC
76f28e1bd9STsiChungLiew #	define CONFIG_NET_MULTI		1
77f28e1bd9STsiChungLiew #	define CONFIG_MII		1
78f28e1bd9STsiChungLiew #	define CFG_DISCOVER_PHY
79f28e1bd9STsiChungLiew #	define CFG_RX_ETH_BUFFER	8
80f28e1bd9STsiChungLiew #	define CFG_FAULT_ECHO_LINK_DOWN
81f28e1bd9STsiChungLiew 
82f28e1bd9STsiChungLiew #	define CFG_FEC0_PINMUX		0
83f28e1bd9STsiChungLiew #	define CFG_FEC0_MIIBASE		CFG_FEC0_IOBASE
84f28e1bd9STsiChungLiew #	define MCFFEC_TOUT_LOOP 	50000
85f28e1bd9STsiChungLiew /* If CFG_DISCOVER_PHY is not defined - hardcoded */
86f28e1bd9STsiChungLiew #	ifndef CFG_DISCOVER_PHY
87f28e1bd9STsiChungLiew #		define FECDUPLEX	FULL
88f28e1bd9STsiChungLiew #		define FECSPEED		_100BASET
89f28e1bd9STsiChungLiew #	else
90f28e1bd9STsiChungLiew #		ifndef CFG_FAULT_ECHO_LINK_DOWN
91f28e1bd9STsiChungLiew #			define CFG_FAULT_ECHO_LINK_DOWN
92f28e1bd9STsiChungLiew #		endif
93f28e1bd9STsiChungLiew #	endif			/* CFG_DISCOVER_PHY */
94f28e1bd9STsiChungLiew #endif
958353e139SJon Loeliger 
96bf9e3b38Swdenk #define CONFIG_BOOTDELAY	5
97f28e1bd9STsiChungLiew #ifdef CONFIG_MCFFEC
98f28e1bd9STsiChungLiew #	define CONFIG_ETHADDR	00:e0:0c:bc:e5:60
99f28e1bd9STsiChungLiew #	define CONFIG_IPADDR	192.162.1.2
100f28e1bd9STsiChungLiew #	define CONFIG_NETMASK	255.255.255.0
101f28e1bd9STsiChungLiew #	define CONFIG_SERVERIP	192.162.1.1
102f28e1bd9STsiChungLiew #	define CONFIG_GATEWAYIP	192.162.1.1
103f28e1bd9STsiChungLiew #	define CONFIG_OVERWRITE_ETHADDR_ONCE
104f28e1bd9STsiChungLiew #endif				/* CONFIG_MCFFEC */
105f28e1bd9STsiChungLiew 
106f28e1bd9STsiChungLiew #define CONFIG_HOSTNAME		M5272C3
107f28e1bd9STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS		\
108f28e1bd9STsiChungLiew 	"netdev=eth0\0"				\
109f28e1bd9STsiChungLiew 	"loadaddr=10000\0"			\
110f28e1bd9STsiChungLiew 	"u-boot=u-boot.bin\0"			\
111f28e1bd9STsiChungLiew 	"load=tftp ${loadaddr) ${u-boot}\0"	\
112f28e1bd9STsiChungLiew 	"upd=run load; run prog\0"		\
113f28e1bd9STsiChungLiew 	"prog=prot off ffe00000 ffe3ffff;"	\
114f28e1bd9STsiChungLiew 	"era ffe00000 ffe3ffff;"		\
115f28e1bd9STsiChungLiew 	"cp.b ${loadaddr} ffe00000 ${filesize};"\
116f28e1bd9STsiChungLiew 	"save\0"				\
117f28e1bd9STsiChungLiew 	""
118bf9e3b38Swdenk 
119bf9e3b38Swdenk #define CFG_PROMPT		"-> "
120bf9e3b38Swdenk #define	CFG_LONGHELP		/* undef to save memory         */
121bf9e3b38Swdenk 
1228353e139SJon Loeliger #if defined(CONFIG_CMD_KGDB)
123bf9e3b38Swdenk #define	CFG_CBSIZE		1024	/* Console I/O Buffer Size      */
124bf9e3b38Swdenk #else
125bf9e3b38Swdenk #define	CFG_CBSIZE		256	/* Console I/O Buffer Size      */
126bf9e3b38Swdenk #endif
127bf9e3b38Swdenk #define	CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16)	/* Print Buffer Size */
128bf9e3b38Swdenk #define	CFG_MAXARGS		16	/* max number of command args   */
129bf9e3b38Swdenk #define CFG_BARGSIZE		CFG_CBSIZE	/* Boot Argument Buffer Size    */
130bf9e3b38Swdenk 
131bf9e3b38Swdenk #define CFG_LOAD_ADDR		0x20000
132bf9e3b38Swdenk 
133bf9e3b38Swdenk #define CFG_MEMTEST_START	0x400
134bf9e3b38Swdenk #define CFG_MEMTEST_END		0x380000
135bf9e3b38Swdenk 
136bf9e3b38Swdenk #define CFG_HZ			1000000
137bf9e3b38Swdenk #define	CFG_CLK			64000000
138bf9e3b38Swdenk 
139f28e1bd9STsiChungLiew /* PLL Configuration: Ext Clock * 6 (see table 9-4 of MCF user manual) */
140f28e1bd9STsiChungLiew 
141f28e1bd9STsiChungLiew #define CFG_MFD			0x02	/* PLL Multiplication Factor Devider */
142f28e1bd9STsiChungLiew #define CFG_RFD			0x00	/* PLL Reduce Frecuency Devider */
143bf9e3b38Swdenk 
144bf9e3b38Swdenk /*
145bf9e3b38Swdenk  * Low Level Configuration Settings
146bf9e3b38Swdenk  * (address mappings, register initial values, etc.)
147bf9e3b38Swdenk  * You should know what you are doing if you make changes here.
148bf9e3b38Swdenk  */
149bf9e3b38Swdenk #define	CFG_MBAR		0x40000000
150bf9e3b38Swdenk 
151bf9e3b38Swdenk /*-----------------------------------------------------------------------
152bf9e3b38Swdenk  * Definitions for initial stack pointer and data area (in DPRAM)
153bf9e3b38Swdenk  */
154bf9e3b38Swdenk #define CFG_INIT_RAM_ADDR	0x20000000
155bf9e3b38Swdenk #define CFG_INIT_RAM_END	0x10000	/* End of used area in internal SRAM    */
156bf9e3b38Swdenk #define CFG_GBL_DATA_SIZE	64	/* size in bytes reserved for initial data */
157bf9e3b38Swdenk #define CFG_GBL_DATA_OFFSET	(CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
158bf9e3b38Swdenk #define CFG_INIT_SP_OFFSET	CFG_GBL_DATA_OFFSET
159bf9e3b38Swdenk 
160bf9e3b38Swdenk /*-----------------------------------------------------------------------
161bf9e3b38Swdenk  * Start addresses for the final memory configuration
162bf9e3b38Swdenk  * (Set up by the startup code)
163bf9e3b38Swdenk  * Please note that CFG_SDRAM_BASE _must_ start at 0
164bf9e3b38Swdenk  */
165bf9e3b38Swdenk #define CFG_SDRAM_BASE		0x00000000
166*2acefa72STsiChungLiew #define	CFG_SDRAM_SIZE		16	/* SDRAM size in MB */
167bf9e3b38Swdenk #define CFG_FLASH_BASE		0xffe00000
168bf9e3b38Swdenk #define	CFG_INT_FLASH_BASE	0xf0000000
169f28e1bd9STsiChungLiew #define CFG_INT_FLASH_ENABLE	0x21
170bf9e3b38Swdenk 
171bf9e3b38Swdenk /* If M5282 port is fully implemented the monitor base will be behind
172bf9e3b38Swdenk  * the vector table. */
173f28e1bd9STsiChungLiew #if (TEXT_BASE != CFG_INT_FLASH_BASE)
174f28e1bd9STsiChungLiew #define CFG_MONITOR_BASE	(CFG_FLASH_BASE + 0x400)
175f28e1bd9STsiChungLiew #else
176f28e1bd9STsiChungLiew #define CFG_MONITOR_BASE	(TEXT_BASE + 0x418)	/* 24 Byte for CFM-Config */
177f28e1bd9STsiChungLiew #endif
178bf9e3b38Swdenk 
179bf9e3b38Swdenk #define CFG_MONITOR_LEN		0x20000
180bf9e3b38Swdenk #define CFG_MALLOC_LEN		(256 << 10)
181bf9e3b38Swdenk #define CFG_BOOTPARAMS_LEN	64*1024
182bf9e3b38Swdenk 
183bf9e3b38Swdenk /*
184bf9e3b38Swdenk  * For booting Linux, the board info and command line data
185bf9e3b38Swdenk  * have to be in the first 8 MB of memory, since this is
186bf9e3b38Swdenk  * the maximum mapped by the Linux kernel during initialization ??
187bf9e3b38Swdenk  */
188f28e1bd9STsiChungLiew #define CFG_BOOTMAPSZ		(CFG_SDRAM_BASE + (CFG_SDRAM_SIZE << 20))
189bf9e3b38Swdenk 
190bf9e3b38Swdenk /*-----------------------------------------------------------------------
191bf9e3b38Swdenk  * FLASH organization
192bf9e3b38Swdenk  */
193f28e1bd9STsiChungLiew #define CFG_FLASH_CFI
194f28e1bd9STsiChungLiew #ifdef CFG_FLASH_CFI
195f28e1bd9STsiChungLiew 
196f28e1bd9STsiChungLiew #	define CFG_FLASH_CFI_DRIVER	1
197f28e1bd9STsiChungLiew #	define CFG_FLASH_SIZE		0x1000000	/* Max size that the board might have */
198f28e1bd9STsiChungLiew #	define CFG_FLASH_CFI_WIDTH	FLASH_CFI_16BIT
199f28e1bd9STsiChungLiew #	define CFG_MAX_FLASH_BANKS	1	/* max number of memory banks */
200f28e1bd9STsiChungLiew #	define CFG_MAX_FLASH_SECT	137	/* max number of sectors on one chip */
201f28e1bd9STsiChungLiew #	define CFG_FLASH_PROTECTION	/* "Real" (hardware) sectors protection */
202f28e1bd9STsiChungLiew #	define CFG_FLASH_CHECKSUM
203f28e1bd9STsiChungLiew #	define CFG_FLASH_BANKS_LIST	{ CFG_FLASH_BASE }
204f28e1bd9STsiChungLiew #endif
205bf9e3b38Swdenk 
206bf9e3b38Swdenk /*-----------------------------------------------------------------------
207bf9e3b38Swdenk  * Cache Configuration
208bf9e3b38Swdenk  */
209bf9e3b38Swdenk #define CFG_CACHELINE_SIZE	16
210bf9e3b38Swdenk 
211bf9e3b38Swdenk /*-----------------------------------------------------------------------
212bf9e3b38Swdenk  * Memory bank definitions
213bf9e3b38Swdenk  */
214f28e1bd9STsiChungLiew #define CFG_CS0_BASE		CFG_FLASH_BASE
215f28e1bd9STsiChungLiew #define CFG_CS0_SIZE		2*1024*1024
216f28e1bd9STsiChungLiew #define CFG_CS0_WIDTH		16
217f28e1bd9STsiChungLiew #define CFG_CS0_RO 		0
218f28e1bd9STsiChungLiew #define CFG_CS0_WS		6
219f28e1bd9STsiChungLiew /*
220f28e1bd9STsiChungLiew #define CFG_CS3_BASE		0xE0000000
221f28e1bd9STsiChungLiew #define CFG_CS3_SIZE		1*1024*1024
222f28e1bd9STsiChungLiew #define CFG_CS3_WIDTH		16
223f28e1bd9STsiChungLiew #define CFG_CS3_RO 		0
224f28e1bd9STsiChungLiew #define CFG_CS3_WS		6
225f28e1bd9STsiChungLiew */
226bf9e3b38Swdenk /*-----------------------------------------------------------------------
227bf9e3b38Swdenk  * Port configuration
228bf9e3b38Swdenk  */
229f28e1bd9STsiChungLiew #define CFG_PACNT		0x0000000	/* Port A D[31:24] */
230f28e1bd9STsiChungLiew #define CFG_PADDR		0x0000000
231f28e1bd9STsiChungLiew #define CFG_PADAT		0x0000000
232bf9e3b38Swdenk 
233f28e1bd9STsiChungLiew #define CFG_PBCNT		0x0000000	/* Port B D[23:16] */
234f28e1bd9STsiChungLiew #define CFG_PBDDR		0x0000000
235f28e1bd9STsiChungLiew #define CFG_PBDAT		0x0000000
236f28e1bd9STsiChungLiew 
237f28e1bd9STsiChungLiew #define CFG_PCCNT		0x0000000	/* Port C D[15:08] */
238f28e1bd9STsiChungLiew #define CFG_PCDDR		0x0000000
239f28e1bd9STsiChungLiew #define CFG_PCDAT		0x0000000
240f28e1bd9STsiChungLiew 
241f28e1bd9STsiChungLiew #define CFG_PDCNT		0x0000000	/* Port D D[07:00] */
242f28e1bd9STsiChungLiew #define CFG_PCDDR		0x0000000
243f28e1bd9STsiChungLiew #define CFG_PCDAT		0x0000000
244f28e1bd9STsiChungLiew 
245f28e1bd9STsiChungLiew #define CFG_PEHLPAR		0xC0
246f28e1bd9STsiChungLiew #define CFG_PUAPAR		0x0F	/* UA0..UA3 = Uart 0 +1 */
247f28e1bd9STsiChungLiew #define CFG_DDRUA		0x05
248f28e1bd9STsiChungLiew #define CFG_PJPAR 		0xFF;
2494e5ca3ebSwdenk 
2504e5ca3ebSwdenk #endif				/* _CONFIG_M5282EVB_H */
251