1 /* 2 * Copyright (C) 2011 Samsung Electronics 3 * 4 * Configuration settings for the SAMSUNG ORIGEN (EXYNOS4210) board. 5 * 6 * SPDX-License-Identifier: GPL-2.0+ 7 */ 8 9 #ifndef __CONFIG_ORIGEN_H 10 #define __CONFIG_ORIGEN_H 11 12 #include <configs/exynos4-common.h> 13 14 /* High Level Configuration Options */ 15 #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */ 16 #define CONFIG_ORIGEN 1 /* working with ORIGEN*/ 17 18 #define CONFIG_SYS_DCACHE_OFF 1 19 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 */ 25 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) 30 31 #define CONFIG_SYS_TEXT_BASE 0x43E00000 32 33 #define CONFIG_MACH_TYPE MACH_TYPE_ORIGEN 34 35 /* select serial console configuration */ 36 #define CONFIG_SERIAL2 37 #define CONFIG_BAUDRATE 115200 38 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" 43 44 #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */ 45 46 #define CONFIG_SYS_MONITOR_BASE 0x00000000 47 48 /* Power Down Modes */ 49 #define S5P_CHECK_SLEEP 0x00000BAD 50 #define S5P_CHECK_DIDLE 0xBAD00000 51 #define S5P_CHECK_LPA 0xABAD0000 52 53 #undef CONFIG_CMD_PING 54 #define CONFIG_CMD_DHCP 55 #define CONFIG_CMD_EXT2 56 #define CONFIG_CMD_FS_GENERIC 57 #define CONFIG_CMD_BOOTZ 58 #define CONFIG_SUPPORT_RAW_INITRD 59 60 /* MMC SPL */ 61 #define COPY_BL2_FNPTR_ADDR 0x02020030 62 #define CONFIG_SPL_TEXT_BASE 0x02021410 63 64 #define CONFIG_EXTRA_ENV_SETTINGS \ 65 "loadaddr=0x40007000\0" \ 66 "rdaddr=0x48000000\0" \ 67 "kerneladdr=0x40007000\0" \ 68 "ramdiskaddr=0x48000000\0" \ 69 "console=ttySAC2,115200n8\0" \ 70 "mmcdev=0\0" \ 71 "bootenv=uEnv.txt\0" \ 72 "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ 73 "importbootenv=echo Importing environment from mmc ...; " \ 74 "env import -t $loadaddr $filesize\0" \ 75 "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 76 "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ 77 "source ${loadaddr}\0" 78 #define CONFIG_BOOTCOMMAND \ 79 "if mmc rescan; then " \ 80 "echo SD/MMC found on device ${mmcdev};" \ 81 "if run loadbootenv; then " \ 82 "echo Loaded environment from ${bootenv};" \ 83 "run importbootenv;" \ 84 "fi;" \ 85 "if test -n $uenvcmd; then " \ 86 "echo Running uenvcmd ...;" \ 87 "run uenvcmd;" \ 88 "fi;" \ 89 "if run loadbootscript; then " \ 90 "run bootscript; " \ 91 "fi; " \ 92 "fi;" \ 93 "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} " 94 95 #define CONFIG_IDENT_STRING " for ORIGEN" 96 97 #define CONFIG_CLK_1000_400_200 98 99 /* MIU (Memory Interleaving Unit) */ 100 #define CONFIG_MIU_2BIT_21_7_INTERLEAVED 101 102 #define CONFIG_ENV_IS_IN_MMC 103 #define CONFIG_SYS_MMC_ENV_DEV 0 104 #define CONFIG_ENV_SIZE (16 << 10) /* 16 KB */ 105 #define RESERVE_BLOCK_SIZE (512) 106 #define BL1_SIZE (16 << 10) /*16 K reserved for BL1*/ 107 #define CONFIG_ENV_OFFSET (RESERVE_BLOCK_SIZE + BL1_SIZE) 108 109 #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds" 110 #define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024) 111 112 #define CONFIG_SYS_INIT_SP_ADDR 0x02040000 113 114 /* U-Boot copy size from boot Media to DRAM.*/ 115 #define COPY_BL2_SIZE 0x80000 116 #define BL2_START_OFFSET ((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512) 117 #define BL2_SIZE_BLOC_COUNT (COPY_BL2_SIZE/512) 118 119 #endif /* __CONFIG_H */ 120