xref: /openbmc/u-boot/include/configs/vcoreiii.h (revision 66c433ed)
16787c1ecSGregory CLEMENT /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
26787c1ecSGregory CLEMENT /*
36787c1ecSGregory CLEMENT  * Copyright (c) 2018 Microsemi Corporation
46787c1ecSGregory CLEMENT  */
56787c1ecSGregory CLEMENT 
66787c1ecSGregory CLEMENT #ifndef __VCOREIII_H
76787c1ecSGregory CLEMENT #define __VCOREIII_H
86787c1ecSGregory CLEMENT 
96787c1ecSGregory CLEMENT #include <linux/sizes.h>
106787c1ecSGregory CLEMENT 
116787c1ecSGregory CLEMENT /* Onboard devices */
126787c1ecSGregory CLEMENT 
136787c1ecSGregory CLEMENT #define CONFIG_SYS_MALLOC_LEN		0x100000
146787c1ecSGregory CLEMENT #define CONFIG_SYS_LOAD_ADDR		0x00100000
156787c1ecSGregory CLEMENT #define CONFIG_SYS_INIT_SP_OFFSET       0x400000
166787c1ecSGregory CLEMENT 
17*1895b87eSHoratiu Vultur #if defined(CONFIG_SOC_LUTON) || defined(CONFIG_SOC_SERVAL)
18*1895b87eSHoratiu Vultur #define CPU_CLOCK_RATE			416666666 /* Clock for the MIPS core */
196787c1ecSGregory CLEMENT #define CONFIG_SYS_MIPS_TIMER_FREQ	208333333
206787c1ecSGregory CLEMENT #else
21*1895b87eSHoratiu Vultur #define CPU_CLOCK_RATE			500000000 /* Clock for the MIPS core */
226787c1ecSGregory CLEMENT #define CONFIG_SYS_MIPS_TIMER_FREQ	(CPU_CLOCK_RATE / 2)
236787c1ecSGregory CLEMENT #endif
246787c1ecSGregory CLEMENT #define CONFIG_SYS_NS16550_CLK		CONFIG_SYS_MIPS_TIMER_FREQ
256787c1ecSGregory CLEMENT 
26e9f1492bSLars Povlsen #define CONFIG_BOARD_TYPES
27e9f1492bSLars Povlsen 
286787c1ecSGregory CLEMENT #if defined(CONFIG_ENV_IS_IN_SPI_FLASH) && !defined(CONFIG_ENV_OFFSET)
296787c1ecSGregory CLEMENT #define CONFIG_ENV_OFFSET		(1024 * 1024)
306787c1ecSGregory CLEMENT #define CONFIG_ENV_SIZE			(256 * 1024)
316787c1ecSGregory CLEMENT #define CONFIG_ENV_SECT_SIZE		(256 * 1024)
326787c1ecSGregory CLEMENT 
336787c1ecSGregory CLEMENT #define CONFIG_SYS_REDUNDAND_ENVIRONMENT
346787c1ecSGregory CLEMENT #define CONFIG_ENV_SIZE_REDUND		CONFIG_ENV_SIZE
356787c1ecSGregory CLEMENT #define CONFIG_ENV_OFFSET_REDUND      (CONFIG_ENV_OFFSET + CONFIG_ENV_SECT_SIZE)
366787c1ecSGregory CLEMENT 
376787c1ecSGregory CLEMENT #endif
386787c1ecSGregory CLEMENT 
396787c1ecSGregory CLEMENT #define CONFIG_SYS_SDRAM_BASE		0x80000000
406787c1ecSGregory CLEMENT #if defined(CONFIG_DDRTYPE_H5TQ1G63BFA) || defined(CONFIG_DDRTYPE_MT47H128M8HQ)
416787c1ecSGregory CLEMENT #define CONFIG_SYS_SDRAM_SIZE		(128 * SZ_1M)
426787c1ecSGregory CLEMENT #elif defined(CONFIG_DDRTYPE_MT41J128M16HA) || defined(CONFIG_DDRTYPE_MT41K128M16JT)
436787c1ecSGregory CLEMENT #define CONFIG_SYS_SDRAM_SIZE		(256 * SZ_1M)
446787c1ecSGregory CLEMENT #elif defined(CONFIG_DDRTYPE_H5TQ4G63MFR) || defined(CONFIG_DDRTYPE_MT41K256M16)
456787c1ecSGregory CLEMENT #define CONFIG_SYS_SDRAM_SIZE		(512 * SZ_1M)
466787c1ecSGregory CLEMENT #else
476787c1ecSGregory CLEMENT #error Unknown DDR size - please add!
486787c1ecSGregory CLEMENT #endif
496787c1ecSGregory CLEMENT 
506787c1ecSGregory CLEMENT #define CONFIG_CONS_INDEX		1
516787c1ecSGregory CLEMENT 
526787c1ecSGregory CLEMENT #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
536787c1ecSGregory CLEMENT #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + CONFIG_SYS_SDRAM_SIZE - SZ_1M)
546787c1ecSGregory CLEMENT 
556787c1ecSGregory CLEMENT #define CONFIG_SYS_MONITOR_BASE         CONFIG_SYS_TEXT_BASE
566787c1ecSGregory CLEMENT 
576787c1ecSGregory CLEMENT #define CONFIG_BOARD_EARLY_INIT_R
586787c1ecSGregory CLEMENT #if defined(CONFIG_MTDIDS_DEFAULT) && defined(CONFIG_MTDPARTS_DEFAULT)
596787c1ecSGregory CLEMENT #define VCOREIII_DEFAULT_MTD_ENV		    \
606787c1ecSGregory CLEMENT 	"mtdparts="CONFIG_MTDPARTS_DEFAULT"\0"	    \
616787c1ecSGregory CLEMENT 	"mtdids="CONFIG_MTDIDS_DEFAULT"\0"
626787c1ecSGregory CLEMENT #else
636787c1ecSGregory CLEMENT #define VCOREIII_DEFAULT_MTD_ENV    /* Go away */
646787c1ecSGregory CLEMENT #endif
656787c1ecSGregory CLEMENT 
666787c1ecSGregory CLEMENT #define CONFIG_SYS_BOOTM_LEN      (16 << 20)      /* Increase max gunzip size */
676787c1ecSGregory CLEMENT 
686787c1ecSGregory CLEMENT #define CONFIG_EXTRA_ENV_SETTINGS					\
696787c1ecSGregory CLEMENT 	VCOREIII_DEFAULT_MTD_ENV					\
706787c1ecSGregory CLEMENT 	"loadaddr=0x81000000\0"						\
716787c1ecSGregory CLEMENT 	"spi_image_off=0x00100000\0"					\
726787c1ecSGregory CLEMENT 	"console=ttyS0,115200\0"					\
736787c1ecSGregory CLEMENT 	"setup=setenv bootargs console=${console} ${mtdparts}"		\
746787c1ecSGregory CLEMENT 	"${bootargs_extra}\0"						\
756787c1ecSGregory CLEMENT 	"spiboot=run setup; sf probe; sf read ${loadaddr}"		\
766787c1ecSGregory CLEMENT 	"${spi_image_off} 0x600000; bootm ${loadaddr}\0"		\
776787c1ecSGregory CLEMENT 	"ubootfile=u-boot.bin\0"					\
786787c1ecSGregory CLEMENT 	"update=sf probe;mtdparts;dhcp ${loadaddr} ${ubootfile};"	\
796787c1ecSGregory CLEMENT 	"sf erase UBoot 0x100000;"					\
806787c1ecSGregory CLEMENT 	"sf write ${loadaddr} UBoot  ${filesize}\0"			\
816787c1ecSGregory CLEMENT 	"bootcmd=run spiboot\0"						\
826787c1ecSGregory CLEMENT 	""
836787c1ecSGregory CLEMENT #endif				/* __VCOREIII_H */
84