xref: /rk3399_rockchip-uboot/include/configs/M5275EVB.h (revision e090579d0a2d1aa38eab94b98877de9bcdd4f31d)
1545c8e0aSMatthew Fettke /*
2545c8e0aSMatthew Fettke  * Configuation settings for the Motorola MC5275EVB board.
3545c8e0aSMatthew Fettke  *
4545c8e0aSMatthew Fettke  * By Arthur Shipkowski <art@videon-central.com>
5545c8e0aSMatthew Fettke  * Copyright (C) 2005 Videon Central, Inc.
6545c8e0aSMatthew Fettke  *
7545c8e0aSMatthew Fettke  * Based off of M5272C3 board code by Josef Baumgartner
8545c8e0aSMatthew Fettke  * <josef.baumgartner@telex.de>
9545c8e0aSMatthew Fettke  *
101a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
11545c8e0aSMatthew Fettke  */
12545c8e0aSMatthew Fettke 
13545c8e0aSMatthew Fettke /*
14545c8e0aSMatthew Fettke  * board/config.h - configuration options, board specific
15545c8e0aSMatthew Fettke  */
16545c8e0aSMatthew Fettke 
17545c8e0aSMatthew Fettke #ifndef _M5275EVB_H
18545c8e0aSMatthew Fettke #define _M5275EVB_H
19545c8e0aSMatthew Fettke 
20545c8e0aSMatthew Fettke /*
21545c8e0aSMatthew Fettke  * High Level Configuration Options
22545c8e0aSMatthew Fettke  * (easy to change)
23545c8e0aSMatthew Fettke  */
24545c8e0aSMatthew Fettke #define CONFIG_M5275EVB			/* define board type */
25545c8e0aSMatthew Fettke 
26545c8e0aSMatthew Fettke #define CONFIG_MCFTMR
27545c8e0aSMatthew Fettke 
28545c8e0aSMatthew Fettke #define CONFIG_MCFUART
296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_UART_PORT		(0)
30545c8e0aSMatthew Fettke 
31545c8e0aSMatthew Fettke /* Configuration for environment
32545c8e0aSMatthew Fettke  * Environment is embedded in u-boot in the second sector of the flash
33545c8e0aSMatthew Fettke  */
34545c8e0aSMatthew Fettke #ifndef CONFIG_MONITOR_IS_IN_RAM
350e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_OFFSET		0x4000
360e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE	0x2000
37545c8e0aSMatthew Fettke #else
380e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR		0xffe04000
390e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE	0x2000
40545c8e0aSMatthew Fettke #endif
41545c8e0aSMatthew Fettke 
425296cb1dSangelo@sysam.it #define LDS_BOARD_TEXT \
435296cb1dSangelo@sysam.it 	. = DEFINED(env_offset) ? env_offset : .; \
44*0649cd0dSSimon Glass 	env/embedded.o(.text);
455296cb1dSangelo@sysam.it 
46545c8e0aSMatthew Fettke /*
47545c8e0aSMatthew Fettke  * BOOTP options
48545c8e0aSMatthew Fettke  */
49545c8e0aSMatthew Fettke #define CONFIG_BOOTP_BOOTFILESIZE
50545c8e0aSMatthew Fettke #define CONFIG_BOOTP_BOOTPATH
51545c8e0aSMatthew Fettke #define CONFIG_BOOTP_GATEWAY
52545c8e0aSMatthew Fettke #define CONFIG_BOOTP_HOSTNAME
53545c8e0aSMatthew Fettke 
54545c8e0aSMatthew Fettke /* Available command configuration */
55545c8e0aSMatthew Fettke 
56545c8e0aSMatthew Fettke #define CONFIG_MCFFEC
57545c8e0aSMatthew Fettke #ifdef CONFIG_MCFFEC
58545c8e0aSMatthew Fettke #define CONFIG_MII		1
590f3ba7e9STsiChung Liew #define CONFIG_MII_INIT		1
606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DISCOVER_PHY
616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_RX_ETH_BUFFER	8
626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC0_PINMUX		0
646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC0_MIIBASE	CONFIG_SYS_FEC0_IOBASE
656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC1_PINMUX		0
666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FEC1_MIIBASE	CONFIG_SYS_FEC1_IOBASE
67545c8e0aSMatthew Fettke #define MCFFEC_TOUT_LOOP	50000
68545c8e0aSMatthew Fettke #define CONFIG_HAS_ETH1
696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* If CONFIG_SYS_DISCOVER_PHY is not defined - hardcoded */
706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_DISCOVER_PHY
71545c8e0aSMatthew Fettke #define FECDUPLEX		FULL
72545c8e0aSMatthew Fettke #define FECSPEED		_100BASET
73545c8e0aSMatthew Fettke #else
746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_FAULT_ECHO_LINK_DOWN
756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
76545c8e0aSMatthew Fettke #endif
77545c8e0aSMatthew Fettke #endif
78545c8e0aSMatthew Fettke #endif
79545c8e0aSMatthew Fettke 
80545c8e0aSMatthew Fettke /* I2C */
8100f792e0SHeiko Schocher #define CONFIG_SYS_I2C
8200f792e0SHeiko Schocher #define CONFIG_SYS_I2C_FSL
8300f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SPEED	80000
8400f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_SLAVE	0x7F
8500f792e0SHeiko Schocher #define CONFIG_SYS_FSL_I2C_OFFSET	0x00000300
866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR		CONFIG_SYS_MBAR
876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_REG	(gpio_reg->par_feci2c)
886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_CLR	(0xFFF0)
896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_PINMUX_SET	(0x000F)
90545c8e0aSMatthew Fettke 
916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP		/* undef to save memory	*/
92545c8e0aSMatthew Fettke 
936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR		0x800000
94545c8e0aSMatthew Fettke 
95545c8e0aSMatthew Fettke #define CONFIG_BOOTCOMMAND	"bootm ffe40000"
966d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START	0x400
976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END		0x380000
98545c8e0aSMatthew Fettke 
990e8a7555STsiChung Liew #ifdef CONFIG_MCFFEC
1000e8a7555STsiChung Liew #	define CONFIG_NET_RETRY_COUNT	5
1010e8a7555STsiChung Liew #	define CONFIG_OVERWRITE_ETHADDR_ONCE
1020e8a7555STsiChung Liew #endif				/* FEC_ENET */
1030e8a7555STsiChung Liew 
1040e8a7555STsiChung Liew #define CONFIG_EXTRA_ENV_SETTINGS		\
1050e8a7555STsiChung Liew 	"netdev=eth0\0"				\
1060e8a7555STsiChung Liew 	"loadaddr=10000\0"			\
1070e8a7555STsiChung Liew 	"uboot=u-boot.bin\0"			\
1080e8a7555STsiChung Liew 	"load=tftp ${loadaddr} ${uboot}\0"	\
1090e8a7555STsiChung Liew 	"upd=run load; run prog\0"		\
1100e8a7555STsiChung Liew 	"prog=prot off ffe00000 ffe3ffff;"	\
1110e8a7555STsiChung Liew 	"era ffe00000 ffe3ffff;"		\
1120e8a7555STsiChung Liew 	"cp.b ${loadaddr} ffe00000 ${filesize};"\
1130e8a7555STsiChung Liew 	"save\0"				\
1140e8a7555STsiChung Liew 	""
1150e8a7555STsiChung Liew 
1166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CLK			150000000
117545c8e0aSMatthew Fettke 
118545c8e0aSMatthew Fettke /*
119545c8e0aSMatthew Fettke  * Low Level Configuration Settings
120545c8e0aSMatthew Fettke  * (address mappings, register initial values, etc.)
121545c8e0aSMatthew Fettke  * You should know what you are doing if you make changes here.
122545c8e0aSMatthew Fettke  */
123545c8e0aSMatthew Fettke 
1246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MBAR		0x40000000
125545c8e0aSMatthew Fettke 
126545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
127545c8e0aSMatthew Fettke  * Definitions for initial stack pointer and data area (in DPRAM)
128545c8e0aSMatthew Fettke  */
1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR	0x20000000
130553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE	0x10000	/* Size of used area in internal SRAM */
13125ddd1fbSWolfgang Denk #define CONFIG_SYS_GBL_DATA_OFFSET	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
1326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_SP_OFFSET	CONFIG_SYS_GBL_DATA_OFFSET
133545c8e0aSMatthew Fettke 
134545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
135545c8e0aSMatthew Fettke  * Start addresses for the final memory configuration
136545c8e0aSMatthew Fettke  * (Set up by the startup code)
1376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD  * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
138545c8e0aSMatthew Fettke  */
1396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE		0x00000000
1406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_SIZE		16	/* SDRAM size in MB */
141012522feSTsiChung Liew #define CONFIG_SYS_FLASH_BASE		CONFIG_SYS_CS0_BASE
142545c8e0aSMatthew Fettke 
143545c8e0aSMatthew Fettke #ifdef CONFIG_MONITOR_IS_IN_RAM
1446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE	0x20000
145545c8e0aSMatthew Fettke #else
1466d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE	(CONFIG_SYS_FLASH_BASE + 0x400)
147545c8e0aSMatthew Fettke #endif
148545c8e0aSMatthew Fettke 
1496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_LEN		0x20000
1506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN		(256 << 10)
1516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTPARAMS_LEN	64*1024
152545c8e0aSMatthew Fettke 
153545c8e0aSMatthew Fettke /*
154545c8e0aSMatthew Fettke  * For booting Linux, the board info and command line data
155545c8e0aSMatthew Fettke  * have to be in the first 8 MB of memory, since this is
156545c8e0aSMatthew Fettke  * the maximum mapped by the Linux kernel during initialization ??
157545c8e0aSMatthew Fettke  */
158d6e4baf4STsiChung Liew #define CONFIG_SYS_BOOTMAPSZ		(CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20))
159d6e4baf4STsiChung Liew #define CONFIG_SYS_BOOTM_LEN		(CONFIG_SYS_SDRAM_SIZE << 20)
160545c8e0aSMatthew Fettke 
161545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
162545c8e0aSMatthew Fettke  * FLASH organization
163545c8e0aSMatthew Fettke  */
1646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS	1	/* max number of memory banks */
1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT	11	/* max number of sectors on one chip */
1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT	1000
167545c8e0aSMatthew Fettke 
1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI		1
16900b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER	1
1706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE		0x200000
171545c8e0aSMatthew Fettke 
172545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
173545c8e0aSMatthew Fettke  * Cache Configuration
174545c8e0aSMatthew Fettke  */
1756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CACHELINE_SIZE	16
176545c8e0aSMatthew Fettke 
177dd9f054eSTsiChung Liew #define ICACHE_STATUS			(CONFIG_SYS_INIT_RAM_ADDR + \
178553f0982SWolfgang Denk 					 CONFIG_SYS_INIT_RAM_SIZE - 8)
179dd9f054eSTsiChung Liew #define DCACHE_STATUS			(CONFIG_SYS_INIT_RAM_ADDR + \
180553f0982SWolfgang Denk 					 CONFIG_SYS_INIT_RAM_SIZE - 4)
181dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV		(CF_CACR_CINV | CF_CACR_INVI)
182dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0		(CONFIG_SYS_SDRAM_BASE | \
183dd9f054eSTsiChung Liew 					 CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \
184dd9f054eSTsiChung Liew 					 CF_ACR_EN | CF_ACR_SM_ALL)
185dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR		(CF_CACR_CENB | CF_CACR_CINV | \
186dd9f054eSTsiChung Liew 					 CF_CACR_DISD | CF_CACR_INVI | \
187dd9f054eSTsiChung Liew 					 CF_CACR_CEIB | CF_CACR_DCM | \
188dd9f054eSTsiChung Liew 					 CF_CACR_EUSP)
189dd9f054eSTsiChung Liew 
190545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
191545c8e0aSMatthew Fettke  * Memory bank definitions
192545c8e0aSMatthew Fettke  */
193012522feSTsiChung Liew #define CONFIG_SYS_CS0_BASE		0xffe00000
194012522feSTsiChung Liew #define CONFIG_SYS_CS0_CTRL		0x00001980
195012522feSTsiChung Liew #define CONFIG_SYS_CS0_MASK		0x001F0001
196545c8e0aSMatthew Fettke 
197012522feSTsiChung Liew #define CONFIG_SYS_CS1_BASE		0x30000000
198012522feSTsiChung Liew #define CONFIG_SYS_CS1_CTRL		0x00001900
199012522feSTsiChung Liew #define CONFIG_SYS_CS1_MASK		0x00070001
200545c8e0aSMatthew Fettke 
201545c8e0aSMatthew Fettke /*-----------------------------------------------------------------------
202545c8e0aSMatthew Fettke  * Port configuration
203545c8e0aSMatthew Fettke  */
2046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FECI2C		0x0FA0
205545c8e0aSMatthew Fettke 
206545c8e0aSMatthew Fettke #endif	/* _M5275EVB_H */
207