xref: /rk3399_rockchip-uboot/include/configs/arndale.h (revision e106bd9b9d0c3ec429b2e85184738789b75ca247)
1a2ac68fbSChander Kashyap /*
2a2ac68fbSChander Kashyap  * Copyright (C) 2013 Samsung Electronics
3a2ac68fbSChander Kashyap  *
4a2ac68fbSChander Kashyap  * SPDX-License-Identifier:	GPL-2.0+
5a2ac68fbSChander Kashyap  *
6a2ac68fbSChander Kashyap  * Configuration settings for the SAMSUNG Arndale board.
7a2ac68fbSChander Kashyap  */
8a2ac68fbSChander Kashyap 
9a2ac68fbSChander Kashyap #ifndef __CONFIG_ARNDALE_H
10a2ac68fbSChander Kashyap #define __CONFIG_ARNDALE_H
11a2ac68fbSChander Kashyap 
12a2ac68fbSChander Kashyap /* High Level Configuration Options */
13a2ac68fbSChander Kashyap #define CONFIG_SAMSUNG			/* in a SAMSUNG core */
14a2ac68fbSChander Kashyap #define CONFIG_S5P			/* S5P Family */
15a2ac68fbSChander Kashyap #define CONFIG_EXYNOS5			/* which is in a Exynos5 Family */
16a2ac68fbSChander Kashyap #define CONFIG_EXYNOS5250
17a2ac68fbSChander Kashyap 
18a2ac68fbSChander Kashyap #include <asm/arch/cpu.h>		/* get chip and board defs */
19a2ac68fbSChander Kashyap 
20a2ac68fbSChander Kashyap #define CONFIG_SYS_GENERIC_BOARD
21a2ac68fbSChander Kashyap #define CONFIG_ARCH_CPU_INIT
22a2ac68fbSChander Kashyap #define CONFIG_DISPLAY_CPUINFO
23a2ac68fbSChander Kashyap #define CONFIG_DISPLAY_BOARDINFO
24a2ac68fbSChander Kashyap 
25a2ac68fbSChander Kashyap /* Enable fdt support for Exynos5250 */
26a2ac68fbSChander Kashyap #define CONFIG_ARCH_DEVICE_TREE		exynos5250
27a2ac68fbSChander Kashyap #define CONFIG_OF_CONTROL
28a2ac68fbSChander Kashyap #define CONFIG_OF_SEPARATE
29a2ac68fbSChander Kashyap 
30a2ac68fbSChander Kashyap /* Allow tracing to be enabled */
31a2ac68fbSChander Kashyap #define CONFIG_TRACE
32a2ac68fbSChander Kashyap #define CONFIG_CMD_TRACE
33a2ac68fbSChander Kashyap #define CONFIG_TRACE_BUFFER_SIZE	(16 << 20)
34a2ac68fbSChander Kashyap #define CONFIG_TRACE_EARLY_SIZE		(8 << 20)
35a2ac68fbSChander Kashyap #define CONFIG_TRACE_EARLY
36a2ac68fbSChander Kashyap #define CONFIG_TRACE_EARLY_ADDR		0x50000000
37a2ac68fbSChander Kashyap 
38a2ac68fbSChander Kashyap /* Keep L2 Cache Disabled */
39a2ac68fbSChander Kashyap #define CONFIG_SYS_DCACHE_OFF
40a2ac68fbSChander Kashyap 
41a2ac68fbSChander Kashyap #define CONFIG_SYS_SDRAM_BASE		0x40000000
42a2ac68fbSChander Kashyap #define CONFIG_SYS_TEXT_BASE		0x43E00000
43a2ac68fbSChander Kashyap 
44a2ac68fbSChander Kashyap /* input clock of PLL: SMDK5250 has 24MHz input clock */
45a2ac68fbSChander Kashyap #define CONFIG_SYS_CLK_FREQ		24000000
46a2ac68fbSChander Kashyap 
47a2ac68fbSChander Kashyap #define CONFIG_SETUP_MEMORY_TAGS
48a2ac68fbSChander Kashyap #define CONFIG_CMDLINE_TAG
49a2ac68fbSChander Kashyap #define CONFIG_INITRD_TAG
50a2ac68fbSChander Kashyap #define CONFIG_CMDLINE_EDITING
51a2ac68fbSChander Kashyap 
52a2ac68fbSChander Kashyap /* Power Down Modes */
53a2ac68fbSChander Kashyap #define S5P_CHECK_SLEEP			0x00000BAD
54a2ac68fbSChander Kashyap #define S5P_CHECK_DIDLE			0xBAD00000
55a2ac68fbSChander Kashyap #define S5P_CHECK_LPA			0xABAD0000
56a2ac68fbSChander Kashyap 
57a2ac68fbSChander Kashyap /* Offset for inform registers */
58a2ac68fbSChander Kashyap #define INFORM0_OFFSET			0x800
59a2ac68fbSChander Kashyap #define INFORM1_OFFSET			0x804
60a2ac68fbSChander Kashyap 
61a2ac68fbSChander Kashyap /* Size of malloc() pool */
62a2ac68fbSChander Kashyap #define CONFIG_SYS_MALLOC_LEN		(CONFIG_ENV_SIZE + (4 << 20))
63a2ac68fbSChander Kashyap 
64a2ac68fbSChander Kashyap /* select serial console configuration */
65a2ac68fbSChander Kashyap #define CONFIG_BAUDRATE			115200
66a2ac68fbSChander Kashyap #define EXYNOS5_DEFAULT_UART_OFFSET	0x010000
67a2ac68fbSChander Kashyap #define CONFIG_SILENT_CONSOLE
68a2ac68fbSChander Kashyap 
69a2ac68fbSChander Kashyap /* Console configuration */
70a2ac68fbSChander Kashyap #define CONFIG_CONSOLE_MUX
71a2ac68fbSChander Kashyap #define CONFIG_SYS_CONSOLE_IS_IN_ENV
72a2ac68fbSChander Kashyap #define EXYNOS_DEVICE_SETTINGS \
73a2ac68fbSChander Kashyap 		"stdin=serial\0" \
74a2ac68fbSChander Kashyap 		"stdout=serial\0" \
75a2ac68fbSChander Kashyap 		"stderr=serial\0"
76a2ac68fbSChander Kashyap 
77a2ac68fbSChander Kashyap #define CONFIG_EXTRA_ENV_SETTINGS \
78a2ac68fbSChander Kashyap 	EXYNOS_DEVICE_SETTINGS
79a2ac68fbSChander Kashyap 
80a2ac68fbSChander Kashyap /* SD/MMC configuration */
81a2ac68fbSChander Kashyap #define CONFIG_GENERIC_MMC
82a2ac68fbSChander Kashyap #define CONFIG_MMC
83a2ac68fbSChander Kashyap #define CONFIG_SDHCI
84a2ac68fbSChander Kashyap #define CONFIG_S5P_SDHCI
85a2ac68fbSChander Kashyap #define CONFIG_DWMMC
86a2ac68fbSChander Kashyap #define CONFIG_EXYNOS_DWMMC
87a2ac68fbSChander Kashyap #define CONFIG_SUPPORT_EMMC_BOOT
88a2ac68fbSChander Kashyap 
89a2ac68fbSChander Kashyap 
90a2ac68fbSChander Kashyap #define CONFIG_BOARD_EARLY_INIT_F
91a2ac68fbSChander Kashyap #define CONFIG_SKIP_LOWLEVEL_INIT
92a2ac68fbSChander Kashyap 
93a2ac68fbSChander Kashyap /* PWM */
94a2ac68fbSChander Kashyap #define CONFIG_PWM
95a2ac68fbSChander Kashyap 
96a2ac68fbSChander Kashyap /* allow to overwrite serial and ethaddr */
97a2ac68fbSChander Kashyap #define CONFIG_ENV_OVERWRITE
98a2ac68fbSChander Kashyap 
99a2ac68fbSChander Kashyap /* Command definition*/
100a2ac68fbSChander Kashyap #include <config_cmd_default.h>
101a2ac68fbSChander Kashyap 
102a2ac68fbSChander Kashyap #define CONFIG_CMD_PING
103a2ac68fbSChander Kashyap #define CONFIG_CMD_ELF
104a2ac68fbSChander Kashyap #define CONFIG_CMD_MMC
105a2ac68fbSChander Kashyap #define CONFIG_CMD_EXT2
106a2ac68fbSChander Kashyap #define CONFIG_CMD_FAT
107a2ac68fbSChander Kashyap #define CONFIG_CMD_NET
108a2ac68fbSChander Kashyap #define CONFIG_CMD_HASH
109a2ac68fbSChander Kashyap 
110a2ac68fbSChander Kashyap #define CONFIG_BOOTDELAY		3
111a2ac68fbSChander Kashyap #define CONFIG_ZERO_BOOTDELAY_CHECK
112a2ac68fbSChander Kashyap 
113a2ac68fbSChander Kashyap /* USB */
114a2ac68fbSChander Kashyap #define CONFIG_CMD_USB
115a2ac68fbSChander Kashyap #define CONFIG_USB_EHCI
116a2ac68fbSChander Kashyap #define CONFIG_USB_EHCI_EXYNOS
117a2ac68fbSChander Kashyap #define CONFIG_USB_STORAGE
118a2ac68fbSChander Kashyap 
119a2ac68fbSChander Kashyap /* MMC SPL */
120*e106bd9bSRajeshwari Birje #define CONFIG_EXYNOS_SPL
121a2ac68fbSChander Kashyap #define CONFIG_SPL
122a2ac68fbSChander Kashyap #define COPY_BL2_FNPTR_ADDR	0x02020030
123a2ac68fbSChander Kashyap 
124a2ac68fbSChander Kashyap #define CONFIG_SPL_LIBCOMMON_SUPPORT
125a2ac68fbSChander Kashyap 
126a2ac68fbSChander Kashyap /* specific .lds file */
127a2ac68fbSChander Kashyap #define CONFIG_SPL_LDSCRIPT	"board/samsung/common/exynos-uboot-spl.lds"
128a2ac68fbSChander Kashyap #define CONFIG_SPL_TEXT_BASE	0x02023400
129a2ac68fbSChander Kashyap #define CONFIG_SPL_MAX_FOOTPRINT	(14 * 1024)
130a2ac68fbSChander Kashyap 
131a2ac68fbSChander Kashyap #define CONFIG_BOOTCOMMAND	"mmc read 40007000 451 2000; bootm 40007000"
132a2ac68fbSChander Kashyap 
133a2ac68fbSChander Kashyap /* Miscellaneous configurable options */
134a2ac68fbSChander Kashyap #define CONFIG_SYS_LONGHELP		/* undef to save memory */
135a2ac68fbSChander Kashyap #define CONFIG_SYS_HUSH_PARSER		/* use "hush" command parser	*/
136a2ac68fbSChander Kashyap #define CONFIG_SYS_PROMPT		"ARNDALE # "
137a2ac68fbSChander Kashyap #define CONFIG_SYS_CBSIZE		256	/* Console I/O Buffer Size */
138a2ac68fbSChander Kashyap #define CONFIG_SYS_PBSIZE		384	/* Print Buffer Size */
139a2ac68fbSChander Kashyap #define CONFIG_SYS_MAXARGS		16	/* max number of command args */
140a2ac68fbSChander Kashyap #define CONFIG_DEFAULT_CONSOLE		"console=ttySAC2,115200n8\0"
141a2ac68fbSChander Kashyap /* Boot Argument Buffer Size */
142a2ac68fbSChander Kashyap #define CONFIG_SYS_BARGSIZE		CONFIG_SYS_CBSIZE
143a2ac68fbSChander Kashyap /* memtest works on */
144a2ac68fbSChander Kashyap #define CONFIG_SYS_MEMTEST_START	CONFIG_SYS_SDRAM_BASE
145a2ac68fbSChander Kashyap #define CONFIG_SYS_MEMTEST_END		(CONFIG_SYS_SDRAM_BASE + 0x5E00000)
146a2ac68fbSChander Kashyap #define CONFIG_SYS_LOAD_ADDR		(CONFIG_SYS_SDRAM_BASE + 0x3E00000)
147a2ac68fbSChander Kashyap 
148a2ac68fbSChander Kashyap #define CONFIG_RD_LVL
149a2ac68fbSChander Kashyap 
150a2ac68fbSChander Kashyap #define CONFIG_NR_DRAM_BANKS	8
151a2ac68fbSChander Kashyap #define SDRAM_BANK_SIZE		(256UL << 20UL)	/* 256 MB */
152a2ac68fbSChander Kashyap #define PHYS_SDRAM_1		CONFIG_SYS_SDRAM_BASE
153a2ac68fbSChander Kashyap #define PHYS_SDRAM_1_SIZE	SDRAM_BANK_SIZE
154a2ac68fbSChander Kashyap #define PHYS_SDRAM_2		(CONFIG_SYS_SDRAM_BASE + SDRAM_BANK_SIZE)
155a2ac68fbSChander Kashyap #define PHYS_SDRAM_2_SIZE	SDRAM_BANK_SIZE
156a2ac68fbSChander Kashyap #define PHYS_SDRAM_3		(CONFIG_SYS_SDRAM_BASE + (2 * SDRAM_BANK_SIZE))
157a2ac68fbSChander Kashyap #define PHYS_SDRAM_3_SIZE	SDRAM_BANK_SIZE
158a2ac68fbSChander Kashyap #define PHYS_SDRAM_4		(CONFIG_SYS_SDRAM_BASE + (3 * SDRAM_BANK_SIZE))
159a2ac68fbSChander Kashyap #define PHYS_SDRAM_4_SIZE	SDRAM_BANK_SIZE
160a2ac68fbSChander Kashyap #define PHYS_SDRAM_5		(CONFIG_SYS_SDRAM_BASE + (4 * SDRAM_BANK_SIZE))
161a2ac68fbSChander Kashyap #define PHYS_SDRAM_5_SIZE	SDRAM_BANK_SIZE
162a2ac68fbSChander Kashyap #define PHYS_SDRAM_6		(CONFIG_SYS_SDRAM_BASE + (5 * SDRAM_BANK_SIZE))
163a2ac68fbSChander Kashyap #define PHYS_SDRAM_6_SIZE	SDRAM_BANK_SIZE
164a2ac68fbSChander Kashyap #define PHYS_SDRAM_7		(CONFIG_SYS_SDRAM_BASE + (6 * SDRAM_BANK_SIZE))
165a2ac68fbSChander Kashyap #define PHYS_SDRAM_7_SIZE	SDRAM_BANK_SIZE
166a2ac68fbSChander Kashyap #define PHYS_SDRAM_8		(CONFIG_SYS_SDRAM_BASE + (7 * SDRAM_BANK_SIZE))
167a2ac68fbSChander Kashyap #define PHYS_SDRAM_8_SIZE	SDRAM_BANK_SIZE
168a2ac68fbSChander Kashyap 
169a2ac68fbSChander Kashyap #define CONFIG_SYS_MONITOR_BASE	0x00000000
170a2ac68fbSChander Kashyap 
171a2ac68fbSChander Kashyap /* FLASH and environment organization */
172a2ac68fbSChander Kashyap #define CONFIG_SYS_NO_FLASH
173a2ac68fbSChander Kashyap #undef CONFIG_CMD_IMLS
174a2ac68fbSChander Kashyap #define CONFIG_IDENT_STRING		" for ARNDALE"
175a2ac68fbSChander Kashyap 
176a2ac68fbSChander Kashyap #define CONFIG_SYS_MMC_ENV_DEV		0
177a2ac68fbSChander Kashyap 
178a2ac68fbSChander Kashyap #define CONFIG_ENV_IS_IN_MMC
179a2ac68fbSChander Kashyap #define CONFIG_SECURE_BL1_ONLY
180a2ac68fbSChander Kashyap 
181a2ac68fbSChander Kashyap /* Secure FW size configuration */
182a2ac68fbSChander Kashyap #ifdef	CONFIG_SECURE_BL1_ONLY
183a2ac68fbSChander Kashyap #define	CONFIG_SEC_FW_SIZE		(8 << 10)	/* 8KB */
184a2ac68fbSChander Kashyap #else
185a2ac68fbSChander Kashyap #define	CONFIG_SEC_FW_SIZE		0
186a2ac68fbSChander Kashyap #endif
187a2ac68fbSChander Kashyap 
188a2ac68fbSChander Kashyap /* Configuration of BL1, BL2, ENV Blocks on mmc */
189a2ac68fbSChander Kashyap #define CONFIG_RES_BLOCK_SIZE	(512)
190a2ac68fbSChander Kashyap #define CONFIG_BL1_SIZE		(16 << 10) /*16 K reserved for BL1*/
191a2ac68fbSChander Kashyap #define	CONFIG_BL2_SIZE		(512UL << 10UL)	/* 512 KB */
192a2ac68fbSChander Kashyap #define CONFIG_ENV_SIZE		(16 << 10)	/* 16 KB */
193a2ac68fbSChander Kashyap 
194a2ac68fbSChander Kashyap #define CONFIG_BL1_OFFSET	(CONFIG_RES_BLOCK_SIZE + CONFIG_SEC_FW_SIZE)
195a2ac68fbSChander Kashyap #define CONFIG_BL2_OFFSET	(CONFIG_BL1_OFFSET + CONFIG_BL1_SIZE)
196a2ac68fbSChander Kashyap #define CONFIG_ENV_OFFSET	(CONFIG_BL2_OFFSET + CONFIG_BL2_SIZE)
197a2ac68fbSChander Kashyap 
198a2ac68fbSChander Kashyap /* U-boot copy size from boot Media to DRAM.*/
199a2ac68fbSChander Kashyap #define BL2_START_OFFSET	(CONFIG_BL2_OFFSET/512)
200a2ac68fbSChander Kashyap #define BL2_SIZE_BLOC_COUNT	(CONFIG_BL2_SIZE/512)
201a2ac68fbSChander Kashyap 
202a2ac68fbSChander Kashyap #define CONFIG_DOS_PARTITION
203a2ac68fbSChander Kashyap #define CONFIG_EFI_PARTITION
204a2ac68fbSChander Kashyap #define CONFIG_CMD_PART
205a2ac68fbSChander Kashyap #define CONFIG_PARTITION_UUIDS
206a2ac68fbSChander Kashyap 
207a2ac68fbSChander Kashyap 
208a2ac68fbSChander Kashyap #define CONFIG_IRAM_STACK	0x02050000
209a2ac68fbSChander Kashyap 
210a2ac68fbSChander Kashyap #define CONFIG_SYS_INIT_SP_ADDR	CONFIG_IRAM_STACK
211a2ac68fbSChander Kashyap 
212a2ac68fbSChander Kashyap /* I2C */
213a2ac68fbSChander Kashyap #define CONFIG_SYS_I2C_INIT_BOARD
2142d8f1e27SPiotr Wilczek #define CONFIG_SYS_I2C
215a2ac68fbSChander Kashyap #define CONFIG_CMD_I2C
2162d8f1e27SPiotr Wilczek #define CONFIG_SYS_I2C_S3C24X0_SPEED	100000		/* 100 Kbps */
2172d8f1e27SPiotr Wilczek #define CONFIG_SYS_I2C_S3C24X0
218a2ac68fbSChander Kashyap #define CONFIG_MAX_I2C_NUM	8
2192d8f1e27SPiotr Wilczek #define CONFIG_SYS_I2C_S3C24X0_SLAVE    0x0
220a2ac68fbSChander Kashyap #define CONFIG_I2C_EDID
221a2ac68fbSChander Kashyap 
222a2ac68fbSChander Kashyap /* PMIC */
223a2ac68fbSChander Kashyap #define CONFIG_PMIC
224a2ac68fbSChander Kashyap #define CONFIG_PMIC_I2C
225a2ac68fbSChander Kashyap #define CONFIG_PMIC_MAX77686
226a2ac68fbSChander Kashyap 
227a2ac68fbSChander Kashyap #define CONFIG_DEFAULT_DEVICE_TREE	exynos5250-arndale
228a2ac68fbSChander Kashyap 
229a2ac68fbSChander Kashyap /* Ethernet Controllor Driver */
230a2ac68fbSChander Kashyap #ifdef CONFIG_CMD_NET
231a2ac68fbSChander Kashyap #define CONFIG_SMC911X
232a2ac68fbSChander Kashyap #define CONFIG_SMC911X_BASE		0x5000000
233a2ac68fbSChander Kashyap #define CONFIG_SMC911X_16_BIT
234a2ac68fbSChander Kashyap #define CONFIG_ENV_SROM_BANK		1
235a2ac68fbSChander Kashyap #endif /*CONFIG_CMD_NET*/
236a2ac68fbSChander Kashyap 
237a2ac68fbSChander Kashyap /* Enable PXE Support */
238a2ac68fbSChander Kashyap #ifdef CONFIG_CMD_NET
239a2ac68fbSChander Kashyap #define CONFIG_CMD_PXE
240a2ac68fbSChander Kashyap #define CONFIG_MENU
241a2ac68fbSChander Kashyap #endif
242a2ac68fbSChander Kashyap 
243a2ac68fbSChander Kashyap /* Enable devicetree support */
244a2ac68fbSChander Kashyap #define CONFIG_OF_LIBFDT
245a2ac68fbSChander Kashyap 
246a2ac68fbSChander Kashyap /* Enable Time Command */
247a2ac68fbSChander Kashyap #define CONFIG_CMD_TIME
248a2ac68fbSChander Kashyap 
249a2ac68fbSChander Kashyap #endif	/* __CONFIG_H */
250