xref: /rk3399_rockchip-uboot/include/configs/M5235EVB.h (revision 0f3ba7e9783f352318f197a3148f6d5cc3d75bea)
14a442d31STsiChungLiew /*
24a442d31STsiChungLiew  * Configuation settings for the Freescale MCF5329 FireEngine board.
34a442d31STsiChungLiew  *
44a442d31STsiChungLiew  * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
54a442d31STsiChungLiew  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
64a442d31STsiChungLiew  *
74a442d31STsiChungLiew  * See file CREDITS for list of people who contributed to this
84a442d31STsiChungLiew  * project.
94a442d31STsiChungLiew  *
104a442d31STsiChungLiew  * This program is free software; you can redistribute it and/or
114a442d31STsiChungLiew  * modify it under the terms of the GNU General Public License as
124a442d31STsiChungLiew  * published by the Free Software Foundation; either version 2 of
134a442d31STsiChungLiew  * the License, or (at your option) any later version.
144a442d31STsiChungLiew  *
154a442d31STsiChungLiew  * This program is distributed in the hope that it will be useful,
164a442d31STsiChungLiew  * but WITHOUT ANY WARRANTY; without even the implied warranty of
174a442d31STsiChungLiew  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
184a442d31STsiChungLiew  * GNU General Public License for more details.
194a442d31STsiChungLiew  *
204a442d31STsiChungLiew  * You should have received a copy of the GNU General Public License
214a442d31STsiChungLiew  * along with this program; if not, write to the Free Software
224a442d31STsiChungLiew  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
234a442d31STsiChungLiew  * MA 02111-1307 USA
244a442d31STsiChungLiew  */
254a442d31STsiChungLiew 
264a442d31STsiChungLiew /*
274a442d31STsiChungLiew  * board/config.h - configuration options, board specific
284a442d31STsiChungLiew  */
294a442d31STsiChungLiew 
304a442d31STsiChungLiew #ifndef _M5235EVB_H
314a442d31STsiChungLiew #define _M5235EVB_H
324a442d31STsiChungLiew 
334a442d31STsiChungLiew /*
344a442d31STsiChungLiew  * High Level Configuration Options
354a442d31STsiChungLiew  * (easy to change)
364a442d31STsiChungLiew  */
374a442d31STsiChungLiew #define CONFIG_MCF523x		/* define processor family */
384a442d31STsiChungLiew #define CONFIG_M5235		/* define processor type */
394a442d31STsiChungLiew 
404a442d31STsiChungLiew #define CONFIG_MCFUART
414a442d31STsiChungLiew #define CFG_UART_PORT		(0)
424a442d31STsiChungLiew #define CONFIG_BAUDRATE		115200
434a442d31STsiChungLiew #define CFG_BAUDRATE_TABLE	{ 9600 , 19200 , 38400 , 57600, 115200 }
444a442d31STsiChungLiew 
454a442d31STsiChungLiew #undef CONFIG_WATCHDOG
464a442d31STsiChungLiew #define CONFIG_WATCHDOG_TIMEOUT	5000	/* timeout in milliseconds, max timeout is 6.71sec */
474a442d31STsiChungLiew 
484a442d31STsiChungLiew /*
494a442d31STsiChungLiew  * BOOTP options
504a442d31STsiChungLiew  */
514a442d31STsiChungLiew #define CONFIG_BOOTP_BOOTFILESIZE
524a442d31STsiChungLiew #define CONFIG_BOOTP_BOOTPATH
534a442d31STsiChungLiew #define CONFIG_BOOTP_GATEWAY
544a442d31STsiChungLiew #define CONFIG_BOOTP_HOSTNAME
554a442d31STsiChungLiew 
564a442d31STsiChungLiew /* Command line configuration */
574a442d31STsiChungLiew #include <config_cmd_default.h>
584a442d31STsiChungLiew 
594a442d31STsiChungLiew #define CONFIG_CMD_BOOTD
604a442d31STsiChungLiew #define CONFIG_CMD_CACHE
614a442d31STsiChungLiew #define CONFIG_CMD_DHCP
624a442d31STsiChungLiew #define CONFIG_CMD_ELF
634a442d31STsiChungLiew #define CONFIG_CMD_FLASH
644a442d31STsiChungLiew #define CONFIG_CMD_I2C
654a442d31STsiChungLiew #define CONFIG_CMD_MEMORY
664a442d31STsiChungLiew #define CONFIG_CMD_MISC
674a442d31STsiChungLiew #define CONFIG_CMD_MII
684a442d31STsiChungLiew #define CONFIG_CMD_NET
694a442d31STsiChungLiew #define CONFIG_CMD_PCI
704a442d31STsiChungLiew #define CONFIG_CMD_PING
714a442d31STsiChungLiew #define CONFIG_CMD_REGINFO
724a442d31STsiChungLiew 
734a442d31STsiChungLiew #undef CONFIG_CMD_LOADB
744a442d31STsiChungLiew #undef CONFIG_CMD_LOADS
754a442d31STsiChungLiew 
764a442d31STsiChungLiew #define CONFIG_MCFFEC
774a442d31STsiChungLiew #ifdef CONFIG_MCFFEC
784a442d31STsiChungLiew #	define CONFIG_NET_MULTI		1
794a442d31STsiChungLiew #	define CONFIG_MII		1
80*0f3ba7e9STsiChung Liew #	define CONFIG_MII_INIT		1
814a442d31STsiChungLiew #	define CFG_DISCOVER_PHY
824a442d31STsiChungLiew #	define CFG_RX_ETH_BUFFER	8
834a442d31STsiChungLiew #	define CFG_FAULT_ECHO_LINK_DOWN
844a442d31STsiChungLiew 
854a442d31STsiChungLiew #	define CFG_FEC0_PINMUX		0
864a442d31STsiChungLiew #	define CFG_FEC0_MIIBASE		CFG_FEC0_IOBASE
874a442d31STsiChungLiew #	define MCFFEC_TOUT_LOOP 	50000
884a442d31STsiChungLiew /* If CFG_DISCOVER_PHY is not defined - hardcoded */
894a442d31STsiChungLiew #	ifndef CFG_DISCOVER_PHY
904a442d31STsiChungLiew #		define FECDUPLEX	FULL
914a442d31STsiChungLiew #		define FECSPEED		_100BASET
924a442d31STsiChungLiew #	else
934a442d31STsiChungLiew #		ifndef CFG_FAULT_ECHO_LINK_DOWN
944a442d31STsiChungLiew #			define CFG_FAULT_ECHO_LINK_DOWN
954a442d31STsiChungLiew #		endif
964a442d31STsiChungLiew #	endif			/* CFG_DISCOVER_PHY */
974a442d31STsiChungLiew #endif
984a442d31STsiChungLiew 
994a442d31STsiChungLiew /* Timer */
1004a442d31STsiChungLiew #define CONFIG_MCFTMR
1014a442d31STsiChungLiew #undef CONFIG_MCFPIT
1024a442d31STsiChungLiew 
1034a442d31STsiChungLiew /* I2C */
1044a442d31STsiChungLiew #define CONFIG_FSL_I2C
1054a442d31STsiChungLiew #define CONFIG_HARD_I2C			/* I2C with hw support */
1064a442d31STsiChungLiew #undef CONFIG_SOFT_I2C			/* I2C bit-banged */
1074a442d31STsiChungLiew #define CFG_I2C_SPEED		80000
1084a442d31STsiChungLiew #define CFG_I2C_SLAVE		0x7F
1094a442d31STsiChungLiew #define CFG_I2C_OFFSET		0x00000300
1104a442d31STsiChungLiew #define CFG_IMMR		CFG_MBAR
1114a442d31STsiChungLiew 
1124a442d31STsiChungLiew /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
1134a442d31STsiChungLiew #define CONFIG_BOOTDELAY	1	/* autoboot after 5 seconds */
1144a442d31STsiChungLiew #define CONFIG_BOOTFILE		"u-boot.bin"
1154a442d31STsiChungLiew #ifdef CONFIG_MCFFEC
1164a442d31STsiChungLiew #	define CONFIG_ETHADDR	00:e0:0c:bc:e5:60
1174a442d31STsiChungLiew #	define CONFIG_IPADDR	192.162.1.2
1184a442d31STsiChungLiew #	define CONFIG_NETMASK	255.255.255.0
1194a442d31STsiChungLiew #	define CONFIG_SERVERIP	192.162.1.1
1204a442d31STsiChungLiew #	define CONFIG_GATEWAYIP	192.162.1.1
1214a442d31STsiChungLiew #	define CONFIG_OVERWRITE_ETHADDR_ONCE
1224a442d31STsiChungLiew #endif				/* FEC_ENET */
1234a442d31STsiChungLiew 
1244a442d31STsiChungLiew #define CONFIG_HOSTNAME		M5235EVB
1254a442d31STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS		\
1264a442d31STsiChungLiew 	"netdev=eth0\0"				\
1274a442d31STsiChungLiew 	"loadaddr=10000\0"			\
1284a442d31STsiChungLiew 	"u-boot=u-boot.bin\0"			\
1294a442d31STsiChungLiew 	"load=tftp ${loadaddr) ${u-boot}\0"	\
1304a442d31STsiChungLiew 	"upd=run load; run prog\0"		\
1314a442d31STsiChungLiew 	"prog=prot off ffe00000 ffe3ffff;"	\
1324a442d31STsiChungLiew 	"era ffe00000 ffe3ffff;"		\
1334a442d31STsiChungLiew 	"cp.b ${loadaddr} ffe00000 ${filesize};"\
1344a442d31STsiChungLiew 	"save\0"				\
1354a442d31STsiChungLiew 	""
1364a442d31STsiChungLiew 
1374a442d31STsiChungLiew #define CONFIG_PRAM		512	/* 512 KB */
1384a442d31STsiChungLiew #define CFG_PROMPT		"-> "
1394a442d31STsiChungLiew #define CFG_LONGHELP		/* undef to save memory */
1404a442d31STsiChungLiew 
1414a442d31STsiChungLiew #if defined(CONFIG_KGDB)
1424a442d31STsiChungLiew #	define CFG_CBSIZE		1024	/* Console I/O Buffer Size */
1434a442d31STsiChungLiew #else
1444a442d31STsiChungLiew #	define CFG_CBSIZE		256	/* Console I/O Buffer Size */
1454a442d31STsiChungLiew #endif
1464a442d31STsiChungLiew 
1474a442d31STsiChungLiew #define CFG_PBSIZE		(CFG_CBSIZE+sizeof(CFG_PROMPT)+16)	/* Print Buffer Size */
1484a442d31STsiChungLiew #define CFG_MAXARGS		16	/* max number of command args */
1494a442d31STsiChungLiew #define CFG_BARGSIZE		CFG_CBSIZE	/* Boot Argument Buffer Size    */
1504a442d31STsiChungLiew #define CFG_LOAD_ADDR		(CFG_SDRAM_BASE+0x20000)
1514a442d31STsiChungLiew 
1524a442d31STsiChungLiew #define CFG_HZ			1000
1534a442d31STsiChungLiew #define CFG_CLK			75000000
1544a442d31STsiChungLiew #define CFG_CPU_CLK		CFG_CLK * 2
1554a442d31STsiChungLiew 
1564a442d31STsiChungLiew #define CFG_MBAR		0x40000000
1574a442d31STsiChungLiew 
1584a442d31STsiChungLiew /*
1594a442d31STsiChungLiew  * Low Level Configuration Settings
1604a442d31STsiChungLiew  * (address mappings, register initial values, etc.)
1614a442d31STsiChungLiew  * You should know what you are doing if you make changes here.
1624a442d31STsiChungLiew  */
1634a442d31STsiChungLiew /*-----------------------------------------------------------------------
1644a442d31STsiChungLiew  * Definitions for initial stack pointer and data area (in DPRAM)
1654a442d31STsiChungLiew  */
1664a442d31STsiChungLiew #define CFG_INIT_RAM_ADDR	0x20000000
1674a442d31STsiChungLiew #define CFG_INIT_RAM_END	0x10000	/* End of used area in internal SRAM */
1684a442d31STsiChungLiew #define CFG_INIT_RAM_CTRL	0x21
1694a442d31STsiChungLiew #define CFG_GBL_DATA_SIZE	128	/* size in bytes reserved for initial data */
1704a442d31STsiChungLiew #define CFG_GBL_DATA_OFFSET	(CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE - 0x10)
1714a442d31STsiChungLiew #define CFG_INIT_SP_OFFSET	CFG_GBL_DATA_OFFSET
1724a442d31STsiChungLiew 
1734a442d31STsiChungLiew /*-----------------------------------------------------------------------
1744a442d31STsiChungLiew  * Start addresses for the final memory configuration
1754a442d31STsiChungLiew  * (Set up by the startup code)
1764a442d31STsiChungLiew  * Please note that CFG_SDRAM_BASE _must_ start at 0
1774a442d31STsiChungLiew  */
1784a442d31STsiChungLiew #define CFG_SDRAM_BASE		0x00000000
1794a442d31STsiChungLiew #define CFG_SDRAM_SIZE		16	/* SDRAM size in MB */
1804a442d31STsiChungLiew 
1814a442d31STsiChungLiew #define CFG_MEMTEST_START	CFG_SDRAM_BASE + 0x400
1824a442d31STsiChungLiew #define CFG_MEMTEST_END		((CFG_SDRAM_SIZE - 3) << 20)
1834a442d31STsiChungLiew 
1844a442d31STsiChungLiew #define CFG_MONITOR_BASE	(CFG_FLASH_BASE + 0x400)
1854a442d31STsiChungLiew #define CFG_MONITOR_LEN		(256 << 10)	/* Reserve 256 kB for Monitor */
1864a442d31STsiChungLiew 
1874a442d31STsiChungLiew #define CFG_BOOTPARAMS_LEN	64*1024
1884a442d31STsiChungLiew #define CFG_MALLOC_LEN		(128 << 10)	/* Reserve 128 kB for malloc() */
1894a442d31STsiChungLiew 
1904a442d31STsiChungLiew /*
1914a442d31STsiChungLiew  * For booting Linux, the board info and command line data
1924a442d31STsiChungLiew  * have to be in the first 8 MB of memory, since this is
1934a442d31STsiChungLiew  * the maximum mapped by the Linux kernel during initialization ??
1944a442d31STsiChungLiew  */
1954a442d31STsiChungLiew /* Initial Memory map for Linux */
1964a442d31STsiChungLiew #define CFG_BOOTMAPSZ		(CFG_SDRAM_BASE + (CFG_SDRAM_SIZE << 20))
1974a442d31STsiChungLiew 
1984a442d31STsiChungLiew /*-----------------------------------------------------------------------
1994a442d31STsiChungLiew  * FLASH organization
2004a442d31STsiChungLiew  */
2014a442d31STsiChungLiew #define CFG_FLASH_CFI
2024a442d31STsiChungLiew #ifdef CFG_FLASH_CFI
2034a442d31STsiChungLiew #	define CFG_FLASH_CFI_DRIVER	1
2044a442d31STsiChungLiew #	define CFG_FLASH_SIZE		0x800000	/* Max size that the board might have */
2054a442d31STsiChungLiew #ifdef NORFLASH_PS32BIT
2064a442d31STsiChungLiew #	define CFG_FLASH_CFI_WIDTH	FLASH_CFI_32BIT
2074a442d31STsiChungLiew #else
2084a442d31STsiChungLiew #	define CFG_FLASH_CFI_WIDTH	FLASH_CFI_16BIT
2094a442d31STsiChungLiew #endif
2104a442d31STsiChungLiew #	define CFG_MAX_FLASH_BANKS	1	/* max number of memory banks */
2114a442d31STsiChungLiew #	define CFG_MAX_FLASH_SECT	137	/* max number of sectors on one chip */
2124a442d31STsiChungLiew #	define CFG_FLASH_PROTECTION	/* "Real" (hardware) sectors protection */
2134a442d31STsiChungLiew #endif
2144a442d31STsiChungLiew 
2154a442d31STsiChungLiew #define CFG_FLASH_BASE		(CFG_CS0_BASE << 16)
2164a442d31STsiChungLiew 
2174a442d31STsiChungLiew /* Configuration for environment
2184a442d31STsiChungLiew  * Environment is embedded in u-boot in the second sector of the flash
2194a442d31STsiChungLiew  */
2204a442d31STsiChungLiew #define CFG_ENV_IS_IN_FLASH	1
2214a442d31STsiChungLiew #define CFG_ENV_IS_EMBEDDED	1
2224a442d31STsiChungLiew #ifdef NORFLASH_PS32BIT
2234a442d31STsiChungLiew #	define CFG_ENV_OFFSET		(0x8000)
2244a442d31STsiChungLiew #	define CFG_ENV_SIZE		0x4000
2254a442d31STsiChungLiew #	define CFG_ENV_SECT_SIZE	0x4000
2264a442d31STsiChungLiew #else
2274a442d31STsiChungLiew #	define CFG_ENV_OFFSET		(0x4000)
2284a442d31STsiChungLiew #	define CFG_ENV_SIZE		0x2000
2294a442d31STsiChungLiew #	define CFG_ENV_SECT_SIZE	0x2000
2304a442d31STsiChungLiew #endif
2314a442d31STsiChungLiew 
2324a442d31STsiChungLiew /*-----------------------------------------------------------------------
2334a442d31STsiChungLiew  * Cache Configuration
2344a442d31STsiChungLiew  */
2354a442d31STsiChungLiew #define CFG_CACHELINE_SIZE	16
2364a442d31STsiChungLiew 
2374a442d31STsiChungLiew /*-----------------------------------------------------------------------
2384a442d31STsiChungLiew  * Chipselect bank definitions
2394a442d31STsiChungLiew  */
2404a442d31STsiChungLiew /*
2414a442d31STsiChungLiew  * CS0 - NOR Flash 1, 2, 4, or 8MB
2424a442d31STsiChungLiew  * CS1 - Available
2434a442d31STsiChungLiew  * CS2 - Available
2444a442d31STsiChungLiew  * CS3 - Available
2454a442d31STsiChungLiew  * CS4 - Available
2464a442d31STsiChungLiew  * CS5 - Available
2474a442d31STsiChungLiew  * CS6 - Available
2484a442d31STsiChungLiew  * CS7 - Available
2494a442d31STsiChungLiew  */
2504a442d31STsiChungLiew #ifdef NORFLASH_PS32BIT
2514a442d31STsiChungLiew #	define CFG_CS0_BASE	0xFFC0
2524a442d31STsiChungLiew #	define CFG_CS0_MASK	0x003f0001
2534a442d31STsiChungLiew #	define CFG_CS0_CTRL	0x1D00
2544a442d31STsiChungLiew #else
2554a442d31STsiChungLiew #	define CFG_CS0_BASE	0xFFE0
2564a442d31STsiChungLiew #	define CFG_CS0_MASK	0x001f0001
2574a442d31STsiChungLiew #	define CFG_CS0_CTRL	0x1D80
2584a442d31STsiChungLiew #endif
2594a442d31STsiChungLiew 
2604a442d31STsiChungLiew #endif				/* _M5329EVB_H */
261