xref: /openbmc/u-boot/include/configs/ts4800.h (revision 9450ab2ba8d720bd9f73bccc0af2e2b5a2c2aaf1)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
29ee16897SLucile Quirion /*
39ee16897SLucile Quirion  * Copyright (C) 2015, Savoir-faire Linux Inc.
49ee16897SLucile Quirion  *
59ee16897SLucile Quirion  * Derived from MX51EVK code by
69ee16897SLucile Quirion  *   Guennadi Liakhovetski <lg@denx.de>
79ee16897SLucile Quirion  *   Freescale Semiconductor, Inc.
89ee16897SLucile Quirion  *
99ee16897SLucile Quirion  * Configuration settings for the TS4800 Board
109ee16897SLucile Quirion  */
119ee16897SLucile Quirion 
129ee16897SLucile Quirion #ifndef __CONFIG_H
139ee16897SLucile Quirion #define __CONFIG_H
149ee16897SLucile Quirion 
159ee16897SLucile Quirion /* High Level Configuration Options */
169ee16897SLucile Quirion 
17a187559eSBin Meng #define CONFIG_SKIP_LOWLEVEL_INIT	/* U-Boot is a 2nd stage bootloader */
189ee16897SLucile Quirion 
199ee16897SLucile Quirion #define CONFIG_HW_WATCHDOG
209ee16897SLucile Quirion 
2194ba26f2STom Rini #define CONFIG_MACH_TYPE	MACH_TYPE_TS48XX
2294ba26f2STom Rini 
239ee16897SLucile Quirion /* text base address used when linking */
249ee16897SLucile Quirion 
259ee16897SLucile Quirion #include <asm/arch/imx-regs.h>
269ee16897SLucile Quirion 
279ee16897SLucile Quirion /* enable passing of ATAGs */
289ee16897SLucile Quirion #define CONFIG_CMDLINE_TAG
299ee16897SLucile Quirion #define CONFIG_SETUP_MEMORY_TAGS
309ee16897SLucile Quirion #define CONFIG_INITRD_TAG
319ee16897SLucile Quirion #define CONFIG_REVISION_TAG
329ee16897SLucile Quirion 
339ee16897SLucile Quirion /*
349ee16897SLucile Quirion  * Size of malloc() pool
359ee16897SLucile Quirion  */
369ee16897SLucile Quirion #define CONFIG_SYS_MALLOC_LEN		(10 * 1024 * 1024)
379ee16897SLucile Quirion 
389ee16897SLucile Quirion /*
399ee16897SLucile Quirion  * Hardware drivers
409ee16897SLucile Quirion  */
419ee16897SLucile Quirion 
429ee16897SLucile Quirion #define CONFIG_MXC_UART
439ee16897SLucile Quirion #define CONFIG_MXC_UART_BASE	UART1_BASE
449ee16897SLucile Quirion 
459ee16897SLucile Quirion /*
469ee16897SLucile Quirion  * MMC Configs
479ee16897SLucile Quirion  * */
489ee16897SLucile Quirion #define CONFIG_SYS_FSL_ESDHC_ADDR	MMC_SDHC1_BASE_ADDR
499ee16897SLucile Quirion 
50f3488bb3SDamien Riegel /*
51f3488bb3SDamien Riegel  * Eth Configs
52f3488bb3SDamien Riegel  */
53f3488bb3SDamien Riegel #define CONFIG_PHY_SMSC
54f3488bb3SDamien Riegel 
55f3488bb3SDamien Riegel #define CONFIG_FEC_MXC
56f3488bb3SDamien Riegel #define IMX_FEC_BASE	        FEC_BASE_ADDR
57f3488bb3SDamien Riegel #define CONFIG_ETHPRIME		"FEC"
58f3488bb3SDamien Riegel #define CONFIG_FEC_MXC_PHYADDR	0
59f3488bb3SDamien Riegel 
609ee16897SLucile Quirion /* allow to overwrite serial and ethaddr */
619ee16897SLucile Quirion #define CONFIG_ENV_OVERWRITE		/* disable vendor parameters protection (serial#, ethaddr) */
629ee16897SLucile Quirion 
639ee16897SLucile Quirion /***********************************************************
649ee16897SLucile Quirion  * Command definition
659ee16897SLucile Quirion  ***********************************************************/
669ee16897SLucile Quirion 
679ee16897SLucile Quirion /* Environment variables */
689ee16897SLucile Quirion 
699ee16897SLucile Quirion 
709ee16897SLucile Quirion #define CONFIG_LOADADDR		0x91000000	/* loadaddr env var */
719ee16897SLucile Quirion 
729ee16897SLucile Quirion #define CONFIG_EXTRA_ENV_SETTINGS \
739ee16897SLucile Quirion 	"script=boot.scr\0" \
74e453794fSDamien Riegel 	"image=zImage\0" \
75e453794fSDamien Riegel 	"fdt_file=imx51-ts4800.dtb\0" \
76e453794fSDamien Riegel 	"fdt_addr=0x90fe0000\0" \
779ee16897SLucile Quirion 	"mmcdev=0\0" \
78e453794fSDamien Riegel 	"mmcpart=2\0" \
79e453794fSDamien Riegel 	"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
80e453794fSDamien Riegel 	"mmcargs=setenv bootargs root=${mmcroot}\0" \
819ee16897SLucile Quirion 	"addtty=setenv bootargs ${bootargs} console=ttymxc0,${baudrate}\0" \
829ee16897SLucile Quirion 	"loadbootscript=" \
839ee16897SLucile Quirion 		"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
849ee16897SLucile Quirion 	"bootscript=echo Running bootscript from mmc ...; " \
859ee16897SLucile Quirion 		"source\0" \
869ee16897SLucile Quirion 	"loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image};\0" \
87e453794fSDamien Riegel 	"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
889ee16897SLucile Quirion 	"mmcboot=echo Booting from mmc ...; " \
899ee16897SLucile Quirion 		"run mmcargs addtty; " \
90e453794fSDamien Riegel 		"if run loadfdt; then " \
91e453794fSDamien Riegel 			"bootz ${loadaddr} - ${fdt_addr}; " \
92e453794fSDamien Riegel 		"else " \
93e453794fSDamien Riegel 			"echo ERR: cannot load FDT; " \
94e453794fSDamien Riegel 		"fi; "
95e453794fSDamien Riegel 
969ee16897SLucile Quirion 
979ee16897SLucile Quirion #define CONFIG_BOOTCOMMAND \
989ee16897SLucile Quirion 	"mmc dev ${mmcdev}; if mmc rescan; then " \
999ee16897SLucile Quirion 		"if run loadbootscript; then " \
1009ee16897SLucile Quirion 			"run bootscript; " \
1019ee16897SLucile Quirion 		"else " \
1029ee16897SLucile Quirion 			"if run loadimage; then " \
1039ee16897SLucile Quirion 				"run mmcboot; " \
1049ee16897SLucile Quirion 			"fi; " \
1059ee16897SLucile Quirion 		"fi; " \
1069ee16897SLucile Quirion 	"fi; "
1079ee16897SLucile Quirion 
1089ee16897SLucile Quirion /*
1099ee16897SLucile Quirion  * Miscellaneous configurable options
1109ee16897SLucile Quirion  */
1119ee16897SLucile Quirion 
1129ee16897SLucile Quirion #define CONFIG_SYS_LOAD_ADDR		CONFIG_LOADADDR
1139ee16897SLucile Quirion 
1149ee16897SLucile Quirion /*-----------------------------------------------------------------------
1159ee16897SLucile Quirion  * Physical Memory Map
1169ee16897SLucile Quirion  */
1179ee16897SLucile Quirion #define PHYS_SDRAM_1		CSD0_BASE_ADDR
1189ee16897SLucile Quirion #define PHYS_SDRAM_1_SIZE	(256 * 1024 * 1024)
1199ee16897SLucile Quirion 
1209ee16897SLucile Quirion #define CONFIG_SYS_SDRAM_BASE		(PHYS_SDRAM_1)
1219ee16897SLucile Quirion #define CONFIG_SYS_INIT_RAM_ADDR	(IRAM_BASE_ADDR)
1229ee16897SLucile Quirion #define CONFIG_SYS_INIT_RAM_SIZE	(IRAM_SIZE)
1239ee16897SLucile Quirion 
1249ee16897SLucile Quirion #define CONFIG_SYS_INIT_SP_OFFSET \
1259ee16897SLucile Quirion 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
1269ee16897SLucile Quirion #define CONFIG_SYS_INIT_SP_ADDR \
1279ee16897SLucile Quirion 	(CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET)
1289ee16897SLucile Quirion 
1299ee16897SLucile Quirion /* Low level init */
1309ee16897SLucile Quirion #define CONFIG_SYS_DDR_CLKSEL	0
1319ee16897SLucile Quirion #define CONFIG_SYS_CLKTL_CBCDR	0x59E35100
1329ee16897SLucile Quirion #define CONFIG_SYS_MAIN_PWR_ON
1339ee16897SLucile Quirion 
1349ee16897SLucile Quirion /*-----------------------------------------------------------------------
1359ee16897SLucile Quirion  * Environment organization
1369ee16897SLucile Quirion  */
1379ee16897SLucile Quirion 
1389ee16897SLucile Quirion #define CONFIG_ENV_OFFSET      (6 * 64 * 1024)
1399ee16897SLucile Quirion #define CONFIG_ENV_SIZE        (8 * 1024)
1409ee16897SLucile Quirion #define CONFIG_SYS_MMC_ENV_DEV 0
1419ee16897SLucile Quirion 
1429ee16897SLucile Quirion #endif
143