xref: /rk3399_rockchip-uboot/include/configs/wandboard.h (revision e2d282a1b468559c5f7e847db75eeca99644148a)
1*e2d282a1SFabio Estevam /*
2*e2d282a1SFabio Estevam  * Copyright (C) 2013 Freescale Semiconductor, Inc.
3*e2d282a1SFabio Estevam  *
4*e2d282a1SFabio Estevam  * Configuration settings for the Wandboard.
5*e2d282a1SFabio Estevam  *
6*e2d282a1SFabio Estevam  * This program is free software; you can redistribute it and/or
7*e2d282a1SFabio Estevam  * modify it under the terms of the GNU General Public License as
8*e2d282a1SFabio Estevam  * published by the Free Software Foundation; either version 2 of
9*e2d282a1SFabio Estevam  * the License, or (at your option) any later version.
10*e2d282a1SFabio Estevam  */
11*e2d282a1SFabio Estevam 
12*e2d282a1SFabio Estevam #ifndef __CONFIG_H
13*e2d282a1SFabio Estevam #define __CONFIG_H
14*e2d282a1SFabio Estevam 
15*e2d282a1SFabio Estevam #include <asm/arch/imx-regs.h>
16*e2d282a1SFabio Estevam #include <asm/imx-common/gpio.h>
17*e2d282a1SFabio Estevam #include <asm/sizes.h>
18*e2d282a1SFabio Estevam 
19*e2d282a1SFabio Estevam #define CONFIG_MX6
20*e2d282a1SFabio Estevam #define CONFIG_DISPLAY_CPUINFO
21*e2d282a1SFabio Estevam #define CONFIG_DISPLAY_BOARDINFO
22*e2d282a1SFabio Estevam 
23*e2d282a1SFabio Estevam #define MACH_TYPE_WANDBOARD		4412
24*e2d282a1SFabio Estevam #define CONFIG_MACH_TYPE		MACH_TYPE_WANDBOARD
25*e2d282a1SFabio Estevam 
26*e2d282a1SFabio Estevam #define CONFIG_CMDLINE_TAG
27*e2d282a1SFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS
28*e2d282a1SFabio Estevam #define CONFIG_INITRD_TAG
29*e2d282a1SFabio Estevam #define CONFIG_REVISION_TAG
30*e2d282a1SFabio Estevam 
31*e2d282a1SFabio Estevam /* Size of malloc() pool */
32*e2d282a1SFabio Estevam #define CONFIG_SYS_MALLOC_LEN		(3 * SZ_1M)
33*e2d282a1SFabio Estevam 
34*e2d282a1SFabio Estevam #define CONFIG_BOARD_EARLY_INIT_F
35*e2d282a1SFabio Estevam #define CONFIG_MXC_GPIO
36*e2d282a1SFabio Estevam 
37*e2d282a1SFabio Estevam #define CONFIG_MXC_UART
38*e2d282a1SFabio Estevam #define CONFIG_MXC_UART_BASE		UART1_BASE
39*e2d282a1SFabio Estevam 
40*e2d282a1SFabio Estevam /* allow to overwrite serial and ethaddr */
41*e2d282a1SFabio Estevam #define CONFIG_ENV_OVERWRITE
42*e2d282a1SFabio Estevam #define CONFIG_CONS_INDEX		1
43*e2d282a1SFabio Estevam #define CONFIG_BAUDRATE			115200
44*e2d282a1SFabio Estevam 
45*e2d282a1SFabio Estevam /* Command definition */
46*e2d282a1SFabio Estevam #include <config_cmd_default.h>
47*e2d282a1SFabio Estevam 
48*e2d282a1SFabio Estevam #undef CONFIG_CMD_IMLS
49*e2d282a1SFabio Estevam 
50*e2d282a1SFabio Estevam #define CONFIG_BOOTDELAY		5
51*e2d282a1SFabio Estevam 
52*e2d282a1SFabio Estevam #define CONFIG_SYS_MEMTEST_START	0x10000000
53*e2d282a1SFabio Estevam #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + 500 * SZ_1M)
54*e2d282a1SFabio Estevam #define CONFIG_LOADADDR			0x12000000
55*e2d282a1SFabio Estevam #define CONFIG_SYS_TEXT_BASE		0x17800000
56*e2d282a1SFabio Estevam 
57*e2d282a1SFabio Estevam /* MMC Configuration */
58*e2d282a1SFabio Estevam #define CONFIG_FSL_ESDHC
59*e2d282a1SFabio Estevam #define CONFIG_FSL_USDHC
60*e2d282a1SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR	0
61*e2d282a1SFabio Estevam #define CONFIG_SYS_FSL_USDHC_NUM	2
62*e2d282a1SFabio Estevam 
63*e2d282a1SFabio Estevam #define CONFIG_MMC
64*e2d282a1SFabio Estevam #define CONFIG_CMD_MMC
65*e2d282a1SFabio Estevam #define CONFIG_GENERIC_MMC
66*e2d282a1SFabio Estevam #define CONFIG_BOUNCE_BUFFER
67*e2d282a1SFabio Estevam #define CONFIG_CMD_EXT2
68*e2d282a1SFabio Estevam #define CONFIG_CMD_FAT
69*e2d282a1SFabio Estevam #define CONFIG_DOS_PARTITION
70*e2d282a1SFabio Estevam 
71*e2d282a1SFabio Estevam /* Ethernet Configuration */
72*e2d282a1SFabio Estevam #define CONFIG_CMD_PING
73*e2d282a1SFabio Estevam #define CONFIG_CMD_DHCP
74*e2d282a1SFabio Estevam #define CONFIG_CMD_MII
75*e2d282a1SFabio Estevam #define CONFIG_CMD_NET
76*e2d282a1SFabio Estevam #define CONFIG_FEC_MXC
77*e2d282a1SFabio Estevam #define CONFIG_MII
78*e2d282a1SFabio Estevam #define IMX_FEC_BASE			ENET_BASE_ADDR
79*e2d282a1SFabio Estevam #define CONFIG_FEC_XCV_TYPE		RGMII
80*e2d282a1SFabio Estevam #define CONFIG_ETHPRIME			"FEC"
81*e2d282a1SFabio Estevam #define CONFIG_FEC_MXC_PHYADDR		1
82*e2d282a1SFabio Estevam #define CONFIG_PHYLIB
83*e2d282a1SFabio Estevam #define CONFIG_PHY_ATHEROS
84*e2d282a1SFabio Estevam 
85*e2d282a1SFabio Estevam #if defined(CONFIG_MX6DL)
86*e2d282a1SFabio Estevam #define CONFIG_DEFAULT_FDT_FILE		"imx6dl-wandboard.dtb"
87*e2d282a1SFabio Estevam #elif defined(CONFIG_MX6S)
88*e2d282a1SFabio Estevam #define CONFIG_DEFAULT_FDT_FILE		"imx6s-wandboard.dtb"
89*e2d282a1SFabio Estevam #endif
90*e2d282a1SFabio Estevam 
91*e2d282a1SFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \
92*e2d282a1SFabio Estevam 	"script=boot.scr\0" \
93*e2d282a1SFabio Estevam 	"uimage=uImage\0" \
94*e2d282a1SFabio Estevam 	"console=ttymxc0\0" \
95*e2d282a1SFabio Estevam 	"fdt_high=0xffffffff\0" \
96*e2d282a1SFabio Estevam 	"initrd_high=0xffffffff\0" \
97*e2d282a1SFabio Estevam 	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
98*e2d282a1SFabio Estevam 	"fdt_addr=0x11000000\0" \
99*e2d282a1SFabio Estevam 	"boot_fdt=try\0" \
100*e2d282a1SFabio Estevam 	"ip_dyn=yes\0" \
101*e2d282a1SFabio Estevam 	"mmcdev=0\0" \
102*e2d282a1SFabio Estevam 	"mmcpart=2\0" \
103*e2d282a1SFabio Estevam 	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
104*e2d282a1SFabio Estevam 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
105*e2d282a1SFabio Estevam 		"root=${mmcroot}\0" \
106*e2d282a1SFabio Estevam 	"loadbootscript=" \
107*e2d282a1SFabio Estevam 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
108*e2d282a1SFabio Estevam 	"bootscript=echo Running bootscript from mmc ...; " \
109*e2d282a1SFabio Estevam 		"source\0" \
110*e2d282a1SFabio Estevam 	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
111*e2d282a1SFabio Estevam 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
112*e2d282a1SFabio Estevam 	"mmcboot=echo Booting from mmc ...; " \
113*e2d282a1SFabio Estevam 		"run mmcargs; " \
114*e2d282a1SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
115*e2d282a1SFabio Estevam 			"if run loadfdt; then " \
116*e2d282a1SFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
117*e2d282a1SFabio Estevam 			"else " \
118*e2d282a1SFabio Estevam 				"if test ${boot_fdt} = try; then " \
119*e2d282a1SFabio Estevam 					"bootm; " \
120*e2d282a1SFabio Estevam 				"else " \
121*e2d282a1SFabio Estevam 					"echo WARN: Cannot load the DT; " \
122*e2d282a1SFabio Estevam 				"fi; " \
123*e2d282a1SFabio Estevam 			"fi; " \
124*e2d282a1SFabio Estevam 		"else " \
125*e2d282a1SFabio Estevam 			"bootm; " \
126*e2d282a1SFabio Estevam 		"fi;\0" \
127*e2d282a1SFabio Estevam 	"netargs=setenv bootargs console=${console},${baudrate} " \
128*e2d282a1SFabio Estevam 		"root=/dev/nfs " \
129*e2d282a1SFabio Estevam 	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
130*e2d282a1SFabio Estevam 		"netboot=echo Booting from net ...; " \
131*e2d282a1SFabio Estevam 		"run netargs; " \
132*e2d282a1SFabio Estevam 		"if test ${ip_dyn} = yes; then " \
133*e2d282a1SFabio Estevam 			"setenv get_cmd dhcp; " \
134*e2d282a1SFabio Estevam 		"else " \
135*e2d282a1SFabio Estevam 			"setenv get_cmd tftp; " \
136*e2d282a1SFabio Estevam 		"fi; " \
137*e2d282a1SFabio Estevam 		"${get_cmd} ${uimage}; " \
138*e2d282a1SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
139*e2d282a1SFabio Estevam 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
140*e2d282a1SFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
141*e2d282a1SFabio Estevam 			"else " \
142*e2d282a1SFabio Estevam 				"if test ${boot_fdt} = try; then " \
143*e2d282a1SFabio Estevam 					"bootm; " \
144*e2d282a1SFabio Estevam 				"else " \
145*e2d282a1SFabio Estevam 					"echo WARN: Cannot load the DT; " \
146*e2d282a1SFabio Estevam 				"fi; " \
147*e2d282a1SFabio Estevam 			"fi; " \
148*e2d282a1SFabio Estevam 		"else " \
149*e2d282a1SFabio Estevam 			"bootm; " \
150*e2d282a1SFabio Estevam 		"fi;\0"
151*e2d282a1SFabio Estevam 
152*e2d282a1SFabio Estevam #define CONFIG_BOOTCOMMAND \
153*e2d282a1SFabio Estevam 	   "mmc dev ${mmcdev};" \
154*e2d282a1SFabio Estevam 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
155*e2d282a1SFabio Estevam 		   "if run loadbootscript; then " \
156*e2d282a1SFabio Estevam 			   "run bootscript; " \
157*e2d282a1SFabio Estevam 		   "else " \
158*e2d282a1SFabio Estevam 			   "if run loaduimage; then " \
159*e2d282a1SFabio Estevam 				   "run mmcboot; " \
160*e2d282a1SFabio Estevam 			   "else run netboot; " \
161*e2d282a1SFabio Estevam 			   "fi; " \
162*e2d282a1SFabio Estevam 		   "fi; " \
163*e2d282a1SFabio Estevam 	   "else run netboot; fi"
164*e2d282a1SFabio Estevam 
165*e2d282a1SFabio Estevam /* Miscellaneous configurable options */
166*e2d282a1SFabio Estevam #define CONFIG_SYS_LONGHELP
167*e2d282a1SFabio Estevam #define CONFIG_SYS_HUSH_PARSER
168*e2d282a1SFabio Estevam #define CONFIG_SYS_PROMPT	       "=> "
169*e2d282a1SFabio Estevam #define CONFIG_AUTO_COMPLETE
170*e2d282a1SFabio Estevam #define CONFIG_SYS_CBSIZE		256
171*e2d282a1SFabio Estevam 
172*e2d282a1SFabio Estevam /* Print Buffer Size */
173*e2d282a1SFabio Estevam #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
174*e2d282a1SFabio Estevam #define CONFIG_SYS_MAXARGS	       16
175*e2d282a1SFabio Estevam #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
176*e2d282a1SFabio Estevam 
177*e2d282a1SFabio Estevam #define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
178*e2d282a1SFabio Estevam #define CONFIG_SYS_HZ			1000
179*e2d282a1SFabio Estevam 
180*e2d282a1SFabio Estevam #define CONFIG_CMDLINE_EDITING
181*e2d282a1SFabio Estevam 
182*e2d282a1SFabio Estevam /* Physical Memory Map */
183*e2d282a1SFabio Estevam #define CONFIG_NR_DRAM_BANKS		1
184*e2d282a1SFabio Estevam #define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR
185*e2d282a1SFabio Estevam 
186*e2d282a1SFabio Estevam #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
187*e2d282a1SFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
188*e2d282a1SFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
189*e2d282a1SFabio Estevam 
190*e2d282a1SFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \
191*e2d282a1SFabio Estevam 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
192*e2d282a1SFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \
193*e2d282a1SFabio Estevam 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
194*e2d282a1SFabio Estevam 
195*e2d282a1SFabio Estevam /* FLASH and environment organization */
196*e2d282a1SFabio Estevam #define CONFIG_SYS_NO_FLASH
197*e2d282a1SFabio Estevam 
198*e2d282a1SFabio Estevam #define CONFIG_ENV_SIZE			(8 * 1024)
199*e2d282a1SFabio Estevam 
200*e2d282a1SFabio Estevam #define CONFIG_ENV_IS_IN_MMC
201*e2d282a1SFabio Estevam #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
202*e2d282a1SFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV		0
203*e2d282a1SFabio Estevam 
204*e2d282a1SFabio Estevam #define CONFIG_OF_LIBFDT
205*e2d282a1SFabio Estevam #define CONFIG_CMD_BOOTZ
206*e2d282a1SFabio Estevam 
207*e2d282a1SFabio Estevam #ifndef CONFIG_SYS_DCACHE_OFF
208*e2d282a1SFabio Estevam #define CONFIG_CMD_CACHE
209*e2d282a1SFabio Estevam #endif
210*e2d282a1SFabio Estevam 
211*e2d282a1SFabio Estevam #endif			       /* __CONFIG_H * */
212