blob: 21d8e7ac48bd85de8e520516f454ad6ced7a1e21 [file] [log] [blame]
Chander Kashyap0e7ab682011-08-18 22:37:19 +00001/*
2 * Copyright (C) 2011 Samsung Electronics
3 *
Chander Kashyap4131a772011-12-06 23:34:12 +00004 * Configuration settings for the SAMSUNG ORIGEN (EXYNOS4210) board.
Chander Kashyap0e7ab682011-08-18 22:37:19 +00005 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02006 * SPDX-License-Identifier: GPL-2.0+
Chander Kashyap0e7ab682011-08-18 22:37:19 +00007 */
8
Piotr Wilczekeb68f442014-03-07 14:59:46 +01009#ifndef __CONFIG_ORIGEN_H
10#define __CONFIG_ORIGEN_H
11
Simon Glassbe165002014-10-07 22:01:44 -060012#include <configs/exynos4-common.h>
Piotr Wilczekeb68f442014-03-07 14:59:46 +010013
Chander Kashyap0e7ab682011-08-18 22:37:19 +000014/* High Level Configuration Options */
Chander Kashyap4131a772011-12-06 23:34:12 +000015#define CONFIG_EXYNOS4210 1 /* which is a EXYNOS4210 SoC */
Chander Kashyap0e7ab682011-08-18 22:37:19 +000016#define CONFIG_ORIGEN 1 /* working with ORIGEN*/
17
Chander Kashyap0e7ab682011-08-18 22:37:19 +000018#define CONFIG_SYS_DCACHE_OFF 1
19
Piotr Wilczekeb68f442014-03-07 14:59:46 +010020/* ORIGEN has 4 bank of DRAM */
21#define CONFIG_NR_DRAM_BANKS 4
Chander Kashyap0e7ab682011-08-18 22:37:19 +000022#define CONFIG_SYS_SDRAM_BASE 0x40000000
Piotr Wilczekeb68f442014-03-07 14:59:46 +010023#define PHYS_SDRAM_1 CONFIG_SYS_SDRAM_BASE
24#define SDRAM_BANK_SIZE (256 << 20) /* 256 MB */
Chander Kashyap0e7ab682011-08-18 22:37:19 +000025
Piotr Wilczekeb68f442014-03-07 14:59:46 +010026/* 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 Kashyap0e7ab682011-08-18 22:37:19 +000030
Piotr Wilczekeb68f442014-03-07 14:59:46 +010031#define CONFIG_SYS_TEXT_BASE 0x43E00000
Chander Kashyap0e7ab682011-08-18 22:37:19 +000032
Chander Kashyap0e7ab682011-08-18 22:37:19 +000033#define CONFIG_MACH_TYPE MACH_TYPE_ORIGEN
34
Chander Kashyap0e7ab682011-08-18 22:37:19 +000035/* select serial console configuration */
Piotr Wilczekeb68f442014-03-07 14:59:46 +010036#define CONFIG_SERIAL2
Chander Kashyap0e7ab682011-08-18 22:37:19 +000037#define CONFIG_BAUDRATE 115200
Rajeshwari Shindebed24422013-07-04 12:29:17 +053038
Piotr Wilczekeb68f442014-03-07 14:59:46 +010039/* 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 Kashyap0e7ab682011-08-18 22:37:19 +000043
Piotr Wilczekeb68f442014-03-07 14:59:46 +010044#define CONFIG_SYS_MEM_TOP_HIDE (1 << 20) /* ram console */
Chander Kashyap0e7ab682011-08-18 22:37:19 +000045
Piotr Wilczekeb68f442014-03-07 14:59:46 +010046#define CONFIG_SYS_MONITOR_BASE 0x00000000
Chander Kashyap0e7ab682011-08-18 22:37:19 +000047
Piotr Wilczekeb68f442014-03-07 14:59:46 +010048/* Power Down Modes */
49#define S5P_CHECK_SLEEP 0x00000BAD
50#define S5P_CHECK_DIDLE 0xBAD00000
51#define S5P_CHECK_LPA 0xABAD0000
Chander Kashyap0e7ab682011-08-18 22:37:19 +000052
Joe Hershbergerf79eaae2012-05-23 07:57:57 +000053#undef CONFIG_CMD_PING
Chander Kashyap0e7ab682011-08-18 22:37:19 +000054#define CONFIG_CMD_ELF
55#define CONFIG_CMD_DHCP
Guillaume GARDET0df3a9d2014-10-08 15:04:38 +020056#define CONFIG_CMD_EXT2
57#define CONFIG_CMD_FS_GENERIC
58#define CONFIG_CMD_BOOTZ
59#define CONFIG_SUPPORT_RAW_INITRD
Chander Kashyap0e7ab682011-08-18 22:37:19 +000060
Chander Kashyap488ef1a2011-08-18 22:37:20 +000061/* MMC SPL */
Chander Kashyap488ef1a2011-08-18 22:37:20 +000062#define COPY_BL2_FNPTR_ADDR 0x02020030
Inderpal Singh4a699c72013-04-04 23:09:21 +000063#define CONFIG_SPL_TEXT_BASE 0x02021410
64
Guillaume GARDET0df3a9d2014-10-08 15:04:38 +020065#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" \
71 "mmcdev=0\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;" \
85 "fi;" \
86 "if test -n $uenvcmd; then " \
87 "echo Running uenvcmd ...;" \
88 "run uenvcmd;" \
89 "fi;" \
90 "if run loadbootscript; then " \
91 "run bootscript; " \
92 "fi; " \
93 "fi;" \
94 "load mmc ${mmcdev} ${loadaddr} uImage; bootm ${loadaddr} "
Chander Kashyap0e7ab682011-08-18 22:37:19 +000095
Chander Kashyap0e7ab682011-08-18 22:37:19 +000096#define CONFIG_IDENT_STRING " for ORIGEN"
97
Chander Kashyap0e7ab682011-08-18 22:37:19 +000098#define CONFIG_CLK_1000_400_200
99
100/* MIU (Memory Interleaving Unit) */
101#define CONFIG_MIU_2BIT_21_7_INTERLEAVED
102
Piotr Wilczekeb68f442014-03-07 14:59:46 +0100103#define CONFIG_ENV_IS_IN_MMC
Chander Kashyap0e7ab682011-08-18 22:37:19 +0000104#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)
Chander Kashyap0e7ab682011-08-18 22:37:19 +0000109
Rajeshwari Shindebed24422013-07-04 12:29:17 +0530110#define CONFIG_SPL_LDSCRIPT "board/samsung/common/exynos-uboot-spl.lds"
111#define CONFIG_SPL_MAX_FOOTPRINT (14 * 1024)
112
113#define CONFIG_SYS_INIT_SP_ADDR 0x02040000
Chander Kashyap488ef1a2011-08-18 22:37:20 +0000114
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)
Angus Ainslie54932fe2011-09-09 12:02:02 +0000119
Chander Kashyap0e7ab682011-08-18 22:37:19 +0000120#endif /* __CONFIG_H */