xref: /openbmc/u-boot/include/configs/smdkv310.h (revision 3765b3e7)
1 /*
2  * Copyright (C) 2011 Samsung Electronics
3  *
4  * Configuration settings for the SAMSUNG SMDKV310 (EXYNOS4210) board.
5  *
6  * SPDX-License-Identifier:	GPL-2.0+
7  */
8 
9 #ifndef __CONFIG_H
10 #define __CONFIG_H
11 
12 /* High Level Configuration Options */
13 #define CONFIG_SAMSUNG			1	/* in a SAMSUNG core */
14 #define CONFIG_S5P			1	/* S5P Family */
15 #define CONFIG_EXYNOS4210		1	/* which is a EXYNOS4210 SoC */
16 #define CONFIG_SMDKV310			1	/* working with SMDKV310*/
17 
18 #include <asm/arch/cpu.h>		/* get chip and board defs */
19 
20 #define CONFIG_ARCH_CPU_INIT
21 #define CONFIG_DISPLAY_CPUINFO
22 #define CONFIG_DISPLAY_BOARDINFO
23 #define CONFIG_BOARD_EARLY_INIT_F
24 
25 /* Mach Type */
26 #define CONFIG_MACH_TYPE		MACH_TYPE_SMDKV310
27 
28 /* Keep L2 Cache Disabled */
29 #define CONFIG_L2_OFF			1
30 
31 #define CONFIG_SYS_SDRAM_BASE		0x40000000
32 #define CONFIG_SYS_TEXT_BASE		0x43E00000
33 
34 /* input clock of PLL: SMDKV310 has 24MHz input clock */
35 #define CONFIG_SYS_CLK_FREQ		24000000
36 
37 #define CONFIG_SETUP_MEMORY_TAGS
38 #define CONFIG_CMDLINE_TAG
39 #define CONFIG_INITRD_TAG
40 #define CONFIG_CMDLINE_EDITING
41 
42 /* Handling Sleep Mode*/
43 #define S5P_CHECK_SLEEP			0x00000BAD
44 #define S5P_CHECK_DIDLE			0xBAD00000
45 #define S5P_CHECK_LPA			0xABAD0000
46 
47 /* Size of malloc() pool */
48 #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (1 << 20))
49 
50 /* select serial console configuration */
51 #define CONFIG_SERIAL1			1	/* use SERIAL 1 */
52 #define CONFIG_BAUDRATE			115200
53 #define EXYNOS4_DEFAULT_UART_OFFSET	0x010000
54 
55 /* SD/MMC configuration */
56 #define CONFIG_GENERIC_MMC
57 #define CONFIG_MMC
58 #define CONFIG_SDHCI
59 #define CONFIG_S5P_SDHCI
60 
61 /* PWM */
62 #define CONFIG_PWM			1
63 
64 /* allow to overwrite serial and ethaddr */
65 #define CONFIG_ENV_OVERWRITE
66 
67 /* Command definition*/
68 #include <config_cmd_default.h>
69 
70 #define CONFIG_CMD_PING
71 #define CONFIG_CMD_ELF
72 #define CONFIG_CMD_DHCP
73 #define CONFIG_CMD_MMC
74 #define CONFIG_CMD_NET
75 #define CONFIG_CMD_FAT
76 
77 #define CONFIG_BOOTDELAY		3
78 #define CONFIG_ZERO_BOOTDELAY_CHECK
79 
80 /* MMC SPL */
81 #define CONFIG_SPL
82 #define CONFIG_SKIP_LOWLEVEL_INIT
83 #define COPY_BL2_FNPTR_ADDR	0x00002488
84 
85 #define CONFIG_SPL_TEXT_BASE	0x02021410
86 
87 #define CONFIG_BOOTCOMMAND	"fatload mmc 0 40007000 uImage; bootm 40007000"
88 
89 /* Miscellaneous configurable options */
90 #define CONFIG_SYS_LONGHELP		/* undef to save memory */
91 #define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser	*/
92 #define CONFIG_SYS_PROMPT		"SMDKV310 # "
93 #define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size*/
94 #define CONFIG_SYS_PBSIZE		384	/* Print Buffer Size */
95 #define CONFIG_SYS_MAXARGS		16	/* max number of command args */
96 #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
97 /* Boot Argument Buffer Size */
98 #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
99 /* memtest works on */
100 #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
101 #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x6000000)
102 #define CONFIG_SYS_LOAD_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x3E00000)
103 
104 #define CONFIG_SYS_HZ			1000
105 
106 /* SMDKV310 has 4 bank of DRAM */
107 #define CONFIG_NR_DRAM_BANKS	4
108 #define SDRAM_BANK_SIZE		(512UL << 20UL)	/* 512 MB */
109 #define PHYS_SDRAM_1		CONFIG_SYS_SDRAM_BASE
110 #define PHYS_SDRAM_1_SIZE	SDRAM_BANK_SIZE
111 #define PHYS_SDRAM_2		(CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
112 #define PHYS_SDRAM_2_SIZE	SDRAM_BANK_SIZE
113 #define PHYS_SDRAM_3		(CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE))
114 #define PHYS_SDRAM_3_SIZE	SDRAM_BANK_SIZE
115 #define PHYS_SDRAM_4		(CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE))
116 #define PHYS_SDRAM_4_SIZE	SDRAM_BANK_SIZE
117 
118 /* FLASH and environment organization */
119 #define CONFIG_SYS_NO_FLASH		1
120 #undef	CONFIG_CMD_IMLS
121 #define CONFIG_IDENT_STRING		" for SMDKC210/V310"
122 
123 #define CONFIG_CLK_1000_400_200
124 
125 /* MIU (Memory Interleaving Unit) */
126 #define CONFIG_MIU_2BIT_INTERLEAVED
127 
128 #define CONFIG_ENV_IS_IN_MMC		1
129 #define CONFIG_SYS_MMC_ENV_DEV		0
130 #define CONFIG_ENV_SIZE			(16 << 10)	/* 16 KB */
131 #define RESERVE_BLOCK_SIZE		(512)
132 #define BL1_SIZE			(16 << 10) /*16 K reserved for BL1*/
133 #define CONFIG_ENV_OFFSET		(RESERVE_BLOCK_SIZE + BL1_SIZE)
134 #define CONFIG_DOS_PARTITION		1
135 
136 #define CONFIG_SPL_LDSCRIPT	"board/samsung/common/exynos-uboot-spl.lds"
137 #define CONFIG_SPL_MAX_FOOTPRINT	(14 * 1024)
138 
139 #define CONFIG_SYS_INIT_SP_ADDR		0x02040000
140 
141 /* U-boot copy size from boot Media to DRAM.*/
142 #define	COPY_BL2_SIZE		0x80000
143 #define BL2_START_OFFSET	((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512)
144 #define BL2_SIZE_BLOC_COUNT	(COPY_BL2_SIZE/512)
145 
146 /* Ethernet Controllor Driver */
147 #ifdef CONFIG_CMD_NET
148 #define CONFIG_SMC911X
149 #define CONFIG_SMC911X_BASE		0x5000000
150 #define CONFIG_SMC911X_16_BIT
151 #define CONFIG_ENV_SROM_BANK		1
152 #endif /*CONFIG_CMD_NET*/
153 
154 /* Enable devicetree support */
155 #define CONFIG_OF_LIBFDT
156 #endif	/* __CONFIG_H */
157