xref: /rk3399_rockchip-uboot/include/configs/ts4600.h (revision e856bdcfb49291d30b19603fc101bea096c48196)
1*d9e268edSSebastien Bourdelin /*
2*d9e268edSSebastien Bourdelin  * (C) Copyright 2016 Savoir-faire Linux Inc.
3*d9e268edSSebastien Bourdelin  *
4*d9e268edSSebastien Bourdelin  * Author: Sebastien Bourdelin <sebastien.bourdelin@savoirfairelinux.com>
5*d9e268edSSebastien Bourdelin  *
6*d9e268edSSebastien Bourdelin  * Derived from MX28EVK code by
7*d9e268edSSebastien Bourdelin  *   Fabio Estevam <fabio.estevam@freescale.com>
8*d9e268edSSebastien Bourdelin  *   Freescale Semiconductor, Inc.
9*d9e268edSSebastien Bourdelin  *
10*d9e268edSSebastien Bourdelin  * Configuration settings for the TS4600 Board
11*d9e268edSSebastien Bourdelin  *
12*d9e268edSSebastien Bourdelin  * SPDX-License-Identifier:	GPL-2.0+
13*d9e268edSSebastien Bourdelin  */
14*d9e268edSSebastien Bourdelin #ifndef __CONFIGS_TS4600_H__
15*d9e268edSSebastien Bourdelin #define __CONFIGS_TS4600_H__
16*d9e268edSSebastien Bourdelin 
17*d9e268edSSebastien Bourdelin /* System configurations */
18*d9e268edSSebastien Bourdelin #define CONFIG_MX28				/* i.MX28 SoC */
19*d9e268edSSebastien Bourdelin 
20*d9e268edSSebastien Bourdelin /* U-Boot Commands */
21*d9e268edSSebastien Bourdelin 
22*d9e268edSSebastien Bourdelin /* Memory configuration */
23*d9e268edSSebastien Bourdelin #define CONFIG_NR_DRAM_BANKS		1		/* 1 bank of DRAM */
24*d9e268edSSebastien Bourdelin #define PHYS_SDRAM_1			0x40000000	/* Base address */
25*d9e268edSSebastien Bourdelin #define PHYS_SDRAM_1_SIZE		0x40000000	/* Max 1 GB RAM */
26*d9e268edSSebastien Bourdelin #define CONFIG_SYS_SDRAM_BASE		PHYS_SDRAM_1
27*d9e268edSSebastien Bourdelin 
28*d9e268edSSebastien Bourdelin /* Environment */
29*d9e268edSSebastien Bourdelin #define CONFIG_ENV_SIZE			(8 * 1024)
30*d9e268edSSebastien Bourdelin 
31*d9e268edSSebastien Bourdelin /* Environment is in MMC */
32*d9e268edSSebastien Bourdelin #if defined(CONFIG_CMD_MMC) && defined(CONFIG_ENV_IS_IN_MMC)
33*d9e268edSSebastien Bourdelin #define CONFIG_ENV_OFFSET		(256 * 1024)
34*d9e268edSSebastien Bourdelin #define CONFIG_SYS_MMC_ENV_DEV		0
35*d9e268edSSebastien Bourdelin #endif
36*d9e268edSSebastien Bourdelin 
37*d9e268edSSebastien Bourdelin /* Boot Linux */
38*d9e268edSSebastien Bourdelin #define CONFIG_LOADADDR		0x42000000
39*d9e268edSSebastien Bourdelin #define CONFIG_SYS_LOAD_ADDR	CONFIG_LOADADDR
40*d9e268edSSebastien Bourdelin 
41*d9e268edSSebastien Bourdelin /* Extra Environment */
42*d9e268edSSebastien Bourdelin #define CONFIG_EXTRA_ENV_SETTINGS \
43*d9e268edSSebastien Bourdelin 	"fdt_addr=0x41000000\0" \
44*d9e268edSSebastien Bourdelin 	"loadkernel=load mmc ${mmcdev}:${mmcpart} ${loadaddr} zImage\0" \
45*d9e268edSSebastien Bourdelin 	"loadfdt=load mmc ${mmcdev}:${mmcpart} ${fdt_addr} imx28-ts4600.dtb\0" \
46*d9e268edSSebastien Bourdelin 	"loadbootscript=load mmc ${mmcdev}:${mmcpart} ${loadaddr} boot.ub\0" \
47*d9e268edSSebastien Bourdelin 	"bootscript=echo Running bootscript from mmc...; " \
48*d9e268edSSebastien Bourdelin 		"setenv mmcdev 0; " \
49*d9e268edSSebastien Bourdelin 		"setenv mmcpart 2; " \
50*d9e268edSSebastien Bourdelin 		"run loadbootscript && source ${loadaddr}; \0" \
51*d9e268edSSebastien Bourdelin 	"sdboot=echo Booting from SD card ...; " \
52*d9e268edSSebastien Bourdelin 		"setenv mmcdev 0; " \
53*d9e268edSSebastien Bourdelin 		"setenv mmcpart 2; " \
54*d9e268edSSebastien Bourdelin 		"setenv root /dev/mmcblk0p3; " \
55*d9e268edSSebastien Bourdelin 		"run loadkernel && run loadfdt; \0" \
56*d9e268edSSebastien Bourdelin 	"startbootsequence=run bootscript || run sdboot \0" \
57*d9e268edSSebastien Bourdelin 
58*d9e268edSSebastien Bourdelin #define CONFIG_BOOTCOMMAND \
59*d9e268edSSebastien Bourdelin 	"mmc rescan; " \
60*d9e268edSSebastien Bourdelin 	"run startbootsequence; " \
61*d9e268edSSebastien Bourdelin 	"setenv cmdline_append console=ttyAMA0,115200; " \
62*d9e268edSSebastien Bourdelin 	"setenv bootargs root=${root} rootwait rw ${cmdline_append}; " \
63*d9e268edSSebastien Bourdelin 	"bootz ${loadaddr} - ${fdt_addr}; "
64*d9e268edSSebastien Bourdelin 
65*d9e268edSSebastien Bourdelin /* The rest of the configuration is shared */
66*d9e268edSSebastien Bourdelin #include <configs/mxs.h>
67*d9e268edSSebastien Bourdelin 
68*d9e268edSSebastien Bourdelin #endif /* __CONFIGS_TS4600_H__ */
69