xref: /rk3399_rockchip-uboot/include/configs/M5253EVBE.h (revision e090579d0a2d1aa38eab94b98877de9bcdd4f31d)
1a1436a84STsiChungLiew /*
2a1436a84STsiChungLiew  * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
3a1436a84STsiChungLiew  * Hayden Fraser (Hayden.Fraser@freescale.com)
4a1436a84STsiChungLiew  *
51a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
6a1436a84STsiChungLiew  */
7a1436a84STsiChungLiew 
8a1436a84STsiChungLiew #ifndef _M5253EVBE_H
9a1436a84STsiChungLiew #define _M5253EVBE_H
10a1436a84STsiChungLiew 
11a1436a84STsiChungLiew #define CONFIG_M5253EVBE	/* define board type */
12a1436a84STsiChungLiew 
13a1436a84STsiChungLiew #define CONFIG_MCFTMR
14a1436a84STsiChungLiew 
15a1436a84STsiChungLiew #define CONFIG_MCFUART
166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_UART_PORT		(0)
17a1436a84STsiChungLiew 
18a1436a84STsiChungLiew #undef CONFIG_WATCHDOG		/* disable watchdog */
19a1436a84STsiChungLiew 
20a1436a84STsiChungLiew 
21a1436a84STsiChungLiew /* Configuration for environment
22a1436a84STsiChungLiew  * Environment is embedded in u-boot in the second sector of the flash
23a1436a84STsiChungLiew  */
24a1436a84STsiChungLiew #ifndef CONFIG_MONITOR_IS_IN_RAM
250e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_OFFSET		0x4000
260e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE	0x2000
27a1436a84STsiChungLiew #else
280e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR		0xffe04000
290e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE	0x2000
30a1436a84STsiChungLiew #endif
31a1436a84STsiChungLiew 
325296cb1dSangelo@sysam.it #define LDS_BOARD_TEXT \
335296cb1dSangelo@sysam.it 	. = DEFINED(env_offset) ? env_offset : .; \
34*0649cd0dSSimon Glass 	env/embedded.o(.text)
355296cb1dSangelo@sysam.it 
36a1436a84STsiChungLiew /*
37a1436a84STsiChungLiew  * BOOTP options
38a1436a84STsiChungLiew  */
39a1436a84STsiChungLiew #undef CONFIG_BOOTP_BOOTFILESIZE
40a1436a84STsiChungLiew #undef CONFIG_BOOTP_BOOTPATH
41a1436a84STsiChungLiew #undef CONFIG_BOOTP_GATEWAY
42a1436a84STsiChungLiew #undef CONFIG_BOOTP_HOSTNAME
43a1436a84STsiChungLiew 
44a1436a84STsiChungLiew /*
45a1436a84STsiChungLiew  * Command line configuration.
46a1436a84STsiChungLiew  */
47a1436a84STsiChungLiew 
48a1436a84STsiChungLiew /* ATA */
49a1436a84STsiChungLiew #define CONFIG_IDE_RESET	1
50a1436a84STsiChungLiew #define CONFIG_IDE_PREINIT	1
51a1436a84STsiChungLiew #define CONFIG_ATAPI
52a1436a84STsiChungLiew #undef CONFIG_LBA48
53a1436a84STsiChungLiew 
546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IDE_MAXBUS		1
556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IDE_MAXDEVICE	2
56a1436a84STsiChungLiew 
576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_BASE_ADDR	(CONFIG_SYS_MBAR2 + 0x800)
586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_IDE0_OFFSET	0
59a1436a84STsiChungLiew 
606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_DATA_OFFSET	0xA0	/* Offset for data I/O */
616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_REG_OFFSET	0xA0	/* Offset for normal register accesses */
626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_ALT_OFFSET	0xC0	/* Offset for alternate registers */
636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ATA_STRIDE		4	/* Interval between registers */
64a1436a84STsiChungLiew 
656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP		/* undef to save memory */
66a1436a84STsiChungLiew 
676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR		0x00100000
68a1436a84STsiChungLiew 
696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START	0x400
706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END		0x380000
71a1436a84STsiChungLiew 
726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_PLL_BYPASS		/* bypass PLL for test purpose */
736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FAST_CLK
746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifdef CONFIG_SYS_FAST_CLK
756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #	define CONFIG_SYS_PLLCR	0x1243E054
766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #	define CONFIG_SYS_CLK		140000000
77a1436a84STsiChungLiew #else
786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #	define CONFIG_SYS_PLLCR	0x135a4140
796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #	define CONFIG_SYS_CLK		70000000
80a1436a84STsiChungLiew #endif
81a1436a84STsiChungLiew 
82a1436a84STsiChungLiew /*
83a1436a84STsiChungLiew  * Low Level Configuration Settings
84a1436a84STsiChungLiew  * (address mappings, register initial values, etc.)
85a1436a84STsiChungLiew  * You should know what you are doing if you make changes here.
86a1436a84STsiChungLiew  */
87a1436a84STsiChungLiew 
886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR		0x10000000	/* Register Base Addrs */
896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR2		0x80000000	/* Module Base Addrs 2 */
90a1436a84STsiChungLiew 
91a1436a84STsiChungLiew /*
92a1436a84STsiChungLiew  * Definitions for initial stack pointer and data area (in DPRAM)
93a1436a84STsiChungLiew  */
946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR	0x20000000
95553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE	0x10000	/* Size of used area in internal SRAM */
9625ddd1fbSWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
98a1436a84STsiChungLiew 
99a1436a84STsiChungLiew /*
100a1436a84STsiChungLiew  * Start addresses for the final memory configuration
101a1436a84STsiChungLiew  * (Set up by the startup code)
1026d0f6bcfSJean-Christophe PLAGNIOL-VILLARD  * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
103a1436a84STsiChungLiew  */
1046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE		0x00000000
1056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE		8	/* SDRAM size in MB */
106a1436a84STsiChungLiew 
107a1436a84STsiChungLiew #ifdef CONFIG_MONITOR_IS_IN_RAM
1086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE	0x20000
109a1436a84STsiChungLiew #else
1106d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_FLASH_BASE + 0x400)
111a1436a84STsiChungLiew #endif
112a1436a84STsiChungLiew 
1136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN		0x40000
1146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN		(256 << 10)
1156d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTPARAMS_LEN	(64*1024)
116a1436a84STsiChungLiew 
117a1436a84STsiChungLiew /*
118a1436a84STsiChungLiew  * For booting Linux, the board info and command line data
119a1436a84STsiChungLiew  * have to be in the first 8 MB of memory, since this is
120a1436a84STsiChungLiew  * the maximum mapped by the Linux kernel during initialization ??
121a1436a84STsiChungLiew  */
1226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ		(CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20))
123d6e4baf4STsiChung Liew #define CONFIG_SYS_BOOTM_LEN		(CONFIG_SYS_SDRAM_SIZE << 20)
124a1436a84STsiChungLiew 
125a1436a84STsiChungLiew /* FLASH organization */
126012522feSTsiChung Liew #define CONFIG_SYS_FLASH_BASE		CONFIG_SYS_CS0_BASE
1276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS	1	/* max number of memory banks */
1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT	35	/* max number of sectors on one chip */
1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT	1000
130a1436a84STsiChungLiew 
1316d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI		1
13200b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER	1
1336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE		0x200000
1346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI_WIDTH	FLASH_CFI_16BIT
135a1436a84STsiChungLiew 
136a1436a84STsiChungLiew /* Cache Configuration */
1376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CACHELINE_SIZE	16
138a1436a84STsiChungLiew 
139dd9f054eSTsiChung Liew #define ICACHE_STATUS			(CONFIG_SYS_INIT_RAM_ADDR + \
140553f0982SWolfgang Denk 					 CONFIG_SYS_INIT_RAM_SIZE - 8)
141dd9f054eSTsiChung Liew #define DCACHE_STATUS			(CONFIG_SYS_INIT_RAM_ADDR + \
142553f0982SWolfgang Denk 					 CONFIG_SYS_INIT_RAM_SIZE - 4)
143dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV		(CF_CACR_DCM)
144dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0		(CONFIG_SYS_FLASH_BASE | \
145dd9f054eSTsiChung Liew 					 CF_ADDRMASK(2) | \
146dd9f054eSTsiChung Liew 					 CF_ACR_EN | CF_ACR_SM_ALL)
147dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR1		(CONFIG_SYS_SDRAM_BASE | \
148dd9f054eSTsiChung Liew 					 CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \
149dd9f054eSTsiChung Liew 					 CF_ACR_EN | CF_ACR_SM_ALL)
150dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR		(CF_CACR_CENB | CF_CACR_CEIB | \
151dd9f054eSTsiChung Liew 					 CF_CACR_DBWE)
152dd9f054eSTsiChung Liew 
153a1436a84STsiChungLiew /* Port configuration */
1546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FECI2C		0xF0
155a1436a84STsiChungLiew 
156012522feSTsiChung Liew #define CONFIG_SYS_CS0_BASE		0xFFE00000
157012522feSTsiChung Liew #define CONFIG_SYS_CS0_MASK		0x001F0021
158012522feSTsiChung Liew #define CONFIG_SYS_CS0_CTRL		0x00001D80
159a1436a84STsiChungLiew 
160a1436a84STsiChungLiew /*-----------------------------------------------------------------------
161a1436a84STsiChungLiew  * Port configuration
162a1436a84STsiChungLiew  */
1636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO_FUNC		0x00000008	/* Set gpio pins: none */
1646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO1_FUNC		0x00df00f0	/* 36-39(SWITCH),48-52(FPGAs),54 */
1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO_EN		0x00000008	/* Set gpio output enable */
1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO1_EN		0x00c70000	/* Set gpio output enable */
1676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO_OUT		0x00000008	/* Set outputs to default state */
1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO1_OUT		0x00c70000	/* Set outputs to default state */
1696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GPIO1_LED		0x00400000	/* user led */
170a1436a84STsiChungLiew 
171a1436a84STsiChungLiew #endif				/* _M5253EVB_H */
172