Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2011 Samsung Electronics |
| 3 | * |
Chander Kashyap | 4131a77 | 2011-12-06 23:34:12 +0000 | [diff] [blame] | 4 | * Configuration settings for the SAMSUNG ORIGEN (EXYNOS4210) board. |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 5 | * |
Wolfgang Denk | d79de1d | 2013-07-08 09:37:19 +0200 | [diff] [blame] | 6 | * SPDX-License-Identifier: GPL-2.0+ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 7 | */ |
| 8 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 9 | #ifndef __CONFIG_ORIGEN_H |
| 10 | #define __CONFIG_ORIGEN_H |
| 11 | |
Simon Glass | be16500 | 2014-10-07 22:01:44 -0600 | [diff] [blame] | 12 | #include <configs/exynos4-common.h> |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 13 | |
| 14 | #define CONFIG_SYS_PROMPT "ORIGEN # " |
| 15 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 16 | |
| 17 | /* High Level Configuration Options */ |
Chander Kashyap | 4131a77 | 2011-12-06 23:34:12 +0000 | [diff] [blame] | 18 | #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 19 | #define CONFIG_ORIGEN 1 /* working with ORIGEN*/ |
| 20 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 21 | #define CONFIG_SYS_DCACHE_OFF 1 |
| 22 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 23 | /* ORIGEN has 4 bank of DRAM */ |
| 24 | #define CONFIG_NR_DRAM_BANKS 4 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 25 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 26 | #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE |
| 27 | #define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 28 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 29 | /* memtest works on */ |
| 30 | #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE |
| 31 | #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_SDRAM_BASE + 0x6000000) |
| 32 | #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + 0x3E00000) |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 33 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 34 | #define CONFIG_SYS_TEXT_BASE 0x43E00000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 35 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 36 | #define CONFIG_MACH_TYPE MACH_TYPE_ORIGEN |
| 37 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 38 | /* select serial console configuration */ |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 39 | #define CONFIG_SERIAL2 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 40 | #define CONFIG_BAUDRATE 115200 |
Rajeshwari Shinde | bed2442 | 2013-07-04 12:29:17 +0530 | [diff] [blame] | 41 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 42 | /* Console configuration */ |
| 43 | #define CONFIG_SYS_CONSOLE_INFO_QUIET |
| 44 | #define CONFIG_SYS_CONSOLE_IS_IN_ENV |
| 45 | #define CONFIG_DEFAULT_CONSOLE "console=ttySAC1,115200n8\0" |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 46 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 47 | #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 48 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 49 | #define CONFIG_SYS_MONITOR_BASE 0x00000000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 50 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 51 | /* Power Down Modes */ |
| 52 | #define S5P_CHECK_SLEEP 0x00000BAD |
| 53 | #define S5P_CHECK_DIDLE 0xBAD00000 |
| 54 | #define S5P_CHECK_LPA 0xABAD0000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 55 | |
Joe Hershberger | f79eaae | 2012-05-23 07:57:57 +0000 | [diff] [blame] | 56 | #undef CONFIG_CMD_PING |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 57 | #define CONFIG_CMD_ELF |
| 58 | #define CONFIG_CMD_DHCP |
Guillaume GARDET | 0df3a9d | 2014-10-08 15:04:38 +0200 | [diff] [blame] | 59 | #define CONFIG_CMD_EXT2 |
| 60 | #define CONFIG_CMD_FS_GENERIC |
| 61 | #define CONFIG_CMD_BOOTZ |
| 62 | #define CONFIG_SUPPORT_RAW_INITRD |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 63 | #undef CONFIG_CMD_NET |
| 64 | #undef CONFIG_CMD_NFS |
| 65 | |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 66 | /* MMC SPL */ |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 67 | #define COPY_BL2_FNPTR_ADDR 0x02020030 |
Inderpal Singh | 4a699c7 | 2013-04-04 23:09:21 +0000 | [diff] [blame] | 68 | #define CONFIG_SPL_TEXT_BASE 0x02021410 |
| 69 | |
Guillaume GARDET | 0df3a9d | 2014-10-08 15:04:38 +0200 | [diff] [blame] | 70 | #define CONFIG_EXTRA_ENV_SETTINGS \ |
| 71 | "loadaddr=0x40007000\0" \ |
| 72 | "rdaddr=0x48000000\0" \ |
| 73 | "kerneladdr=0x40007000\0" \ |
| 74 | "ramdiskaddr=0x48000000\0" \ |
| 75 | "console=ttySAC2,115200n8\0" \ |
| 76 | "mmcdev=0\0" \ |
| 77 | "bootenv=uEnv.txt\0" \ |
| 78 | "loadbootenv=load mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \ |
| 79 | "importbootenv=echo Importing environment from mmc ...; " \ |
| 80 | "env import -t $loadaddr $filesize\0" \ |
| 81 | "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ |
| 82 | "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ |
| 83 | "source ${loadaddr}\0" |
| 84 | #define CONFIG_BOOTCOMMAND \ |
| 85 | "if mmc rescan; then " \ |
| 86 | "echo SD/MMC found on device ${mmcdev};" \ |
| 87 | "if run loadbootenv; then " \ |
| 88 | "echo Loaded environment from ${bootenv};" \ |
| 89 | "run importbootenv;" \ |
| 90 | "fi;" \ |
| 91 | "if test -n $uenvcmd; then " \ |
| 92 | "echo Running uenvcmd ...;" \ |
| 93 | "run uenvcmd;" \ |
| 94 | "fi;" \ |
| 95 | "if run loadbootscript; then " \ |
| 96 | "run bootscript; " \ |
| 97 | "fi; " \ |
| 98 | "fi;" \ |
| 99 | "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} " |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 100 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 101 | #define CONFIG_IDENT_STRING " for ORIGEN" |
| 102 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 103 | #define CONFIG_CLK_1000_400_200 |
| 104 | |
| 105 | /* MIU (Memory Interleaving Unit) */ |
| 106 | #define CONFIG_MIU_2BIT_21_7_INTERLEAVED |
| 107 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 108 | #define CONFIG_ENV_IS_IN_MMC |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 109 | #define CONFIG_SYS_MMC_ENV_DEV 0 |
| 110 | #define CONFIG_ENV_SIZE (16 << 10) /* 16 KB */ |
| 111 | #define RESERVE_BLOCK_SIZE (512) |
| 112 | #define BL1_SIZE (16 << 10) /*16 K reserved for BL1*/ |
| 113 | #define CONFIG_ENV_OFFSET (RESERVE_BLOCK_SIZE + BL1_SIZE) |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 114 | |
Rajeshwari Shinde | bed2442 | 2013-07-04 12:29:17 +0530 | [diff] [blame] | 115 | #define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds" |
| 116 | #define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024) |
| 117 | |
| 118 | #define CONFIG_SYS_INIT_SP_ADDR 0x02040000 |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 119 | |
| 120 | /* U-boot copy size from boot Media to DRAM.*/ |
| 121 | #define COPY_BL2_SIZE 0x80000 |
| 122 | #define BL2_START_OFFSET ((CONFIG_ENV_OFFSET + CONFIG_ENV_SIZE)/512) |
| 123 | #define BL2_SIZE_BLOC_COUNT (COPY_BL2_SIZE/512) |
Angus Ainslie | 54932fe | 2011-09-09 12:02:02 +0000 | [diff] [blame] | 124 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 125 | #endif /* __CONFIG_H */ |