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 #undef CONFIG_CMD_PING
54 #define CONFIG_CMD_ELF
55 #define CONFIG_CMD_DHCP
56 #define CONFIG_CMD_EXT2
57 #define CONFIG_CMD_FS_GENERIC
58 #define CONFIG_CMD_BOOTZ
59 #define CONFIG_SUPPORT_RAW_INITRD
62 #define COPY_BL2_FNPTR_ADDR 0x02020030
63 #define CONFIG_SPL_TEXT_BASE 0x02021410
65 #define CONFIG_EXTRA_ENV_SETTINGS \
66 "loadaddr=0x40007000\0" \
67 "rdaddr=0x48000000\0" \
68 "kerneladdr=0x40007000\0" \
69 "ramdiskaddr=0x48000000\0" \
70 "console=ttySAC2,115200n8\0" \
72 "bootenv=uEnv.txt\0" \
73 "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
74 "importbootenv=echo Importing environment from mmc ...; " \
75 "env import -t $loadaddr $filesize\0" \
76 "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
77 "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
78 "source ${loadaddr}\0"
79 #define CONFIG_BOOTCOMMAND \
80 "if mmc rescan; then " \
81 "echo SD/MMC found on device ${mmcdev};" \
82 "if run loadbootenv; then " \
83 "echo Loaded environment from ${bootenv};" \
84 "run importbootenv;" \
86 "if test -n $uenvcmd; then " \
87 "echo Running uenvcmd ...;" \
90 "if run loadbootscript; then " \
94 "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} "
96 #define CONFIG_IDENT_STRING " for ORIGEN"
98 #define CONFIG_CLK_1000_400_200
100 /* MIU (Memory Interleaving Unit) */
101 #define CONFIG_MIU_2BIT_21_7_INTERLEAVED
103 #define CONFIG_ENV_IS_IN_MMC
104 #define CONFIG_SYS_MMC_ENV_DEV 0
105 #define CONFIG_ENV_SIZE (16 << 10) /* 16 KB */
106 #define RESERVE_BLOCK_SIZE (512)
107 #define BL1_SIZE (16 << 10) /*16 K reserved for BL1*/
108 #define CONFIG_ENV_OFFSET (RESERVE_BLOCK_SIZE + BL1_SIZE)
110 #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds"
111 #define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024)
113 #define CONFIG_SYS_INIT_SP_ADDR 0x02040000
115 /* U-boot copy size from boot Media to DRAM.*/
116 #define COPY_BL2_SIZE 0x80000
117 #define BL2_START_OFFSET ((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512)
118 #define BL2_SIZE_BLOC_COUNT (COPY_BL2_SIZE/512)
120 #endif /* __CONFIG_H */