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