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 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 14 | /* High Level Configuration Options */ |
Chander Kashyap | 4131a77 | 2011-12-06 23:34:12 +0000 | [diff] [blame] | 15 | #define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 16 | #define CONFIG_ORIGEN 1 /* working with ORIGEN*/ |
| 17 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 18 | #define CONFIG_SYS_DCACHE_OFF 1 |
| 19 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 20 | /* ORIGEN has 4 bank of DRAM */ |
| 21 | #define CONFIG_NR_DRAM_BANKS 4 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 22 | #define CONFIG_SYS_SDRAM_BASE 0x40000000 |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 23 | #define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE |
| 24 | #define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 25 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 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) |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 30 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 31 | #define CONFIG_SYS_TEXT_BASE 0x43E00000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 32 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 33 | #define CONFIG_MACH_TYPE MACH_TYPE_ORIGEN |
| 34 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 35 | /* select serial console configuration */ |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 36 | #define CONFIG_SERIAL2 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 37 | #define CONFIG_BAUDRATE 115200 |
Rajeshwari Shinde | bed2442 | 2013-07-04 12:29:17 +0530 | [diff] [blame] | 38 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 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" |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 43 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 44 | #define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */ |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 45 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 46 | #define CONFIG_SYS_MONITOR_BASE 0x00000000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 47 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 48 | /* Power Down Modes */ |
| 49 | #define S5P_CHECK_SLEEP 0x00000BAD |
| 50 | #define S5P_CHECK_DIDLE 0xBAD00000 |
| 51 | #define S5P_CHECK_LPA 0xABAD0000 |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 52 | |
Joe Hershberger | f79eaae | 2012-05-23 07:57:57 +0000 | [diff] [blame] | 53 | #undef CONFIG_CMD_PING |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 54 | #define CONFIG_CMD_DHCP |
Guillaume GARDET | 0df3a9d | 2014-10-08 15:04:38 +0200 | [diff] [blame] | 55 | #define CONFIG_CMD_EXT2 |
| 56 | #define CONFIG_CMD_FS_GENERIC |
| 57 | #define CONFIG_CMD_BOOTZ |
| 58 | #define CONFIG_SUPPORT_RAW_INITRD |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 59 | |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 60 | /* MMC SPL */ |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 61 | #define COPY_BL2_FNPTR_ADDR 0x02020030 |
Inderpal Singh | 4a699c7 | 2013-04-04 23:09:21 +0000 | [diff] [blame] | 62 | #define CONFIG_SPL_TEXT_BASE 0x02021410 |
| 63 | |
Guillaume GARDET | 0df3a9d | 2014-10-08 15:04:38 +0200 | [diff] [blame] | 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} " |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 94 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 95 | #define CONFIG_IDENT_STRING " for ORIGEN" |
| 96 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 97 | #define CONFIG_CLK_1000_400_200 |
| 98 | |
| 99 | /* MIU (Memory Interleaving Unit) */ |
| 100 | #define CONFIG_MIU_2BIT_21_7_INTERLEAVED |
| 101 | |
Piotr Wilczek | eb68f44 | 2014-03-07 14:59:46 +0100 | [diff] [blame] | 102 | #define CONFIG_ENV_IS_IN_MMC |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 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) |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 108 | |
Rajeshwari Shinde | bed2442 | 2013-07-04 12:29:17 +0530 | [diff] [blame] | 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 |
Chander Kashyap | 488ef1a | 2011-08-18 22:37:20 +0000 | [diff] [blame] | 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) |
Angus Ainslie | 54932fe | 2011-09-09 12:02:02 +0000 | [diff] [blame] | 118 | |
Chander Kashyap | 0e7ab68 | 2011-08-18 22:37:19 +0000 | [diff] [blame] | 119 | #endif /* __CONFIG_H */ |