xref: /rk3399_rockchip-uboot/include/configs/origen.h (revision 643be9c07e1c2abcc45d0efd4bbe562c4cb8dcaa)
1b9a1ef21SChander Kashyap /*
2b9a1ef21SChander Kashyap  * Copyright (C) 2011 Samsung Electronics
3b9a1ef21SChander Kashyap  *
4393cb361SChander Kashyap  * Configuration settings for the SAMSUNG ORIGEN (EXYNOS4210) board.
5b9a1ef21SChander Kashyap  *
6b9a1ef21SChander Kashyap  * See file CREDITS for list of people who contributed to this
7b9a1ef21SChander Kashyap  * project.
8b9a1ef21SChander Kashyap  *
9b9a1ef21SChander Kashyap  * This program is free software; you can redistribute it and/or
10b9a1ef21SChander Kashyap  * modify it under the terms of the GNU General Public License as
11b9a1ef21SChander Kashyap  * published by the Free Software Foundation; either version 2 of
12b9a1ef21SChander Kashyap  * the License, or (at your option) any later version.
13b9a1ef21SChander Kashyap  *
14b9a1ef21SChander Kashyap  * This program is distributed in the hope that it will be useful,
15b9a1ef21SChander Kashyap  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16b9a1ef21SChander Kashyap  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17b9a1ef21SChander Kashyap  * GNU General Public License for more details.
18b9a1ef21SChander Kashyap  *
19b9a1ef21SChander Kashyap  * You should have received a copy of the GNU General Public License
20b9a1ef21SChander Kashyap  * along with this program; if not, write to the Free Software
21b9a1ef21SChander Kashyap  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22b9a1ef21SChander Kashyap  * MA 02111-1307 USA
23b9a1ef21SChander Kashyap  */
24b9a1ef21SChander Kashyap 
25b9a1ef21SChander Kashyap #ifndef __CONFIG_H
26b9a1ef21SChander Kashyap #define __CONFIG_H
27b9a1ef21SChander Kashyap 
28b9a1ef21SChander Kashyap /* High Level Configuration Options */
29b9a1ef21SChander Kashyap #define CONFIG_SAMSUNG			1	/* SAMSUNG core */
30b9a1ef21SChander Kashyap #define CONFIG_S5P			1	/* S5P Family */
31393cb361SChander Kashyap #define CONFIG_EXYNOS4210		1	/* which is a EXYNOS4210 SoC */
32b9a1ef21SChander Kashyap #define CONFIG_ORIGEN			1	/* working with ORIGEN*/
33b9a1ef21SChander Kashyap 
34b9a1ef21SChander Kashyap #include <asm/arch/cpu.h>		/* get chip and board defs */
35b9a1ef21SChander Kashyap 
36b9a1ef21SChander Kashyap #define CONFIG_ARCH_CPU_INIT
37b9a1ef21SChander Kashyap #define CONFIG_DISPLAY_CPUINFO
38b9a1ef21SChander Kashyap #define CONFIG_DISPLAY_BOARDINFO
39198a40b9SRajeshwari Shinde #define CONFIG_BOARD_EARLY_INIT_F
40b9a1ef21SChander Kashyap 
41b9a1ef21SChander Kashyap /* Keep L2 Cache Disabled */
42b9a1ef21SChander Kashyap #define CONFIG_L2_OFF			1
43b9a1ef21SChander Kashyap #define CONFIG_SYS_DCACHE_OFF		1
44b9a1ef21SChander Kashyap 
45b9a1ef21SChander Kashyap #define CONFIG_SYS_SDRAM_BASE		0x40000000
46b9a1ef21SChander Kashyap #define CONFIG_SYS_TEXT_BASE		0x43E00000
47b9a1ef21SChander Kashyap 
48b9a1ef21SChander Kashyap /* input clock of PLL: ORIGEN has 24MHz input clock */
49b9a1ef21SChander Kashyap #define CONFIG_SYS_CLK_FREQ		24000000
50b9a1ef21SChander Kashyap 
51b9a1ef21SChander Kashyap #define CONFIG_SETUP_MEMORY_TAGS
52b9a1ef21SChander Kashyap #define CONFIG_CMDLINE_TAG
53b9a1ef21SChander Kashyap #define CONFIG_INITRD_TAG
54b9a1ef21SChander Kashyap #define CONFIG_CMDLINE_EDITING
55b9a1ef21SChander Kashyap 
56b9a1ef21SChander Kashyap #define CONFIG_MACH_TYPE		MACH_TYPE_ORIGEN
57b9a1ef21SChander Kashyap 
58b9a1ef21SChander Kashyap /* Power Down Modes */
59b9a1ef21SChander Kashyap #define S5P_CHECK_SLEEP			0x00000BAD
60b9a1ef21SChander Kashyap #define S5P_CHECK_DIDLE			0xBAD00000
61b9a1ef21SChander Kashyap #define S5P_CHECK_LPA			0xABAD0000
62b9a1ef21SChander Kashyap 
63b9a1ef21SChander Kashyap /* Size of malloc() pool */
64b9a1ef21SChander Kashyap #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (1 << 20))
65b9a1ef21SChander Kashyap 
66b9a1ef21SChander Kashyap /* select serial console configuration */
67b9a1ef21SChander Kashyap #define CONFIG_SERIAL2			1	/* use SERIAL 2 */
68b9a1ef21SChander Kashyap #define CONFIG_BAUDRATE			115200
69393cb361SChander Kashyap #define EXYNOS4_DEFAULT_UART_OFFSET	0x020000
70b9a1ef21SChander Kashyap 
71*643be9c0SRajeshwari Shinde #define CONFIG_SKIP_LOWLEVEL_INIT
72*643be9c0SRajeshwari Shinde 
73b9a1ef21SChander Kashyap /* SD/MMC configuration */
747d2d58b4SJaehoon Chung #define CONFIG_GENERIC_MMC
757d2d58b4SJaehoon Chung #define CONFIG_MMC
767d2d58b4SJaehoon Chung #define CONFIG_SDHCI
777d2d58b4SJaehoon Chung #define CONFIG_S5P_SDHCI
78b9a1ef21SChander Kashyap 
79b9a1ef21SChander Kashyap /* PWM */
80b9a1ef21SChander Kashyap #define CONFIG_PWM			1
81b9a1ef21SChander Kashyap 
82b9a1ef21SChander Kashyap /* allow to overwrite serial and ethaddr */
83b9a1ef21SChander Kashyap #define CONFIG_ENV_OVERWRITE
84b9a1ef21SChander Kashyap 
85b9a1ef21SChander Kashyap /* Command definition*/
86b9a1ef21SChander Kashyap #include <config_cmd_default.h>
87b9a1ef21SChander Kashyap 
8880615006SJoe Hershberger #undef CONFIG_CMD_PING
89b9a1ef21SChander Kashyap #define CONFIG_CMD_ELF
90b9a1ef21SChander Kashyap #define CONFIG_CMD_DHCP
91b9a1ef21SChander Kashyap #define CONFIG_CMD_MMC
92b9a1ef21SChander Kashyap #define CONFIG_CMD_FAT
93b9a1ef21SChander Kashyap #undef CONFIG_CMD_NET
94b9a1ef21SChander Kashyap #undef CONFIG_CMD_NFS
95b9a1ef21SChander Kashyap 
96b9a1ef21SChander Kashyap #define CONFIG_BOOTDELAY		3
97b9a1ef21SChander Kashyap #define CONFIG_ZERO_BOOTDELAY_CHECK
9898a48c5dSChander Kashyap /* MMC SPL */
9998a48c5dSChander Kashyap #define CONFIG_SPL
10098a48c5dSChander Kashyap #define COPY_BL2_FNPTR_ADDR	0x02020030
101b9a1ef21SChander Kashyap 
1028a00061eSInderpal Singh #define CONFIG_SPL_TEXT_BASE	0x02021410
1038a00061eSInderpal Singh 
104b9a1ef21SChander Kashyap #define CONFIG_BOOTCOMMAND	"fatload mmc 0 40007000 uImage; bootm 40007000"
105b9a1ef21SChander Kashyap 
106b9a1ef21SChander Kashyap /* Miscellaneous configurable options */
107b9a1ef21SChander Kashyap #define CONFIG_SYS_LONGHELP		/* undef to save memory */
108b9a1ef21SChander Kashyap #define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser	*/
109b9a1ef21SChander Kashyap #define CONFIG_SYS_PROMPT		"ORIGEN # "
110b9a1ef21SChander Kashyap #define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size*/
111b9a1ef21SChander Kashyap #define CONFIG_SYS_PBSIZE		384	/* Print Buffer Size */
112b9a1ef21SChander Kashyap #define CONFIG_SYS_MAXARGS		16	/* max number of command args */
113b9a1ef21SChander Kashyap #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
114b9a1ef21SChander Kashyap /* Boot Argument Buffer Size */
115b9a1ef21SChander Kashyap #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
116b9a1ef21SChander Kashyap /* memtest works on */
117b9a1ef21SChander Kashyap #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
118b9a1ef21SChander Kashyap #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x6000000)
119b9a1ef21SChander Kashyap #define CONFIG_SYS_LOAD_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x3E00000)
120b9a1ef21SChander Kashyap 
121b9a1ef21SChander Kashyap #define CONFIG_SYS_HZ			1000
122b9a1ef21SChander Kashyap 
123b9a1ef21SChander Kashyap /* ORIGEN has 4 bank of DRAM */
124b9a1ef21SChander Kashyap #define CONFIG_NR_DRAM_BANKS	4
125b9a1ef21SChander Kashyap #define SDRAM_BANK_SIZE		(256UL << 20UL)	/* 256 MB */
126b9a1ef21SChander Kashyap #define PHYS_SDRAM_1		CONFIG_SYS_SDRAM_BASE
127b9a1ef21SChander Kashyap #define PHYS_SDRAM_1_SIZE	SDRAM_BANK_SIZE
128b9a1ef21SChander Kashyap #define PHYS_SDRAM_2		(CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
129b9a1ef21SChander Kashyap #define PHYS_SDRAM_2_SIZE	SDRAM_BANK_SIZE
130b9a1ef21SChander Kashyap #define PHYS_SDRAM_3		(CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE))
131b9a1ef21SChander Kashyap #define PHYS_SDRAM_3_SIZE	SDRAM_BANK_SIZE
132b9a1ef21SChander Kashyap #define PHYS_SDRAM_4		(CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE))
133b9a1ef21SChander Kashyap #define PHYS_SDRAM_4_SIZE	SDRAM_BANK_SIZE
134b9a1ef21SChander Kashyap 
135b9a1ef21SChander Kashyap /* FLASH and environment organization */
136b9a1ef21SChander Kashyap #define CONFIG_SYS_NO_FLASH		1
137b9a1ef21SChander Kashyap #undef CONFIG_CMD_IMLS
138b9a1ef21SChander Kashyap #define CONFIG_IDENT_STRING		" for ORIGEN"
139b9a1ef21SChander Kashyap 
140b9a1ef21SChander Kashyap #define CONFIG_CLK_1000_400_200
141b9a1ef21SChander Kashyap 
142b9a1ef21SChander Kashyap /* MIU (Memory Interleaving Unit) */
143b9a1ef21SChander Kashyap #define CONFIG_MIU_2BIT_21_7_INTERLEAVED
144b9a1ef21SChander Kashyap 
145b9a1ef21SChander Kashyap #define CONFIG_ENV_IS_IN_MMC		1
146b9a1ef21SChander Kashyap #define CONFIG_SYS_MMC_ENV_DEV		0
147b9a1ef21SChander Kashyap #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
148b9a1ef21SChander Kashyap #define RESERVE_BLOCK_SIZE		(512)
149b9a1ef21SChander Kashyap #define BL1_SIZE			(16 << 10) /*16 K reserved for BL1*/
150b9a1ef21SChander Kashyap #define CONFIG_ENV_OFFSET		(RESERVE_BLOCK_SIZE + BL1_SIZE)
151b9a1ef21SChander Kashyap #define CONFIG_DOS_PARTITION		1
152b9a1ef21SChander Kashyap 
153*643be9c0SRajeshwari Shinde #define CONFIG_SPL_LDSCRIPT	"board/samsung/common/exynos-uboot-spl.lds"
154*643be9c0SRajeshwari Shinde #define CONFIG_SPL_MAX_FOOTPRINT	(14 * 1024)
155*643be9c0SRajeshwari Shinde 
156*643be9c0SRajeshwari Shinde #define CONFIG_SYS_INIT_SP_ADDR		0x02040000
15798a48c5dSChander Kashyap 
15898a48c5dSChander Kashyap /* U-boot copy size from boot Media to DRAM.*/
15998a48c5dSChander Kashyap #define COPY_BL2_SIZE		0x80000
16098a48c5dSChander Kashyap #define BL2_START_OFFSET	((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512)
16198a48c5dSChander Kashyap #define BL2_SIZE_BLOC_COUNT	(COPY_BL2_SIZE/512)
162099e884aSAngus Ainslie 
163099e884aSAngus Ainslie /* Enable devicetree support */
164099e884aSAngus Ainslie #define CONFIG_OF_LIBFDT
165*643be9c0SRajeshwari Shinde 
166b9a1ef21SChander Kashyap #endif	/* __CONFIG_H */
167