xref: /rk3399_rockchip-uboot/include/configs/devkit3250.h (revision a1f9e12a3dfe44f6b1a83898aa506ec4977bdd14)
1463ec1caSVladimir Zapolskiy /*
2463ec1caSVladimir Zapolskiy  * Embest/Timll DevKit3250 board configuration file
3463ec1caSVladimir Zapolskiy  *
4768ddeeeSVladimir Zapolskiy  * Copyright (C) 2011-2015 Vladimir Zapolskiy <vz@mleia.com>
5463ec1caSVladimir Zapolskiy  *
61a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
7463ec1caSVladimir Zapolskiy  */
8463ec1caSVladimir Zapolskiy 
9463ec1caSVladimir Zapolskiy #ifndef __CONFIG_DEVKIT3250_H__
10463ec1caSVladimir Zapolskiy #define __CONFIG_DEVKIT3250_H__
11463ec1caSVladimir Zapolskiy 
12463ec1caSVladimir Zapolskiy /* SoC and board defines */
131ace4022SAlexey Brodkin #include <linux/sizes.h>
14463ec1caSVladimir Zapolskiy #include <asm/arch/cpu.h>
15463ec1caSVladimir Zapolskiy 
16463ec1caSVladimir Zapolskiy #define CONFIG_MACH_TYPE		MACH_TYPE_DEVKIT3250
17463ec1caSVladimir Zapolskiy 
18463ec1caSVladimir Zapolskiy #define CONFIG_SYS_ICACHE_OFF
19463ec1caSVladimir Zapolskiy #define CONFIG_SYS_DCACHE_OFF
20e9b3ce3fSVladimir Zapolskiy #if !defined(CONFIG_SPL_BUILD)
21463ec1caSVladimir Zapolskiy #define CONFIG_SKIP_LOWLEVEL_INIT
22e9b3ce3fSVladimir Zapolskiy #endif
23463ec1caSVladimir Zapolskiy 
24463ec1caSVladimir Zapolskiy /*
25463ec1caSVladimir Zapolskiy  * Memory configurations
26463ec1caSVladimir Zapolskiy  */
27463ec1caSVladimir Zapolskiy #define CONFIG_NR_DRAM_BANKS		1
28463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MALLOC_LEN		SZ_1M
29463ec1caSVladimir Zapolskiy #define CONFIG_SYS_SDRAM_BASE		EMC_DYCS0_BASE
30463ec1caSVladimir Zapolskiy #define CONFIG_SYS_SDRAM_SIZE		SZ_64M
31*6cbaf4c1SVladimir Zapolskiy #define CONFIG_SYS_TEXT_BASE		0x83F00000
32463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MEMTEST_START	(CONFIG_SYS_SDRAM_BASE + SZ_32K)
33463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_TEXT_BASE - SZ_1M)
34463ec1caSVladimir Zapolskiy 
35463ec1caSVladimir Zapolskiy #define CONFIG_SYS_LOAD_ADDR		(CONFIG_SYS_SDRAM_BASE + SZ_32K)
36463ec1caSVladimir Zapolskiy 
37463ec1caSVladimir Zapolskiy #define CONFIG_SYS_INIT_SP_ADDR		(CONFIG_SYS_SDRAM_BASE + SZ_4K \
38463ec1caSVladimir Zapolskiy 					 - GENERATED_GBL_DATA_SIZE)
39463ec1caSVladimir Zapolskiy 
40463ec1caSVladimir Zapolskiy /*
41463ec1caSVladimir Zapolskiy  * Serial Driver
42463ec1caSVladimir Zapolskiy  */
43768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_LPC32XX_UART		5   /* UART5 */
44463ec1caSVladimir Zapolskiy 
45463ec1caSVladimir Zapolskiy /*
46*6cbaf4c1SVladimir Zapolskiy  * DMA
47*6cbaf4c1SVladimir Zapolskiy  */
48*6cbaf4c1SVladimir Zapolskiy #if !defined(CONFIG_SPL_BUILD)
49*6cbaf4c1SVladimir Zapolskiy #define CONFIG_DMA_LPC32XX
50*6cbaf4c1SVladimir Zapolskiy #endif
51*6cbaf4c1SVladimir Zapolskiy 
52*6cbaf4c1SVladimir Zapolskiy /*
53768ddeeeSVladimir Zapolskiy  * I2C
54768ddeeeSVladimir Zapolskiy  */
55768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C
56768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C_LPC32XX
57768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_I2C_SPEED		100000
58768ddeeeSVladimir Zapolskiy 
59768ddeeeSVladimir Zapolskiy /*
60768ddeeeSVladimir Zapolskiy  * GPIO
61768ddeeeSVladimir Zapolskiy  */
62768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_GPIO
63768ddeeeSVladimir Zapolskiy 
64768ddeeeSVladimir Zapolskiy /*
65768ddeeeSVladimir Zapolskiy  * SSP/SPI
66768ddeeeSVladimir Zapolskiy  */
67768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_SSP_TIMEOUT	100000
68768ddeeeSVladimir Zapolskiy 
69768ddeeeSVladimir Zapolskiy /*
70768ddeeeSVladimir Zapolskiy  * Ethernet
71768ddeeeSVladimir Zapolskiy  */
72768ddeeeSVladimir Zapolskiy #define CONFIG_RMII
73768ddeeeSVladimir Zapolskiy #define CONFIG_PHY_SMSC
74768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_ETH
75768ddeeeSVladimir Zapolskiy #define CONFIG_PHY_ADDR			0x1F
76768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_FAULT_ECHO_LINK_DOWN
77768ddeeeSVladimir Zapolskiy 
78768ddeeeSVladimir Zapolskiy /*
79463ec1caSVladimir Zapolskiy  * NOR Flash
80463ec1caSVladimir Zapolskiy  */
81463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MAX_FLASH_BANKS	1
82463ec1caSVladimir Zapolskiy #define CONFIG_SYS_MAX_FLASH_SECT	71
83463ec1caSVladimir Zapolskiy #define CONFIG_SYS_FLASH_BASE		EMC_CS0_BASE
84463ec1caSVladimir Zapolskiy #define CONFIG_SYS_FLASH_SIZE		SZ_4M
85463ec1caSVladimir Zapolskiy #define CONFIG_SYS_FLASH_CFI
86463ec1caSVladimir Zapolskiy 
87463ec1caSVladimir Zapolskiy /*
88768ddeeeSVladimir Zapolskiy  * NAND controller
89768ddeeeSVladimir Zapolskiy  */
90768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_BASE		SLC_NAND_BASE
91768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_MAX_NAND_DEVICE	1
92768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_BASE_LIST	{ CONFIG_SYS_NAND_BASE }
93768ddeeeSVladimir Zapolskiy 
94768ddeeeSVladimir Zapolskiy /*
95768ddeeeSVladimir Zapolskiy  * NAND chip timings
96768ddeeeSVladimir Zapolskiy  */
97768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WDR_CLKS	14
98768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WWIDTH		66666666
99768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WHOLD		200000000
100768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_WSETUP		50000000
101768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RDR_CLKS	14
102768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RWIDTH		66666666
103768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RHOLD		200000000
104768ddeeeSVladimir Zapolskiy #define CONFIG_LPC32XX_NAND_SLC_RSETUP		50000000
105768ddeeeSVladimir Zapolskiy 
106327f0d23SVladimir Zapolskiy #define CONFIG_SYS_NAND_BLOCK_SIZE		0x20000
107327f0d23SVladimir Zapolskiy #define CONFIG_SYS_NAND_PAGE_SIZE		NAND_LARGE_BLOCK_PAGE_SIZE
108768ddeeeSVladimir Zapolskiy #define CONFIG_SYS_NAND_USE_FLASH_BBT
109327f0d23SVladimir Zapolskiy 
110768ddeeeSVladimir Zapolskiy /*
111*6cbaf4c1SVladimir Zapolskiy  * USB
112*6cbaf4c1SVladimir Zapolskiy  */
113*6cbaf4c1SVladimir Zapolskiy #define CONFIG_USB_OHCI_LPC32XX
114*6cbaf4c1SVladimir Zapolskiy #define CONFIG_USB_ISP1301_I2C_ADDR		0x2d
115*6cbaf4c1SVladimir Zapolskiy 
116*6cbaf4c1SVladimir Zapolskiy /*
117463ec1caSVladimir Zapolskiy  * U-Boot General Configurations
118463ec1caSVladimir Zapolskiy  */
119463ec1caSVladimir Zapolskiy #define CONFIG_SYS_LONGHELP
120463ec1caSVladimir Zapolskiy #define CONFIG_SYS_CBSIZE		1024
121463ec1caSVladimir Zapolskiy #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
122463ec1caSVladimir Zapolskiy 
123463ec1caSVladimir Zapolskiy #define CONFIG_AUTO_COMPLETE
124463ec1caSVladimir Zapolskiy #define CONFIG_CMDLINE_EDITING
125463ec1caSVladimir Zapolskiy 
126768ddeeeSVladimir Zapolskiy /*
127768ddeeeSVladimir Zapolskiy  * Pass open firmware flat tree
128768ddeeeSVladimir Zapolskiy  */
129768ddeeeSVladimir Zapolskiy 
130768ddeeeSVladimir Zapolskiy /*
131768ddeeeSVladimir Zapolskiy  * Environment
132768ddeeeSVladimir Zapolskiy  */
133463ec1caSVladimir Zapolskiy #define CONFIG_ENV_SIZE			SZ_128K
134768ddeeeSVladimir Zapolskiy #define CONFIG_ENV_OFFSET		0x000A0000
135768ddeeeSVladimir Zapolskiy 
136768ddeeeSVladimir Zapolskiy #define CONFIG_BOOTCOMMAND			\
137768ddeeeSVladimir Zapolskiy 	"dhcp; "				\
138768ddeeeSVladimir Zapolskiy 	"tftp ${loadaddr} ${serverip}:${tftpdir}/${bootfile}; "		\
139768ddeeeSVladimir Zapolskiy 	"tftp ${dtbaddr} ${serverip}:${tftpdir}/devkit3250.dtb; "	\
140768ddeeeSVladimir Zapolskiy 	"setenv nfsargs ip=dhcp root=/dev/nfs nfsroot=${serverip}:${nfsroot},tcp; "	\
141768ddeeeSVladimir Zapolskiy 	"setenv bootargs ${bootargs} ${nfsargs} ${userargs}; "			\
142768ddeeeSVladimir Zapolskiy 	"bootm ${loadaddr} - ${dtbaddr}"
143768ddeeeSVladimir Zapolskiy 
144768ddeeeSVladimir Zapolskiy #define CONFIG_EXTRA_ENV_SETTINGS		\
145768ddeeeSVladimir Zapolskiy 	"autoload=no\0"				\
146768ddeeeSVladimir Zapolskiy 	"ethaddr=00:01:90:00:C0:81\0"		\
147768ddeeeSVladimir Zapolskiy 	"dtbaddr=0x81000000\0"			\
148768ddeeeSVladimir Zapolskiy 	"nfsroot=/opt/projects/images/vladimir/oe/devkit3250/rootfs\0"	\
149768ddeeeSVladimir Zapolskiy 	"tftpdir=vladimir/oe/devkit3250\0"	\
150768ddeeeSVladimir Zapolskiy 	"userargs=oops=panic\0"
151463ec1caSVladimir Zapolskiy 
152463ec1caSVladimir Zapolskiy /*
153463ec1caSVladimir Zapolskiy  * U-Boot Commands
154463ec1caSVladimir Zapolskiy  */
155463ec1caSVladimir Zapolskiy 
156463ec1caSVladimir Zapolskiy /*
157463ec1caSVladimir Zapolskiy  * Boot Linux
158463ec1caSVladimir Zapolskiy  */
159463ec1caSVladimir Zapolskiy #define CONFIG_CMDLINE_TAG
160463ec1caSVladimir Zapolskiy #define CONFIG_SETUP_MEMORY_TAGS
161463ec1caSVladimir Zapolskiy 
162463ec1caSVladimir Zapolskiy #define CONFIG_BOOTFILE			"uImage"
163463ec1caSVladimir Zapolskiy #define CONFIG_LOADADDR			0x80008000
164463ec1caSVladimir Zapolskiy 
165463ec1caSVladimir Zapolskiy /*
166e9b3ce3fSVladimir Zapolskiy  * SPL specific defines
167e9b3ce3fSVladimir Zapolskiy  */
168e9b3ce3fSVladimir Zapolskiy /* SPL will be executed at offset 0 */
169e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_TEXT_BASE		0x00000000
170e9b3ce3fSVladimir Zapolskiy 
171e9b3ce3fSVladimir Zapolskiy /* SPL will use SRAM as stack */
172e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_STACK		0x0000FFF8
173e9b3ce3fSVladimir Zapolskiy 
174e9b3ce3fSVladimir Zapolskiy /* Use the framework and generic lib */
175e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_FRAMEWORK
176e9b3ce3fSVladimir Zapolskiy 
177e9b3ce3fSVladimir Zapolskiy /* SPL will use serial */
178e9b3ce3fSVladimir Zapolskiy 
179e9b3ce3fSVladimir Zapolskiy /* SPL loads an image from NAND */
180e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_RAW_ONLY
181e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_DRIVERS
182e9b3ce3fSVladimir Zapolskiy 
183e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_ECC
184e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_NAND_SOFTECC
185e9b3ce3fSVladimir Zapolskiy 
186e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_MAX_SIZE		0x20000
187e9b3ce3fSVladimir Zapolskiy #define CONFIG_SPL_PAD_TO		CONFIG_SPL_MAX_SIZE
188e9b3ce3fSVladimir Zapolskiy 
189e9b3ce3fSVladimir Zapolskiy /* U-Boot will be 0x60000 bytes, loaded and run at CONFIG_SYS_TEXT_BASE */
190e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x40000
191e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x60000
192e9b3ce3fSVladimir Zapolskiy 
193e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_START	CONFIG_SYS_TEXT_BASE
194e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_NAND_U_BOOT_DST	CONFIG_SYS_TEXT_BASE
195e9b3ce3fSVladimir Zapolskiy 
196e9b3ce3fSVladimir Zapolskiy /* See common/spl/spl.c  spl_set_header_raw_uboot() */
197e9b3ce3fSVladimir Zapolskiy #define CONFIG_SYS_MONITOR_LEN		CONFIG_SYS_NAND_U_BOOT_SIZE
198e9b3ce3fSVladimir Zapolskiy 
199e9b3ce3fSVladimir Zapolskiy /*
200463ec1caSVladimir Zapolskiy  * Include SoC specific configuration
201463ec1caSVladimir Zapolskiy  */
202463ec1caSVladimir Zapolskiy #include <asm/arch/config.h>
203463ec1caSVladimir Zapolskiy 
204463ec1caSVladimir Zapolskiy #endif  /* __CONFIG_DEVKIT3250_H__*/
205