2 * Copyright (C) 2011 Samsung Electronics
4 * Configuration settings for the SAMSUNG ORIGEN (EXYNOS4210) board.
6 * SPDX-License-Identifier: GPL-2.0+
9 #ifndef __CONFIG_ORIGEN_H
10 #define __CONFIG_ORIGEN_H
12 #include <configs/exynos4-common.h>
14 /* High Level Configuration Options */
15 #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */
16 #define CONFIG_ORIGEN 1 /* working with ORIGEN*/
18 #define CONFIG_SYS_DCACHE_OFF 1
20 /* ORIGEN has 4 bank of DRAM */
21 #define CONFIG_NR_DRAM_BANKS 4
22 #define CONFIG_SYS_SDRAM_BASE 0x40000000
23 #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE
24 #define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */
26 /* memtest works on */
27 #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE
28 #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x6000000)
29 #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x3E00000)
31 #define CONFIG_SYS_TEXT_BASE 0x43E00000
33 #define CONFIG_MACH_TYPE MACH_TYPE_ORIGEN
35 /* select serial console configuration */
36 #define CONFIG_SERIAL2
37 #define CONFIG_BAUDRATE 115200
39 /* Console configuration */
40 #define CONFIG_SYS_CONSOLE_INFO_QUIET
41 #define CONFIG_SYS_CONSOLE_IS_IN_ENV
42 #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0"
44 #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */
46 #define CONFIG_SYS_MONITOR_BASE 0x00000000
48 /* Power Down Modes */
49 #define S5P_CHECK_SLEEP 0x00000BAD
50 #define S5P_CHECK_DIDLE 0xBAD00000
51 #define S5P_CHECK_LPA 0xABAD0000
53 #define CONFIG_SUPPORT_RAW_INITRD
56 #define COPY_BL2_FNPTR_ADDR 0x02020030
57 #define CONFIG_SPL_TEXT_BASE 0x02021410
59 #define CONFIG_EXTRA_ENV_SETTINGS \
60 "loadaddr=0x40007000\0" \
61 "rdaddr=0x48000000\0" \
62 "kerneladdr=0x40007000\0" \
63 "ramdiskaddr=0x48000000\0" \
64 "console=ttySAC2,115200n8\0" \
66 "bootenv=uEnv.txt\0" \
67 "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
68 "importbootenv=echo Importing environment from mmc ...; " \
69 "env import -t $loadaddr $filesize\0" \
70 "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
71 "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
72 "source ${loadaddr}\0"
73 #define CONFIG_BOOTCOMMAND \
74 "if mmc rescan; then " \
75 "echo SD/MMC found on device ${mmcdev};" \
76 "if run loadbootenv; then " \
77 "echo Loaded environment from ${bootenv};" \
78 "run importbootenv;" \
80 "if test -n $uenvcmd; then " \
81 "echo Running uenvcmd ...;" \
84 "if run loadbootscript; then " \
88 "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} "
90 #define CONFIG_IDENT_STRING " for ORIGEN"
92 #define CONFIG_CLK_1000_400_200
94 /* MIU (Memory Interleaving Unit) */
95 #define CONFIG_MIU_2BIT_21_7_INTERLEAVED
97 #define CONFIG_ENV_IS_IN_MMC
98 #define CONFIG_SYS_MMC_ENV_DEV 0
99 #define CONFIG_ENV_SIZE (16 << 10) /* 16 KB */
100 #define RESERVE_BLOCK_SIZE (512)
101 #define BL1_SIZE (16 << 10) /*16 K reserved for BL1*/
102 #define CONFIG_ENV_OFFSET (RESERVE_BLOCK_SIZE + BL1_SIZE)
104 #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds"
105 #define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024)
107 #define CONFIG_SYS_INIT_SP_ADDR 0x02040000
109 /* U-Boot copy size from boot Media to DRAM.*/
110 #define COPY_BL2_SIZE 0x80000
111 #define BL2_START_OFFSET ((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512)
112 #define BL2_SIZE_BLOC_COUNT (COPY_BL2_SIZE/512)
114 #endif /* __CONFIG_H */