xref: /rk3399_rockchip-uboot/include/configs/udoo.h (revision 02824dc78642b3057cc8c1ab7dc32203f55a17fa)
10c5e2667SFabio Estevam /*
20c5e2667SFabio Estevam  * Copyright (C) 2013 Freescale Semiconductor, Inc.
30c5e2667SFabio Estevam  *
40c5e2667SFabio Estevam  * Configuration settings for Udoo board.
50c5e2667SFabio Estevam  *
60c5e2667SFabio Estevam  * SPDX-License-Identifier:	GPL-2.0+
70c5e2667SFabio Estevam  */
80c5e2667SFabio Estevam 
90c5e2667SFabio Estevam #ifndef __CONFIG_H
100c5e2667SFabio Estevam #define __CONFIG_H
110c5e2667SFabio Estevam 
12*02824dc7SEric Nelson #include "mx6_common.h"
130c5e2667SFabio Estevam #include <asm/arch/imx-regs.h>
140c5e2667SFabio Estevam #include <asm/imx-common/gpio.h>
150c5e2667SFabio Estevam #include <asm/sizes.h>
160c5e2667SFabio Estevam 
170c5e2667SFabio Estevam #define CONFIG_MX6
180c5e2667SFabio Estevam #define CONFIG_DISPLAY_CPUINFO
190c5e2667SFabio Estevam #define CONFIG_DISPLAY_BOARDINFO
200c5e2667SFabio Estevam 
210c5e2667SFabio Estevam #define MACH_TYPE_UDOO		4800
220c5e2667SFabio Estevam #define CONFIG_MACH_TYPE	MACH_TYPE_UDOO
230c5e2667SFabio Estevam 
240c5e2667SFabio Estevam #define CONFIG_CMDLINE_TAG
250c5e2667SFabio Estevam #define CONFIG_SETUP_MEMORY_TAGS
260c5e2667SFabio Estevam #define CONFIG_INITRD_TAG
270c5e2667SFabio Estevam #define CONFIG_REVISION_TAG
280c5e2667SFabio Estevam 
290c5e2667SFabio Estevam /* Size of malloc() pool */
300c5e2667SFabio Estevam #define CONFIG_SYS_MALLOC_LEN		(2 * SZ_1M)
310c5e2667SFabio Estevam 
320c5e2667SFabio Estevam #define CONFIG_BOARD_EARLY_INIT_F
330c5e2667SFabio Estevam #define CONFIG_MXC_GPIO
340c5e2667SFabio Estevam 
350c5e2667SFabio Estevam #define CONFIG_MXC_UART
360c5e2667SFabio Estevam #define CONFIG_MXC_UART_BASE		UART2_BASE
370c5e2667SFabio Estevam 
3898d01229SGiuseppe Pagano /* SATA Configs */
3998d01229SGiuseppe Pagano 
4098d01229SGiuseppe Pagano #define CONFIG_CMD_SATA
4198d01229SGiuseppe Pagano #ifdef CONFIG_CMD_SATA
4298d01229SGiuseppe Pagano #define CONFIG_DWC_AHSATA
4398d01229SGiuseppe Pagano #define CONFIG_SYS_SATA_MAX_DEVICE	1
4498d01229SGiuseppe Pagano #define CONFIG_DWC_AHSATA_PORT_ID	0
4598d01229SGiuseppe Pagano #define CONFIG_DWC_AHSATA_BASE_ADDR	SATA_ARB_BASE_ADDR
4698d01229SGiuseppe Pagano #define CONFIG_LBA48
4798d01229SGiuseppe Pagano #define CONFIG_LIBATA
4898d01229SGiuseppe Pagano #endif
4998d01229SGiuseppe Pagano 
50078813d2SGiuseppe Pagano /* Network support */
51078813d2SGiuseppe Pagano 
52078813d2SGiuseppe Pagano #define CONFIG_CMD_PING
53078813d2SGiuseppe Pagano #define CONFIG_CMD_DHCP
54078813d2SGiuseppe Pagano #define CONFIG_CMD_MII
55078813d2SGiuseppe Pagano #define CONFIG_CMD_NET
56078813d2SGiuseppe Pagano #define CONFIG_FEC_MXC
57078813d2SGiuseppe Pagano #define CONFIG_MII
58078813d2SGiuseppe Pagano #define IMX_FEC_BASE                    ENET_BASE_ADDR
59078813d2SGiuseppe Pagano #define CONFIG_FEC_XCV_TYPE             RGMII
60078813d2SGiuseppe Pagano #define CONFIG_ETHPRIME                 "FEC"
61078813d2SGiuseppe Pagano #define CONFIG_FEC_MXC_PHYADDR          6
62078813d2SGiuseppe Pagano #define CONFIG_PHYLIB
63078813d2SGiuseppe Pagano #define CONFIG_PHY_MICREL
64078813d2SGiuseppe Pagano #define CONFIG_PHY_MICREL_KSZ9031
65078813d2SGiuseppe Pagano 
660c5e2667SFabio Estevam /* allow to overwrite serial and ethaddr */
670c5e2667SFabio Estevam #define CONFIG_ENV_OVERWRITE
680c5e2667SFabio Estevam #define CONFIG_CONS_INDEX		1
690c5e2667SFabio Estevam #define CONFIG_BAUDRATE			115200
700c5e2667SFabio Estevam 
710c5e2667SFabio Estevam /* Command definition */
720c5e2667SFabio Estevam #include <config_cmd_default.h>
730c5e2667SFabio Estevam 
740c5e2667SFabio Estevam #undef CONFIG_CMD_IMLS
750c5e2667SFabio Estevam 
760c5e2667SFabio Estevam #define CONFIG_CMD_BMODE
770c5e2667SFabio Estevam #define CONFIG_CMD_SETEXPR
780c5e2667SFabio Estevam 
790c5e2667SFabio Estevam #define CONFIG_BOOTDELAY		3
800c5e2667SFabio Estevam 
810c5e2667SFabio Estevam #define CONFIG_SYS_MEMTEST_START	0x10000000
820c5e2667SFabio Estevam #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_MEMTEST_START + 500 * SZ_1M)
830c5e2667SFabio Estevam #define CONFIG_LOADADDR			0x12000000
840c5e2667SFabio Estevam #define CONFIG_SYS_TEXT_BASE		0x17800000
850c5e2667SFabio Estevam 
860c5e2667SFabio Estevam /* MMC Configuration */
870c5e2667SFabio Estevam #define CONFIG_FSL_ESDHC
880c5e2667SFabio Estevam #define CONFIG_FSL_USDHC
890c5e2667SFabio Estevam #define CONFIG_SYS_FSL_ESDHC_ADDR	0
900c5e2667SFabio Estevam 
910c5e2667SFabio Estevam #define CONFIG_MMC
920c5e2667SFabio Estevam #define CONFIG_CMD_MMC
930c5e2667SFabio Estevam #define CONFIG_GENERIC_MMC
940c5e2667SFabio Estevam #define CONFIG_BOUNCE_BUFFER
950c5e2667SFabio Estevam #define CONFIG_CMD_EXT2
960c5e2667SFabio Estevam #define CONFIG_CMD_FAT
970c5e2667SFabio Estevam #define CONFIG_DOS_PARTITION
980c5e2667SFabio Estevam 
990c5e2667SFabio Estevam #define CONFIG_DEFAULT_FDT_FILE		"imx6q-udoo.dtb"
1000c5e2667SFabio Estevam 
1010c5e2667SFabio Estevam #define CONFIG_EXTRA_ENV_SETTINGS \
1020c5e2667SFabio Estevam 	"script=boot.scr\0" \
1030c5e2667SFabio Estevam 	"uimage=uImage\0" \
1040c5e2667SFabio Estevam 	"console=ttymxc1\0" \
1050c5e2667SFabio Estevam 	"splashpos=m,m\0" \
1060c5e2667SFabio Estevam 	"fdt_high=0xffffffff\0" \
1070c5e2667SFabio Estevam 	"initrd_high=0xffffffff\0" \
1080c5e2667SFabio Estevam 	"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
1090c5e2667SFabio Estevam 	"fdt_addr=0x11000000\0" \
1100c5e2667SFabio Estevam 	"boot_fdt=try\0" \
1110c5e2667SFabio Estevam 	"ip_dyn=yes\0" \
1120c5e2667SFabio Estevam 	"mmcdev=0\0" \
1130c5e2667SFabio Estevam 	"mmcpart=1\0" \
1140c5e2667SFabio Estevam 	"mmcroot=/dev/mmcblk0p2 rootwait rw\0" \
1150c5e2667SFabio Estevam 	"update_sd_firmware_filename=u-boot.imx\0" \
1160c5e2667SFabio Estevam 	"update_sd_firmware=" \
1170c5e2667SFabio Estevam 		"if test ${ip_dyn} = yes; then " \
1180c5e2667SFabio Estevam 			"setenv get_cmd dhcp; " \
1190c5e2667SFabio Estevam 		"else " \
1200c5e2667SFabio Estevam 			"setenv get_cmd tftp; " \
1210c5e2667SFabio Estevam 		"fi; " \
1220c5e2667SFabio Estevam 		"if mmc dev ${mmcdev}; then "	\
1230c5e2667SFabio Estevam 			"if ${get_cmd} ${update_sd_firmware_filename}; then " \
1240c5e2667SFabio Estevam 				"setexpr fw_sz ${filesize} / 0x200; " \
1250c5e2667SFabio Estevam 				"setexpr fw_sz ${fw_sz} + 1; "	\
1260c5e2667SFabio Estevam 				"mmc write ${loadaddr} 0x2 ${fw_sz}; " \
1270c5e2667SFabio Estevam 			"fi; "	\
1280c5e2667SFabio Estevam 		"fi\0" \
1290c5e2667SFabio Estevam 	"mmcargs=setenv bootargs console=${console},${baudrate} " \
1300c5e2667SFabio Estevam 		"root=${mmcroot}\0" \
1310c5e2667SFabio Estevam 	"loadbootscript=" \
1320c5e2667SFabio Estevam 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
1330c5e2667SFabio Estevam 	"bootscript=echo Running bootscript from mmc ...; " \
1340c5e2667SFabio Estevam 		"source\0" \
1350c5e2667SFabio Estevam 	"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
1360c5e2667SFabio Estevam 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
1370c5e2667SFabio Estevam 	"mmcboot=echo Booting from mmc ...; " \
1380c5e2667SFabio Estevam 		"run mmcargs; " \
1390c5e2667SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
1400c5e2667SFabio Estevam 			"if run loadfdt; then " \
1410c5e2667SFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
1420c5e2667SFabio Estevam 			"else " \
1430c5e2667SFabio Estevam 				"if test ${boot_fdt} = try; then " \
1440c5e2667SFabio Estevam 					"bootm; " \
1450c5e2667SFabio Estevam 				"else " \
1460c5e2667SFabio Estevam 					"echo WARN: Cannot load the DT; " \
1470c5e2667SFabio Estevam 				"fi; " \
1480c5e2667SFabio Estevam 			"fi; " \
1490c5e2667SFabio Estevam 		"else " \
1500c5e2667SFabio Estevam 			"bootm; " \
1510c5e2667SFabio Estevam 		"fi;\0" \
1520c5e2667SFabio Estevam 	"netargs=setenv bootargs console=${console},${baudrate} " \
1530c5e2667SFabio Estevam 		"root=/dev/nfs " \
1540c5e2667SFabio Estevam 	"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
1550c5e2667SFabio Estevam 		"netboot=echo Booting from net ...; " \
1560c5e2667SFabio Estevam 		"run netargs; " \
1570c5e2667SFabio Estevam 		"if test ${ip_dyn} = yes; then " \
1580c5e2667SFabio Estevam 			"setenv get_cmd dhcp; " \
1590c5e2667SFabio Estevam 		"else " \
1600c5e2667SFabio Estevam 			"setenv get_cmd tftp; " \
1610c5e2667SFabio Estevam 		"fi; " \
1620c5e2667SFabio Estevam 		"${get_cmd} ${uimage}; " \
1630c5e2667SFabio Estevam 		"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
1640c5e2667SFabio Estevam 			"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
1650c5e2667SFabio Estevam 				"bootm ${loadaddr} - ${fdt_addr}; " \
1660c5e2667SFabio Estevam 			"else " \
1670c5e2667SFabio Estevam 				"if test ${boot_fdt} = try; then " \
1680c5e2667SFabio Estevam 					"bootm; " \
1690c5e2667SFabio Estevam 				"else " \
1700c5e2667SFabio Estevam 					"echo WARN: Cannot load the DT; " \
1710c5e2667SFabio Estevam 				"fi; " \
1720c5e2667SFabio Estevam 			"fi; " \
1730c5e2667SFabio Estevam 		"else " \
1740c5e2667SFabio Estevam 			"bootm; " \
1750c5e2667SFabio Estevam 		"fi;\0"
1760c5e2667SFabio Estevam 
1770c5e2667SFabio Estevam #define CONFIG_BOOTCOMMAND \
1780c5e2667SFabio Estevam 	   "mmc dev ${mmcdev}; if mmc rescan; then " \
1790c5e2667SFabio Estevam 		   "if run loadbootscript; then " \
1800c5e2667SFabio Estevam 			   "run bootscript; " \
1810c5e2667SFabio Estevam 		   "else " \
1820c5e2667SFabio Estevam 			   "if run loaduimage; then " \
1830c5e2667SFabio Estevam 				   "run mmcboot; " \
1840c5e2667SFabio Estevam 			   "else run netboot; " \
1850c5e2667SFabio Estevam 			   "fi; " \
1860c5e2667SFabio Estevam 		   "fi; " \
1870c5e2667SFabio Estevam 	   "else run netboot; fi"
1880c5e2667SFabio Estevam 
1890c5e2667SFabio Estevam /* Miscellaneous configurable options */
1900c5e2667SFabio Estevam #define CONFIG_SYS_LONGHELP
1910c5e2667SFabio Estevam #define CONFIG_SYS_HUSH_PARSER
1920c5e2667SFabio Estevam #define CONFIG_SYS_PROMPT	       "=> "
1930c5e2667SFabio Estevam #define CONFIG_AUTO_COMPLETE
1940c5e2667SFabio Estevam #define CONFIG_SYS_CBSIZE		256
1950c5e2667SFabio Estevam 
1960c5e2667SFabio Estevam /* Print Buffer Size */
1970c5e2667SFabio Estevam #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
1980c5e2667SFabio Estevam #define CONFIG_SYS_MAXARGS	       16
1990c5e2667SFabio Estevam #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE
2000c5e2667SFabio Estevam 
2010c5e2667SFabio Estevam #define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
2020c5e2667SFabio Estevam #define CONFIG_SYS_HZ			1000
2030c5e2667SFabio Estevam 
2040c5e2667SFabio Estevam #define CONFIG_CMDLINE_EDITING
2050c5e2667SFabio Estevam 
2060c5e2667SFabio Estevam /* Physical Memory Map */
2070c5e2667SFabio Estevam #define CONFIG_NR_DRAM_BANKS		1
2080c5e2667SFabio Estevam #define PHYS_SDRAM			MMDC0_ARB_BASE_ADDR
2090c5e2667SFabio Estevam 
2100c5e2667SFabio Estevam #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM
2110c5e2667SFabio Estevam #define CONFIG_SYS_INIT_RAM_ADDR	IRAM_BASE_ADDR
2120c5e2667SFabio Estevam #define CONFIG_SYS_INIT_RAM_SIZE	IRAM_SIZE
2130c5e2667SFabio Estevam 
2140c5e2667SFabio Estevam #define CONFIG_SYS_INIT_SP_OFFSET \
2150c5e2667SFabio Estevam 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
2160c5e2667SFabio Estevam #define CONFIG_SYS_INIT_SP_ADDR \
2170c5e2667SFabio Estevam 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
2180c5e2667SFabio Estevam 
2190c5e2667SFabio Estevam /* FLASH and environment organization */
2200c5e2667SFabio Estevam #define CONFIG_SYS_NO_FLASH
2210c5e2667SFabio Estevam 
2220c5e2667SFabio Estevam #define CONFIG_ENV_SIZE			(8 * 1024)
2230c5e2667SFabio Estevam 
2240c5e2667SFabio Estevam #define CONFIG_ENV_IS_IN_MMC
2250c5e2667SFabio Estevam #define CONFIG_ENV_OFFSET		(6 * 64 * 1024)
2260c5e2667SFabio Estevam #define CONFIG_SYS_MMC_ENV_DEV		0
2270c5e2667SFabio Estevam 
2280c5e2667SFabio Estevam #define CONFIG_OF_LIBFDT
2290c5e2667SFabio Estevam #define CONFIG_CMD_BOOTZ
2300c5e2667SFabio Estevam 
2310c5e2667SFabio Estevam #ifndef CONFIG_SYS_DCACHE_OFF
2320c5e2667SFabio Estevam #define CONFIG_CMD_CACHE
2330c5e2667SFabio Estevam #endif
2340c5e2667SFabio Estevam 
2350c5e2667SFabio Estevam #endif			       /* __CONFIG_H * */
236