xref: /rk3399_rockchip-uboot/include/configs/mx51evk.h (revision f58ad98a621ce5059d9608a9b41cfabac277094a)
1c5fb70c9SStefano Babic /*
2c5fb70c9SStefano Babic  * Copyright (C) 2007, Guennadi Liakhovetski <lg@denx.de>
3c5fb70c9SStefano Babic  *
4c5fb70c9SStefano Babic  * (C) Copyright 2009 Freescale Semiconductor, Inc.
5c5fb70c9SStefano Babic  *
6c5fb70c9SStefano Babic  * Configuration settings for the MX51EVK Board
7c5fb70c9SStefano Babic  *
81a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
9c5fb70c9SStefano Babic  */
10c5fb70c9SStefano Babic 
11c5fb70c9SStefano Babic #ifndef __CONFIG_H
12c5fb70c9SStefano Babic #define __CONFIG_H
13c5fb70c9SStefano Babic 
14c5fb70c9SStefano Babic  /* High Level Configuration Options */
15c5fb70c9SStefano Babic 
1618fb0e3cSGong Qianyu #define CONFIG_SYS_FSL_CLK
17c7bdcb61SStefano Babic #define CONFIG_SYS_TEXT_BASE	0x97800000
18c7bdcb61SStefano Babic 
19595f3e56SLiu Hui-R64343 #include <asm/arch/imx-regs.h>
20c5fb70c9SStefano Babic 
214f521418SFabio Estevam #define CONFIG_CMDLINE_TAG			/* enable passing of ATAGs */
224f521418SFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS
234f521418SFabio Estevam #define CONFIG_INITRD_TAG
24362635bdSBenoît Thébaudeau #define CONFIG_REVISION_TAG
25c5fb70c9SStefano Babic 
264cd300efSFabio Estevam #define CONFIG_MACH_TYPE	MACH_TYPE_MX51_BABBAGE
27c5fb70c9SStefano Babic /*
28c5fb70c9SStefano Babic  * Size of malloc() pool
29c5fb70c9SStefano Babic  */
30f1adefd2SFabio Estevam #define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024)
31c5fb70c9SStefano Babic 
32c5fb70c9SStefano Babic /*
33c5fb70c9SStefano Babic  * Hardware drivers
34c5fb70c9SStefano Babic  */
35f6bfd29bSBenoît Thébaudeau #define CONFIG_FSL_IIM
36f6bfd29bSBenoît Thébaudeau 
37c5fb70c9SStefano Babic #define CONFIG_MXC_UART
3840f6fffeSStefano Babic #define CONFIG_MXC_UART_BASE	UART1_BASE
39753fc2ebSStefano Babic #define CONFIG_MXC_GPIO
40c5fb70c9SStefano Babic 
41c5fb70c9SStefano Babic /*
42b4377e12SStefano Babic  * SPI Configs
43b4377e12SStefano Babic  * */
44b4377e12SStefano Babic 
45b4377e12SStefano Babic #define CONFIG_MXC_SPI
46b4377e12SStefano Babic 
475357265aSStefano Babic /* PMIC Controller */
48be3b51aaSŁukasz Majewski #define CONFIG_POWER
49be3b51aaSŁukasz Majewski #define CONFIG_POWER_SPI
50be3b51aaSŁukasz Majewski #define CONFIG_POWER_FSL
51b4377e12SStefano Babic #define CONFIG_FSL_PMIC_BUS	0
52b4377e12SStefano Babic #define CONFIG_FSL_PMIC_CS	0
53b4377e12SStefano Babic #define CONFIG_FSL_PMIC_CLK	2500000
549f481e95SStefano Babic #define CONFIG_FSL_PMIC_MODE	(SPI_MODE_0 | SPI_CS_HIGH)
555357265aSStefano Babic #define CONFIG_FSL_PMIC_BITLEN	32
569b6ede92SFabio Estevam #define CONFIG_RTC_MC13XXX
57b4377e12SStefano Babic 
58b4377e12SStefano Babic /*
59c5fb70c9SStefano Babic  * MMC Configs
60c5fb70c9SStefano Babic  * */
61c5fb70c9SStefano Babic #define CONFIG_FSL_ESDHC
629992792bSFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR	MMC_SDHC1_BASE_ADDR
63c5fb70c9SStefano Babic #define CONFIG_SYS_FSL_ESDHC_NUM	2
64c5fb70c9SStefano Babic 
65c5fb70c9SStefano Babic /*
66c5fb70c9SStefano Babic  * Eth Configs
67c5fb70c9SStefano Babic  */
68c5fb70c9SStefano Babic #define CONFIG_MII
69c5fb70c9SStefano Babic 
70c5fb70c9SStefano Babic #define CONFIG_FEC_MXC
71c5fb70c9SStefano Babic #define IMX_FEC_BASE	FEC_BASE_ADDR
72c5fb70c9SStefano Babic #define CONFIG_FEC_MXC_PHYADDR	0x1F
73c5fb70c9SStefano Babic 
74055d9693SWolfgang Grandegger /* USB Configs */
75055d9693SWolfgang Grandegger #define CONFIG_USB_EHCI_MX5
76055d9693SWolfgang Grandegger #define CONFIG_MXC_USB_PORT	1
77055d9693SWolfgang Grandegger #define CONFIG_MXC_USB_PORTSC	PORT_PTS_ULPI
78055d9693SWolfgang Grandegger #define CONFIG_MXC_USB_FLAGS	MXC_EHCI_POWER_PINS_ENABLED
79055d9693SWolfgang Grandegger 
80f1adefd2SFabio Estevam /* Framebuffer and LCD */
81f1adefd2SFabio Estevam #define CONFIG_PREBOOT
82695af9abSFabio Estevam #define CONFIG_VIDEO_IPUV3
83f1adefd2SFabio Estevam #define CONFIG_VIDEO_BMP_RLE8
84f1adefd2SFabio Estevam #define CONFIG_SPLASH_SCREEN
85f1adefd2SFabio Estevam #define CONFIG_BMP_16BPP
86f1adefd2SFabio Estevam #define CONFIG_VIDEO_LOGO
879fbdb1aaSFabio Estevam #define CONFIG_IPUV3_CLK	133000000
88f1adefd2SFabio Estevam 
89c5fb70c9SStefano Babic /* allow to overwrite serial and ethaddr */
90c5fb70c9SStefano Babic #define CONFIG_ENV_OVERWRITE
91c5fb70c9SStefano Babic #define CONFIG_CONS_INDEX		1
92c5fb70c9SStefano Babic 
9328b119e9SWolfgang Grandegger #define CONFIG_ETHPRIME		"FEC0"
94c5fb70c9SStefano Babic 
9594b5f3edSFabio Estevam #define CONFIG_LOADADDR		0x92000000	/* loadaddr env var */
96c5fb70c9SStefano Babic 
97c5fb70c9SStefano Babic #define CONFIG_EXTRA_ENV_SETTINGS \
9806982534SShawn Guo 	"script=boot.scr\0" \
9920f233bbSOtavio Salvador 	"image=zImage\0" \
10094b5f3edSFabio Estevam 	"fdt_file=imx51-babbage.dtb\0" \
10194b5f3edSFabio Estevam 	"fdt_addr=0x91000000\0" \
10294b5f3edSFabio Estevam 	"boot_fdt=try\0" \
10394b5f3edSFabio Estevam 	"ip_dyn=yes\0" \
10406982534SShawn Guo 	"mmcdev=0\0" \
105e97721c4SOtavio Salvador 	"mmcpart=1\0" \
106e97721c4SOtavio Salvador 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
10706982534SShawn Guo 	"mmcargs=setenv bootargs console=ttymxc0,${baudrate} " \
1080bc32d91SFabio Estevam 		"root=${mmcroot}\0" \
10906982534SShawn Guo 	"loadbootscript=" \
11006982534SShawn Guo 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
11106982534SShawn Guo 	"bootscript=echo Running bootscript from mmc ...; " \
11206982534SShawn Guo 		"source\0" \
11320f233bbSOtavio Salvador 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
11494b5f3edSFabio Estevam 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
11506982534SShawn Guo 	"mmcboot=echo Booting from mmc ...; " \
11606982534SShawn Guo 		"run mmcargs; " \
11794b5f3edSFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
11894b5f3edSFabio Estevam 			"if run loadfdt; then " \
11920f233bbSOtavio Salvador 				"bootz ${loadaddr} - ${fdt_addr}; " \
12094b5f3edSFabio Estevam 			"else " \
12194b5f3edSFabio Estevam 				"if test ${boot_fdt} = try; then " \
12220f233bbSOtavio Salvador 					"bootz; " \
12394b5f3edSFabio Estevam 				"else " \
12494b5f3edSFabio Estevam 					"echo WARN: Cannot load the DT; " \
12594b5f3edSFabio Estevam 				"fi; " \
12694b5f3edSFabio Estevam 			"fi; " \
12794b5f3edSFabio Estevam 		"else " \
12820f233bbSOtavio Salvador 			"bootz; " \
12994b5f3edSFabio Estevam 		"fi;\0" \
13006982534SShawn Guo 	"netargs=setenv bootargs console=ttymxc0,${baudrate} " \
13106982534SShawn Guo 		"root=/dev/nfs " \
132c5fb70c9SStefano Babic 		"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
13306982534SShawn Guo 	"netboot=echo Booting from net ...; " \
13406982534SShawn Guo 		"run netargs; " \
13594b5f3edSFabio Estevam 		"if test ${ip_dyn} = yes; then " \
13694b5f3edSFabio Estevam 			"setenv get_cmd dhcp; " \
13794b5f3edSFabio Estevam 		"else " \
13894b5f3edSFabio Estevam 			"setenv get_cmd tftp; " \
13994b5f3edSFabio Estevam 		"fi; " \
14020f233bbSOtavio Salvador 		"${get_cmd} ${image}; " \
14194b5f3edSFabio Estevam 		"if test ${boot_fdt} = yes ||  test ${boot_fdt} = try; then " \
14294b5f3edSFabio Estevam 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
14320f233bbSOtavio Salvador 				"bootz ${loadaddr} - ${fdt_addr}; " \
14494b5f3edSFabio Estevam 			"else " \
14594b5f3edSFabio Estevam 				"if test ${boot_fdt} = try; then " \
14620f233bbSOtavio Salvador 					"bootz; " \
14794b5f3edSFabio Estevam 				"else " \
14894b5f3edSFabio Estevam 					"echo ERROR: Cannot load the DT; " \
14994b5f3edSFabio Estevam 					"exit; " \
15094b5f3edSFabio Estevam 				"fi; " \
15194b5f3edSFabio Estevam 			"fi; " \
15294b5f3edSFabio Estevam 		"else " \
15320f233bbSOtavio Salvador 			"bootz; " \
15494b5f3edSFabio Estevam 		"fi;\0"
15506982534SShawn Guo 
15606982534SShawn Guo #define CONFIG_BOOTCOMMAND \
15766968110SAndrew Bradford 	"mmc dev ${mmcdev}; if mmc rescan; then " \
15806982534SShawn Guo 		"if run loadbootscript; then " \
15906982534SShawn Guo 			"run bootscript; " \
16006982534SShawn Guo 		"else " \
16120f233bbSOtavio Salvador 			"if run loadimage; then " \
16206982534SShawn Guo 				"run mmcboot; " \
16306982534SShawn Guo 			"else run netboot; " \
16406982534SShawn Guo 			"fi; " \
16506982534SShawn Guo 		"fi; " \
16606982534SShawn Guo 	"else run netboot; fi"
167c5fb70c9SStefano Babic 
168c5fb70c9SStefano Babic #define CONFIG_ARP_TIMEOUT	200UL
169c5fb70c9SStefano Babic 
170c5fb70c9SStefano Babic /*
171c5fb70c9SStefano Babic  * Miscellaneous configurable options
172c5fb70c9SStefano Babic  */
173c5fb70c9SStefano Babic #define CONFIG_SYS_LONGHELP		/* undef to save memory */
174c5fb70c9SStefano Babic #define CONFIG_AUTO_COMPLETE
175c5fb70c9SStefano Babic 
176c5fb70c9SStefano Babic #define CONFIG_SYS_MEMTEST_START       0x90000000
1770bd14deaSFabio Estevam #define CONFIG_SYS_MEMTEST_END         0x90010000
178c5fb70c9SStefano Babic 
179c5fb70c9SStefano Babic #define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
180c5fb70c9SStefano Babic 
181c5fb70c9SStefano Babic #define CONFIG_CMDLINE_EDITING
182c5fb70c9SStefano Babic 
183c5fb70c9SStefano Babic /*-----------------------------------------------------------------------
184c5fb70c9SStefano Babic  * Physical Memory Map
185c5fb70c9SStefano Babic  */
186c5fb70c9SStefano Babic #define CONFIG_NR_DRAM_BANKS	1
187c5fb70c9SStefano Babic #define PHYS_SDRAM_1		CSD0_BASE_ADDR
188c5fb70c9SStefano Babic #define PHYS_SDRAM_1_SIZE	(512 * 1024 * 1024)
189c5fb70c9SStefano Babic 
1901ab027cbSShawn Guo #define CONFIG_SYS_SDRAM_BASE		(PHYS_SDRAM_1)
1911ab027cbSShawn Guo #define CONFIG_SYS_INIT_RAM_ADDR	(IRAM_BASE_ADDR)
1921ab027cbSShawn Guo #define CONFIG_SYS_INIT_RAM_SIZE	(IRAM_SIZE)
1931ab027cbSShawn Guo 
1941ab027cbSShawn Guo #define CONFIG_SYS_INIT_SP_OFFSET \
1951ab027cbSShawn Guo 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
1961ab027cbSShawn Guo #define CONFIG_SYS_INIT_SP_ADDR \
1971ab027cbSShawn Guo 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
1981ab027cbSShawn Guo 
1995e1fe88fSStefano Babic #define CONFIG_SYS_DDR_CLKSEL	0
2005e1fe88fSStefano Babic #define CONFIG_SYS_CLKTL_CBCDR	0x59E35100
20139e85761SBenoît Thébaudeau #define CONFIG_SYS_MAIN_PWR_ON
2025e1fe88fSStefano Babic 
203c5fb70c9SStefano Babic /*-----------------------------------------------------------------------
204*e856bdcfSMasahiro Yamada  * environment organization
205c5fb70c9SStefano Babic  */
206a676cca4SJason Liu #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
207a676cca4SJason Liu #define CONFIG_ENV_SIZE        (8 * 1024)
208a676cca4SJason Liu #define CONFIG_SYS_MMC_ENV_DEV 0
209c5fb70c9SStefano Babic 
210c5fb70c9SStefano Babic #endif
211