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