xref: /rk3399_rockchip-uboot/include/configs/M52277EVB.h (revision 44e5b9edab077aba6e9b849afa4b7fbd8fd7b02b)
11552af70STsiChungLiew /*
21552af70STsiChungLiew  * Configuation settings for the Freescale MCF52277 EVB board.
31552af70STsiChungLiew  *
41552af70STsiChungLiew  * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
51552af70STsiChungLiew  * TsiChung Liew (Tsi-Chung.Liew@freescale.com)
61552af70STsiChungLiew  *
71552af70STsiChungLiew  * See file CREDITS for list of people who contributed to this
81552af70STsiChungLiew  * project.
91552af70STsiChungLiew  *
101552af70STsiChungLiew  * This program is free software; you can redistribute it and/or
111552af70STsiChungLiew  * modify it under the terms of the GNU General Public License as
121552af70STsiChungLiew  * published by the Free Software Foundation; either version 2 of
131552af70STsiChungLiew  * the License, or (at your option) any later version.
141552af70STsiChungLiew  *
151552af70STsiChungLiew  * This program is distributed in the hope that it will be useful,
161552af70STsiChungLiew  * but WITHOUT ANY WARRANTY; without even the implied warranty of
171552af70STsiChungLiew  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.	 See the
181552af70STsiChungLiew  * GNU General Public License for more details.
191552af70STsiChungLiew  *
201552af70STsiChungLiew  * You should have received a copy of the GNU General Public License
211552af70STsiChungLiew  * along with this program; if not, write to the Free Software
221552af70STsiChungLiew  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
231552af70STsiChungLiew  * MA 02111-1307 USA
241552af70STsiChungLiew  */
251552af70STsiChungLiew 
261552af70STsiChungLiew /*
271552af70STsiChungLiew  * board/config.h - configuration options, board specific
281552af70STsiChungLiew  */
291552af70STsiChungLiew 
301552af70STsiChungLiew #ifndef _M52277EVB_H
311552af70STsiChungLiew #define _M52277EVB_H
321552af70STsiChungLiew 
331552af70STsiChungLiew /*
341552af70STsiChungLiew  * High Level Configuration Options
351552af70STsiChungLiew  * (easy to change)
361552af70STsiChungLiew  */
371552af70STsiChungLiew #define CONFIG_MCF5227x		/* define processor family */
381552af70STsiChungLiew #define CONFIG_M52277		/* define processor type */
391552af70STsiChungLiew #define CONFIG_M52277EVB	/* M52277EVB board */
401552af70STsiChungLiew 
411552af70STsiChungLiew #define CONFIG_MCFUART
421552af70STsiChungLiew #define CFG_UART_PORT		(0)
431552af70STsiChungLiew #define CONFIG_BAUDRATE		115200
441552af70STsiChungLiew #define CFG_BAUDRATE_TABLE	{ 9600 , 19200 , 38400 , 57600, 115200 }
451552af70STsiChungLiew 
461552af70STsiChungLiew #undef CONFIG_WATCHDOG
471552af70STsiChungLiew 
481552af70STsiChungLiew #define CONFIG_TIMESTAMP	/* Print image info with timestamp */
491552af70STsiChungLiew 
501552af70STsiChungLiew /*
511552af70STsiChungLiew  * BOOTP options
521552af70STsiChungLiew  */
531552af70STsiChungLiew #define CONFIG_BOOTP_BOOTFILESIZE
541552af70STsiChungLiew #define CONFIG_BOOTP_BOOTPATH
551552af70STsiChungLiew #define CONFIG_BOOTP_GATEWAY
561552af70STsiChungLiew #define CONFIG_BOOTP_HOSTNAME
571552af70STsiChungLiew 
581552af70STsiChungLiew /* Command line configuration */
591552af70STsiChungLiew #include <config_cmd_default.h>
601552af70STsiChungLiew 
611552af70STsiChungLiew #define CONFIG_CMD_CACHE
621552af70STsiChungLiew #define CONFIG_CMD_DATE
631552af70STsiChungLiew #define CONFIG_CMD_ELF
641552af70STsiChungLiew #define CONFIG_CMD_FLASH
651552af70STsiChungLiew #define CONFIG_CMD_I2C
661552af70STsiChungLiew #define CONFIG_CMD_JFFS2
671552af70STsiChungLiew #define CONFIG_CMD_LOADB
681552af70STsiChungLiew #define CONFIG_CMD_LOADS
691552af70STsiChungLiew #define CONFIG_CMD_MEMORY
701552af70STsiChungLiew #define CONFIG_CMD_MISC
711552af70STsiChungLiew #undef CONFIG_CMD_NET
721552af70STsiChungLiew #define CONFIG_CMD_REGINFO
731552af70STsiChungLiew #undef CONFIG_CMD_USB
741552af70STsiChungLiew #undef CONFIG_CMD_BMP
751552af70STsiChungLiew 
761552af70STsiChungLiew #define CONFIG_HOSTNAME		M52277EVB
771552af70STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS		\
781552af70STsiChungLiew 	"inpclk=" MK_STR(CFG_INPUT_CLKSRC) "\0"	\
791552af70STsiChungLiew 	"loadaddr=" MK_STR(CFG_LOAD_ADDR) "\0"	\
801552af70STsiChungLiew 	"u-boot=u-boot.bin\0"			\
811552af70STsiChungLiew 	"load=tftp ${loadaddr) ${u-boot}\0"	\
821552af70STsiChungLiew 	"upd=run load; run prog\0"		\
831552af70STsiChungLiew 	"prog=prot off 0 0x3ffff;"		\
841552af70STsiChungLiew 	"era 0 3ffff;"				\
851552af70STsiChungLiew 	"cp.b ${loadaddr} 0 ${filesize};"	\
861552af70STsiChungLiew 	"save\0"				\
871552af70STsiChungLiew 	""
881552af70STsiChungLiew 
89*44e5b9edSTsiChung Liew #define CONFIG_BOOTDELAY	3	/* autoboot after 3 seconds */
901552af70STsiChungLiew /* LCD */
911552af70STsiChungLiew #ifdef CONFIG_CMD_BMP
921552af70STsiChungLiew #define CONFIG_LCD
931552af70STsiChungLiew #define CONFIG_SPLASH_SCREEN
941552af70STsiChungLiew #define CONFIG_LCD_LOGO
951552af70STsiChungLiew #define CONFIG_SHARP_LQ035Q7DH06
961552af70STsiChungLiew #endif
971552af70STsiChungLiew 
981552af70STsiChungLiew /* USB */
991552af70STsiChungLiew #ifdef CONFIG_CMD_USB
1001552af70STsiChungLiew #define CONFIG_USB_EHCI
1011552af70STsiChungLiew #define CONFIG_USB_STORAGE
1021552af70STsiChungLiew #define CONFIG_DOS_PARTITION
1031552af70STsiChungLiew #define CONFIG_MAC_PARTITION
1041552af70STsiChungLiew #define CONFIG_ISO_PARTITION
1051552af70STsiChungLiew #define CFG_USB_EHCI_REGS_BASE		0xFC0B0000
1061552af70STsiChungLiew #define CFG_USB_EHCI_CPU_INIT
1071552af70STsiChungLiew #endif
1081552af70STsiChungLiew 
1091552af70STsiChungLiew /* Realtime clock */
1101552af70STsiChungLiew #define CONFIG_MCFRTC
1111552af70STsiChungLiew #undef RTC_DEBUG
1121552af70STsiChungLiew #define CFG_RTC_OSCILLATOR	(32 * CFG_HZ)
1131552af70STsiChungLiew 
1141552af70STsiChungLiew /* Timer */
1151552af70STsiChungLiew #define CONFIG_MCFTMR
1161552af70STsiChungLiew #undef CONFIG_MCFPIT
1171552af70STsiChungLiew 
1181552af70STsiChungLiew /* I2c */
1191552af70STsiChungLiew #define CONFIG_FSL_I2C
1201552af70STsiChungLiew #define CONFIG_HARD_I2C		/* I2C with hardware support */
1211552af70STsiChungLiew #undef	CONFIG_SOFT_I2C		/* I2C bit-banged               */
1221552af70STsiChungLiew #define CFG_I2C_SPEED		80000	/* I2C speed and slave address  */
1231552af70STsiChungLiew #define CFG_I2C_SLAVE		0x7F
1241552af70STsiChungLiew #define CFG_I2C_OFFSET		0x58000
1251552af70STsiChungLiew #define CFG_IMMR		CFG_MBAR
1261552af70STsiChungLiew 
1271552af70STsiChungLiew /* Input, PCI, Flexbus, and VCO */
1281552af70STsiChungLiew #define CONFIG_EXTRA_CLOCK
1291552af70STsiChungLiew 
1301552af70STsiChungLiew #define CFG_INPUT_CLKSRC	16000000
1311552af70STsiChungLiew 
1321552af70STsiChungLiew #define CONFIG_PRAM		512	/* 512 KB */
1331552af70STsiChungLiew 
1341552af70STsiChungLiew #define CFG_PROMPT		"-> "
1351552af70STsiChungLiew #define CFG_LONGHELP		/* undef to save memory */
1361552af70STsiChungLiew 
1371552af70STsiChungLiew #if defined(CONFIG_CMD_KGDB)
1381552af70STsiChungLiew #define CFG_CBSIZE		1024	/* Console I/O Buffer Size */
1391552af70STsiChungLiew #else
1401552af70STsiChungLiew #define CFG_CBSIZE		256	/* Console I/O Buffer Size */
1411552af70STsiChungLiew #endif
1421552af70STsiChungLiew #define CFG_PBSIZE		(CFG_CBSIZE+sizeof(CFG_PROMPT)+16)	/* Print Buffer Size */
1431552af70STsiChungLiew #define CFG_MAXARGS		16	/* max number of command args */
1441552af70STsiChungLiew #define CFG_BARGSIZE		CFG_CBSIZE	/* Boot Argument Buffer Size    */
1451552af70STsiChungLiew 
1461552af70STsiChungLiew #define CFG_LOAD_ADDR		(CFG_SDRAM_BASE + 0x10000)
1471552af70STsiChungLiew 
1481552af70STsiChungLiew #define CFG_HZ			1000
1491552af70STsiChungLiew 
1501552af70STsiChungLiew #define CFG_MBAR		0xFC000000
1511552af70STsiChungLiew 
1521552af70STsiChungLiew /*
1531552af70STsiChungLiew  * Low Level Configuration Settings
1541552af70STsiChungLiew  * (address mappings, register initial values, etc.)
1551552af70STsiChungLiew  * You should know what you are doing if you make changes here.
1561552af70STsiChungLiew  */
1571552af70STsiChungLiew 
1581552af70STsiChungLiew /*-----------------------------------------------------------------------
1591552af70STsiChungLiew  * Definitions for initial stack pointer and data area (in DPRAM)
1601552af70STsiChungLiew  */
1611552af70STsiChungLiew #define CFG_INIT_RAM_ADDR	0x80000000
1621552af70STsiChungLiew #define CFG_INIT_RAM_END	0x8000	/* End of used area in internal SRAM */
1631552af70STsiChungLiew #define CFG_INIT_RAM_CTRL	0x21
1641552af70STsiChungLiew #define CFG_GBL_DATA_SIZE	128	/* size in bytes reserved for initial data */
1651552af70STsiChungLiew #define CFG_GBL_DATA_OFFSET	((CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE) - 16)
1661552af70STsiChungLiew #define CFG_INIT_SP_OFFSET	CFG_GBL_DATA_OFFSET
1671552af70STsiChungLiew 
1681552af70STsiChungLiew /*-----------------------------------------------------------------------
1691552af70STsiChungLiew  * Start addresses for the final memory configuration
1701552af70STsiChungLiew  * (Set up by the startup code)
1711552af70STsiChungLiew  * Please note that CFG_SDRAM_BASE _must_ start at 0
1721552af70STsiChungLiew  */
1731552af70STsiChungLiew #define CFG_SDRAM_BASE		0x40000000
1741552af70STsiChungLiew #define CFG_SDRAM_SIZE		64	/* SDRAM size in MB */
1751552af70STsiChungLiew #define CFG_SDRAM_CFG1		0x43711630
1761552af70STsiChungLiew #define CFG_SDRAM_CFG2		0x56670000
1771552af70STsiChungLiew #define CFG_SDRAM_CTRL		0xE1092000
1781552af70STsiChungLiew #define CFG_SDRAM_EMOD		0x81810000
1791552af70STsiChungLiew #define CFG_SDRAM_MODE		0x00CD0000
1801552af70STsiChungLiew 
1811552af70STsiChungLiew #define CFG_MEMTEST_START	CFG_SDRAM_BASE + 0x400
1821552af70STsiChungLiew #define CFG_MEMTEST_END		((CFG_SDRAM_SIZE - 3) << 20)
1831552af70STsiChungLiew 
1841552af70STsiChungLiew #define CFG_MONITOR_BASE	(CFG_FLASH_BASE + 0x400)
1851552af70STsiChungLiew #define CFG_BOOTPARAMS_LEN	64*1024
1861552af70STsiChungLiew #define CFG_MONITOR_LEN		(256 << 10)	/* Reserve 256 kB for Monitor */
1871552af70STsiChungLiew #define CFG_MALLOC_LEN		(128 << 10)	/* Reserve 128 kB for malloc() */
1881552af70STsiChungLiew 
1891552af70STsiChungLiew /* Initial Memory map for Linux */
1901552af70STsiChungLiew #define CFG_BOOTMAPSZ		(CFG_SDRAM_BASE + (CFG_SDRAM_SIZE << 20))
1911552af70STsiChungLiew 
1921552af70STsiChungLiew /* Configuration for environment
1931552af70STsiChungLiew  * Environment is embedded in u-boot in the second sector of the flash
1941552af70STsiChungLiew  */
1951552af70STsiChungLiew #define CFG_ENV_IS_IN_FLASH	1
1961552af70STsiChungLiew #define CONFIG_ENV_OVERWRITE	1
1971552af70STsiChungLiew #undef CFG_ENV_IS_EMBEDDED
1981552af70STsiChungLiew 
1991552af70STsiChungLiew /*-----------------------------------------------------------------------
2001552af70STsiChungLiew  * FLASH organization
2011552af70STsiChungLiew  */
2021552af70STsiChungLiew #define CFG_FLASH_BASE		CFG_CS0_BASE
2031552af70STsiChungLiew #define CFG_FLASH0_BASE		CFG_CS0_BASE
2041552af70STsiChungLiew #define CFG_ENV_ADDR		(CFG_FLASH_BASE + 0x8000)
2051552af70STsiChungLiew #define CFG_ENV_SECT_SIZE	0x8000
2061552af70STsiChungLiew 
2071552af70STsiChungLiew #define CFG_FLASH_CFI
2081552af70STsiChungLiew #ifdef CFG_FLASH_CFI
2091552af70STsiChungLiew 
2101552af70STsiChungLiew #	define CFG_FLASH_CFI_DRIVER	1
2111552af70STsiChungLiew #	define CFG_FLASH_SIZE		0x1000000	/* Max size that the board might have */
2121552af70STsiChungLiew #	define CFG_FLASH_CFI_WIDTH	FLASH_CFI_16BIT
2131552af70STsiChungLiew #	define CFG_MAX_FLASH_BANKS	1	/* max number of memory banks */
2141552af70STsiChungLiew #	define CFG_MAX_FLASH_SECT	137	/* max number of sectors on one chip */
2151552af70STsiChungLiew #	define CFG_FLASH_PROTECTION	/* "Real" (hardware) sectors protection */
2161552af70STsiChungLiew #	define CFG_FLASH_CHECKSUM
2171552af70STsiChungLiew #endif
2181552af70STsiChungLiew 
2191552af70STsiChungLiew /*
2201552af70STsiChungLiew  * This is setting for JFFS2 support in u-boot.
2211552af70STsiChungLiew  * NOTE: Enable CONFIG_CMD_JFFS2 for JFFS2 support.
2221552af70STsiChungLiew  */
2231552af70STsiChungLiew #ifdef CONFIG_CMD_JFFS2
2241552af70STsiChungLiew #	define CONFIG_JFFS2_DEV		"nor0"
2251552af70STsiChungLiew #	define CONFIG_JFFS2_PART_SIZE	(0x01000000 - 0x40000)
2261552af70STsiChungLiew #	define CONFIG_JFFS2_PART_OFFSET	(CFG_FLASH0_BASE + 0x40000)
2271552af70STsiChungLiew #endif
2281552af70STsiChungLiew 
2291552af70STsiChungLiew /*-----------------------------------------------------------------------
2301552af70STsiChungLiew  * Cache Configuration
2311552af70STsiChungLiew  */
2321552af70STsiChungLiew #define CFG_CACHELINE_SIZE		16
2331552af70STsiChungLiew 
2341552af70STsiChungLiew /*-----------------------------------------------------------------------
2351552af70STsiChungLiew  * Memory bank definitions
2361552af70STsiChungLiew  */
2371552af70STsiChungLiew /*
2381552af70STsiChungLiew  * CS0 - NOR Flash
2391552af70STsiChungLiew  * CS1 - Available
2401552af70STsiChungLiew  * CS2 - Available
2411552af70STsiChungLiew  * CS3 - Available
2421552af70STsiChungLiew  * CS4 - Available
2431552af70STsiChungLiew  * CS5 - Available
2441552af70STsiChungLiew  */
2451552af70STsiChungLiew 
2461552af70STsiChungLiew #define CFG_CS0_BASE		0x00000000
2471552af70STsiChungLiew #define CFG_CS0_MASK		0x00FF0001
2481552af70STsiChungLiew #define CFG_CS0_CTRL		0x00001FA0
2491552af70STsiChungLiew 
2501552af70STsiChungLiew #endif				/* _M52277EVB_H */
251